Issues (3885)

Security Analysis    not enabled

This project does not seem to handle request data directly as such no vulnerable execution paths were found.

  Cross-Site Scripting
Cross-Site Scripting enables an attacker to inject code into the response of a web-request that is viewed by other users. It can for example be used to bypass access controls, or even to take over other users' accounts.
  File Exposure
File Exposure allows an attacker to gain access to local files that he should not be able to access. These files can for example include database credentials, or other configuration files.
  File Manipulation
File Manipulation enables an attacker to write custom data to files. This potentially leads to injection of arbitrary code on the server.
  Object Injection
Object Injection enables an attacker to inject an object into PHP code, and can lead to arbitrary code execution, file exposure, or file manipulation attacks.
  Code Injection
Code Injection enables an attacker to execute arbitrary code on the server.
  Response Splitting
Response Splitting can be used to send arbitrary responses.
  File Inclusion
File Inclusion enables an attacker to inject custom files into PHP's file loading mechanism, either explicitly passed to include, or for example via PHP's auto-loading mechanism.
  Command Injection
Command Injection enables an attacker to inject a shell command that is execute with the privileges of the web-server. This can be used to expose sensitive data, or gain access of your server.
  SQL Injection
SQL Injection enables an attacker to execute arbitrary SQL code on your database server gaining access to user data, or manipulating user data.
  XPath Injection
XPath Injection enables an attacker to modify the parts of XML document that are read. If that XML document is for example used for authentication, this can lead to further vulnerabilities similar to SQL Injection.
  LDAP Injection
LDAP Injection enables an attacker to inject LDAP statements potentially granting permission to run unauthorized queries, or modify content inside the LDAP tree.
  Header Injection
  Other Vulnerability
This category comprises other attack vectors such as manipulating the PHP runtime, loading custom extensions, freezing the runtime, or similar.
  Regex Injection
Regex Injection enables an attacker to execute arbitrary code in your PHP process.
  XML Injection
XML Injection enables an attacker to read files on your local filesystem including configuration files, or can be abused to freeze your web-server process.
  Variable Injection
Variable Injection enables an attacker to overwrite program variables with custom data, and can lead to further vulnerabilities.
Unfortunately, the security analysis is currently not available for your project. If you are a non-commercial open-source project, please contact support to gain access.

manager/views/frame/1.blade.php (1 issue)

Severity

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<!DOCTYPE html>
2
<html dir="{{ ManagerTheme::getTextDir() }}" lang="{{ ManagerTheme::getLang() }}" xml:lang="{{ ManagerTheme::getLang() }}">
3
<head>
4
    <title>{{ $modx->getConfig('site_name') }} - (EVO CMS Manager)</title>
5
    <meta http-equiv="Content-Type" content="text/html; charset=<?= ManagerTheme::getCharset()?>" />
6
    <meta name="viewport" content="initial-scale=1.0,user-scalable=no,maximum-scale=1,width=device-width" />
7
    <meta name="theme-color" content="#1d2023" />
8
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
9
    <link rel="stylesheet" type="text/css" href="{{ $css }}" />
10
    @if($modx->getConfig('show_picker'))
11
        <link rel="stylesheet" href="media/style/common/spectrum/spectrum.css" />
12
        <link rel="stylesheet" type="text/css" href="{{ ManagerTheme::getThemeUrl() }}css/color.switcher.css" />
13
    @endif
14
    <link rel="icon" type="image/ico" href="{{ ManagerTheme::getStyle('favicon') }}" />
15
    <style>
16
        #tree { width: {{ $MODX_widthSideBar }}rem }
17
        #main, #resizer { left: {{ $MODX_widthSideBar }}rem }
18
        .ios #main { -webkit-overflow-scrolling: touch; overflow-y: scroll; }
19
    </style>
20
    <script type="text/javascript">
21
        if (/iPhone|iPad|iPod/i.test(navigator.userAgent)) {
22
            document.documentElement.className += ' ios';
23
        }
24
    </script>
25
    <script src="media/script/jquery/jquery.min.js" type="text/javascript"></script>
26
    <script type="text/javascript">
27
        // GLOBAL variable modx
