*/
function startSearch()
{
- from_year = document.getElementById('fromyear').value;
- from_month = document.getElementById('frommonth').value;
- from_day = document.getElementById('fromday').value;
- from = from_year +"-"+ from_month +"-"+ from_day;
- to_year = document.getElementById('toyear').value;
- to_month = document.getElementById('tomonth').value;
- to_day = document.getElementById('today').value;
- to = to_year +"-"+ to_month +"-"+ to_day;
-
+ if(document.getElementById('date_from').value != undefined) {
+ date_from = document.getElementById('date_from').value;
+ }
+ if(document.getElementById('date_to').value != undefined) {
+ date_to = document.getElementById('date_to').value;
+ }
+
var objTemp = new Object();
objTemp['action'] = 'search';
- if(document.getElementsByName('searchfor_tag')[0].value != "") {
+ if(document.getElementsByName('searchfor_tag')[0] != undefined &&
+ document.getElementsByName('searchfor_tag')[0].value != "") {
objTemp['for_tag'] = document.getElementsByName('searchfor_tag')[0].value;
}
- if(document.getElementsByName('searchfor_name')[0].value != "") {
+ if(document.getElementsByName('searchfor_name')[0] != undefined &&
+ document.getElementsByName('searchfor_name')[0].value != "") {
objTemp['for_name'] = document.getElementsByName('searchfor_name')[0].value;
}
- if(document.getElementsByName('consider_date')[0].checked == true) {
- objTemp['from'] = from;
- objTemp['to'] = to;
+ if(document.getElementsByName('consider_date')[0] != undefined &&
+ document.getElementsByName('consider_date')[0].checked == true) {
+ objTemp['date_from'] = date_from;
+ objTemp['date_to'] = date_to;
+ }
+ if(document.getElementsByName('consider_rate')[0] != undefined &&
+ document.getElementsByName('consider_rate')[0].checked == true) {
+ objTemp['rate_from'] = rate_search['from'];
+ objTemp['rate_to'] = rate_search['to'];
}
var retr = HTML_AJAX.post(web_path + '/rpc.php', objTemp);
mode = false;
}
- document.getElementById('fromyear').disabled = mode;
- document.getElementById('frommonth').disabled = mode;
- document.getElementById('fromday').disabled = mode;
- document.getElementById('toyear').disabled = mode;
- document.getElementById('tomonth').disabled = mode;
- document.getElementById('today').disabled = mode;
+ document.getElementById('date_from').disabled = mode;
+ document.getElementById('date_to').disabled = mode;
} // datesearch()
* called for photo-index export. will return the
* selected mode via AJAX from the server.
*/
-function setViewMode(mode)
+function setViewMode(srv_webpath, mode)
{
+ if(srv_webpath != undefined)
+ web_path = srv_webpath;
+ else
+ web_path = '';
+
var exprt = document.getElementById('output');
exprt.innerHTML = "Loading...";
exprt.innerHTML = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=get_export&mode=' + mode));
*/
function clearSearch()
{
- document.getElementsByName('searchfor_tag')[0].value = '';
- document.getElementsByName('searchfor_name')[0].value = '';
+ if(document.getElementsByName('searchfor_tag')[0] != undefined)
+ document.getElementsByName('searchfor_tag')[0].value = '';
+ if(document.getElementsByName('searchfor_name')[0] != undefined)
+ document.getElementsByName('searchfor_name')[0].value = '';
- if(document.getElementsByName('consider_date')[0].checked == true) {
+ if(document.getElementsByName('consider_date')[0] != undefined &&
+ document.getElementsByName('consider_date')[0].checked == true) {
document.getElementsByName('consider_date')[0].checked = false;
datesearch();
- }
+ }
+ if(document.getElementsByName('consider_rate')[0] != undefined &&
+ document.getElementsByName('consider_rate')[0].checked == true) {
+ document.getElementsByName('consider_rate')[0].checked = false;
+ }
} // clearSearch()
*/
function showCalendar(date_box, click_obj)
{
- var calendar = document.getElementById('calendar');
- var year = document.getElementById(date_box+'year').value;
- var month = document.getElementById(date_box+'month').value;
+ var calendar;
+ var userdate;
+
+ calendar = document.getElementById('calendar');
+ if(calendar == undefined) {
+ window.alert("Can not find element 'calendar'");
+ return;
+ }
+
+ userdate = document.getElementById('date_' + date_box);
+
+ if(userdate == undefined) {
+ window.alert("Can not find element 'date_'" + date_box);
+ return;
+ }
+
+ userdate = userdate.value;
+
if(date_box == 'from') {
var xpos = document.getElementById('frompic').offsetLeft;
var ypos = document.getElementById('frompic').offsetTop;
calendar_mode = 'to';
}
calendar.style.left = xpos + 100 + 'px';
- calendar.style.top = ypos + 80 + 'px';
+ calendar.style.top = ypos + 120 + 'px';
if(calendar.style.visibility == "" || calendar.style.visibility == 'hidden') {
calendar.style.visibility = 'visible';
calendar.innerHTML = "Loading...";
- calendar.innerHTML = HTML_AJAX.grab(encodeURI(web_path +'/rpc.php?action=get_calendar_matrix&year=' + year + '&month=' + month));
+ calendar.innerHTML = HTML_AJAX.grab(encodeURI(web_path +'/rpc.php?action=get_calendar_matrix&date=' + userdate));
calendar_shown = 1;
}
else {
{
var calendar = document.getElementById('calendar');
calendar.innerHTML = "Loading...";
- calendar.innerHTML = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=get_calendar_matrix&year='+ year +'&month='+ month +'&day='+ day));
+ calendar.innerHTML = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=get_calendar_matrix&date='+ year +'-'+ month +'-'+ day));
}
/**
* get the user-selected date from the calendar and
* put it into the date-search boxes
*/
-function setCalendarDate(year, month, day)
+function setCalendarDate(userdate)
{
- document.getElementById(calendar_mode+'year').value = year;
- document.getElementById(calendar_mode+'month').value = month;
- document.getElementById(calendar_mode+'day').value = day;
+ document.getElementById('date_'+calendar_mode).value = userdate;
hideCalendar();
} // setCalendarDate()
var waiting = 100;
var counting;
- lbImg=WSR_getElementsByClassName(document,"img","thumb");
- for(i=0;i<lbImg.length;i++){
- lbImg[i].src=image_url[i];
- // to not bomb the server with requests, give the page some time
- // to load the images one by one. if a image exceeds the timeout,
- // the next image will be loaded.
- if(lbImg[i].complete != undefined && lbImg[i].complete != true) {
- counting = 0;
- while(lbImg[i].complete != true && counting < timeout) {
- window.setTimeout("noop()", waiting);
- counting+=waiting;
+ lbImg = WSR_getElementsByClassName(document,"img","thumb");
+ if(lbImg != undefined) {
+ for(i=0;i<lbImg.length;i++){
+ lbImg[i].src=image_url[i];
+ // to not bomb the server with requests, give the page some time
+ // to load the images one by one. if a image exceeds the timeout,
+ // the next image will be loaded.
+ if(lbImg[i].complete != undefined && lbImg[i].complete != true) {
+ counting = 0;
+ while(lbImg[i].complete != true && counting < timeout) {
+ window.setTimeout("noop()", waiting);
+ counting+=waiting;
+ }
}
}
}
/**
* start slideshow
*/
-function startSlideShow()
+function startSlideShow(srv_webpath)
{
+ if(srv_webpath != undefined)
+ web_path = srv_webpath;
+ else
+ web_path = '';
+
if(!sliding) {
HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=reset_slideshow'));
nextSlide();
else {
clearInterval(autobrowse);
autobrowse = 0;
- document.getElementById('autobrowse_ico').src = web_path + "/resources/32_play.png";
+ document.getElementById('autobrowse_ico').src = web_path + "/resources/16_play.png";
}
} // startAutoBrowser()
if(document.getElementById('next_link')) {
var next_link = document.getElementById('next_link').href;
window.location.href = next_link;
- document.getElementById('autobrowse_ico').src = web_path + "/resources/32_pause.png";
+ document.getElementById('autobrowse_ico').src = web_path + "/resources/16_pause.png";
}
/* we have reached the last photo */
else {
if(ab_ico = document.getElementById('autobrowse_ico'))
- ab_ico.src = web_path + "/resources/32_play.png";
+ ab_ico.src = web_path + "/resources/16_play.png";
clearInterval(autobrowse);
}
} // update_sort_order()
+/**
+ * if the photo-version Ń•elect-box has changed, set the newly
+ * choosen photo version as the to-be-displayed photo version
+ */
+function update_photo_version(obj, current_photo)
+{
+ var objTemp = new Object();
+ objTemp['photo_version'] = obj.options[obj.selectedIndex].value;
+ objTemp['photo_idx'] = current_photo;
+
+ var retr = HTML_AJAX.post(web_path + '/rpc.php?action=update_photo_version', objTemp);
+
+ if(retr == "ok") {
+ showPhoto(current_photo);
+ }
+ else {
+ window.alert("Server message: "+ retr);
+ }
+
+} // update_photo_version()
+
+/**
+ * show rate stars
+ *
+ * this function will show the requested amount of
+ * rate-stars.
+ *
+ * @param string mode
+ * @param int level
+ */
+function show_rate(mode, level)
+{
+ var i;
+
+ for(i = 1; i <= 5; i++) {
+ if(i <= level) {
+ document.getElementById('rate_' + mode + '_' + i).src = web_path + '/resources/star.png';
+ }
+ else {
+ document.getElementById('rate_' + mode + '_' + i).src = web_path + '/resources/empty_rate.png';
+ }
+ }
+
+} // show_rate()
+
+/**
+ * set rate stars
+ *
+ *
+ * this function will set the requested rate-stars-amount into a global
+ * variable (which will then later be used on form-submit) and will also
+ * update the display.
+ *
+ * @param string mode
+ * @param int level
+ */
+function set_rate(mode, level)
+{
+ rate_search[mode] = level;
+ show_rate(mode, level);
+
+} // set_rate()
+
+/**
+ * reset rate stars
+ *
+ * this function will reset the rate-star to their initial value.
+ *
+ * @param string mode
+ */
+function reset_rate(mode)
+{
+ if(rate_search[mode] == undefined)
+ rate_search[mode] = 0;
+
+ show_rate(mode, rate_search[mode]);
+
+} // reset_rate()
+
/**
* handle key events
*/
// position of the last shown photo in photo-index
var photo_details_pos;
var web_path;
+var rate_search = new Array();