Managing all your websites made easy! We want to create a single application that can manage multiple content management systems for example MODX. Making it easy to create a single user in multiple MODX instances or update the user password in multiple systems with a one click.
What do we need?
If we take MODX as example we need a public API that we can call.
Something like this:
your-modx.com/api/user/update
your-modx.com/api/user/create
your-modx.com/api/user/delete
your-modx.com/api/user/list
your-modx.com/api/user/get
your-modx.com/api/system/list
Within the application we connect to such API. We can post a XML to the API with
the following content.
Of course the API needs a good security layer and maybe SSL to make sure it is safe. We made the example in XML but JSON is a good possibility either. Within MODX we have API page were we can manage all API users and API keys. Once we got this we can connect our application with the API. In the application we can create websites that we manage. We can now sync MODX data with our
application and show all created users en list MODX data like the current version.
What does the application need?
First of all we need a login page were you can login safely. Once you logged in successfully you hit the dashboard. On the dashboard you manage your websites and resync data with their content management system. The list contains all created websites with their containing users and current version. You can now add a single user to multiple websites or even delete a user in multiple systems.
Some functions we need:
Create a website and select the content management system. (example: MODX)
Create a user and select multiple sites were you want to add it to.
Update a user.
Delete a user.
Bulk update passwords (auto generated) for selected users.
Sync website data with the API data.
Application database structure
Table: content_management_systems
id (INT 2)
name (VARCHAR 50)
latest_version (VARCHAR 10)
active (TINYINT 1)
Example record: 1, MODX, 2.1.7, 1
Contains all the content management systems we can manage within the application.
What do we want?
Managing all your websites made easy! We want to create a single application that can manage multiple content management systems for example MODX. Making it easy to create a single user in multiple MODX instances or update the user password in multiple systems with a one click.
What do we need?
If we take MODX as example we need a public API that we can call.
Something like this:
Within the application we connect to such API. We can post a XML to the API with the following content.
Of course the API needs a good security layer and maybe SSL to make sure it is safe. We made the example in XML but JSON is a good possibility either. Within MODX we have API page were we can manage all API users and API keys. Once we got this we can connect our application with the API. In the application we can create websites that we manage. We can now sync MODX data with our application and show all created users en list MODX data like the current version.
What does the application need?
First of all we need a login page were you can login safely. Once you logged in successfully you hit the dashboard. On the dashboard you manage your websites and resync data with their content management system. The list contains all created websites with their containing users and current version. You can now add a single user to multiple websites or even delete a user in multiple systems.
Some functions we need:
Application database structure
Table: content_management_systems
Example record: 1,
MODX
,2.1.7
, 1Contains all the content management systems we can manage within the application.
Table: websites
Example record:1, 1,
your site
,your-site.com
,johndoe
,johndoekey
,1.0
,your-site.com/api/
,2.1.4
, NOW(), NOW()Contains all the websites you manage. The version field holds the current version of the content management system that is installed.
Table: websites_users
Example record: 1, 1, 1,
johndoe
,john
,doe
,john@doe.com
,1
, NOW(), NOW()This table holds all the users that belong to a website. The sync_id is used to match users between the two systems for example the external id field.
Table: users
Example record: 1,
john@doe.com
,johndoe
,john
,doe
,password
, 1, NOW(), NOW()Contains all users that can access the application.