28
        var modx = {
29
            MGR_DIR: '{{ MGR_DIR }}',
30
            MODX_SITE_URL: '{{ MODX_SITE_URL }}',
31
            MODX_MANAGER_URL: '{{ MODX_MANAGER_URL }}',
32
            user: {
33
                role: {{ (int)$user['role'] }},
34
                username: '{{ $user['username'] }}'
35
            },
36
            config: {
37
                mail_check_timeperiod: {{ $modx->getConfig('mail_check_timeperiod') }},
38
                menu_height: {{ (int)$modx->getConfig('manager_menu_height') }},
39
                tree_width: {{ (int)$MODX_widthSideBar }},
40
                tree_min_width: <?= (int)$tree_min_width ?>,
41
                session_timeout: <?= (int)$modx->getConfig('session_timeout') ?>,
42
                site_start: <?= (int)$modx->getConfig('site_start') ?>,
43
                tree_page_click: {{ $modx->getConfig('tree_page_click') }},
44
                theme: '{{ ManagerTheme::getTheme() }}',
45
                theme_mode: '{{ ManagerTheme::getThemeStyle() }}',
46
                which_browser: '<?= $user['which_browser'] ?>',
47
                layout: <?= (int)$modx->getConfig('manager_layout') ?>,
48
                textdir: '<?= ManagerTheme::getTextDir() ?>',
49
                global_tabs: <?= $modx->getConfig('global_tabs') ?>
50
51
            },
52
            lang: {
53
                already_deleted: "<?= $_lang['already_deleted'] ?>",
54
                cm_unknown_error: "<?= $_lang['cm_unknown_error'] ?>",
55
                collapse_tree: "<?= $_lang['collapse_tree'] ?>",
56
                confirm_delete_resource: "<?= $_lang['confirm_delete_resource'] ?>",
57
                confirm_empty_trash: "<?= $_lang['confirm_empty_trash'] ?>",
58
                confirm_publish: "<?= $_lang['confirm_publish'] ?>",
59
                confirm_remove_locks: "<?= $_lang['confirm_remove_locks'] ?>",
60
                confirm_resource_duplicate: "<?= $_lang['confirm_resource_duplicate'] ?>",
61
                confirm_undelete: "<?= $_lang['confirm_undelete'] ?>",
62
                confirm_unpublish: "<?= $_lang['confirm_unpublish'] ?>",
63
                empty_recycle_bin: "<?= $_lang['empty_recycle_bin'] ?>",
64
                empty_recycle_bin_empty: "<?= $_lang['empty_recycle_bin_empty'] ?>",
65
                error_no_privileges: "<?= $_lang["error_no_privileges"] ?>",
66
                expand_tree: "<?= $_lang['expand_tree'] ?>",
67
                inbox: "<?= $_lang['inbox'] ?>",
68
                loading_doc_tree: "<?= $_lang['loading_doc_tree'] ?>",
69
                loading_menu: "<?= $_lang['loading_menu'] ?>",
70
                not_deleted: "<?= $_lang['not_deleted'] ?>",
71
                unable_set_link: "<?= $_lang['unable_set_link'] ?>",
72
                unable_set_parent: "<?= $_lang['unable_set_parent'] ?>",
73
                working: "<?= $_lang['working'] ?>",
74
                paging_prev: "<?= $_lang["paging_prev"] ?>"
75
            },
76
            style: {
77
                actions_file: '<?= addslashes($_style['actions_file']) ?>',
78
                actions_pencil: '<?= addslashes($_style['actions_pencil']) ?>',
79
                actions_plus: '<?= addslashes($_style['actions_plus']) ?>',
80
                actions_reply: '<?= addslashes($_style['actions_reply']) ?>',
81
                collapse_tree: '<?= addslashes('<i class="fa fa-arrow-circle-up"></i>') ?>',
82
                email: '<?= addslashes('<i class="fa fa-envelope"></i>') ?>',
83
                empty_recycle_bin: '<?= addslashes('<i class="fa fa-trash"></i>') ?>',
84
                empty_recycle_bin_empty: '<?= addslashes('<i class="fa fa-trash-o"></i>') ?>',
85
                expand_tree: '<?= addslashes('<i class="fa fa-arrow-circle-down"></i>') ?>',
86
                icons_external_link: '<?= addslashes('<i class="fa fa-external-link"></i>') ?>',
87
                icons_working: '<?= addslashes($_style['tree_working']) ?>',
88
                tree_info: '<?= addslashes($_style['tree_info']) ?>',
89
                tree_folder: '<?= addslashes($_style['tree_folder_new']) ?>',
90
                tree_folder_secure: '<?= addslashes($_style['tree_folder_secure']) ?>',
91
                tree_folderopen: '<?= addslashes($_style['tree_folderopen_new']) ?>',
92
                tree_folderopen_secure: '<?= addslashes($_style['tree_folderopen_secure']) ?>',
93
                tree_minusnode: '<?= addslashes($_style["tree_minusnode"]) ?>',
94
                tree_plusnode: '<?= addslashes($_style['tree_plusnode']) ?>',
95
                tree_preview_resource: '<?= addslashes($_style['tree_preview_resource']) ?>'
96
            },
97
            permission: {
98
                assets_images: <?= $modx->hasPermission('assets_images') ? 1 : 0 ?>,
99
                delete_document: <?= $modx->hasPermission('delete_document') ? 1 : 0 ?>,
100
                edit_chunk: <?= $modx->hasPermission('edit_chunk') ? 1 : 0 ?>,
101
                edit_plugin: <?= $modx->hasPermission('edit_plugin') ? 1 : 0 ?>,
102
                edit_snippet: <?= $modx->hasPermission('edit_snippet') ? 1 : 0 ?>,
103
                edit_template: <?= $modx->hasPermission('edit_template') ? 1 : 0 ?>,
104
                messages: <?= $modx->hasPermission('messages') ? 1 : 0 ?>,
105
                new_document: <?= $modx->hasPermission('new_document') ? 1 : 0 ?>,
106
                publish_document: <?= $modx->hasPermission('publish_document') ? 1 : 0 ?>,
107
                dragndropdocintree: <?= ($modx->hasPermission('new_document') && $modx->hasPermission('edit_document') && $modx->hasPermission('save_document') ? 1 : 0) ?>
108
109
            },
110
            plugins: {
111
                ElementsInTree: <?= isset($modx->pluginCache['ElementsInTree']) ? 1 : 0 ?>,
112
                EVOmodal: <?= isset($modx->pluginCache['EVO.modal']) ? 1 : 0 ?>
113
114
            },
115
            extend: function() {
116
                for (var i = 1; i < arguments.length; i++) {
117
                    for (var key in arguments[i]) {
118
                        if (arguments[i].hasOwnProperty(key)) {
119
                            arguments[0][key] = arguments[i][key];
120
                        }
121
                    }
122
                }
123
                return arguments[0];
124
            },
125
            extended: function(a) {
126
                for (var b in a) {
127
                    this[b] = a[b];
128
                }
129
                delete a[b];
130
            },
131
            openedArray: [],
132
            lockedElementsTranslation: <?= json_encode($unlockTranslations, JSON_FORCE_OBJECT | JSON_UNESCAPED_UNICODE) . "\n" ?>
133
        };
134
        <?php
135
        $opened = array_filter(
136
            array_map(
137
                'intval',
138
                explode(
139
                    '|',
140
                    isset($_SESSION['openedArray']) && is_scalar($_SESSION['openedArray']) ? $_SESSION['openedArray'] : ''
141
                )
142
            )
143
        );
144
        echo (empty($opened) ? '' : 'modx.openedArray[' . implode("] = 1;\n		modx.openedArray[", $opened) . '] = 1;') . "\n";
145
        ?>
146
    </script>
147
    <script src="{{ ManagerTheme::getThemeUrl() }}js/modx.min.js?v=<?= EVO_INSTALL_TIME ?>"></script>
148
    <?php if ($modx->getConfig('show_picker')) { ?>
149
    <script src="media/script/bootstrap/js/bootstrap.min.js" type="text/javascript"></script>
150
    <script src="media/script/spectrum/spectrum.evo.min.js" type="text/javascript"></script>
151
    <script src="{{ ManagerTheme::getThemeUrl() }}js/color.switcher.js" type="text/javascript"></script>
152
    <?php } ?>
153
    <?php
154
    // invoke OnManagerTopPrerender event
155
    $evtOut = $modx->invokeEvent('OnManagerTopPrerender', $_REQUEST);
156
    if (is_array($evtOut)) {
157
        echo implode("\n", $evtOut);
158
    }
159
    ?>
