Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[META] Provide Drag and Drop Interface for dashboard management. #55

Open
yanniboi opened this issue Jul 4, 2017 · 0 comments
Open
Assignees
Labels

Comments

@yanniboi
Copy link
Collaborator

yanniboi commented Jul 4, 2017

Overview

https://github.com/FreelyGive/contacts/wiki/Creating-the-initial-drag-and-drop-UI

We want a simple way to manage the dashboard. This includes:

  • Adding Tabs
  • Adding Profile Types
  • Adding Roles
  • Adding Profile/Views to tabs
  • Reordering the content of tabs
  • Etc.

Issues

#56 Management Sidebar

  • Button to expand sidebar
  • The content of the sidebar is the available profiles and views
  • Limit to available blocks for the currently being viewed user
  • Limit views to ones that have been 'tagged' as 'contacts'

#57 Management Mode

  • We need to replace the tab content region with drag and drop regions
  • We need to render the blocks as draggable objects that also show configurable fields (eg. title, display mode)
  • We want to have a render callback for blocks in 'manage mode' similar to the callback for the blocks now, so we can update the page with ajax.

#58 Persistent saving

  • We want to save whenever a change is made in Management mode
  • That is when a block is added, moved or deleted
  • Single post request that has all the information needed regardless of 'action'

#59 Easy/Advanced Mode

  • We want a site wide setting to swap between easy and advanced management.
  • This needs fleshing out, but easy mode ties together one user_role(/'hat') with one profile type and one tab. This meets most simple crm use cases.
  • Advanced mode is a setting that changes the site to be able to have multiple different profile types mixed in the same tab.
  • We probably want a single form (in easy mode) that adds a 'data slice'. This data slice creates a tab, profile type, and user role. Any user that gets given that role will automatically have that tab with the profile in the default display mode in it. Display mode and title as well as tab title are still editable in this mode.

#60 Easy Mode Tab creation
We do not want people to have to think about the relationships to profile types when creating a new tab. By default, when a new tab is created, it will receive all the relationships that are accessible to the contact that is being managed. In a separate area of the site, they will be able to edit this, but we don't worry about this during creation.

  • A tab cannot be deleted if it has active relationships
  • If a relationship is removed(/deactivated) this will hide the content that requires that relationship but not remove it.
  • If all relationships on the tab are deactivated, it will automatically get removed(/hidden).
@yanniboi yanniboi added this to the Version 0.0.3.x milestone Jul 4, 2017
@yanniboi yanniboi self-assigned this Jul 4, 2017
@yanniboi yanniboi added meta and removed enhancement labels Jul 4, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant