summaryrefslogtreecommitdiff
path: root/modules/gallery/models
AgeCommit message (Collapse)Author
2009-09-07Add support for a per-item "slug" which will be the user-visible urlBharat Mediratta
component for that given item. Album hierarchies are represented by nested slugs. By default, we convert the filename to a slug when you create an album, photo or movie.
2009-09-02Refactor how we use $this->relative_path() so that we're not callingBharat Mediratta
it twice on both sides of a ternary operator.
2009-08-29Fix for 641... extend viewable functionality to comments. Viewable unit test ↵Tim Almdal
is not working.
2009-08-18Refactor the get maximum weight functionality into a method in the item ↵Tim Almdal
helper, so that we can use it else where (i.e. the new organize module) Signed-off-by: Tim Almdal <tnalmdal@shaw.ca>
2009-08-05Change the children and descendants APIs to be more consistent and toBharat Mediratta
remove Gallery3 concepts from ORM_MPTT. The following API methods: ORM_MPTT::children ORM_MPTT::children_count ORM_MPTT::descendants ORM_MPTT::descendants_count All now take a $where clause that allow you to pass through additional field parameters. old API: $album->children(10, 0, "photos") $album->children_count("photos") new API: $album->children(10, 0, array("type" => "photos")) $album->children_count(array("type" => "photos")) This gives us a more flexible API and simplifies the code. While I was in there, I changed the way we deal with default orderby values so that we just assign the default value in the function definition, which allows us to get rid of all conditionals in the implementation which results in simpler code.
2009-08-05Change the children methods on Item_Core and ORM_MPTT in order toTim Almdal
specify a type parameter, so tht we can filter the children based on type (i.e. album, photo, etc). In addition, expose the sort order, so that we can specify the order we want to return the children.
2009-08-02Change the API for getting to the original state of an ORM.Bharat Mediratta
Old API: $obj->original("field_name") New API: $obj->original()->field_name This allows us to revert the varous xxx_updated events back to passing an original ORM as well as the the updated one. This makes for a cleaner event API. Old API: comment_updated($comment) { $comment->original("field_name") } Old API: comment_updated($old, $new) { $old->field_name }
2009-07-30Add some code to guard the weight calculation against zero rows whenBharat Mediratta
we're doing an initial install.
2009-07-29Oops, I removed too much in my last change. Put talmdal's query back,Bharat Mediratta
but change it to use Database instead of ORM for a little more efficiency.
2009-07-29Remove some scary debug code.Bharat Mediratta
2009-07-30Fix for ticket #576Tim Almdal
Add a weight index to the item table and changed the retrieval of the maximum weight to select weight from items order by weight desc limit 1. Upgrades the gallery module to version 10 Signed-off-by: Tim Almdal <tnalmdal@shaw.ca>
2009-07-27Remove the unnecessary ORDER BY on $this->sort_column inBharat Mediratta
get_position(), and instead apply an ORDER BY on `id` in the 2nd query so that we have stability among the equal elements. This should result in cheaper (and more sensible) queries.
2009-07-27Merge branch 'master' of git@github.com:gallery/gallery3Andy Staudacher
2009-07-27Revert "Remove an useless ORDER BY."... the order by wasn't all that useless.Andy Staudacher
This reverts commit c80d2da0a95a63b76f5a4c835f1a0e1022ec2f53. Conflicts: modules/gallery/models/item.php
2009-07-27Revert "Fix for ticket #452"Tim Almdal
This reverts commit 809e52d80cbf3beb75b238fddb0da3951fb9a8e7.
2009-07-26Merge branch 'master' of git://github.com/rledisez/gallery3 into rledisez/masterAndy Staudacher
2009-07-25Fix for ticket #452Tim Almdal
1) Change access_Core::user_can to return true for all permissions if the owner is the specified user. 2) Change Item_Model::viewable to set the owner_id is the first view_restriction This allowed simplification of the generating the where clause to a single $this->orwhere instead of a where and an orwhere.
2009-07-25Rename columns that use reserved SQL words : items.left and items.rightRomain LE DISEZ
2009-07-20Merge commit 'upstream/master'Romain LE DISEZ
2009-07-19Don't post the item_updated() event if we're just updating the view count.Bharat Mediratta
2009-07-18Merge commit 'upstream/master'Romain LE DISEZ
2009-07-17Change model_cache::clear() API to clear everything. This preventsBharat Mediratta
old ORM relationships from hanging around, which was causing problems when doing MPTT manipulations (resulting in incorrect permission propagation-- very bad!)
2009-07-17Fix a bug where moved items don't properly inherit permissions fromBharat Mediratta
their new target. After each move, recalculate the permissions for the new parent's hierarchy. Fixes ticket #552
2009-07-16Second non-trivial change to the event code. We now publish modelBharat Mediratta
related events from within the model handling code. The only exception to this currently is item_created which is challenging because we have to save the item using ORM_MPTT::add_to_parent() before the object itself is fully set up. When we get that down to one call to save() we can publish that event from within the model also.
2009-07-16Non-trivial changes to the event handling code:Bharat Mediratta
1) The item_updated event no longer takes the old and new items. Instead we overload ORM to track the original data and make that available via the item. This will allow us to move event publishing down into the API methods which in turn will give us more stability since we won't require each controller to remember to do it. 2) ORM class now tracks the original values. It doesn't track the original relationships (no need for that, yet) 3) Added new events: item_deleted group_deleted user_deleted
2009-07-16Merge commit 'upstream/master'Romain LE DISEZ
2009-07-07Added a wee bit of phpDoc.Tim Almdal
Changed the name of the method get_task_log to get_log Changed the default name of the file when the log is downloaded to gallery3_task_log.txt
2009-07-07Allow the task::log method to take an array of lines and change g2_import.phpTim Almdal
helper to use this approach.
2009-07-06Cleanup remove task processing. Change Task_Model::delete to call parent::deleteTim Almdal
instead of parent::save. :-) Also change admin_maintenance_controller to delete via looping over all of the completed tasks and delete individually, so we can delete the associated cache entries at the same time.
2009-07-05Add task logging functionality. When a task runs, it creates a log that isTim Almdal
stored in the persistant cache for 30 days. On the admin_maintenance page there is a new link for completed tasks "browse log". Clicking this will open a dialog box that has the the contents of the log displayed. The user can then view the log and close the dialog, or press the save button to download the log to their local machine.
2009-06-30Fix for #319.Tim Almdal
Created a new view "movieplayer.html.php", which is rendered by Item_Model::movie_img(). Changed movie.html.php to use movie_img to render the movie player link.
2009-06-27Implemented a Database driver for the Kohana Cache library. Rather then ↵Tim Almdal
writing our own caching algorithm, we can leverage the Kohana library. This has the added advantage of allowing the administrator to replace the default caching with a 3rd party caching algorithm.
2009-06-24Remove an useless ORDER BY.Romain LE DISEZ
It improves compatibility with PgSQL. (Replay of c80d2da0a95a63b76f5a4c835f1a0e1022ec2f53)
2009-06-23Fix get_position() to properly deal with duplicate values in the sort ↵Bharat Mediratta
column. Fixes #389
2009-06-23Escape {$this->sort_column} in get_position()Bharat Mediratta
2009-06-04Fix a bug in Item_Model::get_position() where we incorrectly using theBharat Mediratta
grandparent id. Oops. This caused navigation from photo back up to album to be broken. Also update Photos_Controller to use the active sort order.. it was still hardcoded to use the id. It's more efficient now, yay. Fixes ticket #340.
2009-06-02Fix for ticket #320Tim Almdal
2009-05-31Don't let relative_path() try to update the database if the Item_ModelBharat Mediratta
is not loaded, else you get weird errors.
2009-05-27Restructure things so that the application is now just another module.Bharat Mediratta
Kohana makes this type of transition fairly straightforward in that all controllers/helpers/etc are still located in the cascading filesystem without any extra effort, except that I've temporarily added a hack to force modules/gallery into the module path. Rename what's left of "core" to be "application" so that it conforms more closely to the Kohana standard (basically, just application/config/config.php which is the minimal thing that you need in the application directory) There's still considerable work left to be done here.