GithubHelp home page GithubHelp logo

facet's Issues

Fix potential for unicode errors on textfields

Text Fields and probably char fields are fields likely to have content copied and pasted into. This doesn't create an error in the db but does cause a unicode errror in django admin and when trying to download the story.

Possible fixes: .encode('utf-8') before saving to db.

Would have to happen in a lot of the views.

Story Detail

A user can view a specific story, accessing the detail page which displays all of the facets that are part of the story with an editor and metadata for each facet. All story planning items, assets and access to series level information is available via modal windows or another UI element.
View:
Create a view returning all the data around a story and its corresponding facets.
Template:
Create a template to display the information.

Better responsiveness

Clarify what appears/does not on mobile. Better resizing, particularly on pages with forms.

Public Commenting

A user should be able to comment on a series plan, story plan, or on an individual facet.
View:
Return comments for series, stories and facets.
Template:
Add comment fields to series detail--plan, story detail--plan and individual facets.

Create an account/Sign Up

A new person can sign up by creating an account. Default behavior (for now) is that a new user creates an Organization and becomes the organization owner. The user creates the organization and their user account at the same time. The user that creates an organization is the default organization owner but can transfer/share ownership with other users.
View:
Create the view for the sign up page.
Template:
Create the template for the sign up page.

Network Detail

The network detail page is the public profile of a network. (Visible to users of organizations in the network.) It's edited by the admins of the owner organization. Details include the network's
name, list of member organizations, description and links to the associated network content page.
(Perhaps eventually includes a button to ask to join a network)
View:
Create a view to return the detail info about a network.
Template:
Create a template to display the network detail.

Stories

Stories page displays all active stories, filterable by status, facet, edit date, run date, story name, facet name and credit. The facets are displayed individually since each can have it's own edit/run date.
View:
Create view returning story and facet data.
Template:
Create template for story page.

Link directly to facet tab

Create way to link directly to a facet's tab when a specific facet is mentioned. (ie, comments, activity, etc.)

Implement Django Activity Stream

  • When a user logs in, the dashboard should include a feed of recent activity.
  • There should be a menu option to display a full stream of activity.
  • Does not need to include option to follow a specific user's activity. Should just be a stream of any activity on anything belonging to the organization, or by anyone in an organization.

Things that should appear:

  • Any activity by a user that's a member of an organization (Only activities where the end result is visible to more than just the user who did it. So, creating user notes or sending private messages don't need to be included.)
  • When a partner creates a copy of any organization content
  • When a partner user does anything on a piece of content that's collaborative

Ex:
[ user.profile_photo ] [ user.first_name ] edited story [ story.name ] | [ date ]
[ user.profile_photo ] [ user.first_name ] commented on [ facet.icon ] [ facet.title ] | [date ]
[user] from [org] copied [story.name ] | date

Nice to have:

  • A stream of activity for any object a user is related to (owner, team member, etc) for a stream of activity of more immediate interest
  • Ability to toggle between All Activity Stream and Immediate Interest Stream
  • Can be a drop down under dashboard

https://github.com/justquick/django-activity-stream/

Make deleted items restorable

Delete functionality is currently permanent. Create a trash bin for series, stories, facets, comments and messages that can restore the object.

Content Statuses

Content can have different statuses to allow for more granularity in management.
Sensitive -- Only displays story to users directly associated with a story.
Ready to Share -- designates content ready to be shared with a network.
Archived -- Removes stories from main view, also removes from sharing with a network.

User Detail

The publicly viewable (to other users in Organization or Network) profile of a user. Includes user's name as listed for attribution, bio, expertise, social profiles, links to user's stories/facets.
View:
Create view to return data for user profile page.
Template:
Create template for user profile page.
Notes:
Future feature: if logged in as the user the page belongs to, the fields are editable.

Login

A user can login via the login page.
View:
Create view for the login page.
Template:
Create template for the login page.

Story Detail checkboxes

Implement x-editable on the story and series detail page so that checkboxes are interactive rather than static display.

Series

A user can view all series of any status that's current. Series are organized by creation date. Meta information about a series should be available in the display or through a modal window or popover.
View:
Create a view to return series.
Template:
Create a template to display a series.

Lock content

Add functionality where an object owner can lock the object against deletion by any user other than their own self.

  • Only available to admin, editor type users

