fixed syntax error in phpfspot.js
[phpfspot.git] / phpfspot.js
index c691b55949c62ddc83e37b421972a05a47acc339..523bc4d581f26f4679f315def2614eb29a96080e 100644 (file)
@@ -1,27 +1,31 @@
 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('rpc.php?action=showcredits');
+   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('rpc.php?action=addtag&id=' + id);
+      HTML_AJAX.grab(encodeURI('rpc.php?action=addtag&id=' + id));
    }
    else if(mode == "del") {
       // del the tag from users session
-      HTML_AJAX.grab('rpc.php?action=deltag&id=' + id);
+      HTML_AJAX.grab(encodeURI('rpc.php?action=deltag&id=' + id));
    }
    else if(mode == "reset") {
-      HTML_AJAX.grab('rpc.php?action=resettags');
+      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();
@@ -34,25 +38,24 @@ function refreshAvailableTags()
 {
    // update available tags
    content = document.getElementById("available_tags");
-   content.innerHTML = HTML_AJAX.grab('rpc.php?action=show_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('rpc.php?action=show_selected_tags');
+   content.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=show_selected_tags'));
 }
 
 function showPhotoIndex()
 {
-   HTML_AJAX.replace(document.getElementById("content"), 'rpc.php?action=show_photo_index');
-
+   HTML_AJAX.replace(document.getElementById("content"), encodeURI('rpc.php?action=show_photo_index'));
 }
 
 function showBubbleDetails(object, id, direction)
 {
-   HTML_AJAX.replace(object, 'rpc.php?action=showbubbledetails&id=' + id + '&direction=" + direction');
+   HTML_AJAX.replace(object, encodeURI('rpc.php?action=showbubbledetails&id=' + id + '&direction=" + direction'));
 }
 
 // if photo index is currently shown, refresh it
@@ -70,3 +73,37 @@ function click(object)
 
 }
 
+// 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)
+{
+   HTML_AJAX.grab(encodeURI('rpc.php?action=search&for=' + searchfor));
+
+   Tags('reset', 0);
+
+   refreshAvailableTags();
+   refreshSelectedTags();
+   showPhotoIndex();
+}
+
+function clearSearch()
+{
+   document.getElementsByName('searchfor')[0].value = '';
+}