Commit Graph

252 Commits

Author SHA1 Message Date
Bharat Mediratta
9e9c5397b7 Qualify the Bad Request output when the name is missing 2010-01-17 16:59:25 -08:00
Bharat Mediratta
bb79a1455a Remove unnecessary comment. 2010-01-17 16:55:11 -08:00
Bharat Mediratta
5c49c041e7 Use "(string) $form" instead of "$form->__toString()" 2010-01-16 22:42:02 -08:00
Bharat Mediratta
31454d37b3 Improve REST tag support.
- Add support for retrieving a list of members from a collection
- Implement put(), post() and delete() for tags.
- Use tag_rest::delete() as a way to remove members from the tag collection
2010-01-05 13:41:06 -08:00
Bharat Mediratta
d18be7fe55 $offset should be null by default, not 0. Hold over bug from the K24 migration. 2010-01-05 12:05:22 -08:00
Bharat Mediratta
3fffa18e65 Further progress on refining the REST server side code.
1) Deal in fully qualified URL resources through the rest
   interface.  All rest methods are now passed the complete url in
   request->url.

2) Create rest::resolve() which lets individual resource definition
   code convert a full url into the appropriate matching resource.
   Implement gallery_rest::resolve() and tag_rest::resolve()

3) Reimplement tag_rest's get() and post() methods.  They're much
   simpler now.

4) Implement the tags_rest helper which supports working with the
   entire tags collection.
2010-01-04 21:48:21 -08:00
Bharat Mediratta
0e3327bca7 Simplify the REST API code. Here's what I did:
1) Simplify gallery_rest to return flat models, no children and do no
   validation for now.
2) Flatten the REST replies and use HTTP codes to indicate
   success/failure instead of additional status messages.
3) Use the message and error code support in the base Exception class,
   instead of brewing our own in Rest_Exception.
4) Get rid of rest::success() and rest::fail() -- we only need
   rest::reply() since all failures are covered by throwing an
   exception.
5) Get rid of /rest/access_key and just use /rest for authentication.
6) Inline and simplify rest::normalize_request since we only use it once
7) Change rest::set_active_user to succeed or throw an exception
8) Extract Rest_Exception::sendHeaders into rest::send_headers()

Here's what's currently broken:
1) Data validation.  There currently is none
2) Logging.  That's gone too
3) image block and tag code is broken
4) Tests are broken
5) No movie support
2010-01-03 20:30:35 -08:00
Tim Almdal
5b9801092b Remove the Rest_Exception::trigger method. 2010-01-02 16:55:06 -08:00
Tim Almdal
ff95c4079e Fix the tag_rest helper tests 2010-01-02 15:48:54 -08:00
Tim Almdal
28597ba533 Correct file structure tests, Have the tests delete the userid they create so as not to impact other tests. 2010-01-02 14:31:59 -08:00
Tim Almdal
40d496edee Remove extra debug statement in rest_controller::access_key() and restructure the Rest_Tag_Helper_Test to only create items as required for test in each test. 2009-12-31 13:24:00 -08:00
Tim Almdal
1a12a5e3c8 Create a Rest_Exception class and use it to convey status to the client instead of calling rest::forbidden and other rest helper error messages. 2009-12-31 11:51:51 -08:00
Tim Almdal
11792a12bb 1) Remove the rest::not_found method and replace it with "throw new Kohana_404_Exception
2) Don't use the input path to lookup the item via relative_path_cache.  Instead use url::get_item_from_uri method.
2009-12-30 17:08:01 -08:00
Bharat Mediratta
5d6e264211 whitespace. 2009-12-30 12:07:24 -08:00
Tim Almdal
bccb6fc021 Clean up validation the check for duplicate names or slugs, finish converting the rest API to Kohana 2.4 2009-12-27 08:32:12 -08:00
Tim Almdal
3060a6f662 Merge branch 'master' into talmdal_dev
Conflicts:
	modules/gallery/controllers/albums.php
	modules/gallery/controllers/movies.php
	modules/gallery/controllers/photos.php
2009-12-26 11:24:50 -08:00
Tim Almdal
586f2d78b8 Add the functionality to add, delete and rename tags via the Gallery3 remote interface. 2009-12-24 19:25:14 -08:00
Bharat Mediratta
057e8d09af Convert a bunch of leftover kohana::show_404 calls to throw
Kohana_404_Exception instead.  These are the ones where we used a
lower-case 'k' so my previous filter didn't catch it.
2009-12-23 20:51:33 -08:00
Tim Almdal
cf6de01f1e Provide a REST interface to retrieve tags or tagged items.
GET  /tag?limit=nn,offset=nn  Retrieve all tags sorted by count descending
GET  /tag/uri/uri/uri         Retrieve all the tags for the resource specified by path
GET  /tag/t1/t2/t3            Retrieve all the items that have the specified tags
                              Can specifiy limit and offset to limit response size
