url_sele.html 11.8 KB
<style>
    .shortcut {
    	width: 150px;
    	background-color: #fff;
    	overflow: auto;
        border: 1px solid #e7e7eb;
        padding: 0;
        left: 0;position: absolute;top:30px;list-style-image: none;list-style-type: none; z-index: 99 }
    #kuaiurl li {
    	width: 100%;
        background-color: #ffffff; border-bottom: 1px solid #e7e7eb;border-left: 1px solid #e7e7eb;
        cursor: pointer;padding: 5px;text-align: center; width: 120px;
        list-style-image: none; list-style-type: none; margin: 0;
    }
</style>
<input id="controllist" ind="" value="" type="hidden"/>
<input id="stoid" value="{:getAdmStoId();}" type="hidden"/>
<script type="text/javascript">
    var url_sele_obj=null;
    var iji=0;
    var url_sele_func="";
    var isover=0;

    var htm="<ul class='shortcut ' id='kuaiurl'>    <li key='shop'>商城首页</li>    <li key='user'>个人中心</li>    <li key='stores'>门店列表</li>  <li key='cart'>购物车</li> <li key='distribute'>分销</li>  <li key='ware'>商品选择</li>    <li key='waregroup'>商品分组</li>    <li key='title'>文章列表</li>    <li key='categorylist'>商品分类</li>    <li key='warebrand'>商品品牌</li>    <li key='warenation'>商品国别</li>    <li key='group_list'>团购列表</li>    <li key='seckill_list'>秒杀列表</li>    <li key='sign'>积分签到</li>    <li key='integralbuy'>积分购</li>    <li key='quan'>优惠券</li>    <li key='custom'>自定义</li></ul>";


    function seturl1(a,b,c,ob,func) {
        url_sele_func=func;
        seturl(a,b,c,ob);
    }
    function setisover(a) {
        isover=a;
    }
    $('body').click(function () {
        if(isover==0)
           $('#kuaiurl').remove();
    })

    /*---链接地址,a是content的一级名称,b是二级名称,c是二级的索引,ob是对象---*/
    function seturl(a,b,c,ob){
        var obj=$(ob).parent().parent();
        var ind=0;
        url_sele_obj=ob;
        if(a==""){
            $("#controllist").val(b);
        }else{
            $("#controllist").val(a+'-'+b);
            var n=0;
            while(!obj.hasClass('parent')){
                obj=obj.parent();
                n++;
                if(n>=4) break;
            }
            ind=obj.index();
        }
        $("#controllist").attr("ind",ind);
        $("#controllist").attr("utitle",c);
        var len=$(ob).find('#kuaiurl').length
        if(len<=0)  $(ob).append(htm);

        //文字加链接-快捷链接
        $("#kuaiurl li").click(function (event) {
            event.stopPropagation();
            var domail="{:curHostURL()}";
            var key = $(this).attr("key");
            var keyword=$(this).text().trim();
            var getstoid =$("#stoid").val();
            if(getstoid=="") getstoid=1;

            var url="";
            if(key=="ware"){
                if(!$(url_sele_obj).parent().find(".p_inputurl").hasClass('dn'))
                    $(url_sele_obj).parent().find(".p_inputurl").addClass('dn');
                /*--弹起选择商品--*/
                var url0 = "/index.php/admin/template/search_goods";
                iji=layer.open({
                    type: 2,
                    title: '选择商品',
                    shadeClose: true,
                    shade: 0.2,
                    area: ['96%', '75%'],
                    content: url0,
                });
                $("#kuaiurl").remove();
            }else if(key=="waregroup") {
                if(!$(url_sele_obj).parent().find(".p_inputurl").hasClass('dn'))
                    $(url_sele_obj).parent().find(".p_inputurl").addClass('dn');
                /*--弹起选择商品--*/
                var url0 = "/index.php/admin/template/search_goods_group";
                iji=layer.open({
                    type: 2,
                    title: '商品分组',
                    shadeClose: true,
                    shade: 0.2,
                    area: ['96%', '75%'],
                    content: url0,
                });
                $("#kuaiurl").remove();
            }
            else if(key=="title") {
                if(!$(url_sele_obj).parent().find(".p_inputurl").hasClass('dn'))
                    $(url_sele_obj).parent().find(".p_inputurl").addClass('dn');
                /*--弹起选择文章--*/
                var url5 = "/index.php/admin/Wechat/search_article";
                iji=layer.open({
                    type: 2,
                    title: '文章列表',
                    shadeClose: true,
                    shade: 0.2,
                    area: ['96%', '75%'],
                    content: url5,
                });
                $("#kuaiurl").remove();
            }
            else if(key=="custom"){
                $(url_sele_obj).parent().find(".p_inputurl").removeClass('dn');
                $(url_sele_obj).parent().find(".p_inputurl").find('input').val('');
                //通过controller来获取Angular应用
                var appElement = document.querySelector('[ng-controller=ctrl]');
                //获取$scope变量
                var $scope = angular.element(appElement).scope();
                //调用msg变量,并改变msg的值

                if(a==""){
                    $scope.content[c] = "自定义";
                    $scope.content[b]="";
                }else {
                    /*--修改链接的地址--*/
                    $scope.content[a][ind][c] = "自定义";
                    $scope.content[a][ind][b]="";
                }
                $scope.$apply();
                $("#kuaiurl").remove();
            }else {
                if(!$(url_sele_obj).parent().find(".p_inputurl").hasClass('dn'))
                    $(url_sele_obj).parent().find(".p_inputurl").addClass('dn');
                switch (key) {
                    case "shop":
                        url = domail + "/mobile/Index/index/stoid/" + getstoid+".html";
                        break;
                    case "user":
                        url = domail + "/mobile/User/index/stoid/" + getstoid+".html";
                        break;
                    case "stores":
                        url = domail + "/mobile/stores/storeslist/stoid/" + getstoid+".html";;
                        break;
                    case "categorylist":
                        url = domail + "/mobile/Goods/categoryList/stoid/" + getstoid+".html";
                        break;
                    case "cart":
                        url = domail + "/mobile/cart/cart/stoid/" + getstoid+".html";
                        break;
                    case "distribute":
                        url ="javascript:distri_show()";
                        break;
                    case "warebrand":
                        url = domail +"/mobile/Goods/categoryList/stoid/"+getstoid+"/type/2.html";
                        break;
                    case "warenation":
                        url = domail +"/mobile/Goods/categoryList/stoid/"+getstoid+"/type/1.html";
                        break;
                    case "group_list":
                        url = domail +"/mobile/Activity/group_list/stoid/"+getstoid+".html";
                        break;
                    case "seckill_list":
                        url = domail + "/mobile/Activity/seckill_list/stoid/" + getstoid+".html";
                        break;
                    case "sign":
                        url = domail + "/mobile/integral/index/stoid/"+getstoid+".html";
                        break;
                    case "integralbuy":
                        url = domail + "/mobile/integral/buy_points/stoid/"+getstoid+".html";
                        break;
                    case "quan":
                        url = domail + "/mobile/integral/coupon/stoid/"+getstoid+".html";
                        break;
                    case "login":
                        url = domail + "/mobile/User/login/stoid/" + getstoid+".html";
                        break;
                }
                //通过controller来获取Angular应用
                var appElement = document.querySelector('[ng-controller=ctrl]');
                //获取$scope变量
                var $scope = angular.element(appElement).scope();
                //调用msg变量,并改变msg的值

                var v=$("#controllist").val();
                var ary=v.split("-");

                if(a==""){
                    $scope.content[b] = url;
                    $scope.content[c] = keyword;
                }else {
                    /*--修改链接的地址--*/
                    $scope.content[a][ind][b] = url;
                    $scope.content[a][ind][c] = keyword;
                }

                //同步到Angular控制器中
                $scope.$apply();
                //$(url_sele_obj).find(".text-over").text(keyword);
                $("#kuaiurl").remove();
                url_sele_obj=null;

                if(url_sele_func!=""){
                  eval(url_sele_func+"()"); url_sele_func="";
                }
            }
        });
    }

    function call_back_func(name,url,type) {
      layer.close(iji);
      var kword="";

      if(type==0){ kword="商品选择|"+name;
      }else{ kword="商品分组|"+name; }

        //通过controller来获取Angular应用
        var appElement = document.querySelector('[ng-controller=ctrl]');
        //获取$scope变量
        var $scope = angular.element(appElement).scope();
        //调用msg变量,并改变msg的值
        var v=$("#controllist").val();
        var ind=parseInt($("#controllist").attr('ind'));
        var ary=v.split("-");
        var c=$("#controllist").attr('utitle');

        if(ary.length==1){
            $scope.content[v] = url;
            $scope.content[c] = kword;
        }else {
            var a = ary[0];
            var b = ary[1];
            /*--修改链接的地址--*/
            $scope.content[a][ind][b] = url;
            $scope.content[a][ind][c] = kword;
        }
        //同步到Angular控制器中
        $scope.$apply();
        $("#kuaiurl").remove();
        url_sele_obj=null;

        if(url_sele_func!=""){
            eval(url_sele_func+"()"); url_sele_func="";
        }
    }
    
    function selectarticle(ob) {
        layer.close(iji);
        var getstoid =$("#stoid").val() ;
        var articleid=$(ob).attr("thisid");
        var name=$(ob).attr("name");
        var kword="文章列表|"+name;

        var domail="{:curHostURL()}";
        var url=domail + "/Mobile/Article/article/stoid/"+getstoid+"/article_id/"+articleid;
        //通过controller来获取Angular应用
        var appElement = document.querySelector('[ng-controller=ctrl]');
        //获取$scope变量
        var $scope = angular.element(appElement).scope();
        //调用msg变量,并改变msg的值
        var v=$("#controllist").val();

        var ind=parseInt($("#controllist").attr('ind'));
        var ary=v.split("-");
        var c=$("#controllist").attr('utitle');

        if(ary.length==1){
            $scope.content[v] = url;
            $scope.content[c] = kword;
        }else {
            var a = ary[0];
            var b = ary[1];

            /*--修改链接的地址--*/
            $scope.content[a][ind][b] = url;
            $scope.content[a][ind][c] = kword;
        }
        //同步到Angular控制器中
        $scope.$apply();
        url_sele_obj=null;
        $("#kuaiurl").remove();

        if(url_sele_func!=""){
            eval(url_sele_func+"()"); url_sele_func="";
        }
    }

    /*
     用途:检查输入的内容是否是URL
     输入:strUrl:字符串
     返回:如果通过验证返回true,否则返回false
     */
    function checkUrl(strUrl) {
        var strRegex = "^[A-Za-z]+://[A-Za-z0-9-_]+\\.[A-Za-z0-9-_%&:\?\/.#=()]+$";
        var re = new RegExp(strRegex);
        if (re.test(strUrl)) {
            return true;
        }
        else {
            return false;
        }
    };

</script>