160
</head>
161
<body class="<?= $body_class ?>">
162
<input type="hidden" name="sessToken" id="sessTokenInput" value="<?= isset($_SESSION['mgrToken']) ? $_SESSION['mgrToken'] : '' ?>" />
163
<div id="frameset">
164
    <div id="mainMenu" class="dropdown">
165
        <div class="container">
166
            <div class="row">
167
                <div class="cell" data-evocp="bgmColor">
168
                {!! $menu !!}
169
                </div>
170
                <div class="cell" data-evocp="bgmColor">
171
                    <ul id="settings" class="nav">
172
                        <li id="searchform">
173
                            <form action="index.php?a=71" method="post" target="main">
174
                                <input type="hidden" value="Search" name="submitok" />
175
                                <label for="searchid" class="label_searchid">
176
                                    <i class="fa fa-search"></i>
177
                                </label>
178
                                <input type="text" id="searchid" name="searchid" size="25" />
179
                                <div class="mask"></div>
180
                            </form>
181
                        </li>
182
                        @if ($modx->getConfig('show_newresource_btn') && $modx->hasPermission('new_document'))
183
                            <li id="newresource" class="dropdown newresource">
184
                                <a href="javascript:;" class="dropdown-toggle" onclick="return false;" title="<?= $_lang['add_resource'] ?>"><i class="fa fa-plus"></i></a>
185
                                <ul class="dropdown-menu">
186
                                    <?php if ($modx->hasPermission('new_document')) { ?>
187
                                    <li>
188
                                        <a onclick="" href="index.php?a=4" target="main">
189
                                            <i class="fa fa-file"></i><?= $_lang['add_resource'] ?>
190
                                        </a>
191
                                    </li>
192
                                    <li>
193
                                        <a onclick="" href="index.php?a=72" target="main">
194
                                            <i class="fa fa-link"></i><?= $_lang['add_weblink'] ?>
195
                                        </a>
196
                                    </li>
197
                                    <?php } ?>
198
                                    @if ($modx->getConfig('use_browser') && $modx->hasPermission('assets_images'))
199
                                        <li>
200
                                            <a onclick="" href="media/browser/{{ $modx->getConfig('which_browser') }}/browse.php?&type=images" target="main">
201
                                                <i class="fa fa-camera"></i><?= $_lang['images_management'] ?>
202
                                            </a>
203
                                        </li>
204
                                    @endif
205
                                    @if($modx->getConfig('use_browser') && $modx->hasPermission('assets_files'))
206
                                        <li>
207
                                            <a onclick="" href="media/browser/{{ $modx->getConfig('which_browser') }}/browse.php?&type=files" target="main">
208
                                                <i class="fa fa-files-o"></i><?= $_lang['files_management'] ?>
209
                                            </a>
210
                                        </li>
211
                                    @endif
212
                                </ul>
213
                            </li>
214
                        @endif
215
                        <li id="preview">
216
                            <a href="../" target="_blank" title="<?= $_lang['preview'] ?>">
217
                                <i class="fa fa-desktop"></i>
218
                            </a>
219
                        </li>
220
                        <li id="account" class="dropdown account">
221
                            <a href="javascript:;" class="dropdown-toggle" onclick="return false;">
222
                                <span class="username"><?= entities($user['username'], $modx->getConfig('modx_charset')) ?></span>
223
                                <?php if ($user['photo']) { ?>
224
                                <span class="icon photo" style="background-image: url(<?= MODX_SITE_URL . entities($user['photo'], $modx->getConfig('modx_charset')) ?>);"></span>
225
                                <?php } else { ?>
226
                                <span class="icon"><i class="fa fa-user-circle"></i></span>
227
                                <?php } ?>
228
                                <i id="msgCounter"></i>
229
                            </a>
230
                            <ul class="dropdown-menu">
231
                                <?php if ($modx->hasPermission('messages')): ?>
232
                                <li id="newMail"></li>
233
                                <?php endif; ?>
234
                                <?php if ($modx->hasPermission('change_password')) { ?>
235
                                <li>
236
                                    <a onclick="" href="index.php?a=28" target="main">
237
                                        <i class="fa fa-lock"></i><?= $_lang['change_password'] ?>
238
                                    </a>
239
                                </li>
240
                                <?php } ?>
241
                                <li>
242
                                    <a href="index.php?a=8">
243
                                        <i class="fa fa-sign-out"></i><?= $_lang['logout'] ?>
244
                                    </a>
245
                                </li>
246
                                <?php
247
                                $style = $modx->getConfig('settings_version') !== $modx->getVersionData('version') ? 'style="color:#ffff8a;"' : '';
248
                                $version = 'Evolution';
249
                                ?>
250
                                <?php
251
                                echo sprintf('<li><span class="dropdown-item" title="%s &ndash; %s" %s>' . $version . ' %s</span></li>', $modx->getPhpCompat()->entities($modx->getConfig('site_name')), $modx->getVersionData('full_appname'), $style, $modx->getConfig('settings_version'));
252
                                ?>
253
                            </ul>
254
                        </li>
255
                        <?php if ($modx->hasPermission('settings') || $modx->hasPermission('view_eventlog') || $modx->hasPermission('logs') || $modx->hasPermission('help')) { ?>
256
                        <li id="system" class="dropdown">
257
                            <a href="javascript:;" class="dropdown-toggle" title="<?= $_lang['system'] ?>" onclick="return false;"><i class="fa fa-cogs"></i></a>
258
                            <ul class="dropdown-menu">
259
                                <?php if ($modx->hasPermission('settings')) { ?>
260
                                <li>
261
                                    <a href="index.php?a=17" target="main">
262
                                        <i class="fa fa-sliders fw"></i><?= $_lang['edit_settings'] ?>
263
                                    </a>
264
                                </li>
265
                                <?php } ?>
266
                                <?php if ($modx->hasPermission('view_eventlog')) { ?>
267
                                <li>
268
                                    <a href="index.php?a=70" target="main">
269
                                        <i class="fa fa-calendar"></i><?= $_lang['site_schedule'] ?>
270
                                    </a>
271
                                </li>
272
                                <?php } ?>
273
                                <?php if ($modx->hasPermission('view_eventlog')) { ?>
274
                                <li>
275
                                    <a href="index.php?a=114" target="main">
276
                                        <i class="fa fa-exclamation-triangle"></i><?= $_lang['eventlog_viewer'] ?>
277
                                    </a>
278
                                </li>
279
                                <?php } ?>
280
                                <?php if ($modx->hasPermission('logs')) { ?>
281
                                <li>
282
                                    <a href="index.php?a=13" target="main">
283
                                        <i class="fa fa-user-secret"></i><?= $_lang['view_logging'] ?>
284
                                    </a>
285
                                </li>
286
                                <li>
287
                                    <a href="index.php?a=53" target="main">
288
                                        <i class="fa fa-info-circle"></i><?= $_lang['view_sysinfo'] ?>
289
                                    </a>
290
                                </li>
291
                                <?php } ?>
292
                                <?php if ($modx->hasPermission('help')) { ?>
293
                                <li>
294
                                    <a href="index.php?a=9" target="main">
295
                                        <i class="fa fa-question-circle"></i><?= $_lang['help'] ?>
296
                                    </a>
297
                                </li>
298
                                <?php } ?>
299
                            </ul>
300
                        </li>
301
                        <?php } ?>
