Commit Graph
173 Commits
Author SHA1 Message Date
Bharat Mediratta 35cfbfdef4 Pass extra args on to the block function.
Avoid excess string concatenation (not benchmarked).
2008-11-22 21:50:39 +00:00
Bharat Mediratta c6f0cc036d Move all block callbacks from View::block_type() to
$theme->block_type() so that the themer has a consistent interface.
Also added a bunch more callbacks and normalized the names so that the
module author has plenty of options for where stuff gets put on the
page.  Especially renamed album/photo/sidebar to be album_blocks()
photo_blocks() and sidebar_blocks() to make it clear that those are
going to be larger content sections and not just basic insertion
points.

Used __call() to collapse all functions in the theme, which
incidentally makes it trivially easy to add a new insertion point.
2008-11-22 21:46:34 +00:00
Jozef Selesi 6028447993 An Atom library prototype. Its purpose is to explore the cost of us supporting Atom as the default input and output format of RESTful controllers. Only the constructs necessary for representing comment feeds and entries have been implemented. Its output are valid Atom 1.0 documents. The test contains examples of how to make feeds and entries. 2008-11-22 18:22:53 +00:00
Tim Almdal a347ed5c10 Correct case on helper class names. By convention, helper class names are lower case:
http://docs.kohanaphp.com/general/helpers

Remove block_helper file as the abstract class os no longer required.
2008-11-22 06:01:08 +00:00
Tim Almdal 8eadddfa87 Convert gmaps, info, and tag modules to the new block module 2008-11-22 05:51:15 +00:00
Jozef Selesi bb53a0b99f * Added test for rest::request_method().
* Implemented delete in comment.
2008-11-22 01:31:15 +00:00
Tim Almdal 01c8cdc8dd Convert the carousel module to provide its block through the new api 2008-11-21 23:55:29 +00:00
Tim Almdal 60191f1d2c Be consistent in naming the album_top block 2008-11-21 23:36:41 +00:00
Jozef Selesi 88f799be6f Fixed a bug in the REST controller dispatcher and added a test case that excercises it. 2008-11-21 21:07:36 +00:00
Tim Almdal 6ec266faa6 2nd attempt at inserting html by modules. 2008-11-21 20:13:28 +00:00
Tim Almdal 992cf22c79 Revert module block approach 2008-11-21 07:06:11 +00:00
Tim Almdal b78cee6395 A look at away to allow modules to define html head contents (links and js) and also allow modules to contribute blocks to the layout. 2008-11-20 17:32:58 +00:00
Bharat Mediratta e2b040c6ae Add a missing slash in the HTTP return code 2008-11-20 06:49:43 +00:00
Bharat Mediratta 66192bb214 Break dispatch tests up into little ones. 2008-11-20 06:37:26 +00:00
Tim Almdal 6fd261c8b0 Add unittest and caching for ORM_MTPP::descendants 2008-11-20 06:05:22 +00:00
Tim Almdal 4c587bdb01 Limit File_Structure_Test to only apply the regex expression if views is contained in the path name. 2008-11-20 05:24:24 +00:00
Tim Almdal 604e58346b Add unittest and caching to ORM_MTPP::descendants_count 2008-11-20 05:06:24 +00:00
Tim Almdal 29cc48ebcf Correct missing quotes 2008-11-20 04:41:29 +00:00
Bharat Mediratta 611627231b Clean up the MediaRSS module a little bit:
* Media_RSS_Controller::$LIMIT is now self::$page_size
* We use ORM_MPTT descendant_counts()
* If the page is out of bounds, put it on a boundary
* Move pub_date into the controller to simplify the mrss file
* Put all the view assignment in one block for easier reading
* Removed stray ; from the end of lines in the mrss file

