From bb095adf76bddc2f6c5925bcdebb52bff75e6578 Mon Sep 17 00:00:00 2001 From: Alvin Li Date: Wed, 14 Aug 2013 00:05:31 +0800 Subject: * added 'templates/search/search.html' * updated haystack settings * updated 'static' files settings * added 'search function' for 'apps/indicator': IndicatorCategory, Indicator * merged static files of '97suifang-front' by 'mjymjydark' * merged pages of '97suifang-front' by 'mjymjydark' * updated pages to use 'django templates syntax' for the static links TODO: to fix the 'static links' of 'indicator/static/javascripts/*.js' --- .../plugins/thickbox/images/loadingAnimation.gif | Bin 0 -> 7347 bytes .../indicator/static/plugins/thickbox/thickbox.css | 135 ++++++++++ .../indicator/static/plugins/thickbox/thickbox.js | 286 +++++++++++++++++++++ 3 files changed, 421 insertions(+) create mode 100644 97suifangqa/apps/indicator/static/plugins/thickbox/images/loadingAnimation.gif create mode 100644 97suifangqa/apps/indicator/static/plugins/thickbox/thickbox.css create mode 100644 97suifangqa/apps/indicator/static/plugins/thickbox/thickbox.js (limited to '97suifangqa/apps/indicator/static/plugins/thickbox') diff --git a/97suifangqa/apps/indicator/static/plugins/thickbox/images/loadingAnimation.gif b/97suifangqa/apps/indicator/static/plugins/thickbox/images/loadingAnimation.gif new file mode 100644 index 0000000..92c5c30 Binary files /dev/null and b/97suifangqa/apps/indicator/static/plugins/thickbox/images/loadingAnimation.gif differ diff --git a/97suifangqa/apps/indicator/static/plugins/thickbox/thickbox.css b/97suifangqa/apps/indicator/static/plugins/thickbox/thickbox.css new file mode 100644 index 0000000..9fe82e3 --- /dev/null +++ b/97suifangqa/apps/indicator/static/plugins/thickbox/thickbox.css @@ -0,0 +1,135 @@ +/* ----------------------------------------------------------------------------------------------------------------*/ +/* ---------->>> global settings needed for thickbox <<<-----------------------------------------------------------*/ +/* ----------------------------------------------------------------------------------------------------------------*/ +*{padding: 0; margin: 0;} + +html, body { +min-height: 100%; +height: auto !important; +height: 100%; +} + +/* ----------------------------------------------------------------------------------------------------------------*/ +/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/ +/* ----------------------------------------------------------------------------------------------------------------*/ +#TB_window { + font: 12px Arial, Helvetica, sans-serif; + color: #333333; +} + +#TB_secondLine { + font: 10px Arial, Helvetica, sans-serif; + color:#666666; +} + +#TB_window a:link {color: #666666;} +#TB_window a:visited {color: #666666;} +#TB_window a:hover {color: #000;} +#TB_window a:active {color: #666666;} +#TB_window a:focus{color: #666666;} + +/* ----------------------------------------------------------------------------------------------------------------*/ +/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/ +/* ----------------------------------------------------------------------------------------------------------------*/ +#TB_overlay { + position: absolute; + z-index:100; + width: 100%; + height: 100%; + top: 0; + left: 0; + min-height:100%; + background-color:#000; + filter:alpha(opacity=60); + -moz-opacity: 0.6; + opacity: 0.6; +} + +#TB_window { + position: absolute; + /*background: #ffffff;*/ + z-index: 102; + color:#000000; + display:none; + /*border: 4px solid #525252;*/ + text-align:left; +} + +#TB_window img { + display:block; + margin: 15px 0 0 15px; + border-right: 1px solid #ccc; + border-bottom: 1px solid #ccc; + border-top: 1px solid #666; + border-left: 1px solid #666; +} + +#TB_caption{ + height:25px; + padding:7px 30px 10px 25px; + float:left; +} + +#TB_closeWindow{ + height:25px; + padding:11px 25px 10px 0; + float:right; +} + +#TB_closeAjaxWindow{ + padding:5px 10px 7px 0; + margin-bottom:1px; + text-align:right; + float:right; +} + +#TB_ajaxWindowTitle{ + float:left; + padding:7px 0 5px 10px; + margin-bottom:1px; +} + +#TB_title{ + background-color:#e8e8e8; + height:27px; +} + +#TB_ajaxContent{ + clear:both; + padding:2px 15px 15px 15px; + overflow:auto; + text-align:left; + line-height:1.4em; +} + +#TB_ajaxContent p{ + padding:5px 0px 5px 0px; +} + +#TB_load{ + position: absolute; + display:none; + height:100px; + width:100px; + z-index:101; +} + +#TB_HideSelect{ + z-index:99; + position:absolute; + top: 0; + left: 0; + width:100%; + height:100%; + background-color:#fff; + border:none; + filter:alpha(opacity=0); + -moz-opacity: 0; + opacity: 0; +} + +#TB_iframeContent{ + border:none; + clear:both; +} + diff --git a/97suifangqa/apps/indicator/static/plugins/thickbox/thickbox.js b/97suifangqa/apps/indicator/static/plugins/thickbox/thickbox.js new file mode 100644 index 0000000..c11bf76 --- /dev/null +++ b/97suifangqa/apps/indicator/static/plugins/thickbox/thickbox.js @@ -0,0 +1,286 @@ +/* + * Thickbox 2.0 - One Box To Rule Them All. + * By Cody Lindley (http://www.codylindley.com) + * Copyright (c) 2006 cody lindley + * Licensed under the MIT License: + * http://www.opensource.org/licenses/mit-license.php + * Thickbox is built on top of the very light weight jQuery library. + */ + +//on page load call TB_init +$(document).ready(TB_init); + +//add thickbox to href elements that have a class of .thickbox +function TB_init(){ + $("a.thickbox").live("click", function(){ + if(this.href == 'javascript:void(0)'){ + return false; + } + var t = this.title || this.name || null; + var g = this.rel || false; + TB_show(t,this.href,g); + this.blur(); + return false; + }); +} + +function TB_show(caption, url, imageGroup) {//function called when the user clicks on a thickbox link + try { + if (document.getElementById("TB_HideSelect") == null) { + $("body").append("
"); + $("#TB_overlay").click(TB_remove); + } + + if(caption==null){caption=""}; + + $(window).scroll(TB_position); + + TB_overlaySize(); + + $("body").append("
"); + TB_load_position(); + + var urlString = /\.jpg|\.jpeg|\.png|\.gif|\.html|\.htm|\.php|\.cfm|\.asp|\.aspx|\.jsp|\.jst|\.rb|\.txt|\.bmp/g; + var urlType = url.toLowerCase().match(urlString); + + if(urlType == '.jpg' || urlType == '.jpeg' || urlType == '.png' || urlType == '.gif' || urlType == '.bmp'){//code to show images + + TB_PrevCaption = ""; + TB_PrevURL = ""; + TB_PrevHTML = ""; + TB_NextCaption = ""; + TB_NextURL = ""; + TB_NextHTML = ""; + TB_imageCount = ""; + TB_FoundURL = false; + if(imageGroup){ + TB_TempArray = $("a[@rel="+imageGroup+"]").get(); + for (TB_Counter = 0; ((TB_Counter < TB_TempArray.length) && (TB_NextHTML == "")); TB_Counter++) { + var urlTypeTemp = TB_TempArray[TB_Counter].href.toLowerCase().match(urlString); + if (!(TB_TempArray[TB_Counter].href == url)) { + if (TB_FoundURL) { + TB_NextCaption = TB_TempArray[TB_Counter].title; + TB_NextURL = TB_TempArray[TB_Counter].href; + TB_NextHTML = "  Next >"; + } else { + TB_PrevCaption = TB_TempArray[TB_Counter].title; + TB_PrevURL = TB_TempArray[TB_Counter].href; + TB_PrevHTML = "  < Prev"; + } + } else { + TB_FoundURL = true; + TB_imageCount = "Image " + (TB_Counter + 1) +" of "+ (TB_TempArray.length); + } + } + } + + imgPreloader = new Image(); + imgPreloader.onload = function(){ + + imgPreloader.onload = null; + + // Resizing large images - orginal by Christian Montoya edited by me. + var pagesize = TB_getPageSize(); + var x = pagesize[0] - 150; + var y = pagesize[1] - 150; + var imageWidth = imgPreloader.width; + var imageHeight = imgPreloader.height; + if (imageWidth > x) { + imageHeight = imageHeight * (x / imageWidth); + imageWidth = x; + if (imageHeight > y) { + imageWidth = imageWidth * (y / imageHeight); + imageHeight = y; + } + } else if (imageHeight > y) { + imageWidth = imageWidth * (y / imageHeight); + imageHeight = y; + if (imageWidth > x) { + imageHeight = imageHeight * (x / imageWidth); + imageWidth = x; + } + } + // End Resizing + + TB_WIDTH = imageWidth + 30; + TB_HEIGHT = imageHeight + 60; + $("#TB_window").append(""+caption+"" + "
"+caption+"
" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "
close
"); + + $("#TB_closeWindowButton").click(TB_remove); + + if (!(TB_PrevHTML == "")) { + function goPrev(){ + if($(document).unclick(goPrev)){$(document).unclick(goPrev)}; + $("#TB_window").remove(); + $("body").append("
"); + $(document).unkeyup(); + TB_show(TB_PrevCaption, TB_PrevURL, imageGroup); + return false; + } + + $("#TB_prev").click(goPrev); + + $(document).keyup( function(e){ var key = e.keyCode; if(key == 37){goPrev()} }); + } + + + + if (!(TB_NextHTML == "")) { + function goNext(){ + $("#TB_window").remove(); + $("body").append("
"); + $(document).unkeyup(); + TB_show(TB_NextCaption, TB_NextURL, imageGroup); + return false; + } + + $("#TB_next").click(goNext); + + $(document).keyup( function(e){ var key = e.keyCode; if(key == 39){goNext()} }); + } + + TB_position(); + $("#TB_load").remove(); + $("#TB_ImageOff").click(TB_remove); + $("#TB_window").css({display:"block"}); //for safari using css instead of show + } + + imgPreloader.src = url; + } + + if(urlType=='.htm'||urlType=='.html'||urlType=='.php'||urlType=='.asp'||urlType=='.aspx'||urlType=='.jsp'||urlType=='.jst'||urlType=='.rb'||urlType=='.txt'||urlType=='.cfm' || (url.indexOf('TB_inline') != -1) || (url.indexOf('TB_iframe') != -1) ){//code to show html pages + + var queryString = url.replace(/^[^\?]+\??/,''); + var params = TB_parseQuery( queryString ); + +// TB_WIDTH = (params['width']*1) + 30; +// TB_HEIGHT = (params['height']*1) + 40; +// ajaxContentW = TB_WIDTH - 30; +// ajaxContentH = TB_HEIGHT - 45; + TB_WIDTH = (params['width']*1); + TB_HEIGHT = (params['height']*1); + ajaxContentW = TB_WIDTH; + ajaxContentH = TB_HEIGHT; + + if(url.indexOf('no_title') != -1){ + $("#TB_window").append("
"+caption+"
"); + TB_HEIGHT += 27; //title height + } + if(url.indexOf('TB_iframe') != -1){ + if(url.indexOf('transfer_params') == -1){ + urlNoQuery = url.substr(0,TB_strpos(url, "?")); + }else{ + urlNoQuery = url; + } + $("#TB_window").append(""); + }else{ + $("#TB_window").append("
"); + } + + $("#TB_closeWindowButton").click(TB_remove); + + if(url.indexOf('TB_inline') != -1){ + $("#TB_ajaxContent").html($('#' + params['inlineId']).html()); + TB_position(); + $("#TB_load").remove(); + $("#TB_window").css({display:"block"}); + }else if(url.indexOf('TB_iframe') != -1){ + TB_position(); + $("#TB_load").remove(); + $("#TB_window").css({display:"block"}); + }else{ + $("#TB_ajaxContent").load(url, function(){ + TB_position(); + $("#TB_load").remove(); + $("#TB_window").css({display:"block"}); + }); + } + + } + + $(window).resize(TB_position); + + } catch(e) { + alert( e ); + } +} + +//helper functions below + +function TB_remove() { + $("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').remove();}); + $("#TB_load").remove(); + //$(document).unkeyup(); + return false; +} + +function TB_position() { + var pagesize = TB_getPageSize(); + var arrayPageScroll = TB_getPageScrollTop(); + $("#TB_window").css({height:TB_HEIGHT+"px",width:TB_WIDTH+"px",left: ((pagesize[0] - TB_WIDTH)/2)+"px", top: (arrayPageScroll[1] + ((pagesize[1]-TB_HEIGHT)/2))+"px" }); + TB_overlaySize(); +} + +function TB_overlaySize(){ + if (window.innerHeight && window.scrollMaxY) { + yScroll = window.innerHeight + window.scrollMaxY; + } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac + yScroll = document.body.scrollHeight; + } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari + yScroll = document.body.offsetHeight; + } + $("#TB_overlay").css("height",yScroll +"px"); +} + +function TB_load_position() { + var pagesize = TB_getPageSize(); + var arrayPageScroll = TB_getPageScrollTop(); + + $("#TB_load") + .css({left: ((pagesize[0] - 100)/2)+"px", top: (arrayPageScroll[1] + ((pagesize[1]-100)/2))+"px" }) + .css({display:"block"}); +} + +function TB_parseQuery ( query ) { + var Params = new Object (); + if ( ! query ) return Params; // return empty object + var Pairs = query.split(/[;&]/); + for ( var i = 0; i < Pairs.length; i++ ) { + var KeyVal = Pairs[i].split('='); + if ( ! KeyVal || KeyVal.length != 2 ) continue; + var key = unescape( KeyVal[0] ); + var val = unescape( KeyVal[1] ); + val = val.replace(/\+/g, ' '); + Params[key] = val; + } + return Params; +} + +function TB_getPageScrollTop(){ + var yScrolltop; + if (self.pageYOffset) { + yScrolltop = self.pageYOffset; + } else if (document.documentElement && document.documentElement.scrollTop){ // Explorer 6 Strict + yScrolltop = document.documentElement.scrollTop; + } else if (document.body) {// all other Explorers + yScrolltop = document.body.scrollTop; + } + arrayPageScroll = new Array('',yScrolltop) + return arrayPageScroll; +} + +function TB_getPageSize(){ + var de = document.documentElement; + var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth; + var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight; + + arrayPageSize = new Array(w,h) + return arrayPageSize; +} + +function TB_strpos(str, ch) { +for (var i = 0; i < str.length; i++) +if (str.substring(i, i+1) == ch) return i; +return -1; +} + -- cgit v1.2.2