302
                        @if($modx->getConfig('show_fullscreen_btn'))
303
                            <li id="fullscreen">
304
                                <a href="javascript:;" onclick="toggleFullScreen();" id="toggleFullScreen" title="<?= $_lang["toggle_fullscreen"] ?>">
305
                                    <i class="fa fa-expand"></i>
306
                                </a>
307
                            </li>
308
                        @endif
309
                    </ul>
310
                </div>
311
            </div>
312
        </div>
313
    </div>
314
    <div id="tree">
315
        <?php
316
        // invoke OnManagerTreeInit event
317
        $evtOut = $modx->invokeEvent('OnManagerTreeInit', $_REQUEST);
318
        if(is_array($evtOut)) {
319
            echo implode("\n", $evtOut);
320
        }
321
        ?>
322
323
        <div class="treeframebody">
324
            <div id="treeMenu">
325
326
                <a class="treeButton" id="treeMenu_expandtree" onclick="modx.tree.expandTree();" title="<?php echo $_lang['expand_tree']; ?>"><i class="fa fa-arrow-circle-down"></i></a>
327
328
                <a class="treeButton" id="treeMenu_collapsetree" onclick="modx.tree.collapseTree();" title="<?php echo $_lang['collapse_tree']; ?>"><i class="fa fa-arrow-circle-up"></i></a>
329
330
                <?php if($modx->hasPermission('new_document')) { ?>
331
                <a class="treeButton" id="treeMenu_addresource" onclick="modx.tabs({url:'<?= MODX_MANAGER_URL ?>?a=4', title: '<?php echo $_lang['add_resource']; ?>'});" title="<?php echo $_lang['add_resource']; ?>"><i class="fa fa-file"></i></a>
332
                <a class="treeButton" id="treeMenu_addweblink" onclick="modx.tabs({url:'<?= MODX_MANAGER_URL ?>?a=72', title: '<?php echo $_lang['add_weblink']; ?>'});" title="<?php echo $_lang['add_weblink']; ?>"><i class="fa fa-link"></i></a>
333
                <?php } ?>
334
335
                <a class="treeButton" id="treeMenu_refreshtree" onclick="modx.tree.restoreTree();" title="<?php echo $_lang['refresh_tree']; ?>"><i class="fa fa-refresh"></i></a>
336
337
                <a class="treeButton" id="treeMenu_sortingtree" onclick="modx.tree.showSorter(event);" title="<?php echo $_lang['sort_tree']; ?>"><i class="fa fa-sort"></i></a>
338
339
                <?php if($modx->hasPermission('edit_document') && $modx->hasPermission('save_document')) { ?>
340
                <a class="treeButton" id="treeMenu_sortingindex" onclick="modx.tabs({url: '<?= MODX_MANAGER_URL ?>?a=56&id=0', title: '<?php echo $_lang['sort_menuindex']; ?>'});" title="<?php echo $_lang['sort_menuindex']; ?>"><i class="fa fa-sort-numeric-asc"></i></a>
341
                <?php } ?>
342
343
                @if($modx->getConfig('use_browser') && $modx->hasPermission('assets_images'))
344
                <a class="treeButton" id="treeMenu_openimages" title="<?php echo $_lang["images_management"] . "\n" . $_lang['em_button_shift'] ?>"><i class="fa fa-camera"></i></a>
345
                @endif
346
347
                @if($modx->getConfig('use_browser') && $modx->hasPermission('assets_files'))
348
                <a class="treeButton" id="treeMenu_openfiles" title="<?php echo $_lang["files_management"] . "\n" . $_lang['em_button_shift'] ?>"><i class="fa fa-files-o"></i></a>
349
                @endif
350
351
                <?php if($modx->hasPermission('edit_template') || $modx->hasPermission('edit_snippet') || $modx->hasPermission('edit_chunk') || $modx->hasPermission('edit_plugin')) { ?>
352
                <a class="treeButton" id="treeMenu_openelements" title="<?php echo $_lang["element_management"] . "\n" . $_lang['em_button_shift'] ?>"><i class="fa fa-th"></i></a>
353
                <?php } ?>
354
355
                <?php if($modx->hasPermission('empty_trash')) { ?>
356
                <a class="treeButton treeButtonDisabled" id="treeMenu_emptytrash" title="<?php echo $_lang['empty_recycle_bin_empty']; ?>"><i class="fa fa-trash-o"></i></a>
357
                <?php } ?>
358
359
                <a class="treeButton" id="treeMenu_theme_dark" onclick="modx.tree.toggleTheme(event)" title="<?php echo $_lang['manager_theme_mode_title']; ?>><i class="fa fa-adjust"></i></a>
360
361
            </div>
362
363
            <div id="treeHolder">
364
                <?php
365
                // invoke OnManagerTreePrerender event
366
                $evtOut = $modx->invokeEvent('OnManagerTreePrerender', $modx->getDatabase()->escape($_REQUEST));
367
                if(is_array($evtOut)) {
368
                    echo implode("\n", $evtOut);
369
                }
370
                $siteName = $modx->getPhpCompat()->entities($modx->getConfig('site_name'));
371
                ?>
372
                <div id="node0" class="rootNode"><a class="node" onclick="modx.tree.treeAction(event, 0)" data-id="0" data-title-esc="<?=$siteName?>"><span class="icon"><?php echo $_style['tree_showtree']; ?></span><span class="title"><?=$siteName?></span></a>
373
                    <div id="treeloader"><i class="fa fa-cog fa-spin fa-3x fa-fw"></i></div>
374
                </div>
375
                <div id="treeRoot"></div>