Use lock/unlock indicators for functionality:
-<i class="fa fa-unlock"></i> -`
**
Locked items should have the lock icon appear on/near item.**

Story can be marked as shared and other networks can copy it

A story can be marked as share, given a share data and be updated to ready to share once it's available.
If a partner organization clicks on the copy button, a new copy of the story is added to their own editorial schedule with a copy record maintaining details of the content's origin.

Audit Project Structure/Change as needed

Is the project following best practices for project directory structure?
Double check directories and file structures for best practice Django project structure.

Inbox

A user has an inbox which displays messages from all discussions they are a part of.
View:
Create view to return discussions that the user is a participant in.
Templates:
Create a template to display a user's private discussions, series plan discussions, story plan discussions and facet editing discussions.

Organization Networks

A view of all of the networks that an organization is a member of. Details include which organizations are in each network and which network's are managed by the user's organization. Networks, Organizations and Users should all link to their respective detail pages. The purpose is to create a place where a user can quickly assess which network is appropriate for the share or collaboration they want to do.
View:
Create a view to return all the networks that a user is a member of.
Template:
Create a template to display the networks.

Asset Library

Create a view to display all assets uploaded to an organization's content. Links to a detail view where the user can edit the meta information.

Current use indicator

If an object is currently being edited, indicate so by an icon near the item.

*Story: *
While viewing a story list, an icon appears next to any titles that are currently being accessed by another user. While in a story, all users currently accessing that story are indicated by their avatar appearing on the page (ie, like a google doc)

  • Same for series, facets, image interface in library

Use icons to indicate from list view:
-<i class="fa fa-cog fa-spin"></i>
Use avatar when inside and object

Private Discussions

Users can participate in private discussions visible to only them and the other participants in the discussion. The messages are sent and received via the user's inbox and a floating nav button for creating a message.
View:
Create a view to return a user's private discussions.
Template:
This feature is in tandem with the inbox feature. #17

Audio/Video Upload

User can upload/view thumbnail/play audio and videos to a facet, or view library of other upload audio/video clips and associate them with a facet.

Network Content

A user can view all of the active content shared by organizations within a network. If the content
is ready to share but not complete, it appears so other organizations know it's being worked on. It is not yet clickable though. Content marked as ready to share becomes active and partner organizations can click to add whichever facets they want to their own story schedule.
View:
Create view to return shared, ready to share content available to a network.
Template:
Create template for displaying network content. Content should be filterable by what org it came from, facet type, (perhaps keywords?),

Dashboard

When a user logs in they are redirected to a dashboard showing:

  • most recent content (phase 1)
  • most recent comments (phase 2)
  • most recent activity since last login (unscheduled)
    View:
    Create view for dashboard.
    Template:
    Create template for dashboard

Completion of CRUD

Add delete functionality to most items: series, stories, facets, comments, private messages.

  • Users shouldn't be deleted, just made inactive
  • Series can be deleted by owner or team member (Should delete related discussion, notes)
  • Stories can be deleted by owner or team member (Should delete related discussion, comments, facets, notes)
  • Facets can be deleted by owner or team member (Should deleted related discussion, comments)
  • Comments can be edited/deleted by owner
  • Photos can be removed from Facet by anyone. Deletion can only be done from Archive page (Should delete image from any content using it.)

Use minus/edit icons for functionality

  • <i class="fa fa-minus-square"></i>
  • <i class="fa fa-pencil-square"></i>

All deletions should include confirmation alert that identifies everything that will be deleted/affected
All deletions should include ability to undo/recover deleted object and it's related objects.

Base html

Refine navigation and base html components.

Organization Detail

The organization detail page is the public profile of a organization (viewable by users in the organization and organization's in the same network(s). Details include the
organization's full name, description, list of users and links to any shared or collaborative
stories involving that organization.
View:
Create the view to return organization information.
Template:
Create template to display Organization profile information

Data Model

Stub out and complete models.py for editorial app.

Tables

  • User
  • Organization
  • Network
  • NetworkOrganization
  • UserSeries
  • UserStory
  • Comment
  • CommentReadStatus
  • PrivateDiscussion
  • Discussion
  • Series
  • SeriesPlan
  • StoryCopyDetails
  • SeriesCopyDetails
  • Story
  • StoryPlan
  • Asset
  • WebFacet
  • WebFacetAsset
  • WebFacetContributors
  • WebFacetCopyDetails
  • PrintFacet
  • PrintFacetAsset
  • PrintFacetContributors
  • PrintFacetCopyDetails
  • AudioFacet
  • AudioFacetAsset
  • AudioFacetContributors
  • AudioFacetCopyDetails
  • VideoFacet
  • VideoFacetAsset
  • VideoFacetContributors
  • VideoFacetCopyDetails

Create Network

An organization admin can create and invite organizations to a network.
View
Create a view for the create network page.
Template:
Create the template for the create network page.

Media is copied along with shared stories

When a partner organization copies a story, they also get all associated media and the media is associated with the copy story. The media also has its own asset copy detail record.

Add User

An organization owner can create a new user that is a member of their organization. The organization owner only needs to fill in a basic level of information: user email, temp password, admin status. The user receives an email that prompts them to sign in, change password and complete their user profile.
View:
Create a view for the add user page.
Template:
Create the template for the add user page.

Story Download

Ability to download a story, its facets and all respective media.

Later issue: selective downloading.

Image upload

Users can upload an image to any facet, or view previously uploaded images and associate them with a facet.

Signup Flow

Create cue for newly signed up users to create an organization.

Clean up image file names

Write function to save image with the user input title as the filename.
If it's a duplication, append an incremental number to the end of the filename.

Schedule

Schedule page allows users to view a calendar or agenda of story/facet content initially sorted by estimated run date.
View:
Create view to return story/facet information.
Template:
Create template to display story/facet schedule

Update discussions to chat-style experience

Comments should post/update immediately with immediate viewing of any replies. Comment feeds should work as a live chat.

Nice to have:

  • indicator that someone is typing
  • indicator of what users are participating

Implement Django Allauth

Use Django AllAuth in addition to a custom user class to handle login, salting & hashing, verification and session cookies.

Series Detail

A user can view a specific series' detail page which includes information about the series, links to all of its stories, all assets, the discussion and any planning notes.
Views:
Create a view to return the data about a specific series.
Template:
Create a template to display series details.

Integrate Schedule

Continuation of Issue #10

Refine overall appearance, better interface about what facet is edit/run and when.
Fix day agenda view.

Live co-editing

Story: Two or more users should be able to edit the text of a facet together with indicators of where each user is making edits (ala google docs)

  • Only on facet content (for now)

Follow up to Issue #40

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.