1<!-- (c) 2005-2020 by Martin Willisegger --> 2<!-- --> 3<!-- Project : NagiosQL --> 4<!-- Component : Host list view template --> 5<!-- Website : https://sourceforge.net/projects/nagiosql/ --> 6<!-- Version : 3.4.1 --> 7<!-- GIT Repo : https://gitlab.com/wizonet/NagiosQL --> 8<!-- BEGIN datatablehost --> 9<div id="content_main"> 10 <div id="content_title">{TITLE}</div> 11 <!--suppress JSUnusedAssignment, JSUnusedLocalSymbols --> 12 <script type="text/javascript"> 13 <!-- 14 let intCheck = 0; 15 // Action icons 16 function actionPic(modus,id,name) { 17 if(id !== "") { 18 if (modus === "download") { 19 getDownload(id,name); 20 return; 21 } 22 document.frmDatalist.hidModify.value = modus; 23 document.frmDatalist.hidListId.value = id; 24 if (document.frmDatalist.hidModify.value === "delete") { 25 confirminit("{LANG_DELETESINGLE}\n"+name+"?","{LANG_SECURE_QUESTION}",2,"{LANG_YES}","{LANG_NO}",1); 26 } else { 27 document.frmDatalist.submit(); 28 } 29 } 30 } 31 // Download function 32 function getDownload(id,name) { 33 const time = new Date(); 34 const table = "{TABLE_NAME}"; 35 this.location.href = "download.php?table="+table+"&line="+id+"&config="+name+"×tamp="+time.getTime(); 36 } 37 // Add dataset function 38 function addDataset() { 39 document.frmDatalist.modus.value = "add"; 40 document.frmDatalist.submit(); 41 } 42 // Write configuration function 43 function writeConfig() { 44 document.frmDatalist.modus.value = "make"; 45 document.frmDatalist.submit(); 46 } 47 // Deletion confirmation 48 function checkMode() { 49 if (document.frmDatalist.selModify.value === "delete") { 50 confirminit("{LANG_DELETEOK}","{LANG_SECURE_QUESTION}",2,"{LANG_YES}","{LANG_NO}",2); 51 } else { 52 document.frmDatalist.submit(); 53 document.frmDatalist.subDo.disabled = true; 54 } 55 } 56 // Mark all check boxes 57 function markAll() { 58 if (intCheck === 0) { 59 for(let i={MIN_ID};i<={MAX_ID};i++) { 60 if (document.getElementById("chbId_"+i)) { 61 document.getElementById("chbId_"+i).checked = true; 62 } 63 } 64 intCheck = 1; 65 } else { 66 for(let i={MIN_ID};i<={MAX_ID};i++) { 67 if (document.getElementById("chbId_"+i)) { 68 document.getElementById("chbId_"+i).checked = false; 69 } 70 } 71 intCheck = 0; 72 } 73 } 74 // Delete function 75 function del(key) { 76 if (key === "search") { 77 document.frmDatalist.txtSearch.value = ""; 78 document.frmDatalist.submit(); 79 } 80 } 81 // Domain copy enable 82 function checkCopy(elem) { 83 if (elem === 'copy') { 84 document.getElementById("copytext").className = "elementShow"; 85 document.getElementById("selTarDom").className = "elementShow"; 86 } else { 87 document.getElementById("copytext").className = "elementHide"; 88 document.getElementById("selTarDom").className = "elementHide"; 89 } 90 } 91 //Submit form 92 function confOpenerYes(key) { 93 if (key === 1) { 94 document.frmDatalist.submit(); 95 } 96 if (key === 2) { 97 document.frmDatalist.submit(); 98 document.frmDatalist.subDo.disabled = true; 99 } 100 } 101 // Row sorting 102 function sort_row(row,direction) { 103 if (('{DISABLE_SORT_2}' === '') || (row === '1')) { 104 document.frmDatalist.hidSortBy.value = row; 105 document.frmDatalist.hidSortDir.value = direction; 106 document.frmDatalist.hidSort.value = '1'; 107 document.frmDatalist.submit(); 108 } 109 } 110 //--> 111 </script> 112 <form name="frmDatalist" method="post" action="{ACTION_MODIFY}"> 113 <table style="border: 0; border-spacing: 1px; border-collapse: separate;" class="content_formtable"> 114 <tr> 115 <td style="width: 120px;">{LANG_SEARCH_STRING}:</td> 116 <td class="content_tbl_row2"><input title="{LANG_SEARCH_STRING}" type="text" name="txtSearch" value="{DAT_SEARCH}" class="selectborder"></td> 117 <td style="width:100px;"><img src="{IMAGE_PATH_HEAD}lupe.gif" width="18" height="18" alt="{LANG_SEARCH}" title="{LANG_SEARCH}" style="cursor:pointer;" onClick="document.frmDatalist.submit();"> <img src="{IMAGE_PATH_HEAD}del.png" width="18" height="18" alt="{LANG_DELETE_SEARCH}" title="{LANG_DELETE_SEARCH}" onClick="del('search');" style="cursor:pointer;"></td> 118 <td style="width: 180px;"> </td> 119 <td style="width: 70px;">{LANG_FILTER}:</td> 120 <td style="width: 85px;">{LANG_REGISTERED}:</td> 121 <td><select name="selRegFilter" id="selRegFilter" title="{LANG_REGISTERED}" class="selectborder" style="width: 50px;" onchange="document.frmDatalist.submit();"> 122 <option value="0" {SEL_REGFILTER_0_SELECTED}>{LANG_ALL}</option> 123 <option value="1" {SEL_REGFILTER_1_SELECTED}>{LANG_YES}</option> 124 <option value="2" {SEL_REGFILTER_2_SELECTED}>{LANG_NO}</option> 125 </select></td> 126 <td style="width: 20px;"> </td> 127 <td style="width: 50px;">{LANG_ACTIVE}:</td> 128 <td><select name="selActiveFilter" id="selActiveFilter" title="{LANG_ACTIVE}" class="selectborder" style="width: 50px;" onchange="document.frmDatalist.submit();"> 129 <option value="0" {SEL_ACTIVEFILTER_0_SELECTED}>{LANG_ALL}</option> 130 <option value="1" {SEL_ACTIVEFILTER_1_SELECTED}>{LANG_YES}</option> 131 <option value="2" {SEL_ACTIVEFILTER_2_SELECTED}>{LANG_NO}</option> 132 </select></td> 133 </tr> 134 </table> 135 <table border="0" cellpadding="0" class="content_listtable" width="100%"> 136 <tr> 137 <th style="width:30px;text-align:center;padding-top:0;padding-bottom:0;"><input name="chbMark" type="checkbox" class="checkbox" id="chbMark" onMouseUp="markAll();" value="" title="{LANG_MARKALL}"></th> 138 <th style="width:225px;cursor:pointer;" onclick="sort_row(1,'{SORT_DIR_1}');"><div style="float:left">{FIELD_1}</div><div style="float:right">{SORT_IMAGE_1}</div></th> 139 <th style="width:270px;cursor:pointer;{DISABLE_SORT_2}" onclick="sort_row(2,'{SORT_DIR_2}');"><div style="float:left">{FIELD_2}</div><div style="float:right">{SORT_IMAGE_2}</div></th> 140 <th style="width:80px;text-align:center;">{LANG_REGISTERED}</th> 141 <th style="width:80px;text-align:center;">{LANG_ACTIVE}</th> 142 <th style="width:80px;text-align:center;">{LANG_FILE}</th> 143 <th style="width:125px;text-align:center;"><div style="width:125px">{LANG_FUNCTION}</div></th> 144 </tr> 145 <!-- BEGIN datarowhost --> 146 <tr> 147 <td class="{CELLCLASS_M}"><input title="" type="checkbox" name="chbId_{LINE_ID}" id="chbId_{LINE_ID}" {DISABLED}></td> 148 <td class="{CELLCLASS_L}">{DATA_FIELD_1} {DOMAIN_SPECIAL}</td> 149 <td class="{CELLCLASS_L}">{DATA_FIELD_2}</td> 150 <td class="{CELLCLASS_M}">{DATA_REGISTERED}</td> 151 <td class="{CELLCLASS_M}">{DATA_ACTIVE}</td> 152 <td class="{CELLCLASS_M}">{DATA_FILE}</td> 153 <td class="{CELLCLASS_M}" valign="middle"><img src="{IMAGE_PATH}edit.gif" alt="{LANG_MODIFY}" title="{LANG_MODIFY}" width="18" height="18" border="0" onClick="actionPic('modify','{LINE_ID}','');" class="{PICTURE_CLASS}"> 154 <img src="{IMAGE_PATH}copy.gif" alt="{LANG_DUPLICATE}" title="{LANG_DUPLICATE}" width="18" height="18" border="0" onClick="actionPic('copy','{LINE_ID}','');" class="{PICTURE_CLASS} {LINE_CONTROL}"> 155 <img src="{IMAGE_PATH}delete.gif" alt="{LANG_DELETE}" title="{LANG_DELETE}" width="18" height="18" onClick="actionPic('delete','{LINE_ID}','{DATA_FIELD_1}');" class="{PICTURE_CLASS} {LINE_CONTROL}"> 156 <img src="{IMAGE_PATH}write.gif" alt="{LANG_WRITE_CONFIG}" title="{LANG_WRITE_CONFIG}" width="18" height="18" onClick="actionPic('config','{LINE_ID}','{DATA_FIELD_1}');" class="{PICTURE_CLASS} {LINE_CONTROL} {ACTIVE_CONTROL}"> 157 <img src="{IMAGE_PATH}download.gif" alt="{LANG_DOWNLOAD}" title="{LANG_DOWNLOAD}" width="18" height="18" onClick="actionPic('download','{LINE_ID}','{DATA_FIELD_1}');" class="{PICTURE_CLASS} {LINE_CONTROL} {ACTIVE_CONTROL}"> 158 <img src="{IMAGE_PATH}info.gif" alt="{INFO}" title="{INFO}" width="18" height="18" onClick="actionPic('info','{LINE_ID}','');" class="{PICTURE_CLASS}"></td> 159 </tr> 160 <!-- END datarowhost --> 161 </table> 162 <table border="0" cellpadding="0" class="content_formtable" width="100%"> 163 <tr> 164 <td><input name="subAdd" type="button" id="subAdd" onClick="addDataset();" value="{LANG_ADD}" {ADD_CONTROL} style="width:100px;"> 165 <input name="subMake" type="button" id="subMake" onclick="writeConfig();" value="{LANG_WRITE_CONF_ALL}" {ADD_CONTROL} style="width:205px;"></td> 166 <td><input name="modus" type="hidden" id="modus" value="checkform"> 167 <input name="hidModify" type="hidden" id="hidModify"> 168 <input name="hidListId" type="hidden" id="hidListId"> 169 <input name="hidLimit" type="hidden" id="hidLimit" value="{LIMIT}"> 170 <input name="hidSortBy" type="hidden" id="hidSortBy" value="{SORT_BY}"> 171 <input name="hidSortDir" type="hidden" id="hidSortDir" value="{SORT_DIR}"> 172 <input name="hidSort" type="hidden" id="hidSort" value="0"></td> 173 <td style="text-align:right">{LANG_MARKED}: 174 <select title="{LANG_MARKED}" name="selModify" id="selModify" onchange="checkCopy(this.value);" class="selectborder" {ADD_CONTROL} style="width:120px;"> 175 <option value="none"> </option> 176 <option value="delete">{DELETE}</option> 177 <option value="copy">{DUPLICATE}</option> 178 <option value="config">{WRITE_CONFIG}</option> 179 <option value="activate">{ACTIVATE}</option> 180 <option value="deactivate">{DEACTIVATE}</option> 181 </select> 182 <span id="copytext" style="padding-left:10px" class="elementHide">to Domain:</span> 183 <select title="to Domain" name="selTarDom" id="selTarDom" class="elementHide selectborder" {ADD_CONTROL} style="width:120px;"> 184 <!-- BEGIN domainlist --> 185 <option value="{DOMAIN_ID}" {DOMAIN_SEL}>{DOMAIN_NAME}</option> 186 <!-- END domainlist --> 187 </select> 188 <input name="subDo" type="button" id="subDo" value="{LANG_DO_IT}" onClick="checkMode();" {ADD_CONTROL} style="width:120px;"></td> 189 </tr> 190 </table> 191 </form> 192 <br> 193 <div class="pagelinks">{PAGES}</div> 194</div> 195<div id="confirmcontainer"></div> 196<div id="msgcontainer"></div> 197<!-- END datatablehost --> 198<!-- BEGIN msgfooter --> 199<p style="padding-left:10px; width:890px;"> 200 <!-- BEGIN consistency --><span>{CONSIST_USAGE}</span><br><br><!-- END consistency --> 201 <!-- BEGIN infomessage --><span class="greenmessage">{INFOMESSAGE}</span><br><!-- END infomessage --> 202 <!-- BEGIN errormessage --><span class="redmessage">{ERRORMESSAGE}</span><br><!-- END errormessage --> 203 <!-- BEGIN table_time --><span class="timeinfo">{LAST_MODIFIED_TABLE}</span><br><!-- END table_time --> 204 <!-- BEGIN file_time --><span class="timeinfo">{LAST_MODIFIED_FILE}</span><br><!-- END file_time --> 205 <!-- BEGIN modification_status --><span class="redmessage">{MODIFICATION_STATUS}</span><br><!-- END modification_status --> 206</p> 207<!-- END msgfooter -->