- accept and descend 'tags' throughout dashboard
- handle user-specific 'dashboards'
- include Rules Module
- has_one relationship with Carousel/Layout/Misc
- unify components as one 'dashboard package' for delivery
- Image and Video subcomponents embedded within
- store order, url_link, and subcomponent for top banner
- store widget list (do we want to only send negative list?)
- store widget order
- link-url, image, img-name
- paperclip store images (how can we reuse the carousel classes here?)
- validation for warnings on asset size, type, aspect_ratio
- list nav_items and their order (negative list?)
- list/save link_url, link_name, order
- polymorphic relationship with image/video
- stored within DashComp::Carousel
- img_name, img_url(external)
- paperclip upload and store on S3
- validation warnings for out of aspect, img size, img type
- vid_name, vid_url(external)
- paperclip uploade and store on S3
- validation warnings for aspect, type
- store date, text, urgency?, url?
- follow / handle dash component rules (user_id and tags)
- include Rules module
- user_id and tag handling
- 'klass_by_tags' <- returns notifications and/or dashboard based on tags
- 'klass_by_uid' <- returns notifications and/or dashboard based on uid (overwrites tag selection)
- 'dummy' field to denote preview user
- preview option added to CSP Dash index
- click creates 'dummy' user with restricted access rights
- scramble or skillet checks for 'dummy' ?
- list all dashboard_wrappers, clickable into component parts
- edit, show, preview, delete actions
- publish/unpublish checkbox next to list items with bottom button to confirm
- no validation for multipublished, conflicting dashboards (eg same tagset)
- list all notifications sep from dashboards
- edit, show, delete actions
- publish/unpublish checkbox
- section-by-section accordian with + sign
- contains all component forms aggregated into one
- each section individually submittable?
- 3 column multiselect populated by aggregated customer role_tags
- region
- brand
- user_type
- triple nil available for clients without role_tags (single default)
- multiselect of all Nav items
- negative select (items selected are removed from nav)
- inline file uploading from user's filesystem
- show image in form after submit click
- file_picker, link_url(optional), position(hardcoded by order?), asset_name (user-fillable)?
- async image processing(paperclip)
- utilize order_history style 2 column order/choice selector
- no min/max widget #
- identical layout to Carousel Form except images only
- 2 field form
- facebook link
- instagram link
- 2 column form
- link_title
- link_url
- max 5 links
- separate from single-form
- text, date(automatically pulled?), urgency?
- use Social Stream http://social-stream.dit.upm.es/started/
- reject text-only posts (images required)
- date/time earliest sort
- image aspects different as per layout designs
- lay text over image if text
- gate notification by tags and uid identically to Dashboard
-
QUESTION: should we instead have a controller for each component model?
-
show
- user_id primacy over tag matching if present
- restrict by 'publish' state
- tags specificity handling
- return dash where tags MOST match current_user's tags (3 tags match vs 2 match)
- how to handle equal primacy dashboards? (2 match vs 2 match)
-
create
- restrict 'region' tag to AdminUsers containing said region
- validate presence of tags OR user_id