376
                <?php
377
                // invoke OnManagerTreeRender event
378
                $evtOut = $modx->invokeEvent('OnManagerTreeRender', $modx->getDatabase()->escape($_REQUEST));
379
                if(is_array($evtOut)) {
380
                    echo implode("\n", $evtOut);
381
                }
382
                ?>
383
            </div>
384
        </div>
385
    </div>
386
    <div id="main">
387
        @if ($modx->getConfig('global_tabs'))
388
            <div class="tab-row-container evo-tab-row">
389
                <div class="tab-row"><h2 id="evo-tab-home" class="tab selected" data-target="evo-tab-page-home"><i class="fa fa-home"></i></h2></div>
390
            </div>
391
            <div id="evo-tab-page-home" class="evo-tab-page show iframe-scroller">
392
                <iframe id="mainframe" src="index.php?a=<?= $initMainframeAction ?>" scrolling="auto" frameborder="0" onload="modx.main.onload(event);"></iframe>
393
            </div>
394
        @else
395
            <div class="iframe-scroller">
396
                <iframe id="mainframe" name="main" src="index.php?a=<?= $initMainframeAction ?>" scrolling="auto" frameborder="0" onload="modx.main.onload(event);"></iframe>
397
            </div>
398
        @endif
399
        <script>
400
            if (/iPhone|iPad|iPod/i.test(navigator.userAgent)) {
401
                document.getElementById('mainframe').setAttribute('scrolling', 'no');
402
                document.getElementsByClassName("tabframes").setAttribute("scrolling", "no");
403
            }
404
        </script>
405
        <div id="mainloader"></div>
406
    </div>
407
    <div id="resizer"></div>
408
    <div id="searchresult"></div>
409
410
    <div id="floater" class="dropdown">
411
        <?php
412
        $sortParams = array(
413
            'tree_sortby',
414
            'tree_sortdir',
415
            'tree_nodename'
416
        );
417
        foreach ($sortParams as $param) {
418
            if (isset($_REQUEST[$param])) {
419
                $modx->getManagerApi()->saveLastUserSetting($param, $_REQUEST[$param]);
420
                $_SESSION[$param] = $_REQUEST[$param];
421
            } else if (!isset($_SESSION[$param])) {
422
                $_SESSION[$param] = $modx->getManagerApi()->getLastUserSetting($param);
423
            }
424
        }
425
        ?>
426
        <form name="sortFrm" id="sortFrm">
427
            <div class="form-group">
428
                <input type="hidden" name="dt" value="<?= (isset($_REQUEST['dt']) ? htmlspecialchars($_REQUEST['dt'])
429
                    : '') ?>" />
430
                <label><?= $_lang["sort_tree"] ?></label>
431
                <select name="sortby" class="form-control">
432
                    <option value="isfolder" <?= $_SESSION['tree_sortby'] == 'isfolder' ? "selected='selected'" : "" ?>><?= $_lang['folder'] ?></option>
433
                    <option value="pagetitle" <?= $_SESSION['tree_sortby'] == 'pagetitle' ? "selected='selected'" : "" ?>><?= $_lang['pagetitle'] ?></option>
434
                    <option value="longtitle" <?= $_SESSION['tree_sortby'] == 'longtitle' ? "selected='selected'" : "" ?>><?= $_lang['long_title'] ?></option>
435
                    <option value="id" <?= $_SESSION['tree_sortby'] == 'id' ? "selected='selected'" : "" ?>><?= $_lang['id'] ?></option>
436
                    <option value="menuindex" <?= $_SESSION['tree_sortby'] == 'menuindex' ? "selected='selected'" : "" ?>><?= $_lang['resource_opt_menu_index'] ?></option>
437
                    <option value="createdon" <?= $_SESSION['tree_sortby'] == 'createdon' ? "selected='selected'" : "" ?>><?= $_lang['createdon'] ?></option>
438
                    <option value="editedon" <?= $_SESSION['tree_sortby'] == 'editedon' ? "selected='selected'" : "" ?>><?= $_lang['editedon'] ?></option>
439
                    <option value="publishedon" <?= $_SESSION['tree_sortby'] == 'publishedon' ? "selected='selected'" : "" ?>><?= $_lang['page_data_publishdate'] ?></option>
440
                    <option value="alias" <?= $_SESSION['tree_sortby'] == 'alias' ? "selected='selected'" : "" ?>><?= $_lang['page_data_alias'] ?></option>
441
                </select>
442
            </div>
443
            <div class="form-group">
444
                <select name="sortdir" class="form-control">
445
                    <option value="DESC" <?= $_SESSION['tree_sortdir'] == 'DESC' ? "selected='selected'" : "" ?>><?= $_lang['sort_desc'] ?></option>
446
                    <option value="ASC" <?= $_SESSION['tree_sortdir'] == 'ASC' ? "selected='selected'" : "" ?>><?= $_lang['sort_asc'] ?></option>
447
                </select>
448
            </div>
449
            <div class="form-group">
450
                <label><?= $_lang["setting_resource_tree_node_name"] ?></label>
451
                <select name="nodename" class="form-control">
452
                    <option value="default" <?= $_SESSION['tree_nodename'] == 'default' ? "selected='selected'" : "" ?>><?= trim($_lang['default'], ':') ?></option>
453
                    <option value="pagetitle" <?= $_SESSION['tree_nodename'] == 'pagetitle' ? "selected='selected'" : "" ?>><?= $_lang['pagetitle'] ?></option>
454
                    <option value="longtitle" <?= $_SESSION['tree_nodename'] == 'longtitle' ? "selected='selected'" : "" ?>><?= $_lang['long_title'] ?></option>
455
                    <option value="menutitle" <?= $_SESSION['tree_nodename'] == 'menutitle' ? "selected='selected'" : "" ?>><?= $_lang['resource_opt_menu_title'] ?></option>
456
                    <option value="alias" <?= $_SESSION['tree_nodename'] == 'alias' ? "selected='selected'" : "" ?>><?= $_lang['alias'] ?></option>
457
                    <option value="createdon" <?= $_SESSION['tree_nodename'] == 'createdon' ? "selected='selected'" : "" ?>><?= $_lang['createdon'] ?></option>
458
                    <option value="editedon" <?= $_SESSION['tree_nodename'] == 'editedon' ? "selected='selected'" : "" ?>><?= $_lang['editedon'] ?></option>
