Project-Id-Version: Trac 0.12
Report-Msgid-Bugs-To: trac-dev@googlegroups.com
POT-Creation-Date: 2008-01-30 09:20+0100
PO-Revision-Date: 2010-07-19 23:05+0200
Last-Translator: Jeroen Ruigrok van der Werven <asmodai@in-nomine.org>
Language-Team: en_US <trac-dev@googlegroups.com>
Plural-Forms: nplurals=2; plural=(n != 1)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Generated-By: Babel 0.9.6

Warning: Can't synchronize with repository "(default)" (Unsupported version control system "git": Can't find an appropriate component, maybe the corresponding plugin was not enabled? ). Look in the Trac log for more information.

Changes between Version 3 and Version 4 of MultipleGroupAccessModel


Ignore:
Timestamp:
12/15/09 18:23:04 (9 years ago)
Author:
martin
Comment:

better structure on the steps that are to be done

Legend:

Unmodified
Added
Removed
Modified
  • MultipleGroupAccessModel

    v3 v4  
    4343This is an incomplete list of things that have to be done: 
    4444 
    45  * Define access rights granularity (tagging, download of full-size pictures?) 
    46   * Who is allowed to do what? Clarify access model in detail 
    47  * Create svn branch {{{branches/phtagr-multiple-groups}}} for this non-minor change 
    48  * Change database Schema ({{{config/sql/schema.php}}}) 
     45== Specifications / Definitions / Repository == 
     46 
     47 * Create svn branch {{{branches/phtagr-multiple-group-access-model}}} for this non-minor change 
     48 
     49 * Access rights granularity 
     50  * tagging 
     51  * download full-size pictures 
     52  * (more?) 
     53 
     54 * User Roles 
     55  * owner: can assign moderators and perform everything else a moderator can 
     56  * moderator: can add/invite/delete users 
     57  * member: is allowed to view and assign images to the group 
     58 
     59== Database == 
     60 
     61 * Database Schema ({{{config/sql/schema.php}}})* 
    4962  * Change relationship between model Media and model Group from "Media hasMany Group" to "Media hasAndBelongsToMany" 
    5063  * Delete "group_id" in Media model 
    5164  * Add hasAndBelongsToMany table "groups_media" with "group_id" and "media_id" 
    5265  * Add fields to Group schema: flags (int), acl (int), description (text) 
    53  * Create GroupAccess behaviour ({{{models/behaviours/group_access.php}}}) which handles all the new access stuff and all its "magic". See http://book.cakephp.org/view/88/Behaviors (basically behaviours enriches a model class with a behaviour and all functions of the behaviour is callable from the model itself) 
     66 
     67== Programming == 
     68 
     69 * Behaviour 
     70  * Create GroupAccess behaviour ({{{models/behaviours/group_access.php}}}) which handles all the new access stuff and all its "magic". See http://book.cakephp.org/view/88/Behaviors (basically behaviours enriches a model class with a behaviour and all functions of the behaviour is callable from the model itself) 
    5471  * Add GroupAccess to behaviour to Media model 
    5572  * Adapt access management to the behaviour and adapt the code, e.g. FileManager, WebDAV, etc 
    56  * Adapt the group model/view/controller 
    57  * Add database initialisation of public groups in the setup to ensure required groups 
    58  * On user creation create private user group 
    59  * Create user profile with all public group 
    60  * Add a group search 
    61  * Write schema migration script like {{{vendor/shells/upgradeMediaSchema.php}}} to ensure migration of older phtagr versions 
    62  * Write documentation for new access model 
    63  * Test it and merge it to the trunk 
    64  * Shout "We rule the world" 
     73 
     74 * MVC 
     75  * Adapt the group model/view/controller 
     76  * Add database initialisation of public groups in the setup to ensure required groups 
     77  * On user creation create private user group 
     78  * Create user profile with all public group 
     79  * Add a group search 
     80  * Write schema migration script like {{{vendor/shells/upgradeMediaSchema.php}}} to ensure migration of older phtagr versions 
     81 
     82== Other == 
     83  * Write documentation for new access model 
     84  * Test it and merge it to the trunk 
     85  * Shout "We rule the world"