first helper for search functionality
[phpfspot.git] / phpfspot.js
index ed19372f449a6777938c1cbcaee50fba71faeb94..4951fe1fa1f2dbf8d0b97daafed6498b4e9e45f3 100644 (file)
@@ -1,5 +1,99 @@
 function showImage(id)
 {
    content = document.getElementById("content");
-   content.innerHTML = HTML_AJAX.grab('rpc.php?action=showphoto&id=' + id);
+   content.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=showphoto&id=' + id));
+}
+
+function showCredits()
+{
+   content = document.getElementById("content");
+   content.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=showcredits'));
+}
+
+function Tags(mode, id)
+{
+   if(mode == "add") {
+      // add the tag to users session
+      HTML_AJAX.grab(encodeURI('rpc.php?action=addtag&id=' + id));
+   }
+   else if(mode == "del") {
+      // del the tag from users session
+      HTML_AJAX.grab(encodeURI('rpc.php?action=deltag&id=' + id));
+   }
+   else if(mode == "reset") {
+      HTML_AJAX.grab(encodeURI('rpc.php?action=resettags'));
+   }
+   else if(mode == "condition") {
+      setCheckedValue(id, id.value);
+      HTML_AJAX.grab(encodeURI('rpc.php?action=tagcondition&mode=' + id.value));
+   }
+   
+   refreshAvailableTags();
+   refreshSelectedTags();
+   refreshPhotoIndex();
+
+}
+
+function refreshAvailableTags()
+{
+   // update available tags
+   content = document.getElementById("available_tags");
+   content.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=show_available_tags'));
+}
+
+function refreshSelectedTags()
+{
+   // update selected tags
+   content = document.getElementById("selected_tags");
+   content.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=show_selected_tags'));
+}
+
+function showPhotoIndex()
+{
+   HTML_AJAX.replace(document.getElementById("content"), encodeURI('rpc.php?action=show_photo_index'));
+}
+
+function showBubbleDetails(object, id, direction)
+{
+   HTML_AJAX.replace(object, encodeURI('rpc.php?action=showbubbledetails&id=' + id + '&direction=" + direction'));
+}
+
+// if photo index is currently shown, refresh it
+function refreshPhotoIndex()
+{
+   if(document.getElementById("matrix") != undefined) {
+      showPhotoIndex();
+   }
+}
+
+function click(object)
+{
+   if(object.blur)
+      object.blur();
+
+}
+
+// set the radio button with the given value as being checked
+// do nothing if there are no radio buttons
+// if the given value does not exist, all the radio buttons
+// are reset to unchecked
+function setCheckedValue(condition, value) {
+
+   var count = condition.length;
+   if(count == undefined) {
+      condition.checked = (condition.value == value.toString());
+      return;
+   }
+   for(var i = 0; i < count; i++) {
+      condition[i].checked = false;
+      if(condition[i].value == value.toString()) {
+         condition[i].checked = true;
+      }
+   }
+}
+
+function startsearch()
+{
+   searchfor = document.getElementsByName('searchfor')[0].value;
+   HTML_AJAX.grab(encodeURI('rpc.php?action=search&for=' + searchfor));
 }