Clean up ORM_MPTT a bit:
* fix spelling: decendent -> descendant
* Remove unnecessary order_by() clauses
* Set the default for $type to null (not "all").
2008-11-20 02:59:43 +00:00
Jozef Selesi c3fc1cb7ec * Added HTTP status constants and helper functions to REST helper.
* 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-20 01:25:29 +00:00
Tim Almdal bd76b2e89f changed descendents_by_type to descendents and added descendent_count 2008-11-20 00:45:40 +00:00
Tim Almdal d48d71a705 Correct typo 2008-11-20 00:22:36 +00:00
Bharat Mediratta 9ddc8c8aab Fix typo. 2008-11-19 23:36:50 +00:00
Bharat Mediratta 4a4eac31ad Create url::abs_site() and url::abs_file() to allow us to generate
full URLs with a clean API, and isolate the cruddy party where we have
to hardcode the server protocol into a single file.
2008-11-19 23:33:50 +00:00
Bharat Mediratta 1b36ce6c7e Fix broken path in url()
Fix some style issues
2008-11-19 22:47:30 +00:00
Tim Almdal 103bd8e8d2 Add the original item height and width to the item table 2008-11-19 22:45:30 +00:00
Tim Almdal c8dc84d502 Change the regex to assert true for files that match the pattern "#/views/.*?(\.html|mrss)\.php$#" 2008-11-19 22:39:44 +00:00
Tim Almdal 8825687d03 Change the view_files_end_in_html_dot_php_test to view_files_correct_suffix_test and change it to also accept mrss as a valid suffix 2008-11-19 22:20:23 +00:00
Tim Almdal b3314fc1dc Update the media rss template to include the resize and the fullsize
added descendants by type method to the item model to allow for the selection of children by type
2008-11-19 18:23:30 +00:00
Bharat Mediratta 161998dde6 Fix some broken-ness:
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-19 06:35:54 +00:00
Tim Almdal e14d5574b6 Cleanup media rss feed
added parameters to thumbnail_url and resizes_url to be passed to the url::base call to generate ful urls
2008-11-19 06:05:38 +00:00
Bharat Mediratta 4ff0997c75 Fix a mistake in the route that let people try to get to the rest controller (it would fail, but this way they get a 404 instead of another error). 2008-11-19 04:22:17 +00:00
Bharat Mediratta 5638fc5fb6 Change the way that we do RESTful routing.
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-19 04:20:35 +00:00
Bharat Mediratta e0efdee8b2 Fix /item -> /items to conform to new REST api. 2008-11-19 04:14:09 +00:00
Bharat Mediratta c0aa61787c Change output_format() to autodetect for html / xml / json 2008-11-19 03:42:43 +00:00
Bharat Mediratta 3e67a35cb0 change mime_type column from 255 chars to 64 2008-11-19 03:39:38 +00:00
Bharat Mediratta 89bb3c42f7 Update the unit test for mime types. Can't test it right now because routing is broken for the test framework so we have to fix that first. 2008-11-19 03:39:12 +00:00
Tim Almdal c7b2090f0c add the mime type column on the item table 2008-11-19 03:29:53 +00:00
Bharat Mediratta df4832bf6f Change Media_RSS_Controller so that it does not extend REST_Controller, since it
doesn't refer to a fixed resource or collection of resources.

Fix some minor bugs in the code so that we can actually generate a
feed.  It looks pretty cool!  Improved pagination links, but didn't actually test them.
2008-11-19 03:17:56 +00:00
Tim Almdal 693080669a fix a few minor issues 2008-11-19 02:50:11 +00:00
Tim Almdal ad7ace9b72 The continuing evolution of the slideshow...
1) added a mime_type property to the item module(no database change)
2) created a media_rss module
3) moved most of the functionality for the downloading the images to the media_rss module
2008-11-19 02:31:20 +00:00
Jozef Selesi b2772f5a05 * Renamed the album, item and photo controllers to albums, items and photos 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-19 00:12:25 +00:00
Jozef Selesi 1992343c2e * Changed REST API. Now there are two separate methods for forms:
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 23:40:47 +00:00
Tim Almdal 4bf486955c The start of the slideshow module. Mostly framework stuff, no real implementation yet 2008-11-18 19:09:24 +00:00
Tim Almdal 6f4fae0786 Added the is_installed to the module helper and change to photo.html to not try to display a comment if it is not installed 2008-11-18 16:26:36 +00:00
Jozef Selesi b63ea2cdbf - All comments of an item can now be seen /comments?item_id=
- 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-18 15:48:08 +00:00
Bharat Mediratta d4fc15f76c Fix a typo in the text MPTT link 2008-11-18 09:07:46 +00:00
Bharat Mediratta d8225e44c4 Fix a typo user_id -> owner_id 2008-11-18 09:03:49 +00:00
Jozef Selesi 3ebb751cda First iteration of REST controller refactoring. RESTful controllers that 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-18 08:28:32 +00:00
Bharat Mediratta c91e90406b Add output formats to our REST controllers. Add support for JSON and
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-17 00:30:18 +00:00