Changeset 6176 for extensions/ColorStat/admin/cstat_search.tpl
- Timestamp:
- May 13, 2010, 10:21:05 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/ColorStat/admin/cstat_search.tpl
r6107 r6176 1 {known_script id="jquery.ui" src=$ROOT_URL|@cat:"themes/default/js/ui/packed/ui.core.packed.js"}2 {known_script id="jquery.ui.dialog" src=$ROOT_URL|@cat:"themes/default/js/ui/packed/ui.dialog.packed.js"}3 {known_script id="jquery.tipTip" src=$ROOT_URL|@cat:"themes/default/js/plugins/jquery.tipTip.minified.js"}4 5 {known_script id="gpc.pagesNavigator" src=$ROOT_URL|@cat:"plugins/GrumPluginClasses/js/pagesNavigator.js"}6 7 8 {literal}9 <script type="text/javascript">10 var cb=null;11 12 interfaceManager = function(optionsToSet)13 {14 var pn=null;15 var requestNumber=0;16 17 options =18 {19 requestCriterionsVisible:'',20 requestCriterionsHidden:'',21 requestResult:'',22 requestResultContent:'',23 requestResultNfo:'',24 requestResultPagesNavigator:'',25 requestResultRequestNumber:0,26 onPageChange:null,27 numberPerPage:30,28 };29 30 /**31 *32 */33 this.doAction = function(fct)34 {35 switch(fct)36 {37 case 'queryResult':38 /* function 'queryResult' : when query is executed, prepare the interface39 */40 if(arguments.length==3)41 {42 displayQueryResult(arguments[1], arguments[2]);43 }44 break;45 case 'queryPage':46 /* function 'queryPage' : display returned page47 */48 if(arguments.length==3)49 {50 displayQueryPage(arguments[1], arguments[2]);51 }52 break;53 case 'show':54 /* function 'show' : show/hide the query/result55 */56 if(arguments.length==2)57 {58 show(arguments[1]);59 }60 break;61 case 'setOptions':62 /* function 'setOptions' : allows to set options after the object was63 * created64 */65 if(arguments.length==2)66 {67 setOptions(arguments[1]);68 }69 break;70 }71 }72 73 /**74 * returns the current request number75 */76 this.getRequestNumber = function ()77 {78 return(requestNumber);79 }80 81 /**82 * returns the number of items per page83 */84 this.getNumberPerPage = function ()85 {86 return(options.numberPerPage);87 }88 89 /**90 * this function show/hide the different panels91 * 'buildQuery' : hide the result panel and display the panel to build query92 * 'resultQuery' : hide the panel to build query and display the result panel93 */94 var show = function(mode)95 {96 switch(mode)97 {98 case 'buildQuery':99 $('.'+options.requestCriterionsVisible).css('display', 'block');100 $('.'+options.requestCriterionsHidden).css('display', 'none');101 $('.'+options.requestResult).css('display', 'none');102 break;103 case 'resultQuery':104 $('#iResultQueryContent').html("<br><img src='./plugins/GrumPluginClasses/icons/processing.gif'>");105 $('.'+options.requestCriterionsVisible).css('display', 'none');106 $('.'+options.requestCriterionsHidden).css('display', 'block');107 $('.'+options.requestResult).css('display', 'block');108 break;109 }110 }111 112 /**113 * this function display the number of items found and prepare the page114 * navigator115 *116 * @param String nfo : 2 information separated with a semi-colon ';'117 * requestNumber;numberOfItems118 */119 var displayQueryResult = function (isSuccess, nfo)120 {121 if(isSuccess)122 {123 nfo=nfo.split(';');124 125 requestNumber=nfo[0];126 $('#iResultQueryNfo').html(nfo[1]);127 pn.doAction('setOptions', { numberItem:nfo[1], defaultPage:1 } );128 show('resultQuery');129 }130 else131 {132 //$('#'+options.requestResultContent).html("");133 show('buildQuery');134 alert('Something is wrong on the server-side !');135 }136 }137 138 139 /**140 * this function display the number of items found and prepare the page141 * navigator142 *143 * @param String nfo : 2 information separated with a semi-colon ';'144 * requestNumber;numberOfItems145 */146 var displayQueryPage = function (isSuccess, nfo)147 {148 if(isSuccess)149 {150 $('#iResultQueryContent').html(nfo);151 }152 else153 {154 alert('Something is wrong on the server-side !');155 }156 }157 158 159 /**160 *161 * @param Object optionsToSet : set the given options162 */163 var setOptions = function(optionsToSet)164 {165 if(typeof optionsToSet=='object')166 {167 options = jQuery.extend(options, optionsToSet);168 }169 }170 171 /**172 * initialize the object173 */174 var init = function (optionsToSet)175 {176 setOptions(optionsToSet);177 178 pn = new pagesNavigator(options.requestResultPagesNavigator,179 {180 itemPerPage:options.numberPerPage,181 displayNumPage:9,182 classActive:'pnActive{/literal}{$datas.themeName}{literal}',183 classInactive:'pnInactive{/literal}{$datas.themeName}{literal}',184 onPageChange: function (page)185 {186 if(options.onPageChange!=null && jQuery.isFunction(options.onPageChange))187 {188 options.onPageChange(requestNumber, page, options.numberPerPage);189 }190 },191 }192 );193 194 requestNumber=options.requestResultRequestNumber;195 }196 197 init(optionsToSet);198 }199 200 201 function init()202 {203 im = new interfaceManager(204 {205 requestCriterionsVisible:'cRequestCriterions',206 requestCriterionsHidden:'cModifyRequest',207 requestResult:'cResultQuery',208 requestResultContent:'iResultQueryContent',209 requestResultNfo:'iResultQueryNfo',210 requestResultPagesNavigator:'iPagesNavigator',211 }212 );213 214 requestBuilderOptions.imgEditUrl='{/literal}{$ROOT_URL}{$themeconf.admin_icon_dir}{literal}/edit_s.png';215 requestBuilderOptions.imgDeleteUrl='{/literal}{$ROOT_URL}{$themeconf.admin_icon_dir}{literal}/delete.png';216 requestBuilderOptions.classGroup='gcBorderInput gcTextInput';217 requestBuilderOptions.classItem='gcBgInput gcTextInput';218 requestBuilderOptions.classOperator='cbOperator cbOperatorBg{/literal}{$datas.themeName}{literal} gcLinkHover';219 requestBuilderOptions.onRequestSuccess = function (msg) { im.doAction('queryResult', true, msg); cb.doAction('getPage', im.getRequestNumber(), 1, im.getNumberPerPage()); };220 requestBuilderOptions.onRequestError = function (msg) { im.doAction('queryResult', false, msg); };221 requestBuilderOptions.onGetPageSuccess = function (msg) { im.doAction('queryPage', true, msg); };222 requestBuilderOptions.onGetPageError = function (msg) { im.doAction('queryPage', false, msg); };223 224 cb = new criteriaBuilder('iListColorsChoosen', requestBuilderOptions);225 226 im.doAction('setOptions',227 { onPageChange:228 function (requestNumber, page, numberPerPage)229 {230 $('#iResultQueryContent').html("<br><img src='./plugins/GrumPluginClasses/icons/processing.gif'>");231 cb.doAction('getPage', requestNumber, page, numberPerPage);232 }233 }234 );235 236 }237 238 239 240 </script>241 {/literal}242 243 {$datas.dialogBox}244 1 245 2 <h2>{'cstat_search_by_color'|@translate}</h2> 246 3 247 <form> 248 <fieldset> 249 <legend>{'cstat_search_criterion'|@translate}</legend> 250 251 <div id='iRequestCriterions' class='cRequestCriterions'> 252 <div style='width:100%;min-height:250px;margin-bottom:8px;'> 253 <ul id='iListColorsChoosen'> 254 </ul> 255 </div> 256 257 <div class='gcBgInput cbButtons'>{literal}<a onclick="colorBox.show({cBuilder:cb});">{/literal}{'cstat_add_colors'|@translate}</a></div> 258 <div class='gcBgInput cbButtons'>{literal}<a onclick="cb.doAction('clear');">{/literal}{'cstat_clear_colors'|@translate}</a></div> 259 </div> 260 <div class='cModifyRequest' style='display:none;'> 261 <div class='gcBgInput cbButtons'>{literal}<a onclick="im.doAction('show', 'buildQuery');">{/literal}{'cstat_do_modify_request'|@translate}</a></div> 262 </div> 263 264 </fieldset> 265 266 <input type="button" class='cRequestCriterions' style="margin-left:1em;" onclick="cb.doAction('send');" value="{'cstat_search'|@translate}"> 267 </form> 268 269 <fieldset id='iResultQuery' style='display:none;' class='cResultQuery'> 270 <legend>{'cstat_result_query'|@translate}</legend> 271 272 <div id='iResultQueryContent' style='width:100%;min-height:250px;max-height:450px;overflow:auto;margin-bottom:8px;'></div> 273 274 <div class='gcBgInput gcTextInput'> 275 <div id='iPagesNavigator' style='float:right;'></div> 276 <div style='text-align:left;padding:4px;'>{'cstat_number_of_item_found'|@translate} : <span id='iResultQueryNfo'></span></div> 277 </div> 278 279 </fieldset> 280 281 282 <script type="text/javascript"> 283 init(); 284 </script> 4 {$cstat_search_page}
Note: See TracChangeset
for help on using the changeset viewer.