issue28, use getimagesize if no exif data is available
[phpfspot.git] / phpfspot.js
index 4849295d0b311699f46974e4dd69a9c8644d0153..4b6a640eaf2d86bb45e73a4be199d1c8a8c05e73 100644 (file)
@@ -21,7 +21,8 @@ function Tags(mode, id)
       HTML_AJAX.grab(encodeURI('rpc.php?action=deltag&id=' + id));
    }
    else if(mode == "reset") {
-      HTML_AJAX.grab(encodeURI('rpc.php?action=resettags'));
+      HTML_AJAX.grab(encodeURI('rpc.php?action=reset'));
+      clearSearch();
    }
    else if(mode == "condition") {
       setCheckedValue(id, id.value);
@@ -38,6 +39,7 @@ function refreshAvailableTags()
 {
    // update available tags
    var avail_tags = document.getElementById('available_tags');
+   avail_tags.innerHTML = "Loading...";
    avail_tags.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=show_available_tags'));
 }
 
@@ -45,12 +47,23 @@ function refreshSelectedTags()
 {
    // update selected tags
    var selected_tags = document.getElementById("selected_tags");
+   selected_tags.innerHTML = "Loading...";
    selected_tags.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=show_selected_tags'));
+
+   // if no tags are currently selected, return false from here
+   if(selected_tags.innerHTML == "")
+      return false;
+   
+   return true;
+
 }
 
-function showPhotoIndex()
+function showPhotoIndex(begin_with)
 {
-   HTML_AJAX.replace(document.getElementById("content"), encodeURI('rpc.php?action=show_photo_index'));
+   if(begin_with == undefined)
+      HTML_AJAX.replace(document.getElementById("content"), encodeURI('rpc.php?action=show_photo_index'));
+   else
+      HTML_AJAX.replace(document.getElementById("content"), encodeURI('rpc.php?action=show_photo_index&begin_with=' + begin_with));
 }
 
 function showBubbleDetails(object, id, direction)
@@ -61,8 +74,9 @@ function showBubbleDetails(object, id, direction)
 // if photo index is currently shown, refresh it
 function refreshPhotoIndex()
 {
-   if(document.getElementById("matrix") != undefined) {
+   if(document.getElementById("matrix") != undefined || startup == 1) {
       showPhotoIndex();
+      startup = 0;
    }
 }
 
@@ -92,14 +106,43 @@ function setCheckedValue(condition, value) {
    }
 }
 
-function startSearch(searchfor)
+function startTagSearch(searchfor)
 {
-   HTML_AJAX.grab(encodeURI('rpc.php?action=search&for=' + searchfor));
+   HTML_AJAX.grab(encodeURI('rpc.php?action=tag_search&for=' + searchfor));
+   refreshAvailableTags();
+   refreshSelectedTags();
    showPhotoIndex();
 
 }
 
+function setViewMode(mode)
+{
+   window.alert(mode);
+}
+
 function clearSearch()
 {
    document.getElementsByName('searchfor')[0].value = '';
 }
+
+function init_phpfspot()
+{
+   refreshAvailableTags();
+
+   if(refreshSelectedTags()) {
+      showPhotoIndex();
+   }
+}
+
+function setBackGrdColor(item, color)
+{
+   if(color == 'mouseover')
+      item.style.backgroundColor='#c6e9ff';
+   if(color == 'mouseout')
+      item.style.backgroundColor='#eeeeee';
+   if(color == 'mouseclick')
+      item.style.backgroundColor='#93A8CA';
+}
+
+var startup = 1;
+