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)
|
}
|