From c40a27baf7551bc0b5ff0307be040170c62aae1f Mon Sep 17 00:00:00 2001 From: Marc Stampfli Date: Wed, 18 Apr 2018 16:29:38 +0200 Subject: [PATCH 1/4] Updated workflow to v3; Enabled uglification of main.js --- src/admin/assets/Main.php | 2 +- src/admin/resources/compileConfig.js | 91 - src/admin/resources/dist/css/cmsadmin.css | 2 +- src/admin/resources/dist/js/main.js | 121 - src/admin/resources/dist/js/main.uglified.js | 1 + src/admin/resources/gulp-config.js | 113 + src/admin/resources/gulpfile.js | 3 +- src/admin/resources/package-lock.json | 9927 ++++++++++++++---- src/admin/resources/package.json | 2 +- 9 files changed, 7826 insertions(+), 2436 deletions(-) delete mode 100644 src/admin/resources/compileConfig.js delete mode 100644 src/admin/resources/dist/js/main.js create mode 100644 src/admin/resources/dist/js/main.uglified.js create mode 100644 src/admin/resources/gulp-config.js diff --git a/src/admin/assets/Main.php b/src/admin/assets/Main.php index a8f25fbc..10cb803a 100644 --- a/src/admin/assets/Main.php +++ b/src/admin/assets/Main.php @@ -19,7 +19,7 @@ class Main extends \yii\web\AssetBundle * @inheritdoc */ public $js = [ - 'dist/js/main.js' + 'dist/js/main.uglified.js' ]; /** diff --git a/src/admin/resources/compileConfig.js b/src/admin/resources/compileConfig.js deleted file mode 100644 index 128b6af5..00000000 --- a/src/admin/resources/compileConfig.js +++ /dev/null @@ -1,91 +0,0 @@ -module.exports = { - - version: "0.0.2", - - css: { - scss: { - config: { - outputStyle: 'compressed' // nested, compact, expanded and compressed are available options - } - }, - autoprefixer: { - enabled: true, - config: { - browsers: ['> 0.1%'] - } - }, - pxToRem: { - enabled: true, - config: { - rootValue: 16, - propList: ['font', 'font-size', 'line-height', 'letter-spacing'], - selectorBlackList: [/^html$/, /^body$/], // Ignore font-size definition on html or body - replace: false - } - }, - cleanCss: { - enabled: "dev, prep, prod", - config: { - compatibility: 'ie8' - } - } - }, - - js: { - babeljs: { - enabled: true, - config: { - minified: true - } - } - }, - - images: { - imagemin: { - enabled: true, - config: [ - imagemin.gifsicle({interlaced: true}), - imagemin.jpegtran({progressive: true}), - imagemin.optipng({optimizationLevel: 5}), - imagemin.svgo({plugins: [{removeViewBox: true}]}) - ] - } - }, - - svg: { - svgmin: { - enabled: true, - config: { - } - } - }, - - paths: { - // "DESTINATION" : ['SOURCE'] - css: { - "dist/css/": ['scss/**/*.scss'] - }, - js: { - "dist/js/main.js": [ - "js/cmsadmin.js", - "js/services.js" - ] - }, - images: { - "img/": 'img/**/*' - }, - svg: {} - }, - - // All tasks above are available (css, js, images and svg) - combinedTasks: { - default: [ 'css', 'js' ], - compile: [ 'css', 'js' ], - compress: [ 'images', 'svg' ] - }, - - watchTask: { - 'css': [ 'css' ], - 'js': [ 'js' ] - } -}; \ No newline at end of file diff --git a/src/admin/resources/dist/css/cmsadmin.css b/src/admin/resources/dist/css/cmsadmin.css index 944263f9..263a5a9b 100644 --- a/src/admin/resources/dist/css/cmsadmin.css +++ b/src/admin/resources/dist/css/cmsadmin.css @@ -1 +1 @@ -.google-chrome-font-offset-fix{display:inline-block}@media (-webkit-min-device-pixel-ratio: 0){.google-chrome-font-offset-fix{margin-top:2px}}.block{background-color:#fff;border:1px dashed #adb5bd;border-radius:3px;margin-top:5px;padding:0;position:relative;-webkit-transition:.2s ease-in-out border-color, 0s .2s ease-in-out z-index;transition:.2s ease-in-out border-color, 0s .2s ease-in-out z-index}.block:not(:last-of-type){margin-bottom:25px}.block:hover{border-color:#adb5bd;border-radius:0 0 3px 3px;-webkit-transition:.2s ease-in-out border-color;transition:.2s ease-in-out border-color;z-index:1;cursor:move}.block-is-layout>.block{border-color:transparent}.block:before,.block:after{background-color:#E50060;content:"";display:none;height:5px;left:0;position:absolute;right:0;z-index:70}.block:before{top:-6px}.block:after{bottom:-6px}.block--drag-top:before{display:block}.block--drag-bottom:after{display:block}.block-is-hidden .block-front{opacity:.3}.block-is-virgin .block-front{background-color:#99caff}.show-block-lines .block{border-color:rgba(173,181,189,0.5)}.block-toolbar{background-color:#212529;border-radius:3px 3px 0 0;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;left:-1px;opacity:0;padding:0 10px;pointer-events:none;position:absolute;right:-1px;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition:.2s ease-in-out opacity;transition:.2s ease-in-out opacity;z-index:80}.block-toolbar .toolbar-item{border:none !important;font-size:20px;font-size:1.25rem;padding:2px 4px}.block-toolbar .toolbar-item:last-of-type{padding-right:0}.block:hover>.block-toolbar{opacity:1;pointer-events:all}.block-is-layout>.block-toolbar,.block-is-layout:hover>.block-toolbar{background-color:#adb5bd;opacity:1;pointer-events:all}.block-front,.block-edit{padding:10px}.block-front{cursor:pointer;overflow:hidden;white-space:normal;word-break:break-all}.block-front::after{display:block;clear:both;content:""}.block-is-layout>.block>.block-front{padding:10px 0}.block-toolbar-button{background:none;background-color:transparent;border:none;border-radius:0;color:#fff;cursor:pointer;display:block;margin-left:5px;-webkit-transition:.25s ease-in-out background-color;transition:.25s ease-in-out background-color}.block-toolbar-button:hover{background-color:rgba(255,255,255,0.2)}.block--is-dragging .block-toolbar-button{display:none}.block-front h1,.block-front h2,.block-front h3,.block-front h4,.block-front h5{color:#000}.block-front>*:last-of-type{margin-bottom:0}.block-front table{margin:0}.block-front table td>p:first-of-type:last-of-type,.block-front table th>p:first-of-type:last-of-type{margin:0}.block-front hr{margin-bottom:1rem !important;margin-top:1rem !important}.block-front img{max-width:100%;width:auto}.block-front blockquote{background-color:#f8f9fa;border-left:3px solid #E50060;display:block;padding:15px;position:relative;width:100%}.block-front blockquote p{font-family:"Roboto",sans-serif;font-style:italic;margin:0;position:relative;text-indent:40px}.block-front blockquote p:before{color:#E50060;content:'\201C';font-size:70px;font-size:4.375rem;font-weight:700;left:0;line-height:0;position:absolute;text-indent:0;text-shadow:3px 7px 5px rgba(0,0,0,0.1);top:20px}.block-front iframe{max-width:100%}.block-front .iframe-container{height:0;margin:0;overflow:hidden;padding-bottom:56.25%;pointer-events:none;position:relative;width:100%}.block-front .iframe-container iframe{height:100%;left:0;position:absolute;top:0;width:100%}.blockholder-column{width:255px;padding-left:0;padding-right:0;display:none;height:100vh;right:0;position:fixed;-webkit-transform:translateX(0) translateZ(0);transform:translateX(0) translateZ(0)}@media (min-width: 960px){.blockholder-column{display:block}}.blockholder-column-small{-webkit-transform:translateX(205px);-ms-transform:translateX(205px);transform:translateX(205px)}.blockholder-column-small .blockholder{padding:10px}.blockholder-column-small .blockholder-search{display:none}.blockholder-column-small .blockholder-item{padding:5px;max-width:30px;max-height:30px}.blockholder-column-small .blockholder-item span{visibility:hidden}.blockholder-column-small .blockholder-group-title span{visibility:hidden}.blockholder-column-small .blockholder-favorite,.blockholder-column-small .blockholder-clear-button{display:none;max-width:12px;padding-left:2px}.blockholder-column-small .blockholder-favorite i,.blockholder-column-small .blockholder-clear-button i{font-size:8px;font-size:0.5rem}.blockholder{background-color:#495057;color:#adb5bd;display:block;height:100%;padding:15px;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow-y:auto;-ms-overflow-style:none}.blockholder::-webkit-scrollbar{display:none}.blockholder-search{border-bottom:1px solid #fff;display:block;margin:0 0 30px;padding-right:25px;position:relative;width:100%}.blockholder-search-input{background:none;border:none;color:#fff;outline:0;padding-top:5px;width:100%}.blockholder-search-label{color:#fff;display:inline-block;font-size:20px;font-size:1.25rem;margin:0;position:absolute;right:0;top:0;width:auto}.blockholder-group-title{color:#fff;cursor:pointer;display:block;margin-bottom:5px;padding-left:32px}.blockholder-group:not(:first-of-type) .blockholder-group-title{margin-top:30px}.blockholder-group-title .material-icons{font-size:20px;font-size:1.25rem;margin-left:-28px;margin-right:-3px}.blockholder-group-favorites .blockholder-group-title{color:#E50060}.blockholder-group-copy-stack .blockholder-group-title{padding-right:40px;position:relative}.blockholder-clear-button{display:block;padding:3px 6px 5px 6px;position:absolute;right:0;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:.25s ease-in-out background-color;transition:.25s ease-in-out background-color}.blockholder-clear-button .material-icons{color:#dc3545;font-size:20px;font-size:1.25rem;margin:0}.blockholder-clear-button:hover{background-color:#fff}.blockholder-list{list-style:none;margin:0;padding:0}.blockholder-item{border:1px dashed transparent;padding:4px 2px 3px 30px;position:relative;-webkit-transition:.2s ease-in-out border;transition:.2s ease-in-out border}.blockholder-item:not(:first-of-type){margin-top:5px}.blockholder-item:hover{border-color:#fff;cursor:move}.blockholder-item .blockholder-icon{font-size:20px;font-size:1.25rem;left:3px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.blockholder-item .blockholder-icon+span{margin-left:0}.blockholder-favorite{background-color:rgba(73,80,87,0.8);border:none;bottom:0;color:#E50060;font-size:16px;font-size:1rem;opacity:0;padding:0 8px 3px 8px;pointer-events:none;position:absolute;right:0;top:0;-webkit-transition:.25s ease-in-out opacity, .25s ease-in-out color, .25s ease-in-out background-color;transition:.25s ease-in-out opacity, .25s ease-in-out color, .25s ease-in-out background-color}.blockholder-item:hover .blockholder-favorite{cursor:pointer;opacity:1;pointer-events:all}.blockholder-favorite:hover{background-color:#fff;color:#dc3545}.blockholder-favorite-clear{padding:0 6px 3px 6px}.blockholder-group-toggled .blockholder-toggle-icon{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.blockholder-toggler{background:#495057;border:none;border-radius:.25rem;cursor:pointer;display:none;margin:0;min-height:42px;outline:none !important;padding:0;position:absolute;left:-8px;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:background .25s ease-in-out, min-height .2s ease-in-out;transition:background .25s ease-in-out, min-height .2s ease-in-out;width:16px}.blockholder-toggler i{color:#f8f9fa;-webkit-transition:color .25s ease-in-out, -webkit-transform .25s ease-in-out;transition:color .25s ease-in-out, -webkit-transform .25s ease-in-out;transition:transform .25s ease-in-out, color .25s ease-in-out;transition:transform .25s ease-in-out, color .25s ease-in-out, -webkit-transform .25s ease-in-out}.blockholder-toggler:hover{background:#495057;min-height:72px}.blockholder-toggler-open i{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}@media (min-width: 960px){.blockholder-toggler{display:block}}.cmsadmin{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 0 0 15px;min-height:100%}@media (min-width: 960px){.cmsadmin{margin:0 255px 0 15px}}.cmsadmin>.row{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;margin-right:0}.cmsadmin>.row>.col>.row{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.cmsadmin>.row>.col,.cmsadmin>.row>.col>.row>.col{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media (min-width: 960px){.cmsadmin>.row>.col,.cmsadmin>.row>.col>.row>.col{display:-webkit-box;display:-ms-flexbox;display:flex}}@media (min-width: 960px){.cmsadmin-blockholder-collapsed{margin:0 48px 0 15px}}.cmsadmin-toolbar{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:10px 0 30px;width:100%}.cmsadmin-toolbar label{margin:0}.cmsadmin-nav-tabs{display:-webkit-box;display:-ms-flexbox;display:flex;min-height:43px}.cmsadmin-nav-tabs .nav-item:first-of-type{margin-left:0;margin-right:10px}.cmsadmin-nav-tabs .nav-item-title{padding-left:10px}.cmsadmin-nav-tabs .nav-item-alternative{margin-left:5px}.cmsadmin-nav-tabs .nav-item-alternative>.flag{line-height:44px;line-height:2.75rem;border-radius:.25rem}.cmsadmin-fallback-small{display:none}.nav-tabs.has-enough-space+.cmsadmin-fallback-small{display:none}.nav-tabs.not-enough-space{display:none}.nav-tabs.not-enough-space+.cmsadmin-fallback-small{display:block}.cmsadmin-pages{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;padding:0 0 15px}.cmsadmin-pages>.row{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%}.cmsadmin-pages>.row>.col{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%}.cmsadmin-pages>.row>.col>.nav-tabs{border-bottom:0;-webkit-box-flex:0;-ms-flex:0 0 42px;flex:0 0 42px;z-index:10}.cmsadmin-pages>.row>.col>.nav-tabs .nav-link{background-color:transparent;border-bottom:0}.cmsadmin-pages>.row>.col>.nav-tabs .nav-link.active{border-bottom:1px solid #f8f9fa}.cmsadmin-pages>.row>.col>.nav-tabs .nav-item-alternative .nav-link{background-color:transparent}.cmsadmin-pages>.row>.col>.nav-tabs .nav-item-alternative:not(.nav-item-icon) a.nav-link{margin-top:-1px}.cmsadmin-page{border:solid #ddd;border-radius:0 3px 0 0;border-width:1px 1px 0 0;-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;margin-top:-1px;padding:10px 10px 10px 0}.cmsadmin-pages>.row>.col:last-of-type .cmsadmin-page{border-radius:0;border-right:0}.cmsadmin-container-title{margin-bottom:10px;margin-top:20px}.block-is-layout>.block>.block-front .cmsadmin-container-title{margin-top:0}.cmsadmin-frame-wrapper{position:relative}.cmsadmin-frame{border:none;bottom:30px;display:block;height:calc(100% - 25px);left:10px;position:absolute;right:10px;top:10px;width:calc(100% - 20px)}.cmsnav{display:block;margin-bottom:10px;width:100%}.cmsnav-list{display:block;list-style:none;margin:0;padding:0}.cmsnav-list:not(:first-of-type){margin-top:15px}.cmsnav-button:not(:first-of-type){margin-top:5px}.cmsnav-treeview{display:block}.empty-placeholder{padding:10px;text-align:center}.empty-placeholder--drag-hover{background-color:#E50060;color:#fff}.menu-dropdown{clear:both;display:block;padding-top:10px}.form-side>.menu-dropdown{padding-top:0}.menu-dropdown-toggle-all{font-size:14px;font-size:0.875rem;cursor:pointer}.menu-dropdown-toggle-all i{font-size:24px;font-size:1.5rem}.toolbar-item{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;padding:0 20px}.toolbar-item:first-of-type{padding-left:0}.toolbar-item-lang+.toolbar-item:not(.toolbar-item-lang){border-left:1px solid #ddd}.toolbar-item:last-of-type{padding-right:0}.toolbar-item-lang{padding:5px 10px}.treeview{display:block;font-size:14px;font-size:0.875rem;list-style:none;margin:0;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.treeview-container{display:block;margin-top:20px;position:relative;width:100%}.treeview-chooser .treeview-container{margin-top:10px}.treeview-no-entry{padding:5px 0 5px 30px}.drag-hover>.treeview-no-entry,.drag-hover-top>.treeview-no-entry,.drag-hover-middle>.treeview-no-entry,.drag-hover-bottom>.treeview-no-entry{background-color:#28a745}.treeview-items{display:block;list-style:none;margin:0;padding:0;position:relative}.treeview-item>.treeview-items{margin-left:15px}.treeview-item-collapsed>.treeview-items{display:none}.treeview-item{display:block;padding:0;position:relative}.treeview-item:before{border-bottom:1px solid #ced4da;border-left:1px solid #ced4da;content:'';display:block;height:15px;left:-4px;position:absolute;top:0;width:25px}.treeview-chooser .treeview-item:before{height:20px;top:-5px;width:20px}.treeview-item:after{border-left:1px solid #ced4da;content:'';display:block;height:100%;left:-4px;position:absolute;top:0}.treeview-chooser .treeview-item:after{top:-5px}.treeview-item-lvl1:before,.treeview-item-lvl1:after{display:none}.treeview-item:last-child:after{display:none}.treeview-item-has-children:before{top:-1px;width:7px}.treeview-chooser .treeview-item-has-children:before{height:25px;top:-10px}.treeview-item-collapsed:before{height:16px}.treeview-label{border:solid transparent;border-width:2px 0 2px 0;display:block;padding:0 0 0 23px;position:relative;width:100%}.treeview-chooser .treeview-label{padding-right:0}.treeview-label-container{font-weight:bold;letter-spacing:.8px;letter-spacing:0.05rem}.treeview-label:after{border-radius:5px;content:"";height:100%;position:absolute;right:0;top:0;width:5px}.treeview-chooser .treeview-label:after{display:none}.treeview-label-page:after{background-color:#28a745}.treeview-item-isoffline>.treeview-label:after{background-color:#dc3545}.treeview-item-ishidden>.treeview-label{opacity:.5}.treeview-label.drag-dragging .treeview-icon-collapse{display:none}.treeview-label.drag-hover-top{border-top-color:#28a745}.treeview-label.drag-hover-middle{background-color:#28a745}.treeview-label.drag-hover-bottom{border-bottom-color:#28a745}.treeview-icon{font-size:18px;font-size:1.125rem;height:18px;left:0;line-height:1;position:absolute;top:3px;width:18px}.treeview-icon-right{left:auto;right:10px}.treeview-icon-right+.treeview-link{width:calc(100% - 30px)}.treeview-icon-right+.treeview-icon-right{right:30px}.treeview-icon-right+.treeview-icon-right+.treeview-link{width:calc(100% - 50px)}.treeview-icon-right+.treeview-icon-right+.treeview-icon-right{right:50px}.treeview-icon-right+.treeview-icon-right+.treeview-icon-right+.treeview-link{width:calc(100% - 70px)}.treeview-icon-collapse{cursor:pointer;font-size:24px;font-size:1.5rem;height:24px;top:0;-webkit-transition:.25s ease-in-out transform;transition:.25s ease-in-out transform;width:24px}.treeview-item-collapsed .treeview-icon-collapse{-webkit-transform:rotate(-90deg) translateX(-1px);-ms-transform:rotate(-90deg) translateX(-1px);transform:rotate(-90deg) translateX(-1px)}.treeview-icon .material-icons{display:block}.treeview-link{border:1px solid transparent;border-radius:5px;border-radius:.25rem;cursor:pointer;display:block;padding:0 7px;width:calc(100% - 10px);word-break:break-word;word-wrap:break-word}.treeview-item-active>.treeview-label>.treeview-link,.treeview-link:hover{border-color:rgba(0,0,0,0.125)}.treeview-label-container .treeview-item-active>.treeview-label>.treeview-link,.treeview-label-container .treeview-link:hover{border-color:transparent}.treeview-chooser .treeview-label-page .treeview-icon{left:4px;top:2px}body[class*='internet-explorer-'] .block-toolbar{display:none}body[class*='internet-explorer-'] .block:hover>.block-toolbar,body[class*='internet-explorer-'] .block-is-layout>.block-toolbar,body[class*='internet-explorer-'] .block-is-layout:hover>.block-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex}body[class*='internet-explorer-'] .cmsadmin-frame{height:calc(100vh - 25px)} +.google-chrome-font-offset-fix{display:inline-block}@media (-webkit-min-device-pixel-ratio:0){.google-chrome-font-offset-fix{margin-top:2px}}.block{background-color:#fff;border:1px dashed #adb5bd;border-radius:3px;margin-top:5px;padding:0;position:relative;-webkit-transition:.2s ease-in-out border-color,0s .2s ease-in-out z-index;transition:.2s ease-in-out border-color,0s .2s ease-in-out z-index}.block:not(:last-of-type){margin-bottom:25px}.block:hover{border-color:#adb5bd;border-radius:0 0 3px 3px;-webkit-transition:.2s ease-in-out border-color;transition:.2s ease-in-out border-color;z-index:1;cursor:move}.block-is-layout>.block{border-color:transparent}.block:after,.block:before{background-color:#e50060;content:"";display:none;height:5px;left:0;position:absolute;right:0;z-index:70}.block:before{top:-6px}.block:after{bottom:-6px}.block--drag-top:before{display:block}.block--drag-bottom:after{display:block}.block-is-hidden .block-front{opacity:.3}.block-is-virgin .block-front{background-color:#99caff}.show-block-lines .block{border-color:rgba(173,181,189,.5)}.block-toolbar{background-color:#212529;border-radius:3px 3px 0 0;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;left:-1px;opacity:0;padding:0 10px;pointer-events:none;position:absolute;right:-1px;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition:.2s ease-in-out opacity;transition:.2s ease-in-out opacity;z-index:80}.block-toolbar .toolbar-item{border:none!important;font-size:20px;padding:2px 4px}.block-toolbar .toolbar-item:last-of-type{padding-right:0}.block:hover>.block-toolbar{opacity:1;pointer-events:all}.block-is-layout:hover>.block-toolbar,.block-is-layout>.block-toolbar{background-color:#adb5bd;opacity:1;pointer-events:all}.block-edit,.block-front{padding:10px}.block-front{cursor:pointer;overflow:hidden;white-space:normal;word-break:break-all}.block-front::after{display:block;clear:both;content:""}.block-is-layout>.block>.block-front{padding:10px 0}.block-toolbar-button{background:0 0;background-color:transparent;border:none;border-radius:0;color:#fff;cursor:pointer;display:block;margin-left:5px;-webkit-transition:.25s ease-in-out background-color;transition:.25s ease-in-out background-color}.block-toolbar-button:hover{background-color:rgba(255,255,255,.2)}.block--is-dragging .block-toolbar-button{display:none}.block-front h1,.block-front h2,.block-front h3,.block-front h4,.block-front h5{color:#000}.block-front>:last-of-type{margin-bottom:0}.block-front table{margin:0}.block-front table td>p:first-of-type:last-of-type,.block-front table th>p:first-of-type:last-of-type{margin:0}.block-front hr{margin-bottom:1rem!important;margin-top:1rem!important}.block-front img{max-width:100%;width:auto}.block-front blockquote{background-color:#f8f9fa;border-left:3px solid #e50060;display:block;padding:15px;position:relative;width:100%}.block-front blockquote p{font-family:Roboto,sans-serif;font-style:italic;margin:0;position:relative;text-indent:40px}.block-front blockquote p:before{color:#e50060;content:'\201C';font-size:70px;font-weight:700;left:0;line-height:0;position:absolute;text-indent:0;text-shadow:3px 7px 5px rgba(0,0,0,.1);top:20px}.block-front iframe{max-width:100%}.block-front .iframe-container{height:0;margin:0;overflow:hidden;padding-bottom:56.25%;pointer-events:none;position:relative;width:100%}.block-front .iframe-container iframe{height:100%;left:0;position:absolute;top:0;width:100%}.blockholder-column{width:255px;padding-left:0;padding-right:0;display:none;height:100vh;right:0;position:fixed;-webkit-transform:translateX(0) translateZ(0);transform:translateX(0) translateZ(0)}@media (min-width:960px){.blockholder-column{display:block}}.blockholder-column-small{-webkit-transform:translateX(205px);transform:translateX(205px)}.blockholder-column-small .blockholder{padding:10px}.blockholder-column-small .blockholder-search{display:none}.blockholder-column-small .blockholder-item{padding:5px;max-width:30px;max-height:30px}.blockholder-column-small .blockholder-item span{visibility:hidden}.blockholder-column-small .blockholder-group-title span{visibility:hidden}.blockholder-column-small .blockholder-clear-button,.blockholder-column-small .blockholder-favorite{display:none;max-width:12px;padding-left:2px}.blockholder-column-small .blockholder-clear-button i,.blockholder-column-small .blockholder-favorite i{font-size:8px}.blockholder{background-color:#495057;color:#adb5bd;display:block;height:100%;padding:15px;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow-y:auto;-ms-overflow-style:none}.blockholder::-webkit-scrollbar{display:none}.blockholder-search{border-bottom:1px solid #fff;display:block;margin:0 0 30px;padding-right:25px;position:relative;width:100%}.blockholder-search-input{background:0 0;border:none;color:#fff;outline:0;padding-top:5px;width:100%}.blockholder-search-label{color:#fff;display:inline-block;font-size:20px;margin:0;position:absolute;right:0;top:0;width:auto}.blockholder-group-title{color:#fff;cursor:pointer;display:block;margin-bottom:5px;padding-left:32px}.blockholder-group:not(:first-of-type) .blockholder-group-title{margin-top:30px}.blockholder-group-title .material-icons{font-size:20px;margin-left:-28px;margin-right:-3px}.blockholder-group-favorites .blockholder-group-title{color:#e50060}.blockholder-group-copy-stack .blockholder-group-title{padding-right:40px;position:relative}.blockholder-clear-button{display:block;padding:3px 6px 5px 6px;position:absolute;right:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:.25s ease-in-out background-color;transition:.25s ease-in-out background-color}.blockholder-clear-button .material-icons{color:#dc3545;font-size:20px;margin:0}.blockholder-clear-button:hover{background-color:#fff}.blockholder-list{list-style:none;margin:0;padding:0}.blockholder-item{border:1px dashed transparent;padding:4px 2px 3px 30px;position:relative;-webkit-transition:.2s ease-in-out border;transition:.2s ease-in-out border}.blockholder-item:not(:first-of-type){margin-top:5px}.blockholder-item:hover{border-color:#fff;cursor:move}.blockholder-item .blockholder-icon{font-size:20px;left:3px;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.blockholder-item .blockholder-icon+span{margin-left:0}.blockholder-favorite{background-color:rgba(73,80,87,.8);border:none;bottom:0;color:#e50060;font-size:16px;opacity:0;padding:0 8px 3px 8px;pointer-events:none;position:absolute;right:0;top:0;-webkit-transition:.25s ease-in-out opacity,.25s ease-in-out color,.25s ease-in-out background-color;transition:.25s ease-in-out opacity,.25s ease-in-out color,.25s ease-in-out background-color}.blockholder-item:hover .blockholder-favorite{cursor:pointer;opacity:1;pointer-events:all}.blockholder-favorite:hover{background-color:#fff;color:#dc3545}.blockholder-favorite-clear{padding:0 6px 3px 6px}.blockholder-group-toggled .blockholder-toggle-icon{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.blockholder-toggler{background:#495057;border:none;border-radius:.25rem;cursor:pointer;display:none;margin:0;min-height:42px;outline:0!important;padding:0;position:absolute;left:-8px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:background .25s ease-in-out,min-height .2s ease-in-out;transition:background .25s ease-in-out,min-height .2s ease-in-out;width:16px}.blockholder-toggler i{color:#f8f9fa;-webkit-transition:color .25s ease-in-out,-webkit-transform .25s ease-in-out;transition:color .25s ease-in-out,-webkit-transform .25s ease-in-out;transition:transform .25s ease-in-out,color .25s ease-in-out;transition:transform .25s ease-in-out,color .25s ease-in-out,-webkit-transform .25s ease-in-out}.blockholder-toggler:hover{background:#495057;min-height:72px}.blockholder-toggler-open i{-webkit-transform:rotate(180deg);transform:rotate(180deg)}@media (min-width:960px){.blockholder-toggler{display:block}}.cmsadmin{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 0 0 15px;min-height:100%}@media (min-width:960px){.cmsadmin{margin:0 255px 0 15px}}.cmsadmin>.row{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;margin-right:0}.cmsadmin>.row>.col>.row{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.cmsadmin>.row>.col,.cmsadmin>.row>.col>.row>.col{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media (min-width:960px){.cmsadmin>.row>.col,.cmsadmin>.row>.col>.row>.col{display:-webkit-box;display:-ms-flexbox;display:flex}}@media (min-width:960px){.cmsadmin-blockholder-collapsed{margin:0 48px 0 15px}}.cmsadmin-toolbar{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:10px 0 30px;width:100%}.cmsadmin-toolbar label{margin:0}.cmsadmin-nav-tabs{display:-webkit-box;display:-ms-flexbox;display:flex;min-height:43px}.cmsadmin-nav-tabs .nav-item:first-of-type{margin-left:0;margin-right:10px}.cmsadmin-nav-tabs .nav-item-title{padding-left:10px}.cmsadmin-nav-tabs .nav-item-alternative{margin-left:5px}.cmsadmin-nav-tabs .nav-item-alternative>.flag{line-height:44px;border-radius:.25rem}.cmsadmin-fallback-small{display:none}.nav-tabs.has-enough-space+.cmsadmin-fallback-small{display:none}.nav-tabs.not-enough-space{display:none}.nav-tabs.not-enough-space+.cmsadmin-fallback-small{display:block}.cmsadmin-pages{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;padding:0 0 15px}.cmsadmin-pages>.row{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%}.cmsadmin-pages>.row>.col{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%}.cmsadmin-pages>.row>.col>.nav-tabs{border-bottom:0;-webkit-box-flex:0;-ms-flex:0 0 42px;flex:0 0 42px;z-index:10}.cmsadmin-pages>.row>.col>.nav-tabs .nav-link{background-color:transparent;border-bottom:0}.cmsadmin-pages>.row>.col>.nav-tabs .nav-link.active{border-bottom:1px solid #f8f9fa}.cmsadmin-pages>.row>.col>.nav-tabs .nav-item-alternative .nav-link{background-color:transparent}.cmsadmin-pages>.row>.col>.nav-tabs .nav-item-alternative:not(.nav-item-icon) a.nav-link{margin-top:-1px}.cmsadmin-page{border:solid #ddd;border-radius:0 3px 0 0;border-width:1px 1px 0 0;-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;margin-top:-1px;padding:10px 10px 10px 0}.cmsadmin-pages>.row>.col:last-of-type .cmsadmin-page{border-radius:0;border-right:0}.cmsadmin-container-title{margin-bottom:10px;margin-top:20px}.block-is-layout>.block>.block-front .cmsadmin-container-title{margin-top:0}.cmsadmin-frame-wrapper{position:relative}.cmsadmin-frame{border:none;bottom:30px;display:block;height:calc(100% - 25px);left:10px;position:absolute;right:10px;top:10px;width:calc(100% - 20px)}.cmsnav{display:block;margin-bottom:10px;width:100%}.cmsnav-list{display:block;list-style:none;margin:0;padding:0}.cmsnav-list:not(:first-of-type){margin-top:15px}.cmsnav-button:not(:first-of-type){margin-top:5px}.cmsnav-treeview{display:block}.empty-placeholder{padding:10px;text-align:center}.empty-placeholder--drag-hover{background-color:#e50060;color:#fff}.menu-dropdown{clear:both;display:block;padding-top:10px}.form-side>.menu-dropdown{padding-top:0}.menu-dropdown-toggle-all{font-size:14px;cursor:pointer}.menu-dropdown-toggle-all i{font-size:24px}.toolbar-item{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;padding:0 20px}.toolbar-item:first-of-type{padding-left:0}.toolbar-item-lang+.toolbar-item:not(.toolbar-item-lang){border-left:1px solid #ddd}.toolbar-item:last-of-type{padding-right:0}.toolbar-item-lang{padding:5px 10px}.treeview{display:block;font-size:14px;list-style:none;margin:0;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.treeview-container{display:block;margin-top:20px;position:relative;width:100%}.treeview-chooser .treeview-container{margin-top:10px}.treeview-no-entry{padding:5px 0 5px 30px}.drag-hover-bottom>.treeview-no-entry,.drag-hover-middle>.treeview-no-entry,.drag-hover-top>.treeview-no-entry,.drag-hover>.treeview-no-entry{background-color:#28a745}.treeview-items{display:block;list-style:none;margin:0;padding:0;position:relative}.treeview-item>.treeview-items{margin-left:15px}.treeview-item-collapsed>.treeview-items{display:none}.treeview-item{display:block;padding:0;position:relative}.treeview-item:before{border-bottom:1px solid #ced4da;border-left:1px solid #ced4da;content:'';display:block;height:15px;left:-4px;position:absolute;top:0;width:25px}.treeview-chooser .treeview-item:before{height:20px;top:-5px;width:20px}.treeview-item:after{border-left:1px solid #ced4da;content:'';display:block;height:100%;left:-4px;position:absolute;top:0}.treeview-chooser .treeview-item:after{top:-5px}.treeview-item-lvl1:after,.treeview-item-lvl1:before{display:none}.treeview-item:last-child:after{display:none}.treeview-item-has-children:before{top:-1px;width:7px}.treeview-chooser .treeview-item-has-children:before{height:25px;top:-10px}.treeview-item-collapsed:before{height:16px}.treeview-label{border:solid transparent;border-width:2px 0 2px 0;display:block;padding:0 0 0 23px;position:relative;width:100%}.treeview-chooser .treeview-label{padding-right:0}.treeview-label-container{font-weight:700;letter-spacing:.8px}.treeview-label:after{border-radius:5px;content:"";height:100%;position:absolute;right:0;top:0;width:5px}.treeview-chooser .treeview-label:after{display:none}.treeview-label-page:after{background-color:#28a745}.treeview-item-isoffline>.treeview-label:after{background-color:#dc3545}.treeview-item-ishidden>.treeview-label{opacity:.5}.treeview-label.drag-dragging .treeview-icon-collapse{display:none}.treeview-label.drag-hover-top{border-top-color:#28a745}.treeview-label.drag-hover-middle{background-color:#28a745}.treeview-label.drag-hover-bottom{border-bottom-color:#28a745}.treeview-icon{font-size:18px;height:18px;left:0;line-height:1;position:absolute;top:3px;width:18px}.treeview-icon-right{left:auto;right:10px}.treeview-icon-right+.treeview-link{width:calc(100% - 30px)}.treeview-icon-right+.treeview-icon-right{right:30px}.treeview-icon-right+.treeview-icon-right+.treeview-link{width:calc(100% - 50px)}.treeview-icon-right+.treeview-icon-right+.treeview-icon-right{right:50px}.treeview-icon-right+.treeview-icon-right+.treeview-icon-right+.treeview-link{width:calc(100% - 70px)}.treeview-icon-collapse{cursor:pointer;font-size:24px;height:24px;top:0;-webkit-transition:.25s ease-in-out transform;transition:.25s ease-in-out transform;width:24px}.treeview-item-collapsed .treeview-icon-collapse{-webkit-transform:rotate(-90deg) translateX(-1px);transform:rotate(-90deg) translateX(-1px)}.treeview-icon .material-icons{display:block}.treeview-link{border:1px solid transparent;border-radius:5px;border-radius:.25rem;cursor:pointer;display:block;padding:0 7px;width:calc(100% - 10px);word-break:break-word;word-wrap:break-word}.treeview-item-active>.treeview-label>.treeview-link,.treeview-link:hover{border-color:rgba(0,0,0,.125)}.treeview-label-container .treeview-item-active>.treeview-label>.treeview-link,.treeview-label-container .treeview-link:hover{border-color:transparent}.treeview-chooser .treeview-label-page .treeview-icon{left:4px;top:2px}body[class*=internet-explorer-] .block-toolbar{display:none}body[class*=internet-explorer-] .block-is-layout:hover>.block-toolbar,body[class*=internet-explorer-] .block-is-layout>.block-toolbar,body[class*=internet-explorer-] .block:hover>.block-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex}body[class*=internet-explorer-] .cmsadmin-frame{height:calc(100vh - 25px)} \ No newline at end of file diff --git a/src/admin/resources/dist/js/main.js b/src/admin/resources/dist/js/main.js deleted file mode 100644 index 94052c17..00000000 --- a/src/admin/resources/dist/js/main.js +++ /dev/null @@ -1,121 +0,0 @@ -(function(){"use strict";// directive.js -zaa.directive("menuDropdown",function(ServiceMenuData){return{restrict:"E",scope:{navId:"="},controller:function($scope){$scope.changeModel=function(data){$scope.navId=data.id};$scope.menuData=ServiceMenuData.data;$scope.$on("service:MenuData",function(event,data){$scope.menuData=data});function init(){if($scope.menuData.length==0){ServiceMenuData.load()}}for(var container in $scope.menuData.containers){$scope.menuData.containers[container].isHidden=false}$scope.toggler=true;init()},template:function(){return"
"+"keyboard_arrow_rightkeyboard_arrow_downToggle Containers
"+"
"+"
    "+"
  • 0\">"+"
    "+""+"keyboard_arrow_right"+"keyboard_arrow_down"+""+""+"{{container.name}}"+""+"
    "+"
      "+"
    • "+"
    "+"
  • "+"
