summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Almdal <tnalmdal@shaw.ca>2009-11-06 23:05:20 -0800
committerTim Almdal <tnalmdal@shaw.ca>2009-11-06 23:05:20 -0800
commitbeb63a83804e57050a23b3a90ebed93be41b6769 (patch)
tree992877365f08f9bb39af1a405cd25f1c0c950f32
parentf102693966824cf1bc1421282d89f1ee2318ed9e (diff)
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
-rw-r--r--lib/gallery.in_place_edit.js7
-rw-r--r--modules/gallery/libraries/InPlaceEdit.php8
-rw-r--r--modules/tag/controllers/admin_tags.php18
-rw-r--r--modules/tag/css/tag.css4
4 files changed, 22 insertions, 15 deletions
diff --git a/lib/gallery.in_place_edit.js b/lib/gallery.in_place_edit.js
index 38c4efb1..4a90581b 100644
--- a/lib/gallery.in_place_edit.js
+++ b/lib/gallery.in_place_edit.js
@@ -15,6 +15,13 @@
var tag_width = $(target).width();
$(self).data("tag_width", tag_width);
+ var form = $("#g-inplace-edit-form");
+ if (form.length > 0) {
+ var parent = form.parent();
+ form.remove();
+ parent.children().show();
+ }
+
$.get(self.options.form_url.replace("__ID__", $(target).attr('rel')), function(data) {
var parent = $(target).parent();
parent.children().hide();
diff --git a/modules/gallery/libraries/InPlaceEdit.php b/modules/gallery/libraries/InPlaceEdit.php
index 057874e3..67ab3805 100644
--- a/modules/gallery/libraries/InPlaceEdit.php
+++ b/modules/gallery/libraries/InPlaceEdit.php
@@ -35,22 +35,22 @@ class InPlaceEdit_Core {
return $instance;
}
- public function add_action($action) {
+ public function action($action) {
$this->action = $action;
return $this;
}
- public function add_rules($rules) {
+ public function rules($rules) {
$this->rules += $rules;
return $this;
}
- public function add_messages($messages) {
+ public function messages($messages) {
$this->messages += $messages;
return $this;
}
- public function add_callback($callback) {
+ public function callback($callback) {
$this->callback = $callback;
return $this;
}
diff --git a/modules/tag/controllers/admin_tags.php b/modules/tag/controllers/admin_tags.php
index d79f697c..67587c2e 100644
--- a/modules/tag/controllers/admin_tags.php
+++ b/modules/tag/controllers/admin_tags.php
@@ -70,7 +70,7 @@ class Admin_Tags_Controller extends Admin_Controller {
$tag = ORM::factory("tag", $id);
if ($tag->loaded) {
print InPlaceEdit::factory($tag->name)
- ->add_action("admin/tags/rename/$id")
+ ->action("admin/tags/rename/$id")
->render();
}
}
@@ -83,15 +83,15 @@ class Admin_Tags_Controller extends Admin_Controller {
kohana::show_404();
}
- $inplaceedit = InPlaceEdit::factory($tag->name)
- ->add_action("admin/tags/rename/$tag->id")
- ->add_rules(array("required", "length[1,64]"))
- ->add_messages(array("in_use" => t("There is already a tag with that name")))
- ->add_callback(array($this, "check_for_duplicate"));
+ $in_place_edit = InPlaceEdit::factory($tag->name)
+ ->action("admin/tags/rename/$tag->id")
+ ->rules(array("required", "length[1,64]"))
+ ->messages(array("in_use" => t("There is already a tag with that name")))
+ ->callback(array($this, "check_for_duplicate"));
- if ($inplaceedit->validate()) {
+ if ($in_place_edit->validate()) {
$old_name = $tag->name;
- $tag->name = $inplaceedit->value();
+ $tag->name = $in_place_edit->value();
$tag->save();
$message = t("Renamed tag %old_name to %new_name",
@@ -101,7 +101,7 @@ class Admin_Tags_Controller extends Admin_Controller {
print json_encode(array("result" => "success"));
} else {
- print json_encode(array("result" => "error", "form" => $inplaceedit->render()));
+ print json_encode(array("result" => "error", "form" => $in_place_edit->render()));
}
}
diff --git a/modules/tag/css/tag.css b/modules/tag/css/tag.css
index 03ed444b..6d6438e3 100644
--- a/modules/tag/css/tag.css
+++ b/modules/tag/css/tag.css
@@ -91,6 +91,6 @@
padding: .1em 0 .2em 0;
}
-#g-rename-tag-form ul {
+#g-tag-admin form ul {
margin-bottom: 0;
-} \ No newline at end of file
+}