Commit Graph
2269 Commits
Author SHA1 Message Date
Bharat Mediratta b278f9680c Can't call ORM_MPTT::move_to() externally, so call Item_Model::save() instead. 2010-01-21 19:05:53 -08:00
Tim Almdal d59c6ed4f1 The admin module controller allows modules to provide a check_environment method
which is called prior to installation.  The method allows the module to provide
an error message or warnings if the module can not be installed or activated
without issues.  The admin module controller also will fire a pre_deactivate
event, which allows modules to indicate issues that may arise be deactivating the
specified module.

These messages are displayed in a dialog box prior to installation in order to
allow the gallery administrator to determine the appropriate action before proceeding.

Lays the foundation for implementing a fix for ticket #937
2010-01-21 12:57:45 -08:00
Bharat Mediratta 1e35cf28ee Reload the album after adding the photo so that MPTT pointers are correct. 2010-01-21 08:29:30 -08:00
Bharat Mediratta dde429f71e Whitespace. 2010-01-20 23:49:20 -08:00
Bharat Mediratta 16ccda0f3d Two fixes:
1) Don't call ORM_MPTT::move_to() directly.  Use the new
   model-based-validation approach of changing the parent_id and saving.

2) Item_Model::parent() can return null; check for it.
2010-01-20 23:49:10 -08:00
Bharat Mediratta e2b6cfc2d9 Make move_to protected since we don't want folks calling it on
Item_Model.  If there's a need to make this public, we should override
it in Item_Model and throw an exception there.
2010-01-20 23:47:48 -08:00
Bharat Mediratta 46d4d778ad Remove debug code. 2010-01-20 23:33:09 -08:00
Bharat Mediratta 949586c254 Oops, bug in save() -- we weren't returning the saved value! 2010-01-20 23:28:29 -08:00
Andy Staudacher 6dd92cfa1c Fix maintenance tasks / language admin for bug introduced earlier by no longer casting in ORM.
Task->done is now a string, boolean false is stored as integer 0 and loaded as string "0". On the client side that's interpreted as truthy in JavaScript.
Fix: cast "0" to (bool) before encoding to JSON.
2010-01-20 23:12:36 -08:00
Bharat Mediratta f6c48d757c Delete MY_ORM::original(). We did not have proper containment to
generate $original when we needed it, resulting in inconsistent
behavior.
2010-01-20 22:56:37 -08:00
Bharat Mediratta feefdfd533 Stop using MY_ORM::original(). 2010-01-20 22:51:18 -08:00
Bharat Mediratta 00957f79ba Throw Kohana_Exception instead of Exception on access denied, since that may bubble all the way up 2010-01-20 22:46:46 -08:00
Bharat Mediratta 995faaa27f Stop using MY_ORM::original(). It's got very odd semantics and we are
not capturing all cases for setting and resetting $original, which
leads to some weird and hard to reproduce behavior.

Instead, if we need the original just reload it from the database.
This may result in a somewhat excessive load in places, but we'll have
to fix that in a later optimization pass.
2010-01-20 22:45:19 -08:00
Bharat Mediratta 210e02f000 Throw Rest exceptions, not regular exceptions. 2010-01-20 21:13:58 -08:00
Bharat Mediratta b5cf24456f Forbidden is a 403, not a 503. 2010-01-20 00:51:34 -08:00
Bharat Mediratta 76da85a1a0 Extend Gallery_Unit_Test_Case instead of Unit_Test_Case. 2010-01-19 22:38:19 -08:00
Bharat Mediratta e39c8df19f Fix some validation checks to check to see if the original was loaded
before deciding whether or not we changed a value.

Change valid_name to be cascading, not parallel.
2010-01-19 21:20:36 -08:00
Bharat Mediratta 6aee6cde25 Move data initialization into the constructor so that it happens
before validate() is called, which is important with our two phase web
controllers.