"+"
"+"
"}}});zaa.directive("zaaCmsPage",function($compile){return{restrict:"E",scope:{"model":"=","options":"=","label":"@label","i18n":"@i18n","id":"@fieldid","name":"@fieldname"},template:function(){return"
"+"
"+""+"
"+"
"+""+"
"+"
"}}});zaa.directive("showInternalRedirection",function(){return{restrict:"E",scope:{navId:"="},controller:function($scope,$http,$state){$scope.$watch("navId",function(n){if(n){$http.get("admin/api-cms-navitem/get-nav-item-path",{params:{navId:$scope.navId}}).then(function(response){$scope.path=response.data});$http.get("admin/api-cms-navitem/get-nav-container-name",{params:{navId:$scope.navId}}).then(function(response){$scope.container=response.data})}});$scope.goTo=function(navId){$state.go("custom.cmsedit",{navId:navId})}},template:function(){return"{{path}} in {{container}}"}}});zaa.directive("updateFormPage",function(ServiceLayoutsData){return{restrict:"EA",scope:{data:"="},templateUrl:"updateformpage.html",controller:function($scope,$http){$scope.parent=$scope.$parent.$parent;$scope.navItemId=$scope.parent.item.id;/* layoutsData */$scope.data.layout_id=0;$scope.layoutsData=ServiceLayoutsData.data;$scope.$on("service:LayoutsData",function(event,data){$scope.layoutsData=data});/* get all versions for navitemid */$scope.versionsData=[];$scope.getVersionList=function(){$http.get("admin/api-cms-navitempage/versions",{params:{navItemId:$scope.navItemId}}).then(function(response){$scope.versionsData=response.data})};$scope.isEditAvailable=function(){return $scope.versionsData.length};function init(){$scope.getVersionList()}init()}}});zaa.directive("updateFormModule",function(){return{restrict:"EA",scope:{data:"="},templateUrl:"updateformmodule.html",controller:function($scope,$http){$scope.modules=[];$http.get("admin/api-admin-common/data-modules").then(function(response){$scope.modules=response.data})}}});zaa.directive("updateFormRedirect",function(){return{restrict:"EA",scope:{data:"="},templateUrl:"updateformredirect.html",controller:function($scope){$scope.$watch(function(){return $scope.data},function(n,o){if(angular.isArray(n)){$scope.data={}}})}}});zaa.directive("createForm",function(){return{restrict:"EA",scope:{data:"="},templateUrl:"createform.html",controller:function($scope,$http,$filter,ServiceMenuData,ServiceLanguagesData,AdminToastService){$scope.error=[];$scope.success=false;$scope.controller=$scope.$parent;$scope.menuData=ServiceMenuData.data;$scope.$on("service:MenuData",function(event,data){$scope.menuData=data});$scope.menuDataReload=function(){return ServiceMenuData.load(true)};function initializer(){$scope.menu=$scope.menuData.items;$scope.navcontainers=$scope.menuData.containers}initializer();$scope.data.nav_item_type=1;$scope.data.parent_nav_id=0;$scope.data.is_draft=0;$scope.data.nav_container_id=1;$scope.languagesData=ServiceLanguagesData.data;$scope.$on("service:LanguagesData",function(event,data){$scope.languagesData=data});$scope.data.lang_id=parseInt($filter("filter")($scope.languagesData,{"is_default":"1"},true)[0].id);$scope.navitems=[];$scope.$watch(function(){return $scope.data.nav_container_id},function(n,o){if(n!==undefined&&n!==o){$scope.data.parent_nav_id=0;$scope.navitems=$scope.menu[n]["__items"]}});$scope.aliasSuggestion=function(){$scope.data.alias=$filter("slugify")($scope.data.title)};$scope.$watch("data.alias",function(n,o){if(n!=o&&n!=null){$scope.data.alias=$filter("slugify")(n)}});$scope.exec=function(){$scope.controller.save().then(function(response){$scope.menuDataReload();$scope.success=true;$scope.error=[];$scope.data.title=null;$scope.data.alias=null;if($scope.data.isInline){$scope.$parent.$parent.getItem($scope.data.lang_id,$scope.data.nav_id)}AdminToastService.success(i18n["view_index_page_success"])},function(reason){angular.forEach(reason,function(value,key){AdminToastService.error(value[0])});$scope.error=reason})}}}});zaa.directive("createFormPage",function(ServiceLayoutsData,ServiceMenuData){return{restrict:"EA",scope:{data:"="},templateUrl:"createformpage.html",controller:function($scope){$scope.data.use_draft=0;$scope.data.layout_id=0;$scope.data.from_draft_id=0;/* layoutsData */$scope.layoutsData=ServiceLayoutsData.data;$scope.$on("service:BlocksData",function(event,data){$scope.layoutsData=data});/* menuData */$scope.menuData=ServiceMenuData.data;$scope.$on("service:MenuData",function(event,data){$scope.menuData=data});function init(){$scope.drafts=$scope.menuData.drafts;$scope.layouts=$scope.layoutsData}init();$scope.save=function(){$scope.$parent.exec()}}}});zaa.directive("createFormModule",function($http){return{restrict:"EA",scope:{data:"="},templateUrl:"createformmodule.html",controller:function($scope){$scope.modules=[];$http.get("admin/api-admin-common/data-modules").then(function(response){$scope.modules=response.data});$scope.save=function(){$scope.$parent.exec()}}}});zaa.directive("createFormRedirect",function(){return{restrict:"EA",scope:{data:"="},templateUrl:"createformredirect.html",controller:function($scope){$scope.save=function(){$scope.$parent.exec()}}}});/* factory.js */zaa.factory("PlaceholderService",function(){var service=[];service.status=1;/* 1 = showplaceholders; 0 = hide placeholders */service.delegate=function(status){service.status=status};return service});/* layout.js */zaa.config(function($stateProvider,resolverProvider){$stateProvider.state("custom.cmsedit",{url:"/update/:navId",templateUrl:"cmsadmin/page/update"}).state("custom.cmsadd",{url:"/create",templateUrl:"cmsadmin/page/create"}).state("custom.cmsdraft",{url:"/drafts",templateUrl:"cmsadmin/page/drafts"})});zaa.controller("DraftsController",function($scope,$state,ServiceMenuData){$scope.menuData=ServiceMenuData.data;$scope.$on("service:MenuData",function(event,data){$scope.menuData=data});$scope.go=function(navId){$state.go("custom.cmsedit",{navId:navId})}});/* controllers */zaa.controller("CmsDashboard",function($scope,$http){$scope.dashboard=[];$http.get("admin/api-cms-admin/dashboard-log").then(function(response){$scope.dashboard=response.data})});zaa.controller("ConfigController",function($scope,$http,AdminToastService){$scope.data={};$http.get("admin/api-cms-admin/config").then(function(response){$scope.data=response.data});$scope.save=function(){$http.post("admin/api-cms-admin/config",$scope.data).then(function(response){AdminToastService.success(i18n["js_config_update_success"])})}});zaa.controller("PageVersionsController",function($scope,$http,ServiceLayoutsData,AdminToastService){/** - * @var object $typeData From parent scope controller NavItemController - * @var object $item From parent scope controller NavItemController - * @var string $versionName From ng-model - * @var integer $fromVersionPageId From ng-model the version copy from or 0 = new empty/blank version - * @var integer $versionLayoutId From ng-model, only if fromVersionPageId is 0 - */var headers={"headers":{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}};/* layoutsData */$scope.layoutsData=ServiceLayoutsData.data;$scope.$on("service:LayoutsData",function(event,data){$scope.layoutsData=data});/* controller logic */$scope.createNewVersionSubmit=function(data){if(data==undefined){AdminToastService.error(i18n["js_version_error_empty_fields"]);return null}if(data.copyExistingVersion){data.versionLayoutId=0}$http.post("admin/api-cms-navitem/create-page-version",$.param({"layoutId":data.versionLayoutId,"navItemId":$scope.item.id,"name":data.versionName,"fromPageId":data.fromVersionPageId}),headers).then(function(response){if(response.data.error){AdminToastService.error(i18n["js_version_error_empty_fields"]);return null}$scope.refreshForce();AdminToastService.success(i18n["js_version_create_success"])})}});zaa.controller("CopyPageController",function($scope,$http,$filter,AdminToastService){var headers={"headers":{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}};$scope.$on("deletedNavItem",function(){$scope.isOpen=false;$scope.itemSelection=false;$scope.selection=0});$scope.NavItemController=$scope.$parent;$scope.navId=0;$scope.items=null;$scope.isOpen=false;$scope.itemSelection=false;$scope.selection=0;$scope.select=function(item){$scope.selection=item.id;$scope.itemSelection=angular.copy(item)};$scope.$watch("itemSelection.title",function(n,o){if(n){$scope.aliasSuggestion()}});$scope.aliasSuggestion=function(){$scope.itemSelection.alias=$filter("slugify")($scope.itemSelection.title)};$scope.loadItems=function(){$scope.navId=$scope.NavItemController.NavController.navData.id;$http.get("admin/api-cms-nav/find-nav-items",{params:{navId:$scope.navId}}).then(function(response){$scope.items=response.data;$scope.isOpen=true})};$scope.save=function(){$scope.itemSelection["toLangId"]=$scope.NavItemController.lang.id;$http.post("admin/api-cms-nav/create-from-page",$.param($scope.itemSelection),headers).then(function(response){if(response.data){AdminToastService.success(i18n["js_added_translation_ok"]);$scope.NavItemController.refresh()}else{AdminToastService.error(i18n["js_added_translation_error"])}},function(response){AdminToastService.errorArray(response.data)})}});zaa.filter("menuparentfilter",function(){return function(input,containerId,parentNavId){var result=[];angular.forEach(input,function(value,key){if(value.parent_nav_id==parentNavId&&value.nav_container_id==containerId){result.push(value)}});return result}});zaa.filter("menuchildfilter",function(){return function(input,containerId,parentNavId){var returnValue=false;angular.forEach(input,function(value,key){if(!returnValue){if(value.id==parentNavId&&value.nav_container_id==containerId){returnValue=value}}});return returnValue}});zaa.controller("CmsMenuTreeController",function($scope,$rootScope,$state,$http,$filter,ServiceMenuData,ServiceLiveEditMode){// live edit service -$scope.liveEditState=0;$scope.$watch("liveEditStateToggler",function(n){ServiceLiveEditMode.state=n});$scope.loadCmsConfig=function(){$http.get("admin/api-cms-admin/config").then(function(response){$rootScope.cmsConfig=response.data})};$scope.loadCmsConfig();// menu Data -$scope.menuData=ServiceMenuData.data;$scope.$on("service:MenuData",function(event,data){$scope.menuData=data});$scope.menuDataReload=function(){return ServiceMenuData.load(true)};// controller logic -$scope.dropEmptyContainer=function(dragged,dropped,position,catId){$http.get("admin/api-cms-navitem/move-to-container",{params:{moveItemId:dragged.id,droppedOnCatId:catId}}).then(function(succes){ServiceMenuData.load(true)})};$scope.dropItem=function(drag,drop,pos){if(pos=="bottom"){var api="admin/api-cms-navitem/move-after";var params={moveItemId:drag.id,droppedAfterItemId:drop.id}}else if(pos=="top"){var api="admin/api-cms-navitem/move-before";var params={moveItemId:drag.id,droppedBeforeItemId:drop.id}}else if(pos=="middle"){var api="admin/api-cms-navitem/move-to-child";var params={moveItemId:drag.id,droppedOnItemId:drop.id}}$http.get(api,{params:params}).then(function(success){ServiceMenuData.load(true)},function(error){console.log("throw error message errorMessageOnDuplicateAlias");ServiceMenuData.load(true)})};$scope.validItem=function(hover,draged){if(hover.id==draged.id){return false}$scope.rritems=[];$scope.recursivItemValidity(draged.nav_container_id,draged.id);if($scope.rritems.indexOf(hover.id)==-1){return true}return false};$scope.rritems=[];$scope.recursivItemValidity=function(containerId,parentNavId){var items=$filter("menuparentfilter")($scope.menuData.items,containerId,parentNavId);angular.forEach(items,function(item){$scope.rritems.push(item.id);$scope.recursivItemValidity(containerId,item.id)})};$scope.toggleItem=function(data){if(data.toggle_open==undefined){data["toggle_open"]=1}else{data["toggle_open"]=!data.toggle_open}$http.post("admin/api-cms-nav/tree-history",{data:data},{ignoreLoadingBar:true})};$scope.go=function(data){ServiceLiveEditMode.changeUrl(data.nav_item_id,0);$state.go("custom.cmsedit",{navId:data.id})};$scope.showDrag=0;$scope.isCurrentElement=function(data){if(data!==null&&$state.params.navId==data.id){return true}return false};$scope.hiddenCats=[];$scope.$watch("menuData",function(n,o){$scope.hiddenCats=n.hiddenCats});$scope.toggleCat=function(catId){if(catId in $scope.hiddenCats){$scope.hiddenCats[catId]=!$scope.hiddenCats[catId]}else{$scope.hiddenCats[catId]=1}$http.post("admin/api-cms-nav/save-cat-toggle",{catId:catId,state:$scope.hiddenCats[catId]},{ignoreLoadingBar:true})};$scope.toggleIsHidden=function(catId){if($scope.hiddenCats==undefined){return false}if(catId in $scope.hiddenCats){if($scope.hiddenCats[catId]==1){return true}}return false}});// create.js -zaa.controller("CmsadminCreateController",function($scope,$q,$http){$scope.data={};$scope.data.isInline=false;$scope.save=function(){var headers={"headers":{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}};return $q(function(resolve,reject){if($scope.data.nav_item_type==1){$http.post("admin/api-cms-nav/create-page",$.param($scope.data),headers).then(function(response){resolve(response.data)},function(response){reject(response.data)})}if($scope.data.nav_item_type==2){$http.post("admin/api-cms-nav/create-module",$.param($scope.data),headers).then(function(response){resolve(response.data)},function(response){reject(response.data)})}if($scope.data.nav_item_type==3){$http.post("admin/api-cms-nav/create-redirect",$.param($scope.data),headers).then(function(response){resolve(response.data)},function(response){reject(response.data)})}})}});zaa.controller("CmsadminCreateInlineController",function($scope,$q,$http){$scope.data={nav_id:$scope.$parent.NavController.id};$scope.data.isInline=true;$scope.save=function(){$scope.data.lang_id=$scope.lang.id;var headers={"headers":{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}};return $q(function(resolve,reject){if($scope.data.nav_item_type==1){$http.post("admin/api-cms-nav/create-page-item",$.param($scope.data),headers).then(function(response){resolve(response.data)},function(response){reject(response.data)})}if($scope.data.nav_item_type==2){$http.post("admin/api-cms-nav/create-module-item",$.param($scope.data),headers).then(function(response){resolve(response.data)},function(response){reject(response.data)})}if($scope.data.nav_item_type==3){$http.post("admin/api-cms-nav/create-redirect-item",$.param($scope.data),headers).then(function(response){resolve(response.data)},function(response){reject(response.data)})}})}});// update.js -zaa.controller("NavController",function($scope,$rootScope,$filter,$stateParams,$http,LuyaLoading,PlaceholderService,ServicePropertiesData,ServiceMenuData,ServiceLanguagesData,ServiceLiveEditMode,AdminToastService,AdminClassService,AdminLangService,HtmlStorage){$scope.pageSettingsOverlayHidden=true;$scope.pageSettingsOverlayTab=1;$scope.togglePageSettingsOverlay=function(t){$scope.pageSettingsOverlayTab=t;$scope.pageSettingsOverlayHidden=!$scope.pageSettingsOverlayHidden};$scope.navCfg={helptags:$rootScope.luyacfg.helptags};$scope.$watch(function(){return ServiceLiveEditMode.state},function(n,o){$scope.displayLiveContainer=n});$scope.$watch(function(){return ServiceLiveEditMode.url},function(n,o){$scope.liveUrl=n});$scope.AdminLangService=AdminLangService;/* service AdminPropertyService inheritance */$scope.propertiesData=ServicePropertiesData.data;$scope.$on("service:PropertiesData",function(event,data){$scope.propertiesData=data});/* service ServiceMenuData inheritance */$scope.menuData=ServiceMenuData.data;$scope.$on("service:MenuData",function(event,data){$scope.menuData=data});$scope.menuDataReload=function(){return ServiceMenuData.load(true)};/* service ServiceLangaugesData inheritance */$scope.languagesData=ServiceLanguagesData.data;$scope.$on("service:LanguagesData",function(event,data){$scope.languagesData=data});/* placeholders toggler service */$scope.PlaceholderService=PlaceholderService;$scope.placeholderState=$scope.PlaceholderService.status;$scope.$watch("placeholderState",function(n,o){if(n!==o&&n!==undefined){$scope.PlaceholderService.delegate(n)}});/* Blockholder size toggler */$scope.isBlockholderSmall=HtmlStorage.getValue("blockholderToggleState",true);$scope.toggleBlockholderSize=function(){$scope.isBlockholderSmall=!$scope.isBlockholderSmall;HtmlStorage.setValue("blockholderToggleState",$scope.isBlockholderSmall)};/* sidebar logic */$scope.sidebar=false;$scope.enableSidebar=function(){$scope.sidebar=true};$scope.toggleSidebar=function(){$scope.sidebar=!$scope.sidebar};/* app logic */$scope.showActions=1;$scope.id=parseInt($stateParams.navId);$scope.isDeleted=false;$scope.AdminClassService=AdminClassService;$scope.propValues={};$scope.hasValues=false;$scope.bubbleParents=function(parentNavId,containerId){var item=$filter("menuchildfilter")($scope.menuData.items,containerId,parentNavId);if(item){item.toggle_open=1;$scope.bubbleParents(item.parent_nav_id,item.nav_container_id)}};$scope.createDeepPageCopy=function(){$http.post("admin/api-cms-nav/deep-page-copy",{navId:$scope.id}).then(function(response){$scope.menuDataReload();AdminToastService.success(i18n["js_page_create_copy_success"]);$scope.showActions=1;$scope.togglePageSettingsOverlay()})};$scope.loadNavProperties=function(){$http.get("admin/api-cms-nav/get-properties",{params:{navId:$scope.id}}).then(function(response){for(var i in response.data){var d=response.data[i];$scope.propValues[d.admin_prop_id]=d.value;$scope.hasValues=true}})};$scope.togglePropMask=function(){$scope.showPropForm=!$scope.showPropForm};$scope.showPropForm=false;$scope.storePropValues=function(){var headers={"headers":{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}};$http.post("admin/api-cms-nav/save-properties?navId="+$scope.id,$.param($scope.propValues),headers).then(function(response){AdminToastService.success(i18n["js_page_property_refresh"]);$scope.loadNavProperties();$scope.showPropForm=false;$scope.togglePageSettingsOverlay()})};$scope.trash=function(){AdminToastService.confirm(i18n["js_page_confirm_delete"],i18n["cmsadmin_settings_trashpage_title"],function($timeout,$toast){$http.get("admin/api-cms-nav/delete",{params:{navId:$scope.id}}).then(function(response){$scope.isDeleted=true;$scope.menuDataReload().then(function(){$toast.close();$scope.togglePageSettingsOverlay()})},function(response){AdminToastService.error(i18n["js_page_delete_error_cause_redirects"])})})};$scope.isDraft=false;$scope.submitNavForm=function(data){$http.post("admin/api-cms-nav/update?id="+$scope.navData.id,data).then(function(response){AdminToastService.success(i18nParam("js_page_update_layout_save_success"));$scope.togglePageSettingsOverlay()},function(response){angular.forEach(response.data,function(value){AdminToastService.error(value.message)})})};function initializer(){$scope.navData=$filter("filter")($scope.menuData.items,{id:$scope.id},true)[0];if($scope.navData==undefined){$scope.isDraft=true}else{$scope.loadNavProperties();/* properties --> */$scope.$watch(function(){return $scope.navData.is_offline},function(n,o){if(n!==o&&n!==undefined){$http.get("admin/api-cms-nav/toggle-offline",{params:{navId:$scope.navData.id,offlineStatus:n}}).then(function(response){if($scope.navData.is_offline==1){AdminToastService.info(i18nParam("js_state_offline",{title:$scope.navData.title}))}else{AdminToastService.info(i18nParam("js_state_online",{title:$scope.navData.title}))}})}});$scope.$watch(function(){return $scope.navData.is_hidden},function(n,o){if(n!==o&&n!==undefined){$http.get("admin/api-cms-nav/toggle-hidden",{params:{navId:$scope.navData.id,hiddenStatus:n}}).then(function(response){if($scope.navData.is_hidden==1){AdminToastService.info(i18nParam("js_state_hidden",{title:$scope.navData.title}))}else{AdminToastService.info(i18nParam("js_state_visible",{title:$scope.navData.title}))}})}});$scope.$watch(function(){return $scope.navData.is_home},function(n,o){if(n!==o&&n!==undefined){$http.get("admin/api-cms-nav/toggle-home",{params:{navId:$scope.navData.id,homeState:n}}).then(function(response){$scope.menuDataReload().then(function(){if($scope.navData.is_home==1){AdminToastService.success(i18nParam("js_state_is_home",{title:$scope.navData.title}))}else{AdminToastService.success(i18nParam("js_state_is_not_home",{title:$scope.navData.title}))}$scope.togglePageSettingsOverlay()})})}})}}initializer()});/** - * @param $scope.lang from ng-repeat - */zaa.controller("NavItemController",function($scope,$rootScope,$http,$filter,$timeout,ServiceMenuData,AdminLangService,AdminToastService,ServiceLiveEditMode,ServiceLayoutsData){$scope.loaded=false;$scope.NavController=$scope.$parent;$scope.liveEditState=false;$scope.$watch(function(){return ServiceLiveEditMode.state},function(n,o){$scope.liveEditState=n});$scope.openLiveUrl=function(id,versionId){ServiceLiveEditMode.changeUrl(id,versionId)};$scope.loadLiveUrl=function(){ServiceLiveEditMode.changeUrl($scope.item.id,$scope.currentPageVersion)};// layoutsData -$scope.layoutsData=ServiceLayoutsData.data;$scope.$on("service:BlocksData",function(event,data){$scope.layoutsData=data});// serviceMenuData inheritance -$scope.menuDataReload=function(){return ServiceMenuData.load(true)};$scope.$on("service:LoadLanguage",function(event,data){if(!$scope.loaded){$scope.refresh()}});// properties: -$scope.isTranslated=false;$scope.item=[];$scope.itemCopy=[];$scope.settings=false;$scope.typeDataCopy=[];$scope.typeData=[];$scope.container=[];$scope.errors=[];$scope.homeUrl=$rootScope.luyacfg.homeUrl;$scope.currentPageVersion=0;$scope.currentPageVersionAlias;$scope.trashItem=function(){if($scope.lang.is_default==0){AdminToastService.confirm(i18n["js_page_confirm_delete"],i18n["cmsadmin_settings_trashpage_title"],function($timeout,$toast){$http.delete("admin/api-cms-navitem/delete?navItemId="+$scope.item.id).then(function(response){$scope.menuDataReload().then(function(){$scope.isTranslated=false;$scope.item=[];$scope.itemCopy=[];$scope.settings=false;$scope.typeDataCopy=[];$scope.typeData=[];$scope.container=[];$scope.errors=[];$scope.currentPageVersion=0;$scope.$broadcast("deletedNavItem");$toast.close()})},function(response){AdminToastService.error(i18n["js_page_delete_error_cause_redirects"])})})}};$scope.reset=function(){$scope.itemCopy=angular.copy($scope.item);if($scope.item.nav_item_type==1){$scope.typeDataCopy=angular.copy({"nav_item_type_id":$scope.item.nav_item_type_id})}else{$scope.typeDataCopy=angular.copy($scope.typeData)}};$scope.updateNavItemData=function(itemCopy,typeDataCopy){$scope.errors=[];var headers={"headers":{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}};var navItemId=itemCopy.id;typeDataCopy.title=itemCopy.title;typeDataCopy.alias=itemCopy.alias;typeDataCopy.title_tag=itemCopy.title_tag;typeDataCopy.description=itemCopy.description;typeDataCopy.keywords=itemCopy.keywords;typeDataCopy.timestamp_create=itemCopy.timestamp_create;$http.post("admin/api-cms-navitem/update-page-item?navItemId="+navItemId+"&navItemType="+itemCopy.nav_item_type,$.param(typeDataCopy),headers).then(function(response){if(itemCopy.nav_item_type!==1){$scope.currentPageVersion=0}$scope.loaded=false;if(response.data){/* switch version if type is page */if(itemCopy.nav_item_type==1&&typeof response.data["typeData"]==="object"){/* choose given version or choose first available version */var pageVersionKey=response.data["item"].nav_item_type_id;if(response.data["item"].nav_item_type_id==0){pageVersionKey=Object.keys(response.data["typeData"])[0]}$scope.container=response.data["typeData"][pageVersionKey]["contentAsArray"];$scope.currentPageVersionAlias=response.data["typeData"][pageVersionKey]["version_alias"];$scope.currentPageVersion=pageVersionKey}}AdminToastService.success(i18nParam("js_page_item_update_ok",{"title":itemCopy.title}));$scope.menuDataReload();$scope.refresh();$scope.toggleSettingsOverlay();$scope.reset()},function errorCallback(response){angular.forEach(response.data,function(item){AdminToastService.error(item.message)})})};$scope.$watch("itemCopy.alias",function(n,o){if(n!=o&&n!=null){$scope.itemCopy.alias=$filter("slugify")(n)}});$scope.removeVersion=function(version){AdminToastService.confirm(i18nParam("js_version_delete_confirm",{alias:version.version_alias}),i18n["cmsadmin_version_remove"],function($toast,$http){$http.post("admin/api-cms-navitem/remove-page-version",{pageId:version.id}).then(function(response){$scope.refreshForce();$toast.close();AdminToastService.success(i18nParam("js_version_delete_confirm_success",{alias:version.version_alias}))})})};$scope.editVersionItem;$scope.tab=1;$scope.editVersion=function(versionItem){$scope.changeTab(4);$scope.editVersionItem=versionItem};$scope.editVersionUpdate=function(editVersionItem){$http.post("admin/api-cms-navitem/change-page-version-layout",{"pageItemId":editVersionItem.id,"layoutId":editVersionItem.layout_id,"alias":editVersionItem.version_alias}).then(function(response){$scope.refreshForce();AdminToastService.success(i18n["js_version_update_success"]);$scope.toggleSettingsOverlay()})};$scope.getItem=function(langId,navId){$http({url:"admin/api-cms-navitem/nav-lang-item",method:"GET",params:{langId:langId,navId:navId}}).then(function(response){if(response.data){if(!response.data.error){$scope.item=response.data["item"];$scope.typeData=response.data["typeData"];$scope.isTranslated=true;$scope.reset();if(!response.data["nav"].is_draft){$scope.NavController.bubbleParents($scope.NavController.navData.parent_nav_id,$scope.NavController.navData.nav_container_id);if($scope.item.nav_item_type==1){if($scope.currentPageVersion==0){$scope.currentPageVersion=response.data.item.nav_item_type_id}if(response.data.item.nav_item_type_id in response.data.typeData){$scope.currentPageVersionAlias=$scope.container=response.data.typeData[$scope.currentPageVersion]["version_alias"];$scope.container=response.data.typeData[$scope.currentPageVersion]["contentAsArray"]}}}else{$scope.currentPageVersion=response.data.item.nav_item_type_id;$scope.container=response.data.typeData[$scope.currentPageVersion]["contentAsArray"]}}$scope.loaded=true}})};$scope.versionDropDownVisbility=false;$scope.toggleVersionsDropdown=function(){$scope.versionDropDownVisbility=!$scope.versionDropDownVisbility};$scope.switchVersion=function(pageVersionid){$scope.container=$scope.typeData[pageVersionid]["contentAsArray"];$scope.currentPageVersionAlias=$scope.typeData[pageVersionid]["version_alias"];$scope.currentPageVersion=pageVersionid;$scope.loadLiveUrl();$scope.toggleVersionsDropdown()};$scope.refreshForce=function(){$scope.getItem($scope.lang.id,$scope.NavController.id)};$scope.refresh=function(){if(AdminLangService.isInSelection($scope.lang.short_code)){$scope.getItem($scope.lang.id,$scope.NavController.id)}};/* new settings overlay */$scope.settingsOverlayVisibility=true;$scope.toggleSettingsOverlay=function(tab){$scope.settingsOverlayVisibility=!$scope.settingsOverlayVisibility;if(tab){$scope.tab=tab}};$scope.changeTab=function(tab){$scope.tab=tab};/** - * Refresh the current layout container blocks. - * - * After successfull api response all cms layout are foreach and the values are passed to revPlaceholders() method. - */$scope.refreshNested=function(prevId,placeholderVar){$http({url:"admin/api-cms-navitem/reload-placeholder",method:"GET",params:{navItemPageId:$scope.currentPageVersion,prevId:prevId,placeholderVar:placeholderVar}}).then(function(response){ServiceLiveEditMode.changeUrl($scope.item.id,$scope.currentPageVersion);angular.forEach($scope.container.__placeholders,function(placeholder){$scope.revPlaceholders(placeholder,prevId,placeholderVar,response.data)})})};/** - * The revPlaceholders method goes trourgh the new row/col (grid) system container json layout where: - * - * rows[][1] = col left - * rows[][2] = col right - * - * Where a layout have at least on row which can have cols inside. So there revPlaceholders method goes trough the cols - * and check if the col is equal the given col to replace the content with (from refreshNested method). - */$scope.revPlaceholders=function(placeholders,prevId,placeholderVar,replaceContent){angular.forEach(placeholders,function(placeholderRow,placeholderKey){if(parseInt(prevId)==parseInt(placeholderRow.prev_id)&&placeholderVar==placeholderRow["var"]){placeholders[placeholderKey]["__nav_item_page_block_items"]=replaceContent}else{$scope.revFind(placeholderRow,prevId,placeholderVar,replaceContent)}})};/** - * The revFind method does the recursiv job within a block an passes the value back to revPlaceholders(). - */$scope.revFind=function(placeholder,prevId,placeholderVar,replaceContent){for(var i in placeholder["__nav_item_page_block_items"]){for(var holderKey in placeholder["__nav_item_page_block_items"][i]["__placeholders"]){for(var holder in placeholder["__nav_item_page_block_items"][i]["__placeholders"][holderKey]){$scope.revPlaceholders(placeholder["__nav_item_page_block_items"][i]["__placeholders"][holderKey],prevId,placeholderVar,replaceContent)}}}};/** - * drops items in an empty page placeholder of CMS LAYOUT PLACEHOLDER - */$scope.dropItemPlaceholder=function(dragged,dropped,position){if(dragged.hasOwnProperty("favorized")||dragged.hasOwnProperty("newblock")){// its a new block -$http.post("admin/api-cms-navitempageblockitem/create",{prev_id:dropped.prev_id,sort_index:0,block_id:dragged.id,placeholder_var:dropped["var"],nav_item_page_id:dropped.nav_item_page_id}).then(function(response){$scope.refreshNested(dropped["prev_id"],dropped["var"])})}else if(dragged.hasOwnProperty("copystack")){// its a block from copy stack -$http.post("admin/api-cms-navitemblock/copy-block-from-stack",{copyBlockId:dragged.id,sort_index:0,prev_id:dropped.prev_id,placeholder_var:dropped["var"],nav_item_page_id:dropped.nav_item_page_id}).then(function(response){$scope.refreshNested(dropped["prev_id"],dropped["var"])})}else{// moving an existing block -$http.put("admin/api-cms-navitempageblockitem/update?id="+dragged.id,{sort_index:0,prev_id:dropped.prev_id,placeholder_var:dropped["var"]}).then(function(response){$scope.refreshForce()})}};$scope.refresh()});/** - * @param $scope.block From ng-repeat scope assignment - */zaa.controller("PageBlockEditController",function($scope,$sce,$http,AdminClassService,AdminToastService,ServiceBlockCopyStack,ServiceLiveEditMode){$scope.NavItemTypePageController=$scope.$parent;/** - * drops an item in an empty placeholder of a BLOCK - */$scope.dropItemPlaceholder=function(dragged,dropped,position){if(dragged.hasOwnProperty("favorized")||dragged.hasOwnProperty("newblock")){// its a new block -$http.post("admin/api-cms-navitempageblockitem/create",{prev_id:dropped.prev_id,sort_index:0,block_id:dragged.id,placeholder_var:dropped.var,nav_item_page_id:dropped.nav_item_page_id}).then(function(response){$scope.NavItemTypePageController.refreshNested(dropped.prev_id,dropped.var)})}else if(dragged.hasOwnProperty("copystack")){// its a block from copy stack -$http.post("admin/api-cms-navitemblock/copy-block-from-stack",{copyBlockId:dragged.id,sort_index:0,prev_id:dropped.prev_id,placeholder_var:dropped.var,nav_item_page_id:dropped.nav_item_page_id}).then(function(response){$scope.NavItemTypePageController.refreshNested($scope.placeholder.prev_id,$scope.placeholder.var)})}else{// moving an existing block -$http.put("admin/api-cms-navitempageblockitem/update?id="+dragged.id,{sort_index:0,prev_id:dropped.prev_id,placeholder_var:dropped.var}).then(function(response){$scope.refreshForce()})}};/** - * Drops a block above/below an EXISTING BLOCK - */$scope.dropItem=function(dragged,dropped,position,element){var sortIndex=$scope.$index;if(position=="bottom"){sortIndex=sortIndex+1}if(dragged.hasOwnProperty("favorized")||dragged.hasOwnProperty("newblock")){// its a new block -$http.post("admin/api-cms-navitempageblockitem/create",{prev_id:$scope.placeholder.prev_id,sort_index:sortIndex,block_id:dragged.id,placeholder_var:$scope.placeholder["var"],nav_item_page_id:$scope.placeholder.nav_item_page_id}).then(function(response){$scope.NavItemTypePageController.refreshNested($scope.placeholder.prev_id,$scope.placeholder.var)})}else if(dragged.hasOwnProperty("copystack")){// its a block from copy stack -$http.post("admin/api-cms-navitemblock/copy-block-from-stack",{copyBlockId:dragged.id,sort_index:sortIndex,prev_id:$scope.placeholder.prev_id,placeholder_var:$scope.placeholder["var"],nav_item_page_id:$scope.placeholder.nav_item_page_id}).then(function(response){$scope.NavItemTypePageController.refreshNested($scope.placeholder.prev_id,$scope.placeholder.var)})}else{// moving an existing block -$http.put("admin/api-cms-navitempageblockitem/update?id="+dragged.id,{prev_id:$scope.placeholder.prev_id,placeholder_var:$scope.placeholder["var"],sort_index:sortIndex}).then(function(response){/* - * @issue: https://github.com/luyadev/luya/issues/1629 - * The moved block, should removed from the previous array. This is only the case when dragging from an OUTER block into an INNER block - * is this will not refresh the OUTER block, but always will in the opposite way. - */angular.element(element).remove();// as the block has been removed from existing, refresh the new placeholder. -$scope.NavItemTypePageController.refreshNested($scope.placeholder.prev_id,$scope.placeholder.var)})}};$scope.copyBlock=function(){ServiceBlockCopyStack.push($scope.block)};$scope.toggleHidden=function(){if($scope.block.is_hidden==0){$scope.block.is_hidden=1}else{$scope.block.is_hidden=0}$http({url:"admin/api-cms-navitem/toggle-block-hidden",method:"GET",params:{blockId:$scope.block.id,hiddenState:$scope.block.is_hidden}}).then(function(response){/* load live url on hidden trigger */$scope.NavItemTypePageController.$parent.$parent.loadLiveUrl();// successfull toggle hidden state of block -AdminToastService.info(i18nParam("js_page_block_visbility_change",{name:$scope.block.name}))})};$scope.isEditable=function(){return typeof $scope.block.vars!="undefined"&&$scope.block.vars.length>0};$scope.isConfigurable=function(){return typeof $scope.block.cfgs!="undefined"&&$scope.block.cfgs.length>0};$scope.$watch(function(){return $scope.block.values},function(n,o){$scope.data=n});$scope.$watch(function(){return $scope.block.variation},function(n,o){$scope.evalVariationVisbility(n)});$scope.getInfo=function(varFieldName){if($scope.block.field_help.hasOwnProperty(varFieldName)){return $scope.block.field_help[varFieldName]}return false};$scope.evalVariationVisbility=function(variatenName){if($scope.block.variations.hasOwnProperty(variatenName)){var variation=$scope.block.variations[$scope.block.variation];angular.forEach(variation,function(value,key){if(angular.isObject(value)){angular.forEach(value,function(v,k){angular.forEach($scope.block[key],function(object){if(k==object.var){object.invisible=true}})})}})}else{angular.forEach($scope.block.cfgs,function(object){object.invisible=false});angular.forEach($scope.block.vars,function(object){object.invisible=false})}};$scope.cfgdata=$scope.block.cfgvalues||{};$scope.edit=false;$scope.modalHidden=true;$scope.toggleEdit=function(){if(!$scope.isEditable()){return}$scope.modalHidden=!$scope.modalHidden;$scope.edit=!$scope.edit};$scope.renderTemplate=function(template,dataVars,cfgVars,block,extras){if(template==undefined){return""}var template=Twig.twig({data:template});var content=template.render({vars:dataVars,cfgs:cfgVars,block:block,extras:extras});return $sce.trustAsHtml(content)};$scope.removeBlock=function(){AdminToastService.confirm(i18nParam("js_page_block_delete_confirm",{name:$scope.block.name}),i18n["view_update_block_tooltip_delete"],function($timeout,$toast){$http.delete("admin/api-cms-navitempageblockitem/delete?id="+$scope.block.id).then(function(response){$scope.NavItemTypePageController.refreshNested($scope.placeholder.prev_id,$scope.placeholder.var);$scope.NavItemTypePageController.loadLiveUrl();$toast.close();AdminToastService.success(i18nParam("js_page_block_remove_ok",{name:$scope.block.name}))})})};$scope.save=function(){$http.put("admin/api-cms-navitempageblockitem/update?id="+$scope.block.id,{json_config_values:$scope.data,json_config_cfg_values:$scope.cfgdata,variation:$scope.block.variation}).then(function(response){AdminToastService.success(i18nParam("js_page_block_update_ok",{name:$scope.block.name}));$scope.toggleEdit();$scope.block.is_dirty=1;$scope.block=angular.copy(response.data.objectdetail);$scope.NavItemTypePageController.loadLiveUrl();$scope.evalVariationVisbility($scope.block.variation)})}});zaa.controller("DroppableBlocksController",function($scope,$http,AdminClassService,ServiceBlocksData,ServiceBlockCopyStack,$sce){/* service ServiceBlocksData inheritance */$scope.blocksData=ServiceBlocksData.data;$scope.blocksDataRestore=angular.copy($scope.blocksData);$scope.$on("service:BlocksData",function(event,data){$scope.blocksData=data});$scope.blocksDataReload=function(){return ServiceBlocksData.load(true)};$scope.addToFav=function(item){$http.post("admin/api-cms-block/to-fav",{block:item}).then(function(response){$scope.blocksDataReload()})};$scope.removeFromFav=function(item){$http.post("admin/api-cms-block/remove-fav",{block:item}).then(function(response){$scope.blocksDataReload()})};$scope.toggleGroup=function(group){if(group.toggle_open==undefined){group.toggle_open=1}else{group.toggle_open=!group.toggle_open}$http.post("admin/api-cms-block/toggle-group",{group:group},{ignoreLoadingBar:true})};// controller logic -$scope.copyStack=ServiceBlockCopyStack.stack;$scope.$on("service:CopyStack",function(event,stack){$scope.copyStack=stack});$scope.clearStack=function(){ServiceBlockCopyStack.clear()};$scope.searchQuery="";$scope.searchIsDirty=false;$scope.$watch("searchQuery",function(n,o){if(n!==""){$scope.searchIsDirty=true;angular.forEach($scope.blocksData,function(value,key){value.group.toggle_open=1})}else if($scope.searchIsDirty){$scope.blocksData=angular.copy($scope.blocksDataRestore)}})})})(); -/** - * all global admin services - * - * controller resolve: https://github.com/johnpapa/angular-styleguide#style-y080 - * - * Service Inheritance: - * - * 1. Service must be prefix with Service - * 2. Service must contain a forceReload state - * 3. Service must broadcast an event 'service:FoldersData' - * 4. Controller integration must look like - * - * ``` - * $scope.foldersData = ServiceFoldersData.data; - * - * $scope.$on('service:FoldersData', function(event, data) { - * $scope.foldersData = data; - * }); - * - * $scope.foldersDataReload = function() { - * return ServiceFoldersData.load(true); - * } - * ``` - * - */(function(){"use strict";zaa.config(function(resolverProvider){resolverProvider.addCallback(function(ServiceMenuData,ServiceBlocksData,ServiceLayoutsData,LuyaLoading){LuyaLoading.start();ServiceBlocksData.load();ServiceLayoutsData.load();ServiceMenuData.load().then(function(r){LuyaLoading.stop()})})});/* block data copy stack */zaa.factory("ServiceBlockCopyStack",function($rootScope){var service=[];service.stack=[];service.clear=function(){service.stack=[];$rootScope.$broadcast("service:CopyStack",service.stack)};service.push=function(block){if(service.stack.length>4){service.stack.shift()}service.stack.push({blockId:block.block_id,name:block.name,icon:block.icon,id:block.id,copystack:1});$rootScope.$broadcast("service:CopyStack",service.stack)};return service});/* - -$scope.menuData = ServiceMenuData.data; - -$scope.$on('service:MenuData', function(event, data) { - $scope.menuData = data; -}); - -$scope.menuDataReload = function() { - return ServiceMenuData.load(true); -} - -*/zaa.factory("ServiceMenuData",function($http,$q,$rootScope){var service=[];service.data=[];service.load=function(forceReload){return $q(function(resolve,reject){if(service.data.length>0&&forceReload!==true){resolve(service.data)}else{$http.get("admin/api-cms-menu/data-menu").then(function(response){service.data=response.data;$rootScope.$broadcast("service:MenuData",service.data);resolve(service.data)})}})};return service});/* - -$scope.blocksData = ServiceBlocksData.data; - -$scope.$on('service:BlocksData', function(event, data) { - $scope.blocksData = data; -}); - -$scope.blocksDataReload = function() { - return ServiceBlocksData.load(true); -} - -*/zaa.factory("ServiceBlocksData",function($http,$q,$rootScope){var service=[];service.data=[];service.load=function(forceReload){return $q(function(resolve,reject){if(service.data.length>0&&forceReload!==true){resolve(service.data)}else{$http.get("admin/api-cms-admin/data-blocks").then(function(response){service.data=response.data;$rootScope.$broadcast("service:BlocksData",service.data);resolve(service.data)})}})};return service});/* - -$scope.layoutsData = ServiceLayoutsData.data; - -$scope.$on('service:BlocksData', function(event, data) { - $scope.layoutsData = data; -}); - -$scope.layoutsDataReload = function() { - return ServiceLayoutsData.load(true); -} - -*/zaa.factory("ServiceLayoutsData",function($http,$q,$rootScope){var service=[];service.data=[];service.load=function(forceReload){return $q(function(resolve,reject){if(service.data.length>0&&forceReload!==true){resolve(service.data)}else{$http.get("admin/api-cms-admin/data-layouts").then(function(response){service.data=response.data;$rootScope.$broadcast("service:LayoutsData",service.data);resolve(service.data)})}})};return service});/* - * CMS LIVE EDIT SERIVCE - * - * $scope.liveEditMode = ServiceLiveEditMode.state - */zaa.factory("ServiceLiveEditMode",function($rootScope){var service=[];service.state=0;service.url=$rootScope.luyacfg.homeUrl;service.toggle=function(){service.state=!service.state};service.setUrl=function(itemId,versionId){var d=new Date;var n=d.getTime();service.url=$rootScope.cmsConfig.previewUrl+"?itemId="+itemId+"&version="+versionId+"&date="+n};service.changeUrl=function(itemId,versionId){if(versionId==undefined){versionId=0}service.setUrl(itemId,versionId);$rootScope.$broadcast("service:LiveEditModeUrlChange",service.url)};return service});/* end of use strict */})(); \ No newline at end of file diff --git a/src/admin/resources/dist/js/main.uglified.js b/src/admin/resources/dist/js/main.uglified.js new file mode 100644 index 00000000..a2304cb0 --- /dev/null +++ b/src/admin/resources/dist/js/main.uglified.js @@ -0,0 +1 @@ +!function(){"use strict";zaa.directive("menuDropdown",function(a){return{restrict:"E",scope:{navId:"="},controller:function(t){for(var e in t.changeModel=function(e){t.navId=e.id},t.menuData=a.data,t.$on("service:MenuData",function(e,a){t.menuData=a}),t.menuData.containers)t.menuData.containers[e].isHidden=!1;t.toggler=!0,0==t.menuData.length&&a.load()},template:function(){return'