403Webshell
Server IP : 156.238.232.47  /  Your IP : 216.73.216.150
Web Server : nginx/1.25.3
System : Linux C202504152095410 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : www ( 1000)
PHP Version : 8.3.25
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /www/data/wwwroot/26022724.961104.xyz/application/admin/template/shop_product/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /www/data/wwwroot/26022724.961104.xyz/application/admin/template/shop_product/goods_quick_edit.htm
{include file="public/layout" /}
<style>
    .ncap-form-default dd.opt {
        width: 200px;
    }
    .ncap-form-default dd.opt {
        width: 200px;
    }
    #SpecTempLateDiv table b {
        display: inline-block;
        width: 130px;
    }
    div.bot3 {
        left: 0;
        right: 0;
    }
</style>
<body style="background-color: rgb(255, 255, 255); overflow: auto; cursor: default; -moz-user-select: inherit;min-width:400px;display: inline-table">
<div id="append_parent"></div>
<div id="ajaxwaitid"></div>
<div class="page pt0" style="box-shadow: none; min-width: 400px;">
    <div class="flexigrid" style="display: inline-block">
        <form class="form-horizontal" id="goodsPost">
            <input type="hidden" name="aid" value="{$goods.aid}">
            <input type="hidden" name="openSpec" value="{$openSpec}">
            <div class="ncap-form-default" style="display: inline-block">
                <!-- 未开启规格 -->
                <div {notempty name="$htmlTable"} style="display: none;" {/notempty}>
                    <dl class="row">
                        <dt class="tit"> <label for="users_price">{if condition="1 == $shopConfig['shop_open']"}<em>*</em>{/if}价格</label> </dt>
                        <dd class="opt">
                            <input type="text" name="users_price" id="users_price" maxlength="100" placeholder="原价" style="width: 180px;" value="{$goods.users_price}" onkeyup="this.value=this.value.replace(/[^\.\d]/g,'');" onpaste="this.value=this.value.replace(/[^\.\d]/g,'');">
                        </dd>
                    </dl>
                    <dl class="row">
                        <dt class="tit"> <label for="stock_count">库存</label> </dt>
                        <dd class="opt">
                            <input type="text" name="stock_count" id="stock_count" style="width: 180px;" value="{$goods.stock_count}" onkeyup="this.value=this.value.replace(/[^\d]/g,'');" onpaste="this.value=this.value.replace(/[^\d]/g,'');">
                            <!-- <label><input type="checkbox" name="stock_show" value='1' {eq name="$goods.stock_show" value="1"} checked {/eq}>页面显示商品库存</label> -->
                        </dd>
                    </dl>
                    <dl class="row">
                        <dt class="tit"> <label for="virtual_sales">虚拟销量</label> </dt>
                        <dd class="opt">
                            <input type="text" name="virtual_sales" id="virtual_sales" style="width: 180px;" value="{$goods.virtual_sales}" onkeyup="this.value=this.value.replace(/[^\d]/g,'');" onpaste="this.value=this.value.replace(/[^\d]/g,'');">
                        </dd>
                    </dl>
                </div>
                <!-- 已开启规格 -->
                <div {empty name="$htmlTable"} style="display: none;" {/empty}>
                    <div id="SpecTempLateDiv">{$htmlTable}</div>
                    <script type="text/javascript">
                        $(function () {
                            var stock_count = 0;
                            $('.stock_count').each(function() {
                                stock_count +=+ $(this).val();
                            })
                            if (0 === parseInt(stock_count)) stock_count = '{$goods.stock_count}';
                            $('#stock_count').val(stock_count);
                            // 取最小值价格
                            UpPrice();
                            // 合并单元格
                            mergeCells();
                        });

                        // 更新价格,取出最小的值赋值到价格中
                        function UpPrice(obj) {
                            var usersPriceArray = new Array();
                            $('.users_price').each(function(){
                                usersPriceArray.push($(this).val());
                            });
                            var minValue = '{$goods.users_price}';
                            if (usersPriceArray.length != 0) {
                                // 取出最小值
                                minValue = Math.min.apply(Math, usersPriceArray);
                                // 禁用库存框
                                $('#users_price').attr('readonly', 'readonly');
                            }
                            $('#users_price').val(minValue);
                        }

                        // 批量设置价格
                        function BulkSetPrice(obj) {
                            layer.prompt({
                                formType: 3,
                                shade: layer_shade,
                                id: 'BulkSetPrice',
                                title: '批量设置价格',
                                btn: ['确定', '关闭'],
                                btnAlign:'r',
                                closeBtn: 3,
                                success: function(layero, index){
                                    $("#BulkSetPrice").find('input').attr('placeholder', '批量设置价格');
                                    $("#BulkSetPrice").find('input').attr('onkeyup', "this.value=this.value.replace(/[^\\d.]/g,'')");
                                    $("#BulkSetPrice").find('input').attr('onpaste', "this.value=this.value.replace(/[^\\d.]/g,'')");
                                }
                            }, function(price, index) {
                                layer.close(index);
                                // 规格中的价格
                                $('.users_price').val(price);
                                // 产品价格
                                $('#users_price').val(price);
                            });
                        }

                        // 批量设置划线价
                        function BulkSetCrossedPrice() {
                            layer.prompt({
                                title: '批量设置划线价', 
                                shade: layer_shade,
                                formType: 3,
                                id: 'BulkSetCrossedPrice',
                                btn: ['确定', '关闭'],
                                closeBtn: 0,
                                success: function(layero, index){
                                    $("#BulkSetCrossedPrice").find('input').attr('placeholder', '批量设置划线价');
                                    $("#BulkSetCrossedPrice").find('input').attr('onkeyup', "this.value=this.value.replace(/[^\\d.]/g,'')");
                                    $("#BulkSetCrossedPrice").find('input').attr('onpaste', "this.value=this.value.replace(/[^\\d.]/g,'')");
                                }
                            }, function(price, index){
                                layer.close(index);
                                // 规格中的划线价
                                $('.crossed_price').val(price);
                                // 商品划线价
                                $('#crossed_price').val(price);
                            });
                        }

                        // 批量设置库存
                        function BulkSetStock(obj) {
                            layer.prompt({
                                formType: 3,
                                shade: layer_shade,
                                id: 'BulkSetStock',
                                title: '批量设置库存',
                                btn: ['确定', '关闭'],
                                btnAlign:'r',
                                closeBtn: 3,
                                success: function(layero, index){
                                    $("#BulkSetStock").find('input').attr('placeholder', '批量设置库存');
                                    $("#BulkSetStock").find('input').attr('onkeyup', "this.value=this.value.replace(/[^\\d.]/g,'')");
                                    $("#BulkSetStock").find('input').attr('onpaste', "this.value=this.value.replace(/[^\\d.]/g,'')");
                                }
                            }, function(stock, index) {
                                layer.close(index);
                                // 单个库存
                                $('.stock_count').val(stock);
                                $('.stock_count').attr('data-old_stock',stock);
                                stock_count = Number($('.stock_count').length) * Number(stock);
                                $('#stock_count').val(stock_count);
                                // 禁用库存框
                                $('#stock_count').attr('readonly', 'readonly');
                            });
                        }

                        // 保留操作方法,仅防止JS报错
                        function setProductSpecPrice() {
                            // .......
                        }

                        // 合并单元格
                        function mergeCells() {
                            var tab = document.getElementById("spec_input_tab");
                            var maxCol = 2, val, count, start; 
                            if (tab != null) {
                                for (var col = maxCol - 1; col >= 0; col--) {
                                    count = 1;
                                    val = "";
                                    for (var i = 0; i < tab.rows.length; i++) {
                                        if (val == tab.rows[i].cells[col].innerHTML) {
                                            count++;
                                        } else {
                                            if (count > 1) { //合并
                                                start = i - count;
                                                tab.rows[start].cells[col].rowSpan = count;
                                                for (var j = start + 1; j < i; j++) {
                                                    tab.rows[j].cells[col].style.display = "none";
                                                }
                                                count = 1;
                                            }
                                            val = tab.rows[i].cells[col].innerHTML;
                                        }
                                    }
                                    if (count > 1) { //合并,最后几行相同的情况下
                                        start = i - count;
                                        tab.rows[start].cells[col].rowSpan = count;
                                        for (var j = start + 1; j < i; j++) {
                                            tab.rows[j].cells[col].style.display = "none";
                                        }
                                    }
                                }
                            }
                        }
                    </script>
                </div>
            </div>
        </form>
    </div>
</div>

<div class="bot3 wm100">
    <a href="javascript:void(0);" onclick="saveGoods();" class="ncap-btn-big ncap-btn-green"><span>确认</span></a>
    <a class="ncap-btn-big ncap-btn-no" href="javascript:void(0);" onclick="window.parent.layer.closeAll();" title="关闭">关闭</a>
</div>

<script type="text/javascript">
    function saveGoods() {
        layer_loading('正在处理');
        $.ajax({
            type: "POST",
            url : "{:url('ShopProduct/goods_quick_edit', ['_ajax'=>1])}",
            data: $('#goodsPost').serialize(),
            dataType: 'json',
            success: function (res) {
                layer.closeAll();
                if (1 === parseInt(res.code)) {
                    showSuccessMsg(res.msg, 1500, function() {
                        parent.window.location.reload();
                    });
                } else {
                    showErrorAlert(res.msg);
                }
            },
            error: function(e) {
                layer.closeAll();
                showErrorAlert(e.responseText);
            }
        });
    }
    // var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
    // parent.layer.iframeAuto(index);
</script>

Youez - 2016 - github.com/yon3zu
LinuXploit