jh-admin/app/shop/view/diy/edit.html

153 lines
6.4 KiB
HTML

{extend name="$extend_base"/}
{block name="resources"}
<link rel="stylesheet" href="STATIC_EXT/colorPicker/css/colorpicker.css" />
<link rel="stylesheet" href="STATIC_EXT/diyview/css/diyview.css" />
{/block}
{block name="main"}
<div class="custom-save js-top-custom-save layui-hide">
<span></span>
<div class="button-group">
<button class="layui-btn save-button save">保存</button>
{notempty name="$diy_view_info"}
<button class="layui-btn" onclick="preview()">预览</button>
{/notempty}
<button class="layui-btn layui-btn-primary cancel-btn">取消</button>
</div>
</div>
<div id="diyView">
<!-- 组件列表 -->
<div class="component-list">
<!-- <div class="tab">-->
<!-- <span class="selected">内置组件</span>-->
<!-- <span data-type="EXTEND">第三方组件</span>-->
<!-- </div>-->
<nav>
{foreach name="$diy_view_utils" item="vo" key="k"}
<h3 data-index="{$k}" data-type="{$vo.type}" {if $vo['type'] == 'EXTEND'}style="display:none;"{/if}><img src="__STATIC__/ext/diyview/img/component_down.png" />{$vo.type_name}</h3>
<ul data-index="{$k}" data-type="{$vo.type}" {if $vo['type'] == 'EXTEND'}style="display:none;"{/if}>
{if $vo['type'] == 'SYSTEM'}
<li title="弹窗广告" @click='changeCurrentIndex(-98)'>
<i class="iconfont icondanchuangguanggao"></i>
<span>弹窗广告</span>
</li>
{/if}
{foreach name="$vo.list" item="li" key="li_k"}
<li title="{$li.title}" data-name="{$li.name}" data-max-count="{$li.max_count}" data-value='{$li.value}' data-is-delete="{$li.is_delete}" data-addon-name="{$li.addon_name}"
{if condition="$li.value"} @click='addComponent({$li.value},{ name : "{$li.name}", title : "{$li.title}", max_count : {$li.max_count}, addon_name : "{$li.addon_name}", is_delete : "{$li.is_delete}" })'
:class="{ 'disabled' : !checkComponentIsAdd('{$li.name}') }"
{else/}class="disabled"{/if}>
<i class="{$li.icon}"></i>
<span>{$li.title}</span>
</li>
{/foreach}
</ul>
{/foreach}
</nav>
</div>
<div class="preview-wrap">
<div class="loading-layer">
<div class="loading-anim">
<div class="box item"><div class="border out item"></div></div>
</div>
</div>
<div class="preview-restore-wrap">
<div class="div-wrap">
<button class="layui-btn layui-btn-primary position-page-btn" @click="changeCurrentIndex(-99)">页面设置</button>
<button class="layui-btn layui-btn-primary position-page-btn-c" @click="chooseSite()">复制页面</button>
<!-- 快捷操作 -->
<ul class="quick-action">
<!-- <li>-->
<!-- <i class="icondiy icon-system-eye-line"></i>-->
<!-- <span>隐藏</span>-->
<!-- </li>-->
<li @click="moveUpComponent()" :class="{ disabled : ((currentIndex - 1) < 0) }">
<i class="icondiy icon-system-jiantoushang"></i>
<span>上移</span>
</li>
<li @click="moveDownComponent()" :class="{ disabled : ( currentIndex < 0 || data.length === 0 || (currentIndex + 1) === data.length) }">
<i class="icondiy icon-system-jiantouxia"></i>
<span>下移</span>
</li>
<li @click="copyComponent()" :class="{ disabled : ( currentIndex < 0) }">
<i class="icondiy icon-system-file-copy-line"></i>
<span>复制</span>
</li>
<li @click="delComponent(currentIndex)" :class="{ disabled : currentIndex < -1 }">
<i class="icondiy icon-system-delete-bin-6-line"></i>
<span>删除</span>
</li>
<li @click="resetComponent()" :class="{ disabled : ( currentIndex < 0) }">
<i class="icondiy icon-system-loader-4-line"></i>
<span>重置</span>
</li>
</ul>
<div class='diy-view-wrap layui-form' :style="{ backgroundColor : global.pageBgColor,backgroundImage : 'url('+changeImgUrl(global.bgUrl)+')' }">
<div class="preview-head" @click="changeCurrentIndex(-99)">
<!-- 顶部tabbar风格 -->
<tabbar :current-index="currentIndex" :global="global"></tabbar>
<!-- 页面设置 -->
<div class="page-set-wrap" :class="{ selected : currentIndex == -99 }" :data-sort="-99" v-show="data.length == 0 || currentIndex == -99">
<page-set :current-index="currentIndex" :global="global" :global-lazy-load="globalLazyLoad"></page-set>
</div>
</div>
<!-- 弹窗广告 -->
<pop-window :current-index="currentIndex" :global="global" :global-lazy-load="globalLazyLoad"></pop-window>
<div class="preview-block">
<div v-for="(nc,index) in data" :key="nc.id" :data-index="index" :data-id="nc.id" :class="{ 'draggable-element' : true,selected : currentIndex == index }" :data-sort="index">
{foreach name="$diy_view_utils" item="vo"}
{foreach name="$vo.list" item="li"}
<template v-if="nc.componentName == '{$li.name}'">
{:event('DiyViewUtils',[ 'name' => $li['name'], 'addon_name' => $li['addon_name'] ],true)}
</template>
{/foreach}
{/foreach}
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 预览 -->
<template slot="preview"></template>
<div class="custom-save js-bottom-custom-save">
<button class="layui-btn full-screen-btn">全屏</button>
{notempty name="$diy_view_info"}
<button class="layui-btn" onclick="preview()">预览</button>
{/notempty}
<button class="layui-btn save " style="background-color: #FF6A00 !important">保存</button>
</div>
</div>
{if condition="!empty($diy_view_info)"}
<input type="hidden" id="id" value="{$diy_view_info.id}">
<input type="hidden" id="info" value='{$diy_view_info.value ?? ""}' />
{/if}
<input type="hidden" id="name" value="{$name}" />
<input type="hidden" id="title" value="{$title}" />
<input type="hidden" id="template_id" value="{$template_id}" />
<input type="hidden" id="page_type" value="{$page_type ?? ''}" />
{/block}
{block name="script"}
<script>
var requestUrl = '{$request_url}';
var baseStyle = '{$base ?? "app/shop/view/base/style2.html"}';
var storeIsExit = '{$store_is_exit}';
</script>
<script src="STATIC_JS/vue.js"></script>
<script src="STATIC_EXT/colorPicker/js/colorpicker.js"></script>
<script src="STATIC_EXT/diyview/js/async_load_css.js"></script>
<script src="STATIC_EXT/diyview/js/ddsort.js"></script>
<script src="STATIC_EXT/ueditor/ueditor.config.js"></script>
<script src="STATIC_EXT/ueditor/ueditor.all.js"> </script>
<script src="STATIC_EXT/ueditor/lang/zh-cn/zh-cn.js"></script>
<script src="STATIC_EXT/diyview/js/components.js"></script>
<script src="STATIC_EXT/diyview/js/custom_template.js"></script>
{include file="app/shop/view/diy/iconfont_component.html"/}
{/block}