459
                    <option value="publishedon" <?= $_SESSION['tree_nodename'] == 'publishedon' ? "selected='selected'" : "" ?>><?= $_lang['page_data_publishdate'] ?></option>
460
                </select>
461
            </div>
462
            <div class="form-group">
463
                <label>
464
                    <input type="checkbox" name="showonlyfolders" value="<?= ($_SESSION['tree_show_only_folders'] ? 1 : '') ?>" onclick="this.value = (this.value ? '' : 1);" <?= ($_SESSION['tree_show_only_folders'] ? '' : ' checked="checked"') ?> /> <?= $_lang['view_child_resources_in_container'] ?></label>
465
            </div>
466
            <div class="text-center">
467
                <a href="javascript:;" class="btn btn-primary" onclick="modx.tree.updateTree();modx.tree.showSorter(event);" title="<?= $_lang['sort_tree'] ?>"><?= $_lang['sort_tree'] ?></a>
468
            </div>
469
        </form>
470
    </div>
471
472
<?php
473
if(!function_exists('constructLink')) {
474
    /**
475
     * @param string $action
476
     * @param string $img
477
     * @param string $text
478
     * @param bool $allowed
479
     */
480
    function constructLink($action, $img, $text, $allowed)
481
    {
482
        if ((bool)$allowed) {
483
            echo sprintf('<div class="menuLink" id="item%s" onclick="modx.tree.menuHandler(%s);">', $action,
484
                $action);
485
            echo sprintf('<i class="%s"></i> %s</div>', $img, $text);
486
        }
487
    }
488
}
489
?>
490
491
<!-- Contextual Menu Popup Code -->
492
    <div id="mx_contextmenu" class="dropdown" onselectstart="return false;">
493
        <div id="nameHolder">&nbsp;</div>
494
        <?php
495
        constructLink(3, 'fa fa-file-o', $_lang["create_resource_here"], $modx->hasPermission('new_document')); // new Resource
496
        constructLink(2, 'fa fa-pencil-square-o', $_lang["edit_resource"], $modx->hasPermission('edit_document')); // edit
497
        constructLink(5, 'fa fa-arrows', $_lang["move_resource"], $modx->hasPermission('save_document')); // move
498
        constructLink(7, 'fa fa-clone', $_lang["resource_duplicate"], $modx->hasPermission('new_document')); // duplicate
499
        constructLink(11, 'fa fa-sort-numeric-asc', $_lang["sort_menuindex"], !!($modx->hasPermission('edit_document') && $modx->hasPermission('save_document'))); // sort menu index
500
        ?>
501
        <div class="seperator"></div>
502
        <?php
503
        constructLink(9, 'fa fa-arrow-up', $_lang["publish_resource"], $modx->hasPermission('publish_document')); // publish
504
        constructLink(10, 'fa fa-arrow-down', $_lang["unpublish_resource"], $modx->hasPermission('publish_document')); // unpublish
505
        constructLink(4, 'fa fa-trash', $_lang["delete_resource"], $modx->hasPermission('delete_document')); // delete
506
        constructLink(8, 'fa fa-arrow-circle-o-up', $_lang["undelete_resource"], $modx->hasPermission('delete_document')); // undelete
507
        ?>
508
        <div class="seperator"></div>
509
        <?php
510
        constructLink(6, 'fa fa-link', $_lang["create_weblink_here"], $modx->hasPermission('new_document')); // new Weblink
511
        ?>
512
        <div class="seperator"></div>
513
        <?php
514
        constructLink(1, 'fa fa-info', $_lang["resource_overview"], $modx->hasPermission('view_document')); // view
515
        constructLink(12, 'fa fa-eye', $_lang["preview_resource"], 1); // preview
0 ignored issues
show
1 is of type integer, but the function expects a boolean.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
516
        ?>
517
518
    </div>
519
520
    <script type="text/javascript">
521
522
        if (document.getElementById('treeMenu')) {
523
            <?php if($modx->hasPermission('edit_template') || $modx->hasPermission('edit_snippet') || $modx->hasPermission('edit_chunk') || $modx->hasPermission('edit_plugin')) { ?>
524
525
            document.getElementById('treeMenu_openelements').onclick = function(e) {
526
                e.preventDefault();
527
                if (modx.config.global_tabs && !e.shiftKey) {
528
                    modx.tabs({url: '<?= MODX_MANAGER_URL ?>index.php?a=76', title: '<?= $_lang["elements"] ?>'});
529
                } else {
530
                    var randomNum = '<?= $_lang["elements"] ?>';
531
                    if (e.shiftKey) {
532
                        randomNum += ' #' + Math.floor((Math.random() * 999999) + 1);
533
                    }
534
                    modx.openWindow({
535
                        url: '<?= MODX_MANAGER_URL ?>index.php?a=76',
536
                        title: randomNum
537
                    });
538
                }
539
            };
540
            <?php } ?>
541
            @if($modx->getConfig('use_browser') && $modx->hasPermission('assets_images'))
542
543
            document.getElementById('treeMenu_openimages').onclick = function(e) {
544
                e.preventDefault();
545
                if (modx.config.global_tabs && !e.shiftKey) {
546
                    modx.tabs({url: '<?= MODX_MANAGER_URL ?>media/browser/{{ $modx->getConfig('which_browser') }}/browse.php?filemanager=media/browser/{{ $modx->getConfig('which_browser') }}/browse.php&type=images', title: '<?= $_lang["images_management"] ?>'});
547
                } else {
548
                    var randomNum = '<?= $_lang["files_files"] ?>';
549
                    if (e.shiftKey) {
550
                        randomNum += ' #' + Math.floor((Math.random() * 999999) + 1);
551
                    }
552
                    modx.openWindow({
553
                        url: '<?= MODX_MANAGER_URL ?>media/browser/{{ $modx->getConfig('which_browser') }}/browse.php?&type=images',
554
                        title: randomNum
555
                    });
556
                }
557
            };
558
            @endif
559
            @if($modx->getConfig('use_browser') && $modx->hasPermission('assets_files'))
560
561
            document.getElementById('treeMenu_openfiles').onclick = function(e) {
562
                e.preventDefault();
563
                if (modx.config.global_tabs && !e.shiftKey) {
564
                    modx.tabs({url: '<?= MODX_MANAGER_URL ?>media/browser/{{ $modx->getConfig('which_browser') }}/browse.php?filemanager=media/browser/{{ $modx->getConfig('which_browser') }}/browse.php&type=files', title: '<?= $_lang["files_files"] ?>'});
565
                } else {
566
                    var randomNum = '<?= $_lang["files_files"] ?>';
567
                    if (e.shiftKey) {
568
                        randomNum += ' #' + Math.floor((Math.random() * 999999) + 1);
569
                    }
570
                    modx.openWindow({
571
                        url: '<?= MODX_MANAGER_URL ?>media/browser/{{ $modx->getConfig('which_browser') }}/browse.php?&type=files',
572
                        title: randomNum
573
                    });
574
                }
575
            };
576
            @endif
577
578
        }
