summaryrefslogtreecommitdiffstats
path: root/phpfspot.js
blob: bde4c6aafc5540bc7fce5a410188e494513a6819 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
function showImage(id)
{
   var image_div = document.getElementById("content");
   image_div.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=showphoto&id=' + id));
}

function showCredits()
{
   var credits = document.getElementById("content");
   credits.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=reset'));
      clearSearch();
   }
   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
   var avail_tags = document.getElementById('available_tags');
   avail_tags.innerHTML = "Loading...";
   avail_tags.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=show_available_tags'));
}

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'));
}

function showPhotoIndex(begin_with)
{
   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)
{
   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 startTagSearch(searchfor)
{
   HTML_AJAX.grab(encodeURI('rpc.php?action=tag_search&for=' + searchfor));
   refreshAvailableTags();
   refreshSelectedTags();
   showPhotoIndex();

}

function clearSearch()
{
   document.getElementsByName('searchfor')[0].value = '';
}