summaryrefslogtreecommitdiff
path: root/core/controllers
AgeCommit message (Collapse)Author
2008-11-29Insure that the page and offset refere to valid itemsTim Almdal
2008-11-28Dynamically create the list of available modules. This permits new modules ↵Tim Almdal
to be added without having to update the config.php file
2008-11-28Create module::event() which runs Gallery events. It works byBharat Mediratta
convention. To respond to the "photo_created" event in the gmaps module, you create modules/gmaps/helpers/gmaps_event.php containing class gmaps_event which has function photo_created. Renamed all events from gallery.foo.bar to foo_bar Updated tag module to use new convention.
2008-11-28Add an easy way to add a bunch of servers from the server sideBharat Mediratta
2008-11-28Rename item events and create events for comment create, login, logout, user ↵Tim Almdal
creation. I probably forgot some, but its a start.
2008-11-271) Create a Theme_View class that combines the functionality of the Theme ↵Tim Almdal
class with the View class. 2) Only define the form.html.php::DrawForm method once if there are multiple forms on the page (i.e. comments and add tags)
2008-11-27Make tags look a little better.Bharat Mediratta
2008-11-27Centralize logging around installing/uninstalling modules.Bharat Mediratta
2008-11-27Add children_count to album/photo controllers for consistency with tagsBharat Mediratta
2008-11-26Draw an album tree in the access -> permissions tab.Bharat Mediratta
2008-11-26Add a new "tag" page type.Bharat Mediratta
Create the concept of "page types" which let us specify the kind of page that we're rendering in high level terms. Currently there are three page types: album, photo and tag. The tag page type uses slightly different variables. It has a $tag but no $item. Adjust all sidebar_block() functions to avoid printing stuff that's dependent on the item if there is no item. Simplify the tag code to stop trying to fake an item. Update the theme slightly to use $item and $tag where appropriate (notably, for making the <title> element).
2008-11-26Add support for marking users as "admin"Bharat Mediratta
2008-11-26Add support in the scaffolding for adding users to groups, adding andBharat Mediratta
removing users and groups.
2008-11-26Use lorem2 words as inputs to generateTags. Limiting the number ofBharat Mediratta
tags results in a better distribution of the tags (so the cloud looks nicer).
2008-11-26Create user/group create/delete functions and have the scaffolding use them.Bharat Mediratta
2008-11-251) Changed how the test tags are generated to be able to create a better ↵Tim Almdal
distribution 2) Added a new helper function "load_buckets" assign the class suffix to each tag 3) Created a unit test to test the load_buckets function
2008-11-25The scaffolding can now add and delete users and groups. Yippee!Bharat Mediratta
2008-11-25Add a "Access" tab to the scaffolding and list users and groups.Bharat Mediratta
Refactor welcome.php a little bit to make index() more readable.
2008-11-25tag::add_tag() -> tag::addBharat Mediratta
2008-11-25Add theme debugging. Activate it in the [info] tab in theBharat Mediratta
scaffolding, then browse around your Gallery3 to see where you can add visible elements via modules.
2008-11-24Moved the creation of tags into the tag helper library. Added a count field ↵Tim Almdal
to the tags table. Bharat, I know you said not to worry about caching, but I want to explore what are some of the issues with keeping track of the counts as we go. (i.e. is it a pain in the a__)
2008-11-24Show a link to the item with the most tags.Bharat Mediratta
2008-11-24Fix a typo in _show() that broke proper redirectionBharat Mediratta
2008-11-24Show the tag count, too.Bharat Mediratta
Try using array_rand to simplify tag creation logic. Is it better? Maybe.
2008-11-24Remove the has_many_and_belongs_to_many relations from the item modelTim Almdal
2008-11-24Add the creation of tags to the scaffolding codeTim Almdal
2008-11-23Show the # of commentsBharat Mediratta
2008-11-23Add a button to install all plugins at once, now that we have so many.Bharat Mediratta
Improve the style a bit, sort the plugins, put core first and make it stand out so that you don't accidentally uninstall it.
2008-11-21Fixed a bug in the REST controller dispatcher and added a test case that ↵Jozef Selesi
excercises it.
2008-11-21Revert module block approachTim Almdal
2008-11-20* Added HTTP status constants and helper functions to REST helper.Jozef Selesi
* HTTP header setting in comment module now going through REST helper API. * Fixed items controller test. * Fixed user installer test. * Fixed _create() handling in the REST controller. * Fixed routing for edit and add forms. * Added some tests for the REST controller. * Set svn:eol-style to LF on a bunch of files. * Added preamble to MY_Forge.php.
2008-11-19Fix some broken-ness:Bharat Mediratta
1) Item_Controller::_create() and _update() were swapped 2) _create() was redirecting to the wrong urls on success 3) Change in-place return parameter from __return to _return 4) Change in-place code to tunnel _put via POST
2008-11-19Change the way that we do RESTful routing.Bharat Mediratta
1) We now use __call() in REST_Controller to handle any requests to a controller that were not already handled. In the case of RESTful controllers, this should be the only entry point (although they're free to break the model and add other ones.. nothing stops them). This means that we can remove all the catch-all routes in routes.php which greatly simplifies it. 2) Move request_method() and output_format() out of REST_Controller and into the REST helper in core/helpers/rest.php 3) Experiment with letting the various subclasses check the output_format and deal with it themselves. This simplifies the API, but it might be a bad idea in that it might push too much work to the individual controllers. It's a balancing act, time will tell, I'm willing to change it back later.
2008-11-19Change output_format() to autodetect for html / xml / jsonBharat Mediratta
2008-11-19* Renamed the album, item and photo controllers to albums, items and photos ↵Jozef Selesi
in order to follow the convention that controllers that refer to a collection of resources have plural names. * Added a bug workaround to routes.php
2008-11-18* Changed REST API. Now there are two separate methods for forms:Jozef Selesi
GET /form/edit/{controller}/{resource_id} -> controller::_form_edit($resource) GET /form/add/{controller}/{parameters} -> controller::_form_add($parameters) * Updated comment, user and core modules to reflect the API changes * Cleaned up routing and handling of requests to /{controller}
2008-11-18- All comments of an item can now be seen /comments?item_id=Jozef Selesi
- Return proper Content-Type header for GET /comments requests - Got rid of the query processing for index() in REST_Controller() - Small misc fixes
2008-11-18Fix a typo user_id -> owner_idBharat Mediratta
2008-11-18First iteration of REST controller refactoring. RESTful controllers that ↵Jozef Selesi
refer to collections should now have plural names and there should be only one controller per resource. Updated existing classes that implement REST_Controller. The routing now works like this: GET /controller -> controller::_index() POST /controller -> controller::_create() GET /controller/id -> controller::_show() PUT /controller/id -> controller::_update() DELETE /controller/id -> controller::_delete() GET /form/edit/controller/resource_id -> controller::_form() GET /form/add/controller/data -> controller::_form()
2008-11-17Add output formats to our REST controllers. Add support for JSON andBharat Mediratta
XML to the comment controllers as a proof of concept. It's not fully baked; we should examine ways to create helpers to make this process easier.
2008-11-16Handle _method in either GET or POSTBharat Mediratta
2008-11-16Drop the call to render() and just use the View's __toString method toBharat Mediratta
print it out.
2008-11-16Remove a @todoBharat Mediratta
2008-11-16Several large changes:Bharat Mediratta
1) Changed the way that we get forms. Now, if you want to get a form for a REST resource you prefix /form to the resource id. So: /form/photo/1 : returns a form for editing photo id 1 /form/comments/1 : returns a form for adding a comment to photo id 1 /form/comment/1 : returns a form for editing comment id 1 2) Changed the comment module to have two controllers: comment: deals with a single comment resource comments: deal with collections of comments attached to an item Related stuff: - Moved the comments js into the theme - Reworked Comment_Helper for clarity - Moved form generation code down into Comment_Helper - Cleaned up routes (eliminating new comment ones added in recent rev) - Added form() function to all REST controllers - Changed comment module to use a block instead of an arbitrary helper call from the theme - Comment controller only returns HTML currently, but returns a 201 Created status code when a new comment is added, which the Ajax code can catch and act upon. - Got rid of a lot of extra views in comment module
2008-11-16create a regular user and make scaffolding assign owner to logged in userFelix Rabinovich
2008-11-15Item / Owner changes.Bharat Mediratta
* Hardcode the item has_one owner relationship again * Overload User_Model::__get to handle missing owners gracefully * Fix Item_Controller to take the owner_id from the session or from the parent album when adding new albums and photos.
2008-11-15Clean user / item relationship. Upload files gets the ownership of current ↵Felix Rabinovich
user; and the views don't break if user module is not installed
2008-11-15Revise the user login code.Bharat Mediratta
* Remove user registration link and popup from the theme; this shouldn't be done in a popup. Use ajaxform to simplify the way that we load the login popup. * Create form.html.php, this is a template for Forge based forms. * Move user validation rules into User_Model and let forms populate the rules into their forms as useful. * Undo r18688's changes regarding the REST code. We should never accept a null resource, this breaks the REST abstraction. * Change login and user controllers to use Forge which lets us delete login.html.php and user.html.php since those now are generated by the theme-owned form template
2008-11-14Allow the HTTP get method to be called without an id to create any empty ↵Tim Almdal
template.
2008-11-14Use the shortform to load the resource.Tim Almdal