Make valid_parent smarter about moving existing items, vs new items.
2010-01-19 20:53:21 -08:00
Bharat Mediratta e02675b730 Change "filename" to "name" in the edit album form. I'd rather have
consistency between field names than deal with underlying issues with
Forge bitching about the "name" property.
2010-01-19 19:31:01 -08:00
Bharat Mediratta afe2128bb0 Make video/x-flv a valid movie mime_type 2010-01-19 19:30:18 -08:00
Bharat Mediratta 512910962d Change "dirname" to "name" in the edit album form. I'd rather have
consistency between field names than deal with underlying issues with
Forge bitching about the "name" property.
2010-01-19 19:24:46 -08:00
Bharat Mediratta c3ed64fc6c Use property_exists() on our stdClass instead of array_key_exists() 2010-01-19 01:46:45 -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 f95442c314 Rewrite the tests entirely to cover the new REST code. 2010-01-19 01:17:29 -08:00
Bharat Mediratta 069a23e811 Make scope default to direct.
Add slug to the post params.
Fix minor output bug.
2010-01-19 01:16:59 -08:00
Bharat Mediratta a587426cfd Don't try to set the album cover for the grandparent if we don't have edit permissions for it. 2010-01-19 01:12:09 -08:00
Bharat Mediratta cb7c263b47 Return arrays instead of calling rest::reply. 2010-01-19 00:36:40 -08:00
Bharat Mediratta c059a444c7 Updated for model based validation. Fixed
change_photo_no_csrf_fails_test() which has been broken since we
deleted Rest_Controller.
2010-01-18 23:49:00 -08:00
Bharat Mediratta 4418993db9 Add slug_is_url_safe_test() 2010-01-18 23:38:39 -08:00
Bharat Mediratta 2687762aec Update for model validation. Move the url safe tests into Item_Model_Test. 2010-01-18 23:38:18 -08:00
Bharat Mediratta e06ceebaa6 No longer necessary; all photo and movie helper code is now in the model. 2010-01-18 23:25:09 -08:00
Bharat Mediratta f021505208 No longer necessary; all relevant album helper code is now in the model. 2010-01-18 23:24:06 -08:00
Bharat Mediratta c6bd3c5b26 Updated for model based validation.
change_album_no_csrf_fails_test() had been broken since we got rid of
REST_Controller, but was poorly written so we didn't realize it.  Boo.
2010-01-18 23:23:31 -08:00
Bharat Mediratta cc61e7a3e0 Update for model based validation. Use test helper. Reduce the code size greatly! 2010-01-18 23:11:02 -08:00
Bharat Mediratta 9eedf5c207 switch to test::starts_with(). 2010-01-18 22:55:16 -08:00
Bharat Mediratta 71a8375554 Whitespace. 2010-01-18 22:52:58 -08:00
Bharat Mediratta dc570aaca9 Switch from ORM_MPTT::$db_builder to db::build(). 2010-01-18 22:52:23 -08:00
Bharat Mediratta cfc0f3d0c0 Minor test cleanup. 2010-01-18 22:51:40 -08:00
Bharat Mediratta 703882f4df Update valid_parent() to disallow moving an item inside its own hierarchy.
Move move_to() inside save()
2010-01-18 22:50:50 -08:00
Bharat Mediratta efa4e230da in move_to(), move the lock to before we do any calculations so that we have the latest data. 2010-01-18 21:40:00 -08:00
Bharat Mediratta b4e6834a28 Added move_album_fails_wrong_target_type_test() 2010-01-18 21:14:43 -08:00
Bharat Mediratta 677fb08002 Updated tests to match what the expected new API for moving items.
Now to move an item, you just change its parent_id.
2010-01-18 21:12:26 -08:00
Bharat Mediratta 38c13760af Switch to using test::random_name() to avoid integer names.
Fix up rename_photo_test.
2010-01-18 20:14:09 -08:00
Bharat Mediratta 0e2f4a7a37 Fix renaming in save() by moving the actual rename action under
parent::save().  This is consistent with other changes because all
filesystem operations happen after the database change is committed.

Also, inline rename() since it's fairly simple now.
2010-01-18 20:13:46 -08:00
Bharat Mediratta b93000c0ce Kohana ticket #2504 is resolved, so this test is no longer necessary. 2010-01-18 17:20:12 -08:00
Bharat Mediratta 1cfee16e38 In valid_name, don't query on the id if it's null. 2010-01-18 13:09:58 -08:00
Bharat Mediratta 92ed5d45e6 In item_rename_fails_with_existing_name_test switch validate() to
save() now that Kohana ticket #2504 is resolved.
2010-01-18 12:56:49 -08:00
Bharat Mediratta ebb909625c Merge branch 'master' into bharat_dev 2010-01-18 12:54:26 -08:00
Bharat Mediratta 06cabecd76 Coerce some integers to strings now that ORM isn't typecasting anymore. 2010-01-18 12:49:58 -08:00
Bharat Mediratta a9f07986f6 The root parent id is 0, not null (this deviation exposed by the new lack of typecasting in ORM). 2010-01-18 12:39:42 -08:00