123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182 |
- <form id="edit-form" class="form-horizontal" role="form" data-toggle="validator" method="POST" action="">
- <div class="panel panel-default" style="margin-bottom: 20px;">
- <div class="panel-heading" style="padding: 10px 15px; border-left: 4px solid #18bc9c;">
- <h3 class="panel-title" style="font-size: 14px; font-weight: bold;">基本信息</h3>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-xs-12 col-sm-2">{:__('活动名称')}:</label>
- <div class="col-xs-12 col-sm-8">
- <div class="input-group">
- <input id="c-name" data-rule="required" class="form-control" name="row[name]" type="text" value="{$row.name|htmlentities}" maxlength="20">
- <span class="input-group-addon" id="name-count">0/20</span>
- <span class="msg-box n-right" for="c-name" style="position:absolute;display:inline-block;margin-top:5px;"></span>
- </div>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-xs-12 col-sm-2">{:__('活动期限')}:</label>
- <div class="col-xs-12 col-sm-8">
- <div class="input-group">
- <input id="c-start_time" data-rule="required" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[start_time]" type="text" value="{:$row.start_time?datetime($row.start_time):''}" placeholder="开始时间">
- <span class="input-group-addon">~</span>
- <input id="c-end_time" data-rule="required" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[end_time]" type="text" value="{:$row.end_time?datetime($row.end_time):''}" placeholder="结束时间">
- </div>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-xs-12 col-sm-2">{:__('活动渠道')}:</label>
- <div class="col-xs-12 col-sm-8">
- <label class="checkbox-inline">
- <input type="checkbox" name="row[channels][]" value="wechat" {in name="'wechat'|explode($row.channels)" value="wechat"}checked{/in}> 微信公众号
- </label>
- <label class="checkbox-inline">
- <input type="checkbox" name="row[channels][]" value="miniapp" {in name="'miniapp'|explode($row.channels)" value="miniapp"}checked{/in}> 微信小程序
- </label>
- <label class="checkbox-inline">
- <input type="checkbox" name="row[channels][]" value="h5" {in name="'h5'|explode($row.channels)" value="h5"}checked{/in}> 手机浏览器H5
- </label>
- <label class="checkbox-inline">
- <input type="checkbox" name="row[channels][]" value="tiktok" {in name="'tiktok'|explode($row.channels)" value="tiktok"}checked{/in}> 头条/抖音小程序
- </label>
- <label class="checkbox-inline">
- <input type="checkbox" name="row[channels][]" value="app" {in name="'app'|explode($row.channels)" value="app"}checked{/in}> APP
- </label>
- <label class="checkbox-inline">
- <input type="checkbox" name="row[channels][]" value="pc" {in name="'pc'|explode($row.channels)" value="pc"}checked{/in}> PC版
- </label>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-xs-12 col-sm-2">{:__('选择商品')}:</label>
- <div class="col-xs-12 col-sm-8">
- <button type="button" id="select-goods" class="btn btn-primary">选择商品</button>
- <div id="selected-goods-container" class="margin-top-10"></div>
- <input type="hidden" name="row[goods_ids]" id="goods-ids" value="{$row.goods_ids|htmlentities}">
- <input type="hidden" name="row[goods_info]" id="goods-info" value="">
- <p class="help-block">提示:折扣价格将按照设置的折扣计算,折扣范围0.1~10折</p>
- </div>
- </div>
-
- <div class="panel panel-default" style="margin-bottom: 20px;">
- <div class="panel-heading" style="padding: 10px 15px; border-left: 4px solid #18bc9c;">
- <h3 class="panel-title" style="font-size: 14px; font-weight: bold;">规则设置</h3>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-xs-12 col-sm-2">{:__('活动主图')}:</label>
- <div class="col-xs-12 col-sm-8">
- <div class="input-group">
- <input id="c-image" data-rule="required" class="form-control" size="50" name="row[image]" type="text" value="{$row.image|htmlentities}">
- <div class="input-group-addon no-border no-padding">
- <span><button type="button" id="faupload-image" class="btn btn-danger faupload" data-input-id="c-image" data-mimetype="image/gif,image/jpeg,image/png,image/jpg,image/bmp,image/webp" data-multiple="false" data-preview-id="p-image"><i class="fa fa-upload"></i> {:__('Upload')}</button></span>
- <span><button type="button" id="fachoose-image" class="btn btn-primary fachoose" data-input-id="c-image" data-mimetype="image/*" data-multiple="false"><i class="fa fa-list"></i> {:__('Choose')}</button></span>
- </div>
- <span class="msg-box n-right" for="c-image"></span>
- </div>
- <ul class="row list-inline faupload-preview" id="p-image"></ul>
- <p class="help-block">活动落地页的顶部图片,建议尺寸750px*340px</p>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-xs-12 col-sm-2">{:__('限购次数')}:</label>
- <div class="col-xs-12 col-sm-8">
- <div style="margin-bottom: 15px;">
- <label class="radio-inline" style="margin-right: 20px;">
- <input type="radio" name="row[purchase_limit_type]" value="0" {eq name="row.purchase_limit_type" value="0"}checked{/eq}> 不限制
- </label>
- </div>
-
- <div style="margin-bottom: 15px; display: flex; align-items: center;">
- <label class="radio-inline" style="margin-right: 20px; min-width: 220px;">
- <input type="radio" name="row[purchase_limit_type]" value="1" {eq name="row.purchase_limit_type" value="1"}checked{/eq}> 活动期内每人最多购买
- </label>
- <div style="display: flex; align-items: center;">
- <input type="number" class="form-control" name="row[purchase_limit_total]" placeholder="请输入" min="1" {eq name="row.purchase_limit_type" value="1"}{else}disabled{/eq} style="width: 300px;" value="{$row.purchase_limit_total|default=''}">
- <span style="margin-left: 10px;">件</span>
- </div>
- </div>
-
- <div style="margin-bottom: 15px; display: flex; align-items: center;">
- <label class="radio-inline" style="margin-right: 20px; min-width: 220px;">
- <input type="radio" name="row[purchase_limit_type]" value="2" {eq name="row.purchase_limit_type" value="2"}checked{/eq}> 活动期内每人每天最多购买
- </label>
- <div style="display: flex; align-items: center;">
- <input type="number" class="form-control" name="row[purchase_limit_daily]" placeholder="请输入" min="1" {eq name="row.purchase_limit_type" value="2"}{else}disabled{/eq} style="width: 300px;" value="{$row.purchase_limit_daily|default=''}">
- <span style="margin-left: 10px;">件</span>
- </div>
- </div>
- </div>
- </div>
- <div class="form-group">
- <label class="control-label col-xs-12 col-sm-2">{:__('活动描述')}:</label>
- <div class="col-xs-12 col-sm-8">
- <textarea id="c-desc" class="form-control editor" rows="5" name="row[desc]" cols="50">{$row.desc|htmlentities}</textarea>
- </div>
- </div>
- <div class="form-group layer-footer">
- <label class="control-label col-xs-12 col-sm-2"></label>
- <div class="col-xs-12 col-sm-8">
- <button type="submit" class="btn btn-primary btn-embossed">{:__('提交')}</button>
- <button type="reset" class="btn btn-default btn-embossed">{:__('重置')}</button>
- </div>
- </div>
- </form>
- <!-- 商品表格模板 -->
- <script id="goodsTableTpl" type="text/html">
- <div class="table-responsive">
- <table id="selected-goods-table" class="table table-striped table-bordered table-hover">
- </table>
- </div>
- </script>
- <script>
- var defaultDiscount = 9;
-
- // 商品数据
- Config.goodsData = {:json_encode($goodsData ?? [])};
-
- // 初始化
- $(function () {
- // 初始化编辑器
- var editor = CKEDITOR.replace('c-desc', {
- height: 300,
- filebrowserImageUploadUrl: Fast.api.fixurl('/ajax/upload')
- });
-
- // 活动渠道全选
- $('#select-all-channels').on('click', function() {
- $('input[name="row[channels][]"]').prop('checked', $(this).prop('checked'));
- });
-
- // 限购类型切换
- $('input[name="row[purchase_limit_type]"]').on('change', function() {
- var type = $(this).val();
- if(type == '0') {
- $('input[name="row[purchase_limit_total]"]').prop('disabled', true);
- $('input[name="row[purchase_limit_daily]"]').prop('disabled', true);
- } else if(type == '1') {
- $('input[name="row[purchase_limit_total]"]').prop('disabled', false);
- $('input[name="row[purchase_limit_daily]"]').prop('disabled', true);
- } else if(type == '2') {
- $('input[name="row[purchase_limit_total]"]').prop('disabled', true);
- $('input[name="row[purchase_limit_daily]"]').prop('disabled', false);
- }
- });
-
- // 名称字数统计
- $('#c-name').on('input', function() {
- var length = $(this).val().length;
- $('#name-count').text(length + '/20');
- }).trigger('input');
- });
- </script>
|