master
2022-03-21 1292f810644e422357734d1616761eb920903f45
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
var thisWidget, $table;
 
function getHeight() {
    return $(window).height() - 50
}
 
function initWidgetView(a) {
    thisWidget = a, $("#btn_bookmark_Add").bind("click", function() {
        saveBookmark()
    }), ($table = $("#table")).bootstrapTable({
        height: getHeight(),
        singleSelect: !0,
        pagination: !1,
        pageSize: 6,
        iconsPrefix: "fa",
        showHeader: !1,
        columns: [{
            title: "",
            sortable: !0,
            editable: !1,
            align: "center",
            events: {
                "click .remove": function(a, t, o, r) {
                    delBookMark(o.id)
                }
            },
            formatter: function(a, t, o) {
                return '<div class="bookmarkitem" title="'.concat(t.name,
                    '">\n                      <img src="').concat(t.icon,
                    '" style="width:100%;" />\n                      <div class="title">\n                          '
                    ).concat(t.name,
                    '\n                          <a class="remove" href="javascript:void(0)" title="删除"><i class="fa fa-trash"></i></a>\n                        </div>\n                  </div>'
                    )
            }
        }],
        onClickRow: function(a, t, o) {
            a = a.data;
            thisWidget.showExtent(a)
        }
    }), $(window).resize(function() {
        $table.bootstrapTable("refreshOptions", {
            height: getHeight()
        })
    }), initBookMarkList()
}
var storageName = "mars3d_bookmark",
    arrBookmark = [];
 
function initBookMarkList() {
    var lastcookie;
    window.parent.hasServer ? parent.sendAjax({
        url: "v1/map/bookmark/list",
        type: "get",
        dataType: "json",
        contentType: "application/x-www-form-urlencoded",
        success: function(a) {
            for (var t = [], o = 0; o < a.length; o++) {
                var r = a[o];
                r && t.push({
                    name: r.name,
                    data: JSON.parse(r.center),
                    id: r.id
                })
            }
            showListData(arrBookmark = t)
        },
        error: function(a, t, o) {
            alert("服务出错:" + a.statusText + ",代码 " + a.status)
        }
    }) : (lastcookie = haoutil.storage.get(storageName), null != lastcookie && (arrBookmark = eval(lastcookie)),
        null != arrBookmark && 0 != arrBookmark.length || (arrBookmark = []), showListData(arrBookmark))
}
 
function saveBookmark() {
    null == arrBookmark && (arrBookmark = []);
    var o = $.trim($("#txt_bookmark_name").val()).replace("'", "").replace('"', "");
    if (0 != o.length) {
        for (var a = arrBookmark.length - 1; 0 <= a; a--)
            if (arrBookmark[a].name == o) return void toastr.info("该名称已存在,请更换!");
        thisWidget.getThisExtent(function(a, t) {
            arrBookmark.insert({
                name: o,
                data: a,
                icon: t,
                id: (new Date).getTime()
            }, 0), window.parent.hasServer ? parent.sendAjax({
                url: "v1/map/bookmark/add",
                data: JSON.stringify({
                    name: o,
                    center: JSON.stringify(a)
                }),
                type: "post",
                dataType: "json",
                contentType: "application/json",
                success: function(a) {
                    $("#txt_bookmark_name").val(""), initBookMarkList()
                }
            }) : (a = JSON.stringify(arrBookmark), haoutil.storage.add(storageName, a), $(
                "#txt_bookmark_name").val(""), initBookMarkList())
        })
    } else toastr.warning("请输入名称")
}
 
function delBookMark(o) {
    if (window.parent.hasServer) parent.sendAjax({
        url: "v1/map/bookmark/" + o,
        type: "delete",
        dataType: "json",
        contentType: "application/json",
        success: function(a) {
            for (var t = arrBookmark.length - 1; 0 <= t; t--)
                if (arrBookmark[t].id == o) {
                    arrBookmark.splice(t, 1), showListData(arrBookmark);
                    break
                }
        }
    });
    else
        for (var a = arrBookmark.length - 1; 0 <= a; a--)
            if (arrBookmark[a].id == o) {
                arrBookmark.splice(a, 1);
                var t = JSON.stringify(arrBookmark);
                haoutil.storage.add(storageName, t), showListData(arrBookmark);
                break
            }
}
 
function showListData(a) {
    var t = $table.bootstrapTable("getScrollPosition");
    $table.bootstrapTable("load", a), $table.bootstrapTable("scrollTo", t)
}