X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=phpfspot.git;a=blobdiff_plain;f=phpfspot.js;h=ae202a0c004f69d0e7eb792c19f62711d787b571;hp=6c0054dfe2f80cbd737f30b2be72a8a9b243f0d9;hb=6a5756a7ced1e064e6d7c3cb8b67723e01951612;hpb=e57f68e3a9df5a040bccb483da6cc21d2d028ad8 diff --git a/phpfspot.js b/phpfspot.js index 6c0054d..ae202a0 100644 --- a/phpfspot.js +++ b/phpfspot.js @@ -42,7 +42,7 @@ function showImage(id, scrollup) } /* fetch single-photo view from server */ - HTML_AJAX.replace(content, encodeURI('rpc.php?action=showphoto&id=' + id)); + HTML_AJAX.replace(content, encodeURI(web_path + '/rpc.php?action=showphoto&id=' + id)); /* scroll the window up to the top */ if(scrollup != undefined) { @@ -101,7 +101,7 @@ function findPos(obj, direction) { function showCredits() { var credits = document.getElementById("content"); - credits.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=showcredits')); + credits.innerHTML = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=showcredits')); } // showCredits() @@ -136,7 +136,7 @@ function Tags(mode, id) objTemp['mode'] = id.value; } - var retr = HTML_AJAX.post('rpc.php', objTemp); + var retr = HTML_AJAX.post(web_path + '/rpc.php', objTemp); if(retr == "ok") { refreshAvailableTags(); refreshSelectedTags(); @@ -159,8 +159,10 @@ 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')); + if(avail_tags != undefined) { + avail_tags.innerHTML = "Loading..."; + avail_tags.innerHTML = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=show_available_tags')); + } } // refreshAvailableTags() @@ -174,8 +176,10 @@ 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(selected_tags != undefined) { + selected_tags.innerHTML = "Loading..."; + selected_tags.innerHTML = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=show_selected_tags')); + } } // refreshSelectedTags() @@ -188,7 +192,7 @@ function refreshSelectedTags() */ function showPhotoIndex(begin_with, last_photo) { - var url = "rpc.php?action=show_photo_index"; + var url = web_path + "/rpc.php?action=show_photo_index"; if(begin_with != undefined) url = url + '&begin_with=' + begin_with; if(last_photo != undefined) @@ -284,7 +288,7 @@ function startSearch() objTemp['to'] = to; } - var retr = HTML_AJAX.post('rpc.php', objTemp); + var retr = HTML_AJAX.post(web_path + '/rpc.php', objTemp); if(retr == "ok") { refreshAvailableTags(); refreshSelectedTags(); @@ -329,7 +333,7 @@ function setViewMode(mode) { var exprt = document.getElementById('output'); exprt.innerHTML = "Loading..."; - exprt.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=get_export&mode=' + mode)); + exprt.innerHTML = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=get_export&mode=' + mode)); } // setViewMode() @@ -354,7 +358,8 @@ function clearSearch() */ function AskServerWhatToDo() { - return HTML_AJAX.grab(encodeURI('rpc.php?action=what_to_do')); + return HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=what_to_do')); + } // AskServerWhatToDo() /** @@ -364,11 +369,22 @@ function AskServerWhatToDo() * the first time. It will fetch the tag-lists and will then * switch to the right view, which the browser got told from * the server (maybe someone hit the refresh button...). + * + * as parameter the server can set the correct webpath. + * espacialley when using user-friendly url's, the browser + * does not know the correct URLs to address images, stylesheets, + * ... then. */ -function init_phpfspot(mode) +function init_phpfspot(srv_webpath) { + if(srv_webpath != undefined) + web_path = srv_webpath; + else + web_path = ''; + /* always load list of available tags */ - refreshAvailableTags(); + //this should not be more necessary since 4.5.08 + //refreshAvailableTags(); /* ask the server what we are currently displaying */ whattodo = AskServerWhatToDo(); @@ -413,7 +429,7 @@ function setBackGrdColor(item, color) */ function getPhotoToShow() { - var photo_to_show = HTML_AJAX.grab(encodeURI('rpc.php?action=get_photo_to_show')); + var photo_to_show = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=get_photo_to_show')); // if no image needs to be shown, return false from here if(photo_to_show == "") @@ -523,7 +539,7 @@ function showCalendar(date_box, click_obj) if(calendar.style.visibility == "" || calendar.style.visibility == 'hidden') { calendar.style.visibility = 'visible'; calendar.innerHTML = "Loading..."; - calendar.innerHTML = HTML_AJAX.grab(encodeURI('rpc.php?action=get_calendar_matrix&year=' + year + '&month=' + month)); + calendar.innerHTML = HTML_AJAX.grab(encodeURI(web_path +'/rpc.php?action=get_calendar_matrix&year=' + year + '&month=' + month)); calendar_shown = 1; } else { @@ -551,7 +567,7 @@ function setMonth(year, month, day) { var calendar = document.getElementById('calendar'); calendar.innerHTML = "Loading..."; - calendar.innerHTML = HTML_AJAX.grab(encodeURI('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&year='+ year +'&month='+ month +'&day='+ day)); } /** @@ -572,7 +588,7 @@ function setCalendarDate(year, month, day) */ function resetAll() { - HTML_AJAX.grab(encodeURI('rpc.php?action=reset')); + HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=reset')); clearSearch(); refreshAvailableTags(); refreshSelectedTags(); @@ -650,15 +666,15 @@ function noop() {} function startSlideShow() { if(!sliding) { - HTML_AJAX.grab(encodeURI('rpc.php?action=reset_slideshow')); + HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=reset_slideshow')); nextSlide(); sliding = setInterval("nextSlide()", sliding_time*1000); - document.getElementById('stop_ico').src = "resources/32_stop.png"; + document.getElementById('stop_ico').src = web_path + "/resources/32_stop.png"; } else { clearInterval(sliding); sliding = 0; - document.getElementById('stop_ico').src = "resources/32_play.png"; + document.getElementById('stop_ico').src = web_path + "/resources/32_play.png"; } } // startSlideShow() @@ -668,7 +684,7 @@ function startSlideShow() */ function nextSlide() { - var next_img = HTML_AJAX.grab(encodeURI('rpc.php?action=get_next_slideshow_img')); + var next_img = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=get_next_slideshow_img')); document.getElementById('slide_img').src = next_img; } // nextSlide() @@ -678,7 +694,7 @@ function nextSlide() */ function prevSlide() { - var prev_img = HTML_AJAX.grab(encodeURI('rpc.php?action=get_prev_slideshow_img')); + var prev_img = HTML_AJAX.grab(encodeURI(web_path + '/rpc.php?action=get_prev_slideshow_img')); document.getElementById('slide_img').src = prev_img; } // prevSlide() @@ -691,12 +707,12 @@ function pauseSlideShow() if(!sliding_paused) { sliding_paused = 1; clearInterval(sliding); - document.getElementById('pause_ico').src = "resources/32_play.png"; + document.getElementById('pause_ico').src = web_path + "/resources/32_play.png"; } else { sliding_paused = 0; sliding = setInterval("nextSlide()", sliding_time*1000); - document.getElementById('pause_ico').src = "resources/32_pause.png"; + document.getElementById('pause_ico').src = web_path + "/resources/32_pause.png"; } } // pauseSlideShow() @@ -713,7 +729,7 @@ function startAutoBrowse() else { clearInterval(autobrowse); autobrowse = 0; - document.getElementById('autobrowse_ico').src = "resources/32_play.png"; + document.getElementById('autobrowse_ico').src = web_path + "/resources/32_play.png"; } } // startAutoBrowser() @@ -726,12 +742,12 @@ function autoBrowse() if(document.getElementById('next_link')) { var next_link = document.getElementById('next_link').href; window.location.href = next_link; - document.getElementById('autobrowse_ico').src = "resources/32_pause.png"; + document.getElementById('autobrowse_ico').src = web_path + "/resources/32_pause.png"; } /* we have reached the last photo */ else { if(ab_ico = document.getElementById('autobrowse_ico')) - ab_ico.src = "resources/32_play.png"; + ab_ico.src = web_path + "/resources/32_play.png"; clearInterval(autobrowse); } @@ -772,7 +788,7 @@ function update_sort_order(obj) var objTemp = new Object(); objTemp['value'] = obj.options[obj.selectedIndex].value; - var retr = HTML_AJAX.post('rpc.php?action=update_sort_order', objTemp); + var retr = HTML_AJAX.post(web_path + '/rpc.php?action=update_sort_order', objTemp); if(retr == "ok") { showPhotoIndex(); @@ -841,3 +857,4 @@ var origHeight; var origWidth; // position of the last shown photo in photo-index var photo_details_pos; +var web_path;