579
580
    </script>
581
    @if ($modx->getConfig('show_fullscreen_btn'))
582
        <script>
583
            function toggleFullScreen()
584
            {
585
                if ((document.fullScreenElement && document.fullScreenElement !== null) ||
586
                    (!document.mozFullScreen && !document.webkitIsFullScreen)) {
587
                    if (document.documentElement.requestFullScreen) {
588
                        document.documentElement.requestFullScreen();
589
                    } else if (document.documentElement.mozRequestFullScreen) {
590
                        document.documentElement.mozRequestFullScreen();
591
                    } else if (document.documentElement.webkitRequestFullScreen) {
592
                        document.documentElement.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT);
593
                    }
594
                } else {
595
                    if (document.cancelFullScreen) {
596
                        document.cancelFullScreen();
597
                    } else if (document.mozCancelFullScreen) {
598
                        document.mozCancelFullScreen();
599
                    } else if (document.webkitCancelFullScreen) {
600
                        document.webkitCancelFullScreen();
601
                    }
602
                }
603
            }
604
605
            $('#toggleFullScreen').click(function() {
606
                var icon = $(this).find('i');
607
                icon.toggleClass('fa-expand fa-compress');
608
            });
609
        </script>
610
    @endif
611
    {!! $modx->invokeEvent('OnManagerFrameLoader', ['action' => ManagerTheme::getActionId()]); !!}
612
</div>
613
@if($modx->getConfig('show_picker'))
614
    <div class="evocp-box">
615
        <div class="evocp-icon"><i class="evocpicon fa fa-paint-brush" aria-hidden="true" ></i></div>
616
        <div class="evocp-frame">
617
            <h2 >COLOR SWITCHER</h2>
618
            <div class="panel panel-default">
619
                <div class="panel-heading">
620
                    <h3 data-toggle="collapse" data-target=".bgmcolors"><i class="fa togglearrow fa-chevron-down" aria-hidden="true"></i> <i class="fa fa-bars" aria-hidden="true"></i> Menu Background</h3><a title="<?= $_lang['reset'] ?>" href="javascript:;" onclick="cleanLocalStorageReloadAll('my_evo_bgmcolor')" class="pull-right resetcolor btn btn-secondary"><i class="fa fa-refresh"></i></a>
621
                </div>
622
                <div class="panel-body collapse in bgmcolors">
623
                    <div class="evocp-bgmcolors">
624
                        <div class="evocp-bgmcolor">#000</div>
625
                        <div class="evocp-bgmcolor">#222</div>
626
                        <div class="evocp-bgmcolor">#333</div>
627
                        <div class="evocp-bgmcolor">#444</div>
628
                        <div class="evocp-bgmcolor">#555</div>
629
                        <div class="evocp-bgmcolor">#777</div>
630
                        <div class="evocp-bgmcolor">#888</div>
631
                        <div class="evocp-bgmcolor">#0f243e</div>
632
                        <div class="evocp-bgmcolor">#548dd4</div>
633
                        <div class="evocp-bgmcolor">#134f5c</div>
634
                        <div class="evocp-bgmcolor">#0b5394</div>
635
                        <div class="evocp-bgmcolor">#351c75</div>
636
                        <div class="evocp-bgmcolor">#741b47</div>
637
                        <div class="evocp-bgmcolor">#900</div>
638
                    </div>
639
                    <input type="color" class="color" id="bgmPicker" name="evocpCustombgmColor" value="#cf2626" placeholder="color code...">
640
                </div>
641
            </div>
642
            <div class="panel panel-default">
643
                <div class="panel-heading">
644
                    <h3 span data-toggle="collapse" data-target=".menuColors"><i class="fa togglearrow fa-chevron-right" aria-hidden="true"></i> <i class="fa fa-bars" aria-hidden="true"></i> Menu links</h3> <a title="<?= $_lang['reset'] ?>" href="javascript:;" onclick="cleanLocalStorageReloadMain('my_evo_menuColor')" class="pull-right resetcolor btn btn-secondary"><i class="fa fa-refresh"></i></a>
645
                </div>
646
                <div class="panel-body collapse menuColors">
647
                    <div class="evocp-menuColors">
648
                        <div class="evocp-menuColor">#000</div>
649
                        <div class="evocp-menuColor">#222</div>
650
                        <div class="evocp-menuColor">#555</div>
651
                        <div class="evocp-menuColor">#666</div>
652
                        <div class="evocp-menuColor evocp_light">#dedede</div>
653
                        <div class="evocp-menuColor evocp_light">#fafafa</div>
654
                        <div class="evocp-menuColor evocp_light">#fff</div>
655
                        <div class="evocp-menuColor">#b45f06</div>
656
                        <div class="evocp-menuColor">#38761d</div>
657
                        <div class="evocp-menuColor">#134f5c</div>
658
                        <div class="evocp-menuColor">#0b5394</div>
659
                        <div class="evocp-menuColor">#351c75</div>
660
                        <div class="evocp-menuColor">#741b47</div>
661
                        <div class="evocp-menuColor">#9d2661</div>
662
                    </div>
663
                    <input class="color" type="color" id="menucolorPicker" name="evocpCustommenuColor" value="#cf2626" placeholder="color code...">
664
                </div>
665
            </div>
666
667
            <div class="panel panel-default">
668
                <div class="panel-heading">
669
                    <h3 data-toggle="collapse" data-target=".menuHColors"><i class="fa togglearrow fa-chevron-right" aria-hidden="true"></i> <i class="fa fa-bars" aria-hidden="true"></i> Menu links:hover </h3><a title="<?= $_lang['reset'] ?>" href="javascript:;" onclick="cleanLocalStorageReloadMain('my_evo_menuHColor')" class="pull-right resetcolor btn btn-secondary"><i class="fa fa-refresh"></i></a>
670
                </div>
