summaryrefslogtreecommitdiff
path: root/modules/rest/helpers
AgeCommit message (Collapse)Author
2010-09-01Make RENAME TABLE operations idempotent so that in case there's aBharat Mediratta
failure of some kind we can restart the upgrade and it'll continue. Fixes ticket #1325.
2010-08-15We use UTF-8 everywhere. Fixes ticket #1285.Bharat Mediratta
2010-08-09Force the charset to UTF-8 when viewing the HTML form of REST output.Bharat Mediratta
2010-08-08"REST api" --> "REST API".Bharat Mediratta
2010-08-08Add a button to the user profile page to let you reset your REST APIBharat Mediratta
key. This is useful if you think it's been compromised in some way. Fixes ticket #1226.
2010-08-08Add JSONP support. You must specify &output=jsonp?callback=<js_function>Bharat Mediratta
Fixes ticket #1205.
2010-08-08Create a registry of REST resources and call it "registry".. PrettyBharat Mediratta
simple, actually. Fixes ticket #1173.
2010-07-23More patches as part of #1225. Change the 'core' modules to use the json::replyTim Almdal
method to set the content type header and encode the response as a json object
2010-06-19Oops. Fix up a bad instance of $user in rest::access_key() introducedBharat Mediratta
in my last change.
2010-06-18Simplify rest::get_access_key($user) to rest::access_key() thatBharat Mediratta
returns just the access key string for the active user. That's how we use the API, so keep it simple.
2010-06-15Guard against relationships() not returning an array.Bharat Mediratta
2010-06-11Send back the REST API version as a header. It's on every request,Bharat Mediratta
which sucks, but it's totally unobtrusive because it's a header so that's ok. Decided that the current version is "3.0" although it will surely change before the final 3.0 release. Fixes ticket #1148
2010-06-07If the identity provider changes then delete all the rest user_access_keys, ↵Tim Almdal
as they are no longer valid. (i.e. all the related users have been deleted.)
2010-06-05Add an advanced setting to allow developers to allow guest access toBharat Mediratta
REST entities.
2010-03-30Rest -> RESTBharat Mediratta
2010-03-30Rename "access_token" to "access_key" in the code for consistency.Bharat Mediratta
2010-03-30Rename "user_access_tokens" table to "user_access_keys" as step 1 of aBharat Mediratta
multi step process to refer to REST access keys as "access_key" everywhere. Bump the rest module to version 2.
2010-03-03Guests don't get access to the REST API.Bharat Mediratta
2010-03-03Update the copyright to 2010. It's only 3 months into the year :-)Bharat Mediratta
2010-02-20When using rest::reply(), don't call var_export() if the response is empty.Bharat Mediratta
2010-02-19Refactor away the "display_all" construct in User_Profile_Controller.Bharat Mediratta
"display_all" is too coarse, and we should be letting event handlers make the appropriate decision on what to display and when. This duplicates some code, but it's now very clear in the event handlers what's getting shown. Throw a 404 if we try to view the user profile for a missing user. The only feature change in this should be that we now display the name, full name and website for a user to any other registered user, which makes sense since these are typically public fields. Don't show any of the edit buttons unless identity::is_writable()
2010-02-14If the return object is empty still return the empty object in the json ↵Tim Almdal
response.
2010-01-31Fix lots of warnings that pop up when we're in E_STRICT mode. They'reBharat Mediratta
mostly issues around uninitialized variables, calling non-static functions in a static context, calling Session functions directly instead of on its singleton, passing non-variables by reference, and subclasses not using the same interface as the parent class.
2010-01-30Protect REST login controller from brute force attacks too.Andy Staudacher
And make the REST auth token less predictable by using a better source for randomness.
2010-01-29Use ? or & as appropriate when appending output=html.Bharat Mediratta
2010-01-29Use var_export instead of print_r for better clarity.Bharat Mediratta
2010-01-25Merge branch 'master' of git@github.com:gallery/gallery3 into bharat_devBharat Mediratta
Conflicts: modules/gallery/libraries/MY_ORM.php
2010-01-24Add the active notifications and rest api key to user profile page.Tim Almdal
2010-01-22output_type --> outputBharat Mediratta
2010-01-22Reshape the rest code to be more consistent with regards toBharat Mediratta
relationships. Now when you view a resource, it has 4 top level elements: url: the url of this resource resource: array of key value pairs describing the resource members: array of urls to members of this collection relationships: array of array of members. Relationships are a special type of collection that links two different resources together. To remove a relationship, just DELETE its url. To create a relationship, POST to its collection. Individual modules can add their own relationships to any resource via a callback mechanism. Example: Array( [url] => http://g3.com/rest/item/1 [resource] => Array ( [id] => 1 [album_cover_item_id] => 4 [captured] => [created] => 1264056417 [description] => [height] => ... ) [members] => Array( [0] => http://g3.com/rest/item/2 [1] => http://g3.com/rest/item/3 [2] => http://g3.com/rest/item/4 [3] => http://g3.com/rest/item/5 ... ) [relationships] => Array( [tags] => Array ( [0] => http://g3.com/rest/tag_item/2,1 [1] => http://g3.com/rest/tag_item/23,1 ) ) )
2010-01-21whitespace.Bharat Mediratta
2010-01-20Improve robustness in resolve() against bad urls..Bharat Mediratta
2010-01-20Move access key creation into a helper function.Bharat Mediratta
2010-01-19Move rest::send_headers back into Rest_Exception.Bharat Mediratta
2010-01-19Don't send headers if they're already sent.Bharat Mediratta
2010-01-19Use an appropriate json content typeBharat Mediratta
2010-01-19Change rest::url() to take a module name and a resource. The moduleBharat Mediratta
does the rest. This function is symmetrical to rest::resolve.
2010-01-19Add rest::url() for convenience.Bharat Mediratta
2010-01-10Merge branch 'master' of git@github.com:gallery/gallery3 into bharat_devBharat Mediratta
2010-01-09Fix for ticket #972 and more. In Kohana 2.4, ORM::delete_all ignores any whereTim Almdal
clauses and deletes all the entries in the table unless an array of id's are passed as the parameter. This fix used the Database_builder to specify any where conditions. Thanks psvo for find the first one. :-)
2010-01-08Change url parsing in resolve() to ignore the query string.Bharat Mediratta
2010-01-04Further progress on refining the REST server side code.Bharat Mediratta
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-03Simplify the REST API code. Here's what I did:Bharat Mediratta
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-02Remove the Rest_Exception::trigger method.Tim Almdal
2010-01-02Correct file structure tests, Have the tests delete the userid they create ↵Tim Almdal
so as not to impact other tests.
2009-12-31Move the set_active_user and normalize_request methods to rest.php helperTim Almdal
2009-12-31Create a Rest_Exception class and use it to convey status to the client ↵Tim Almdal
instead of calling rest::forbidden and other rest helper error messages.
2009-12-301) Remove the rest::not_found method and replace it with "throw new ↵Tim Almdal
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-29Found another where statement that required convertingTim Almdal
2009-12-27Clean up validation the check for duplicate names or slugs, finish ↵Tim Almdal
converting the rest API to Kohana 2.4