Commit Graph
149 Commits
Author SHA1 Message Date
Bharat Mediratta 3d4a6d6336 Remove unused untagging code from put()
Add access permissions to delete()
Remove unnecessary return value from delete()
2010-01-20 21:14:40 -08:00
Bharat Mediratta 0b5ce9dbc1 Fix a typo: $item -> $tag. 2010-01-19 01:36:15 -08:00
Bharat Mediratta 549b88643a Fix a typo "tags" -> "tag" 2010-01-19 01:35:59 -08:00
Bharat Mediratta c590fed132 Change rest::url() to take a module name and a resource. The module
does the rest.  This function is symmetrical to rest::resolve.
2010-01-19 01:33:57 -08:00
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 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 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 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
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 2f5c612036 Update database queries. 2009-12-06 21:33:17 -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 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
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
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 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 c9ccc24618 Moved the short_form init function to gallery.common and made it jQuery plugin. Dropped gallery.form.js. Applied short forms to server_add and tag admin pages. Added tag.css to admin views. Added .g-wide {}. 2009-10-18 10:32:08 -06:00
Chad Kieffer 08a22f4a39 Add tag.css to tag admin page. 2009-10-17 21:59:53 -06:00
Chad Kieffer f2b6ec6637 Move tag css from theme to the module. Introduced generic .g-inline class for inline elements, including lists and forms. 2009-10-17 12:48:54 -06:00
Chad Kieffer c876ec1f50 Apply g-short-form directly to short forms rather than via JS. Comment updates in ui.init.js. 2009-10-16 00:00:52 -06:00
Chad Kieffer 3e6ba7acc3 Renamed most, if not all css selectors from gName to g-name. Moved a few shared images from wind to lib. Deleted unused images in the admin_wind. This will likely break a few ajax features. 2009-10-04 00:27:22 -06:00
Tim Almdal 60d35b8992 Use the block_manager to manage site sidebar panels. Fixes ticket #110.
* Extend block_manager to handle sidebar blocks. get_available has become get_available_admin_blocks, get_list becomes get_admin_list.
* Create new functions get_available_site_blocks which will look for gallery_block get_available_site_blocks.
* Refactor sidebar_blocks into a separate function and then call block_manager::get_html(site.sidebar). Convert image_block to use block management instead of theme::sidebar_blocks
* Change the block_manager api so that the theme is passed into the get method. convert info to the new sidebar block approach
* Convert the user module to use the new sidebar block structure. remove the installers for info and image_block modules.
* Convert tag and rss modules to the new sidebar framework. reset the version number to 1 for info and image_block modules.
* Change the get_html method to ignore empty blocks and change the individual handlers to return an empty string if no block is generated
* Add a warning message if no sidebar blocks are active and provide a link to the admin page that configures the sidebar.
2009-09-30 07:31:12 -07:00
Bharat Mediratta df85f43aa1 Remove unused $feed->link. 2009-09-08 17:05:38 -07:00
Andy Staudacher a5dfc81a8f Merge commit 'upstream/master'
Conflicts:

	modules/akismet/views/admin_akismet.html.php
	modules/comment/helpers/comment_rss.php
	modules/gallery/helpers/gallery_rss.php
	modules/gallery/libraries/I18n.php
	modules/gallery/views/permissions_browse.html.php
	modules/gallery/views/simple_uploader.html.php
	modules/info/views/info_block.html.php
	modules/organize/controllers/organize.php
	modules/organize/views/organize.html.php
	modules/organize/views/organize_album.html.php
	themes/default/views/album.html.php
	themes/default/views/movie.html.php
	themes/default/views/photo.html.php
2009-08-29 14:17:48 -07:00
Andy Staudacher c01ac42c46 Refactor all calls of p::clean() to SafeString::of() and p::purify() to SafeString::purify().
Removing any p::clean() calls for arguments to t() and t2() since their args are wrapped in a SafeString anyway.
2009-08-29 12:48:40 -07:00
Bharat Mediratta 4828db003f Remove 'ENGINE=InnoDB' specification from tables that we create. Use
the system's default table specification.  Fixes ticket #597.
2009-08-27 15:47:54 -07:00
Bharat Mediratta 44bc74edb9 Change search callbacks to use the event system, so move them out of
xxx_search helpers and into xxx_event helpers.
2009-07-28 20:30:34 -07:00
Bharat Mediratta 1e90e40d3a Use events to generate menus, instead of having xxx_menu helpers.
This is the first step towards having a simple, lightweight and
unified API for module interaction.
2009-07-28 13:47:22 -07:00
Tim Almdal a7f4d7aced Revert commit 078c77a62b and change the
tag_event:item_edit_form to use the new Form_Script library to inject
script into a form.

Signed-off-by: Tim Almdal <tnalmdal@shaw.ca>
2009-07-28 21:00:25 +08:00
Tim Almdal 975a5ded7b Clean up amd simplify the tag processing: Only allow comma separators between
phrases.  Using only 1 separator cleans up the javascript as well, as we
can use some of the jquery autocomplete to set the tag separator.

Signed-off-by: Tim Almdal <tnalmdal@shaw.ca>
2009-07-28 09:16:57 +08:00
Tim Almdal ecc9203c23 Standardize the specification of tags.
With this patch a comma(,) is the only valid tag separator.  Spaces
are allowed in tags and phrases no longer need to be specified with a
dot.

Signed-off-by: Tim Almdal <tnalmdal@shaw.ca>
2009-07-28 06:28:31 +08:00