2009-12-23 14:20:23 -08:00
Bharat Mediratta
8b9a02084a Updates for the latest version of Kohana 2.4:
1) Controller::$input is gone -- use Input::instance() now
2) Handle new 'database.<default>.connection.params' parameter
3) Handle new 'cache.<default>.prefix' parameter
2009-12-21 21:27:43 -08:00
Bharat Mediratta
046382c3e7 Remove some unused references to Database::instance() 2009-12-18 11:27:44 -08:00
Bharat Mediratta
2f5c612036 Update database queries. 2009-12-06 21:33:17 -08:00
Bharat Mediratta
3d0a7a33ad Fix a few more database queries 2009-12-06 20:38:57 -08:00
Bharat Mediratta
2132c9a96d Fix some database calls. 2009-12-06 20:19:54 -08:00
Bharat Mediratta
96b00d6cfe Convert some more Database::instance() calls to db::build() form. 2009-11-26 21:14:54 -08:00
Bharat Mediratta
1fd0e14359 Convert all DB where() calls to take 3 arguments.
Convert all open_paren() calls to and_open() or or_open() as appropriate.
2009-11-26 12:09:04 -08:00
Bharat Mediratta
0121bfd585 ORM::orderby -> ORM::order_by 2009-11-25 19:26:52 -08:00
Bharat Mediratta
0ef6994f23 ORM::orderby -> ORM::order_by 2009-11-25 19:25:34 -08:00
Bharat Mediratta
4a417708f0 Kohana::show_404() -> throw new Kohana_404_Exception() 2009-11-25 13:51:33 -08:00
Bharat Mediratta
f50dbd992d Merge branch 'master' of git@github.com:gallery/gallery3 into bharat_dev
Conflicts:
	modules/gallery/controllers/rest.php
2009-11-25 13:40:47 -08:00
Bharat Mediratta
2e420522ec Preliminary work to cut over to Kohana 2.4
- Kohana::log() -> Kohana_Log::add()
- Kohana::config_XXX -> Kohana_Config::instance()->XXX
- Implement View::set_global in MY_View
- Updated Cache_Database_Driver to latest APIs
- ORM::$loaded -> ORM::loaded()
- Updated item::viewable() to use K2.4 parenthesization
2009-11-25 13:22:24 -08:00
Tim Almdal
454a96f48f Refactor the tags to remove the REST_Controller. Partial fix for ticket #917 2009-11-25 09:08:33 -08:00
Bharat Mediratta
5e9bbbe490 Convert the Simple Uploader form over to Forge, and use the event
model to let the Tags module modify it.  This brings it inline with
our other module-extensible form based interactions.
2009-11-20 19:41:45 -08:00
Tim Almdal
eb34b301a7 Add the ability to add tags for files that are uploaded using the simple loader. 2009-11-19 18:08:32 -08:00
Tim Almdal
57adefc5ba Revert "Create theme::get_var(), theme::set_var() methods to set the options of the active site theme. Change all refrences to theme options to use these methods. Update the version number of Gallery to 20 and move any them related options to the be stored under the active theme."
This reverts commit 26114972c3.
2009-11-19 11:44:01 -08:00
Tim Almdal
26114972c3 Create theme::get_var(), theme::set_var() methods to set the options of the active site theme. Change all refrences to theme options to use these methods. Update the version number of Gallery to 20 and move any them related options to the be stored under the active theme. 2009-11-18 15:36:13 -08:00
Bharat Mediratta
1067e68292 Redesign the way that we consider page types to create buckets of page
types, and a subtype for specifics.  Currently the top level bucket

   collection, item, other

Here are the core subtypes so far:

   collection: album, search, tag
   item: movie, photo
   other: login, reset, comment-fragment, comment

It's legal to create new page_subtypes whenever you want.  Use the
appropriate page_type to get the coarse grain behavior that you want.
2009-11-17 14:04:45 -08:00
Bharat Mediratta
846f365db9 Normalize tags a bit.
- Create Tag_Model::url() to mimic Item_Model::url()
- Use the same pagination logic as we do for viewing items
2009-11-14 16:17:19 -08:00
Tim Almdal
26f8240e34 Revert "Try an new approach to extending forms. Create an extend_form event. For the first attempt replace the comment_add_form and item_add_form events."
This reverts commit 809e738536.
2009-11-09 11:52:43 -08:00
Tim Almdal
87f00a5ec5 Merge branch 'master' into talmdal_dev 2009-11-07 07:35:15 -08:00
Tim Almdal
beb63a8380 Clean up the In place edit api:
1) Only allow 1 in place edit to be active at a time (gets around the issue of using an id to identify the form
2) remove the add_ prefix from some of the api methods
3) clean up inconsistent naming
2009-11-06 23:05:20 -08:00
Tim Almdal
c40735c922 Merge branch 'master' into talmdal_dev 2009-11-06 22:14:32 -08:00
Tim Almdal
a2d5d8091f The ajaxify_tag_form was not being called when the block was created. Moved the code to ajaxify the add form into the block html and deleted tag.js. Fixes Ticket #872 2009-11-06 07:34:56 -08:00
Tim Almdal
44ae88e8e1 Merge branch 'master' into talmdal_dev 2009-11-06 07:02:55 -08:00
Tim Almdal
72a8ce696e Refactor out the in place editting and use the new gallery.in_place_edit widget to manage the tag renames. Part the fix for ticket #750. 2009-11-05 13:01:01 -08:00
Tim Almdal
809e738536 Try an new approach to extending forms. Create an extend_form event. For the first attempt replace the comment_add_form and item_add_form events. 2009-11-01 13:14:11 -08:00
Tim Almdal
7ea13b3869 Normalize capitalization ticket #596 2009-10-28 12:15:52 -07:00
Chad Kieffer
6ce8733efc Correct tag admin list markup that I likely hacked up during recent commits. These HTML lists now validate. 2009-10-27 07:35:34 -07:00
Chad Kieffer
367e6a8983 Standardize message markup, make the update block status message translatable. 2009-10-23 05:41:41 -07:00
Chad Kieffer
093b209807 Removed console.log() debug output. 2009-10-20 23:22:16 -06:00