| 1: | <?php | 
| 2: |  | 
| 3: |  | 
| 4: |  | 
| 5: |  | 
| 6: |  | 
| 7: |  | 
| 8: |  | 
| 9: |  | 
| 10: |  | 
| 11: |  | 
| 12: |  | 
| 13: |  | 
| 14: |  | 
| 15: |  | 
| 16: | $current_path = __DIR__; | 
| 17: | if (DIRECTORY_SEPARATOR !== '/') { | 
| 18: | $current_path = str_replace(DIRECTORY_SEPARATOR, '/', $current_path); | 
| 19: | } | 
| 20: | $xoops_root_path = substr($current_path, 0, strpos(strtolower($current_path), '/class/xoopseditor/tinymce/')); | 
| 21: | include_once $xoops_root_path . '/mainfile.php'; | 
| 22: | defined('XOOPS_ROOT_PATH') || exit('XOOPS root path not defined'); | 
| 23: |  | 
| 24: |  | 
| 25: | include_once XOOPS_ROOT_PATH . '/modules/system/constants.php'; | 
| 26: |  | 
| 27: |  | 
| 28: | $admin = false; | 
| 29: |  | 
| 30: |  | 
| 31: | $gperm_handler = xoops_getHandler('groupperm'); | 
| 32: | $groups        = is_object($GLOBALS['xoopsUser']) ? $GLOBALS['xoopsUser']->getGroups() : array(XOOPS_GROUP_ANONYMOUS); | 
| 33: | $admin         = $gperm_handler->checkRight('system_admin', XOOPS_SYSTEM_IMAGE, $groups); | 
| 34: |  | 
| 35: |  | 
| 36: |  | 
| 37: | $imgcat_handler = xoops_getHandler('imagecategory'); | 
| 38: | $catreadlist    = $imgcat_handler->getList($groups, 'imgcat_read', 1); | 
| 39: | $catwritelist   = $imgcat_handler->getList($groups, 'imgcat_write', 1); | 
| 40: |  | 
| 41: | $canbrowse = ($admin || !empty($catreadlist) || !empty($catwritelist)) ? true : false; | 
| 42: |  | 
| 43: | echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'; | 
| 44: | echo '<html xmlns="https://www.w3.org/1999/xhtml" xml:lang="' . _LANGCODE . '" lang="' . _LANGCODE . '">'; | 
| 45: | ?> | 
| 46: | <head> | 
| 47: | <title>{#xoopsimagemanager_dlg.dialog_title}</title> | 
| 48: | <script type="text/javascript" src="../../tiny_mce_popup.js"></script> | 
| 49: | <script type="text/javascript" src="../../utils/mctabs.js"></script> | 
| 50: | <script type="text/javascript" src="../../utils/form_utils.js"></script> | 
| 51: | <script type="text/javascript" src="../../utils/validate.js"></script> | 
| 52: | <script type="text/javascript" src="js/xoopsimagemanager.js"></script> | 
| 53: | <link href="css/xoopsimagemanager.css" rel="stylesheet" type="text/css"/> | 
| 54: | <base target="_self"/> | 
| 55: | </head> | 
| 56: |  | 
| 57: | <body id="xoopsimagemanager" style="display: none;"> | 
| 58: | <form onsubmit="XoopsimagemanagerDialog.insert();return false;" action="#"> | 
| 59: | <div class="tabs"> | 
| 60: | <ul> | 
| 61: | <li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" | 
| 62: | onmousedown="return false;">{#xoopsimagemanager_dlg.tab_general}</a></span></li> | 
| 63: | <li id="appearance_tab"><span><a href="javascript:mcTabs.displayTab('appearance_tab','appearance_panel');" onmousedown="return false;">{#xoopsimagemanager_dlg.tab_appearance}</a></span> | 
| 64: | </li> | 
| 65: | <li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#xoopsimagemanager_dlg.tab_advanced}</a></span> | 
| 66: | </li> | 
| 67: | </ul> | 
| 68: | </div> | 
| 69: |  | 
| 70: | <div class="panel_wrapper"> | 
| 71: | <div id="general_panel" class="panel current"> | 
| 72: | <fieldset> | 
| 73: | <legend>{#xoopsimagemanager_dlg.general}</legend> | 
| 74: | <table class="properties"> | 
| 75: | <tr> | 
| 76: | <td class="column1"> | 
| 77: | <label id="srclabel" for="src">{#xoopsimagemanager_dlg.src}</label> | 
| 78: | </td> | 
| 79: | <td colspan="2"> | 
| 80: | <table border="0" cellspacing="0" cellpadding="0"> | 
| 81: | <tr> | 
| 82: | <td> | 
| 83: | <input name="src" type="text" id="src" value="" | 
| 84: | onchange="XoopsimagemanagerDialog.showPreviewImage(this.value);"/> | 
| 85: | <?php echo imageBrowser('src', $canbrowse); ?> | 
| 86: | </td> | 
| 87: | <td id="srcbrowsercontainer"> </td> | 
| 88: | </tr> | 
| 89: | </table> | 
| 90: | </td> | 
| 91: | </tr> | 
| 92: | <tr> | 
| 93: | <td><label for="src_list">{#xoopsimagemanager_dlg.image_list}</label></td> | 
| 94: | <td><select id="src_list" name="src_list" | 
| 95: | onchange="document.getElementById('src').value=this.options[this.selectedIndex].value;document.getElementById('alt').value=this.options[this.selectedIndex].text;document.getElementById('title').value=this.options[this.selectedIndex].text;XoopsimagemanagerDialog.showPreviewImage(this.options[this.selectedIndex].value);"></select> | 
| 96: | </td> | 
| 97: | </tr> | 
| 98: | <tr> | 
| 99: | <td class="column1"><label id="altlabel" for="alt">{#xoopsimagemanager_dlg.alt}</label></td> | 
| 100: | <td colspan="2"><input id="alt" name="alt" type="text" value=""/></td> | 
| 101: | </tr> | 
| 102: | <tr> | 
| 103: | <td class="column1"><label id="titlelabel" for="title">{#xoopsimagemanager_dlg.title}</label></td> | 
| 104: | <td colspan="2"><input id="title" name="title" type="text" value=""/></td> | 
| 105: | </tr> | 
| 106: | </table> | 
| 107: | </fieldset> | 
| 108: |  | 
| 109: | <fieldset> | 
| 110: | <legend>{#xoopsimagemanager_dlg.preview}</legend> | 
| 111: | <div id="prev"></div> | 
| 112: | </fieldset> | 
| 113: | </div> | 
| 114: |  | 
| 115: | <div id="appearance_panel" class="panel"> | 
| 116: | <fieldset> | 
| 117: | <legend>{#xoopsimagemanager_dlg.tab_appearance}</legend> | 
| 118: |  | 
| 119: | <table border="0" cellpadding="4" cellspacing="0"> | 
| 120: | <tr> | 
| 121: | <td class="column1"><label id="alignlabel" for="align">{#xoopsimagemanager_dlg.align}</label></td> | 
| 122: | <td> | 
| 123: | <select id="align" name="align" | 
| 124: | onchange="XoopsimagemanagerDialog.updateStyle('align');XoopsimagemanagerDialog.changeAppearance();"> | 
| 125: | <option value="">{#not_set}</option> | 
| 126: | <option value="baseline">{#xoopsimagemanager_dlg.align_baseline}</option> | 
| 127: | <option value="top">{#xoopsimagemanager_dlg.align_top}</option> | 
| 128: | <option value="middle">{#xoopsimagemanager_dlg.align_middle}</option> | 
| 129: | <option value="bottom">{#xoopsimagemanager_dlg.align_bottom}</option> | 
| 130: | <option value="text-top">{#xoopsimagemanager_dlg.align_texttop}</option> | 
| 131: | <option value="text-bottom">{#xoopsimagemanager_dlg.align_textbottom}</option> | 
| 132: | <option value="left">{#xoopsimagemanager_dlg.align_left}</option> | 
| 133: | <option value="right">{#xoopsimagemanager_dlg.align_right}</option> | 
| 134: | </select> | 
| 135: | </td> | 
| 136: | <td rowspan="6" valign="top"> | 
| 137: | <div class="alignPreview"> | 
| 138: | <img id="alignSampleImg" src="img/sample.gif" alt="{#xoopsimagemanager_dlg.example_img}"/> | 
| 139: | Lorem ipsum, Dolor sit amet, consectetuer adipiscing loreum ipsum edipiscing elit, sed diam | 
| 140: | nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.Loreum ipsum | 
| 141: | edipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam | 
| 142: | erat volutpat. | 
| 143: | </div> | 
| 144: | </td> | 
| 145: | </tr> | 
| 146: |  | 
| 147: | <tr> | 
| 148: | <td class="column1"><label id="widthlabel" for="width">{#xoopsimagemanager_dlg.dimensions}</label></td> | 
| 149: | <td nowrap="nowrap"> | 
| 150: | <input name="width" type="text" id="width" value="" size="5" maxlength="5" class="size" | 
| 151: | onchange="XoopsimagemanagerDialog.changeHeight();"/> x | 
| 152: | <input name="height" type="text" id="height" value="" size="5" maxlength="5" class="size" | 
| 153: | onchange="XoopsimagemanagerDialog.changeWidth();"/> px | 
| 154: | </td> | 
| 155: | </tr> | 
| 156: |  | 
| 157: | <tr> | 
| 158: | <td> </td> | 
| 159: | <td> | 
| 160: | <table border="0" cellpadding="0" cellspacing="0"> | 
| 161: | <tr> | 
| 162: | <td><input id="constrain" type="checkbox" name="constrain" class="checkbox"/></td> | 
| 163: | <td><label id="constrainlabel" for="constrain">{#xoopsimagemanager_dlg.constrain_proportions}</label></td> | 
| 164: | </tr> | 
| 165: | </table> | 
| 166: | </td> | 
| 167: | </tr> | 
| 168: |  | 
| 169: | <tr> | 
| 170: | <td class="column1"><label id="vspacelabel" for="vspace">{#xoopsimagemanager_dlg.vspace}</label></td> | 
| 171: | <td><input name="vspace" type="text" id="vspace" value="" size="3" maxlength="3" class="number" | 
| 172: | onchange="XoopsimagemanagerDialog.updateStyle('vspace');XoopsimagemanagerDialog.changeAppearance();" | 
| 173: | onblur="XoopsimagemanagerDialog.updateStyle('vspace');XoopsimagemanagerDialog.changeAppearance();"/> | 
| 174: | </td> | 
| 175: | </tr> | 
| 176: |  | 
| 177: | <tr> | 
| 178: | <td class="column1"><label id="hspacelabel" for="hspace">{#xoopsimagemanager_dlg.hspace}</label></td> | 
| 179: | <td><input name="hspace" type="text" id="hspace" value="" size="3" maxlength="3" class="number" | 
| 180: | onchange="XoopsimagemanagerDialog.updateStyle('hspace');XoopsimagemanagerDialog.changeAppearance();" | 
| 181: | onblur="XoopsimagemanagerDialog.updateStyle('hspace');XoopsimagemanagerDialog.changeAppearance();"/></td> | 
| 182: | </tr> | 
| 183: |  | 
| 184: | <tr> | 
| 185: | <td class="column1"><label id="borderlabel" for="border">{#xoopsimagemanager_dlg.border}</label></td> | 
| 186: | <td><input id="border" name="border" type="text" value="" size="3" maxlength="3" class="number" | 
| 187: | onchange="XoopsimagemanagerDialog.updateStyle('border');XoopsimagemanagerDialog.changeAppearance();" | 
| 188: | onblur="XoopsimagemanagerDialog.updateStyle('border');XoopsimagemanagerDialog.changeAppearance();"/></td> | 
| 189: | </tr> | 
| 190: |  | 
| 191: | <tr> | 
| 192: | <td><label for="class_list">{#class_name}</label></td> | 
| 193: | <td><select id="class_list" name="class_list"></select></td> | 
| 194: | </tr> | 
| 195: |  | 
| 196: | <tr> | 
| 197: | <td class="column1"><label id="stylelabel" for="style">{#xoopsimagemanager_dlg.style}</label></td> | 
| 198: | <td colspan="2"><input id="style" name="style" type="text" value="" onchange="XoopsimagemanagerDialog.changeAppearance();"/> | 
| 199: | </td> | 
| 200: | </tr> | 
| 201: |  | 
| 202: | <!-- <tr> | 
| 203: | <td class="column1"><label id="classeslabel" for="classes">{#xoopsimagemanager_dlg.classes}</label></td> | 
| 204: | <td colspan="2"><input id="classes" name="classes" type="text" value="" onchange="selectByValue(this.form,'classlist',this.value,true);" /></td> | 
| 205: | </tr> --> | 
| 206: | </table> | 
| 207: | </fieldset> | 
| 208: | </div> | 
| 209: |  | 
| 210: | <div id="advanced_panel" class="panel"> | 
| 211: | <fieldset> | 
| 212: | <legend>{#xoopsimagemanager_dlg.swap_image}</legend> | 
| 213: |  | 
| 214: | <input type="checkbox" id="onmousemovecheck" name="onmousemovecheck" class="checkbox" | 
| 215: | onclick="XoopsimagemanagerDialog.setSwapImage(this.checked);"/> | 
| 216: | <label id="onmousemovechecklabel" for="onmousemovecheck">{#xoopsimagemanager_dlg.alt_image}</label> | 
| 217: |  | 
| 218: | <table border="0" cellpadding="4" cellspacing="0" width="100%"> | 
| 219: | <tr> | 
| 220: | <td class="column1"><label id="onmouseoversrclabel" for="onmouseoversrc">{#xoopsimagemanager_dlg.mouseover}</label></td> | 
| 221: | <td> | 
| 222: | <table border="0" cellspacing="0" cellpadding="0"> | 
| 223: | <tr> | 
| 224: | <td> | 
| 225: | <input id="onmouseoversrc" name="onmouseoversrc" type="text" value=""/> | 
| 226: | <?php echo imageBrowser('onmouseoversrc', $canbrowse); ?> | 
| 227: | </td> | 
| 228: | <td id="onmouseoversrccontainer"> </td> | 
| 229: | </tr> | 
| 230: | </table> | 
| 231: | </td> | 
| 232: | </tr> | 
| 233: | <tr> | 
| 234: | <td><label for="over_list">{#xoopsimagemanager_dlg.image_list}</label></td> | 
| 235: | <td><select id="over_list" name="over_list" | 
| 236: | onchange="document.getElementById('onmouseoversrc').value=this.options[this.selectedIndex].value;"></select></td> | 
| 237: | </tr> | 
| 238: | <tr> | 
| 239: | <td class="column1"><label id="onmouseoutsrclabel" for="onmouseoutsrc">{#xoopsimagemanager_dlg.mouseout}</label></td> | 
| 240: | <td class="column2"> | 
| 241: | <table border="0" cellspacing="0" cellpadding="0"> | 
| 242: | <tr> | 
| 243: | <td> | 
| 244: | <input id="onmouseoutsrc" name="onmouseoutsrc" type="text" value=""/> | 
| 245: | <?php echo imageBrowser('onmouseoutsrc', $canbrowse); ?> | 
| 246: | </td> | 
| 247: | <td id="onmouseoutsrccontainer"> </td> | 
| 248: | </tr> | 
| 249: | </table> | 
| 250: | </td> | 
| 251: | </tr> | 
| 252: | <tr> | 
| 253: | <td><label for="out_list">{#xoopsimagemanager_dlg.image_list}</label></td> | 
| 254: | <td><select id="out_list" name="out_list" | 
| 255: | onchange="document.getElementById('onmouseoutsrc').value=this.options[this.selectedIndex].value;"></select></td> | 
| 256: | </tr> | 
| 257: | </table> | 
| 258: | </fieldset> | 
| 259: |  | 
| 260: | <fieldset> | 
| 261: | <legend>{#xoopsimagemanager_dlg.misc}</legend> | 
| 262: |  | 
| 263: | <table border="0" cellpadding="4" cellspacing="0"> | 
| 264: | <tr> | 
| 265: | <td class="column1"><label id="idlabel" for="id">{#xoopsimagemanager_dlg.id}</label></td> | 
| 266: | <td><input id="id" name="id" type="text" value=""/></td> | 
| 267: | </tr> | 
| 268: |  | 
| 269: | <tr> | 
| 270: | <td class="column1"><label id="dirlabel" for="dir">{#xoopsimagemanager_dlg.langdir}</label></td> | 
| 271: | <td> | 
| 272: | <select id="dir" name="dir" onchange="XoopsimagemanagerDialog.changeAppearance();"> | 
| 273: | <option value="">{#not_set}</option> | 
| 274: | <option value="ltr">{#xoopsimagemanager_dlg.ltr}</option> | 
| 275: | <option value="rtl">{#xoopsimagemanager_dlg.rtl}</option> | 
| 276: | </select> | 
| 277: | </td> | 
| 278: | </tr> | 
| 279: |  | 
| 280: | <tr> | 
| 281: | <td class="column1"><label id="langlabel" for="lang">{#xoopsimagemanager_dlg.langcode}</label></td> | 
| 282: | <td> | 
| 283: | <input id="lang" name="lang" type="text" value=""/> | 
| 284: | </td> | 
| 285: | </tr> | 
| 286: |  | 
| 287: | <tr> | 
| 288: | <td class="column1"><label id="usemaplabel" for="usemap">{#xoopsimagemanager_dlg.map}</label></td> | 
| 289: | <td> | 
| 290: | <input id="usemap" name="usemap" type="text" value=""/> | 
| 291: | </td> | 
| 292: | </tr> | 
| 293: |  | 
| 294: | <tr> | 
| 295: | <td class="column1"><label id="longdesclabel" for="longdesc">{#xoopsimagemanager_dlg.long_desc}</label></td> | 
| 296: | <td> | 
| 297: | <table border="0" cellspacing="0" cellpadding="0"> | 
| 298: | <tr> | 
| 299: | <td><input id="longdesc" name="longdesc" type="text" value=""/></td> | 
| 300: | <td id="longdesccontainer"> </td> | 
| 301: | </tr> | 
| 302: | </table> | 
| 303: | </td> | 
| 304: | </tr> | 
| 305: | </table> | 
| 306: | </fieldset> | 
| 307: | </div> | 
| 308: | </div> | 
| 309: |  | 
| 310: | <div class="mceActionPanel"> | 
| 311: | <div style="float: left;"> | 
| 312: | <input type="button" id="insert" name="insert" value="{#insert}" onclick="XoopsimagemanagerDialog.insert();"/> | 
| 313: | </div> | 
| 314: |  | 
| 315: | <div style="float: right;"> | 
| 316: | <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();"/> | 
| 317: | </div> | 
| 318: | </div> | 
| 319: | </form> | 
| 320: | </body> | 
| 321: | </html> | 
| 322: |  | 
| 323: | <?php | 
| 324: |  | 
| 325: |  | 
| 326: |  | 
| 327: |  | 
| 328: |  | 
| 329: |  | 
| 330: | function imageBrowser($inputname = 'src', $canbrowse = false) | 
| 331: | { | 
| 332: | $html = ''; | 
| 333: | if ($canbrowse) { | 
| 334: | $html = "<img title=\"{#xoopsimagebrowser.desc}\" class=\"xoopsimagebrowser\" src=\"img/xoopsimagemanager.png\" | 
| 335: | onclick=\"javascript:XoopsImageBrowser('" . $inputname . "');\" />\n"; | 
| 336: | } | 
| 337: |  | 
| 338: | return $html; | 
| 339: | } | 
| 340: |  | 
| 341: | ?> | 
| 342: |  |