Giter Club home page Giter Club logo

unite-cms's Introduction

unite cms

⚠️ At the moment there is no active development on this open source cms, as we are now focusing on internal products. Thank you all for your support and intereset in this project ove the last years!

Version 0.10

This is the new and current version of unite cms. You can already use it, however docs (https://docs.unitecms.io) are still under development.

Version 0.9

This is the old version of unite cms, docs can be found here https://www.unitecms.io/docs.html.

unite-cms's People

Contributors

clonk-html5 avatar franzwilding avatar joshua-sharp avatar pspiller avatar stefan-kamsker avatar therebelrobot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

unite-cms's Issues

Rendering Bug Edit Domain Firefox

there is some sort of rendering bug in Firefox (tested with 59.0.3)

domain edit is cut off initially, if you open firebug it's gone

2018-05-10 1
2018-05-10

Unite users should only have one name field

Instead of firstname / lastname we should only have one name field. The name field should identify the user and could also be a company name, so we should not force to enter a firstname and a lastname

Refactor UI: Domain Member

  • Title should include member type name
  • Improve invitation table display
  • Update title should be something like "Update Users membership for Franz Wilding"
  • Delete title should be something like "Delete Users membership for Franz Wilding"
  • Table should include a dedicated column for accessor type (user or api key), this should be an icon with hover title
  • Refactor domain invite process: First step: "select existing user / Select API key / invite user", next step: "select role"

Content entities must implement __toString()

On many places (for example the headline on content update page), a content entity must be named. In order to do this, the Content class should implement __toString().

__toString() should use an content_label property on the ContentType entity to figure out, which fields to display as title. This property can also become the default for reference field to avoid double definition of content_label

content_label should default to "{type} #{id}" or something reasonable.

API Clients must be managed per organization and not per domain

To allow cross-domain references, api clients must have access rights to multiple domains. At the moment this is not possible, because they are managed per domain.

Proposed solution: Manage api clients per organization and allow to set the domains, they have access to.

Move ApiKey to Organization level

At the moment there are Users and ApiClients that are managed per organization (after implementing #20). They only have an identifier and roles.

In the future we probably need a way other individuals can authenticate against the api (via oauth) and also fields on each of this user entities.

Implement API restore / delete definitely actions

Implement graphQL mutations to delete, restore and delete-definitely content. This is already implemented in ContentController and can easily be re-implemented as graphql mutation types.

Consider to refactor the actions by creating some service that takes care of content deletion and will be used in the controller and the mutation.

Refactor UI: Organization User / Organization API Key

  • ORG API Key tokens should be hidden by default and only displayed on click
  • ORG API Key Delete screen should look more like content delete screen
  • ORG User Table should follow table styles
  • ORG User Table Domains should display domain member type nicely
  • ORG User Table ROLES should only be flag "ADMINISTRATOR / USER"
  • ORG User Form ROLES should only be checkbox: "ADMINISTRATOR"?
  • ORG User Delete screen should look more like content delete screen

Content preview iframe endpoints

todos:

  • Save Graphql field query to preview to know what we need to send to the preview endpoint
  • Finish ContentController:preview action (use real content type and field query)
  • Implement SettingController:preview action
  • Check on change events for custom form elements (collection, file, wywiwyg)

Implement File / Image View

For a nicer media handling implement a view for displaying files and images. The view should look something like dropbox or google drive and should include a drag-and-drop upload area.

The view should also implement selection from reference field

Allow users to cancel their accounts

All users must be allowed to cancel their accounts. Also when not using the registration bundle, users can be invited to the platform and therefore should be able to cancel their account again.

  • platform admins can be deleted at any time
  • org_users can be deleted at any time
  • When deleting org_admins, there must be at least on admin left for each org

Paragraphs-like fieldtype

For defining dynamic field input, a https://www.drupal.org/project/paragraphs - like field type should be implemented. It allows to define types with a fields set each. The user can choose one type and fill out the fields of this type.

todos

  • From javascript (vue component). Maybe we can use this also for domain member add form.
  • GraphQL input and output types
  • Remove unused variants before save to database
  • Form rendering tests
  • Nested event delegation. Almost done but need a little change when #207 is implemented
  • Test graphql filter and sort selectors
  • Test Storage and Sortable view combination

Improve API routes / ApiRequestMatcher

Api routes should be changed because it will be difficult to match all these routes in the future

current regex ApiRequestMatcher
^/[A-Za-z0-9_-]+/[A-Za-z0-9_-]+/api(/|$)

fe.
/test/first/api
/test/first/api/content/news/upload (doesnt match ^/[A-Za-z0-9_-]+/[A-Za-z0-9_-]+/api(/.+|$) is no good approach)

should be changed to

/api/test/first
/api/test/first/content/news/upload

Cleanup config

Config is a mess. Clean it up, split it into multiple files and add comments

Clean Up coding style

some Files have 2 space intention instead of 4

Task:
Finde those Files and clean them up!

Refactor UI: Domain dropdown menu

With domain members and api keys moved to the sidebar menu, the dropdown menu only contains the admin links "update domain" and "delete domain". Move the two buttons below the dropdown menu for a improved UI

Implement API content & setting revert action

Implement a graphQL mutation to revert content and setting to a specific version. This is already implemented in ContentController::revisionsRevertAction and SettingController::revisionsRevertAction and can easily be re-implemented as a graphql mutation type

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.