Initial specification
(You can download the .txt file at the bottom of this post)
##################################################
## Mobile Manager - Initial Specification ##
##################################################
Mark Hamstra March 4th, 2011
This initial specification is a non-definite plan
for developing a Mobile Manager for the MODX CMF.
This initial specification is aimed at functionality
available for the first public release, while
offering a steady framework to extend upon later.
You will also be introduced to some terminology
which will be used to refer to specific pages
in the future.
This initial specification is the basis for a
later specification which will be accompanied by
a crowd source request (ChipIn/KickStarter) in
order to fund the development of the functions
specified.
##### Fundamental thoughts ######################
* This mobile manager will be developed with a
variety of mobile devices in mind. Not only the
iPhone, BlackBerry and Android phones, but also
the slightly older phones with webkit browsers.
iPads will also benefit.
* The mobile manager will be based on jQuery
Mobile. This framework builds upon HTML5 and
CSS3, enhanced with JavaScript.
* The mobile manager is not intended as replacement
for the MODX Manager but merely as a quick
solution for on-the-road updating of content.
##### 1: Start screen ###########################
After login with your MODX Manager username and
password, you will be presented with the start
screen.
* The Start screen features an easy to use list
(iPhone file browser-like) which link you to
functionality you can use. (1)
* List resources (see 'Resource listing')
* New resource (see 'Resource editing')
* Logout
* This list may or may not be repeated on inner
pages. Currently undecided. It is most likely
that a "Home" button will be placed at
convenient places to bring you back to the start
screen.
##### 2: Resource listing #######################
* The resource listing goes per level. Starts in
the root of the site.
* The listing shows every resource, including
those that are not published or are removed.
* Choosing a resource will give you the resource
menu. It has four options:
* Show details: lists all information related
to the specific resource. That includes
resource fields, settings and TVs.
* Modify resource: see 'Resource editing'
* (Un)publish resource: checks the published
state of the resource. When not published,
this will publish the resource and vice versa.
* (Un)delete resource: checks deleted state of
the resource and deletes or restores. Will
require the user to confirm on a new page.
Under this "resource menu", the resource listing
will continue to list resources of which the
resource is a parent.
##### 3: Resource editing ######################
* The Resource Editing page will consist of 2-4
sections. These sections are what used to be
tabs in the MODX Manager:
* Resource fields
* Page settings
* Template Variables (optional, only if used)
* Access Permissions (optional, only if used)
* The different fields will be available as they
are in the MODX Manager without customization. (2)
* Fields which are set to use a RTE (by default
the content field, but also Richtext TVs) will
make use of the Markdown syntax for rich text
editing. HTML will be converted to Markdown
before editing, and will be converted back to
HTML upon save. A help popup will be available
with the special syntax.
* Template, Parent resource, Content Type,
content disposition and class key fields will
be delivered as dropdown fields. Other fields
will be regular text fields.
* TV input types that will be supported in the
first release are:
* Checkbox, Radio box, Dropdown
* Text, Textarea (as plain text)
* Richtext (as Markdown syntax)
* Resource list
* Date possibly using experimental datepicker
Other input types will be displayed as plain
text input boxes.
##### 4: Customization #########################
Since this version will only cover basic usage,
preperations will be made to customize or add to
the mobile manager. There are two main options:
* Include Component pages. Most CMPs are built
on Sencha/ExtJS and not compatible with
jQuery Mobile. These will need to be refactored
but will be able to be inserted into the Start
screen through a series of files. Specific
details will follow during development.
* More TV input types supported through TV plugins
which can be installed by adding the neccesary
files to the right folders. Specific details
will follow later.
These two customizations will enable you to
add virtually anything to your Mobile Manager
by uploading files (possibly through the
Package Manager).
Furthermore, the mobile manager will be fully
translatable through the use of Lexicons. The
actual number of languages submitted depends
on the number of translators contributing their
translations to the project.
##### 5: License ##############################
License details are not decided upon yet. It is
also not sure if the PL release will be made
free or commercial. Either way, it is sure that
early contributors (3) will receive benefits for
their contribution. This can be a number of free
commercial licenses (when licensed commercially),
priority support or other undecided benefits.
Early Contributors will be mentioned in the
copyright notices as funders, in the order of
contribution (when data is available).
##### 6: Notes ################################
(1) In a later release, this list can be modified
through a MODX Manager page.
(2) Form Customization rules may be taken into
consideration in a later release.
(3) Early contributors are contributors who either
donate during the crowd sourcing, actively
help development or provide translations,
no later then the last Beta release.
I would like to crowdsource funding for this development.. don’t have exact numbers on that yet, but I wont start on this before another few weeks anyway.
To get a feel of how jQuery mobile works, go to
http://jquerymobile.com/demos/1.0a3/ - I even like the interface even on my 17" screen.
Please let me know if there’s things you would rather do differently in regards to this specification.. or if you think it sounds awesome and you want me to start tomorrow.
I’m also looking for a catchy name.. any suggestions are welcome
Gotta love Twitter
Within 10 minutes the decision for a name was made... Ladies and gentlemen, I present to you:
HandyMan, a mobile manager for MODX
Thanks Crawford (Bridgecourt) for the initial idea, and Adam Wintle, Jay Gilmore and @myradon for the amazing ideas.