671
                <div class="panel-body collapse menuHColors">
672
                    <div class="evocp-menuHColors">
673
                        <div class="evocp-menuHColor">#000</div>
674
                        <div class="evocp-menuHColor">#222</div>
675
                        <div class="evocp-menuHColor">#555</div>
676
                        <div class="evocp-menuHColor">#666</div>
677
                        <div class="evocp-menuHColor evocp_light">#dedede</div>
678
                        <div class="evocp-menuHColor evocp_light">#fafafa</div>
679
                        <div class="evocp-menuHColor evocp_light">#fff</div>
680
                        <div class="evocp-menuHColor">#b45f06</div>
681
                        <div class="evocp-menuHColor">#38761d</div>
682
                        <div class="evocp-menuHColor">#134f5c</div>
683
                        <div class="evocp-menuHColor">#0b5394</div>
684
                        <div class="evocp-menuHColor">#351c75</div>
685
                        <div class="evocp-menuHColor">#741b47</div>
686
                        <div class="evocp-menuHColor">#9d2661</div>
687
                    </div>
688
                    <input class="color" type="color" id="menuHcolorPicker" name="evocpCustommenuHColor" value="#cf2626" placeholder="color code...">
689
                </div>
690
            </div>
691
            <div class="panel panel-default">
692
                <div class="panel-heading">
693
                    <h3 data-toggle="collapse" data-target=".cpcolors"><i class="fa togglearrow fa-chevron-right" aria-hidden="true"></i> <i class="fa fa-font" aria-hidden="true"></i> Text color </h3><a title="<?= $_lang['reset'] ?>" href="javascript:;" onclick="cleanLocalStorageReloadMain('my_evo_color')" class="pull-right resetcolor btn btn-secondary"><i class="fa fa-refresh"></i></a>
694
                </div>
695
                <div class="panel-body collapse cpcolors">
696
                    <div class="evocp-colors">
697
                        <div class="evocp-color">#000</div>
698
                        <div class="evocp-color">#222</div>
699
                        <div class="evocp-color">#333</div>
700
                        <div class="evocp-color">#444</div>
701
                        <div class="evocp-color">#555</div>
702
                        <div class="evocp-color">#777</div>
703
                        <div class="evocp-color">#888</div>
704
                        <div class="evocp-color">#b45f06</div>
705
                        <div class="evocp-color">#38761d</div>
706
                        <div class="evocp-color">#134f5c</div>
707
                        <div class="evocp-color">#0b5394</div>
708
                        <div class="evocp-color">#351c75</div>
709
                        <div class="evocp-color">#741b47</div>
710
                        <div class="evocp-color">#9d2661</div>
711
                    </div>
712
                    <input class="color" type="color" id="textcolorPicker" name="textcolorPicker" value="#cf2626" placeholder="color code...">
713
                </div>
714
            </div>
715
            <div class="panel panel-default">
716
                <div class="panel-heading">
717
                    <h3 data-toggle="collapse" data-target=".alinkcolors"><i class="fa togglearrow fa-chevron-right" aria-hidden="true"></i> <i class="fa fa-link" aria-hidden="true"></i> Links Color</h3> <a title="<?= $_lang['reset'] ?>" href="javascript:;" onclick="cleanLocalStorageReloadMain('my_evo_alinkcolor')" class="pull-right resetcolor btn btn-secondary"><i class="fa fa-refresh"></i></a>
718
                </div>
719
                <div class="panel-body collapse alinkcolors">
720
                    <div class="evocp-alinkcolors">
721
                        <div class="evocp-alinkcolor">#000</div>
722
                        <div class="evocp-alinkcolor">#222</div>
723
                        <div class="evocp-alinkcolor">#555</div>
724
                        <div class="evocp-alinkcolor">#666</div>
725
                        <div class="evocp-alinkcolor">#dedede</div>
726
                        <div class="evocp-alinkcolor">#fafafa</div>
727
                        <div class="evocp-alinkcolor">#fff</div>
728
                        <div class="evocp-alinkcolor">#b45f06</div>
729
                        <div class="evocp-alinkcolor">#38761d</div>
730
                        <div class="evocp-alinkcolor">#134f5c</div>
731
                        <div class="evocp-alinkcolor">#0b5394</div>
732
                        <div class="evocp-alinkcolor">#351c75</div>
733
                        <div class="evocp-alinkcolor">#741b47</div>
734
                        <div class="evocp-alinkcolor">#9d2661</div>
735
                    </div>
736
                    <input class="color" type="color" id="linkcolorPicker" name="alinkcolorPicker" value="#cf2626" placeholder="color code...">
737
                </div>
738
            </div>
739
            <hr/>
740
            <input type="reset" onclick="cleanLocalStorageReloadAll('my_evo_alinkcolor,my_evo_menuColor,my_evo_menuHColor,my_evo_bgmcolor,my_evo_color')" class="btn btn-secondary" value="<?= $_lang['reset'] ?>">
741
        </div>
742
    </div>
743
    <script>
744
        $("#bgmPicker").spectrum({
745
            showButtons: false,
746
            preferredFormat: "hex3",
747
            containerClassName: 'bgmPicker',
748
            showInput: true,
749
            allowEmpty:true
750
        });
751
        $("#menucolorPicker").spectrum({
752
            showButtons: false,
753
            preferredFormat: "hex3",
754
            containerClassName: 'menucolorPicker',
755
            replacerClassName: 'evo-cp-replacer',
756
            showInput: true,
757
            allowEmpty:true
758
        });
759
        $("#menuHcolorPicker").spectrum({
760
            showButtons: false,
761
            preferredFormat: "hex3",
762
            containerClassName: 'menuHcolorPicker',
763
            replacerClassName: 'evo-cp-replacer',
764
            showInput: true,
765
            allowEmpty:true
766
        });
767
        $("#textcolorPicker").spectrum({
768
            showButtons: false,
769
            preferredFormat: "hex3",
770
            containerClassName: 'textcolorPicker',
771
            replacerClassName: 'evo-cp-replacer',
772
            showInput: true,
773
            allowEmpty:true
774
        });
775
        $("#linkcolorPicker").spectrum({
776
            showButtons: false,
777
            preferredFormat: "hex3",
778
            containerClassName: 'linkcolorPicker',
779
            replacerClassName: 'evo-cp-replacer',
780
            showInput: true,
781
            allowEmpty:true
782
        });
783
    </script>
784
@endif
785
</body>
786
</html>
787