//页面加载完就执行
|
|
$(function(){
|
|
|
|
//自动根据url把当前菜单激活
|
|
var current_page_id = $("#current_page_id").val();
|
|
//如果中没有指定page_id,则判断有没有父目录为0的页面,默认打开第一个
|
|
if(!current_page_id) {
|
|
current_page_id = $(".doc-left li").children("a").attr("data-page-id");
|
|
};
|
|
if(current_page_id !=null && current_page_id.toString().length>0)
|
|
{
|
|
$(".doc-left li").each(function(){
|
|
page_id = $(this).children("a").attr("data-page-id");
|
|
//如果链接中包含当前url的信息,两者相匹配
|
|
if (page_id !=null && page_id.toString().length>0 && page_id == current_page_id) {
|
|
//激活菜单
|
|
$(this).addClass("active");
|
|
//如果该菜单是子菜单,则还需要把父菜单打开才行
|
|
if ($(this).parent('.child-ul')) {
|
|
$(this).parent('.child-ul').show();
|
|
$(this).parent('.child-ul').parent('li').children("a").children('i').attr("class","icon-chevron-down");
|
|
if($(this).parent('.child-ul').parent().parent('.child-ul')){
|
|
$(this).parent('.child-ul').parent().parent('.child-ul').show();
|
|
$(this).parent('.child-ul').parent().parent('.child-ul').parent('li').children("a").children('i').attr("class","icon-chevron-down");
|
|
}
|
|
};
|
|
page_title = $(this).children("a")[0].innerText;
|
|
document.title = page_title + " - ShowDoc";
|
|
if (page_id != '' && page_id !='#') {
|
|
change_page(page_id)
|
|
};
|
|
};
|
|
})
|
|
}
|
|
|
|
|
|
//根据屏幕宽度进行响应(应对移动设备的访问)
|
|
if( isMobile() || $(window).width() < 1000){
|
|
AdaptToMobile();
|
|
}
|
|
|
|
$(window).resize(function(){
|
|
if( isMobile()){
|
|
AdaptToMobile();
|
|
}
|
|
|
|
else if($(window).width() < 1000){
|
|
AdaptToMobile();
|
|
}else{
|
|
window.location.reload();
|
|
}
|
|
});
|
|
|
|
//增加返回顶部按钮
|
|
$.goup({
|
|
trigger: 100,
|
|
bottomOffset: 150,
|
|
locationOffset: 100,
|
|
title: lang["back_to_top"] ,
|
|
titleAsText: true,
|
|
containerColor:"#08c",
|
|
});
|
|
|
|
|
|
//js获取url参数
|
|
function GetQueryString(name)
|
|
{
|
|
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
|
|
var r = window.location.search.substr(1).match(reg);
|
|
if(r!=null)return unescape(r[2]); return null;
|
|
}
|
|
|
|
function AdaptToMobile(){
|
|
$(".doc-left").removeClass("span3");
|
|
$(".doc-left").css("width",'100%');
|
|
$(".doc-left").css("height",'initial');
|
|
$(".doc-left").css("min-height",'0px');
|
|
$(".doc-left").css("position",'static');
|
|
$(".doc-right").css("margin-top",'0px');
|
|
$(".doc-right").css("margin-left",'0px');
|
|
$(".doc-right").removeClass("span12");
|
|
$(".doc-head .right").hide();
|
|
$(".page-edit-link").html('');
|
|
$(".doc-left-newbar").html('');
|
|
//$(".iframe_content").css("padding-left","30px");
|
|
$(".iframe_content").css("width",'');
|
|
$(".doc-left .nav-list li a i ").css("margin-left" , '10px');
|
|
$(".search-input-append").css("width","100%");
|
|
$(".search-query-input").css("width","70%");
|
|
|
|
|
|
|
|
}
|
|
|
|
function mScroll(id){
|
|
$("html,body").stop(true);
|
|
$("html,body").animate(
|
|
{scrollTop: $("#"+id).offset().top},
|
|
2000);
|
|
}
|
|
|
|
//点击左侧菜单事件
|
|
$(".doc-left li").click(function(){
|
|
//先把所有菜单的激活状态取消
|
|
$(".doc-left li").each(function(){
|
|
$(this).removeClass("active");
|
|
});
|
|
//先判断是否存在子菜单
|
|
if ($(this).children('.child-ul').length != 0) {
|
|
//如果子菜单是隐藏的,则显示之;如果是显示状态的,则隐藏
|
|
if ($(this).children('.child-ul').css("display") == "none") {
|
|
$(this).children('.child-ul').show();
|
|
$(this).children("a").children('i').attr("class","icon-chevron-down");
|
|
}else{
|
|
$(this).children('.child-ul').hide();
|
|
$(this).children("a").children('i').attr("class","icon-chevron-right");
|
|
}
|
|
};
|
|
//激活菜单
|
|
$(this).addClass("active");
|
|
//获取对应的page_id
|
|
page_id = $(this).children("a").attr("data-page-id");
|
|
page_title = $(this).children("a")[0].innerText;
|
|
if (page_id != '' && page_id != null && page_id !='#') {
|
|
if (page_title != '' && page_title != null) {
|
|
document.title = page_title + " - ShowDoc";
|
|
}
|
|
change_page(page_id);
|
|
//如果是移动设备的话,则滚动页面
|
|
if( isMobile()){
|
|
mScroll("page-content");
|
|
}
|
|
};
|
|
return false;//禁止原有的href链接
|
|
});
|
|
|
|
//切换页面;
|
|
function change_page(page_id){
|
|
if(!page_id)return;
|
|
var item_id = $("#item_id").val();
|
|
var item_domain = $("#item_domain").val();
|
|
var base_url = $("#base_url").val();
|
|
var iframe_url = base_url+"/home/page/index/page_id/"+page_id;
|
|
|
|
$(".page-edit-link").show();
|
|
//$("#page-content").attr("src" , iframe_url);
|
|
$("#edit-link").attr("href" , base_url+"/home/page/edit/page_id/"+page_id);
|
|
$("#copy-link").attr("href" , base_url+"/home/page/edit/item_id/"+item_id+"/copy_page_id/"+page_id);
|
|
$("#delete-link").data("page_id",page_id);
|
|
|
|
var domain = item_domain ? item_domain : item_id ;
|
|
var cur_page_url = window.location.protocol +"//"+window.location.host+base_url+"/"+domain;
|
|
if(base_url.length == 0){
|
|
cur_page_url += "?page_id="+page_id;
|
|
}else{
|
|
cur_page_url += "&page_id="+page_id;
|
|
}
|
|
$("#share-page-link").html(cur_page_url);
|
|
history.replaceState(null, null, cur_page_url);
|
|
var single_page_url = window.location.protocol +"//"+window.location.host+base_url+"/page/"+page_id;
|
|
$("#share-single-link").html(single_page_url);
|
|
|
|
$("#qr-page-link").attr("src","?s=home/common/qrcode&size=3&url="+encodeURIComponent(cur_page_url));
|
|
$("#qr-single-link").attr("src","?s=home/common/qrcode&size=3&url="+encodeURIComponent(single_page_url));
|
|
$(".show_page_info").data("page_id",page_id);
|
|
var html = '<iframe id="page-content" width="100%" scrolling="yes" height="100%" frameborder="0" style=" overflow:visible; height:100%;" name="main" seamless ="seamless"src="'+iframe_url+'"></iframe>';
|
|
$(".iframe_content").html(html);
|
|
iFrameHeight();
|
|
|
|
}
|
|
|
|
//分享项目
|
|
$("#share").click(function(){
|
|
$("#share-modal").modal();
|
|
//延迟绑定分享事件
|
|
setTimeout(function(){
|
|
$('#copy-item-link').zclip(
|
|
{
|
|
path: DocConfig.pubile +'/jquery.zclip/ZeroClipboard.swf',
|
|
copy:function()
|
|
{
|
|
return $('#share-item-link').html();
|
|
},
|
|
afterCopy: function() {
|
|
show_top_msg("已经成功复制到剪切板",2000);
|
|
}
|
|
});
|
|
|
|
},500);
|
|
return false;
|
|
});
|
|
|
|
//分享页面
|
|
$("#share-page").click(function(){
|
|
$("#share-page-modal").modal();
|
|
//延迟绑定分享事件
|
|
setTimeout(function(){
|
|
$('#copy-page-link').zclip(
|
|
{
|
|
path: DocConfig.pubile +'/jquery.zclip/ZeroClipboard.swf',
|
|
copy:function()
|
|
{
|
|
return $('#share-page-link').html();
|
|
},
|
|
afterCopy: function() {
|
|
show_top_msg("已经成功复制到剪切板",2000);
|
|
}
|
|
});
|
|
|
|
$('#copy-single-link').zclip(
|
|
{
|
|
path:DocConfig.pubile +'/jquery.zclip/ZeroClipboard.swf',
|
|
copy:function()
|
|
{
|
|
return $('#share-single-link').html();
|
|
},
|
|
afterCopy: function() {
|
|
show_top_msg("已经成功复制到剪切板",2000);
|
|
}
|
|
});
|
|
},500);
|
|
|
|
return false;
|
|
});
|
|
|
|
function iFrameHeight() {
|
|
var ifr = document.getElementById('page-content');
|
|
ifr.onload = function() {
|
|
var iDoc = ifr.contentDocument || ifr.document;
|
|
var height = calcPageHeight(iDoc);
|
|
ifr.style.height = height + 'px';
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 计算页面的实际高度,iframe自适应会用到
|
|
function calcPageHeight(doc) {
|
|
var cHeight = Math.max(doc.body.clientHeight, doc.documentElement.clientHeight)
|
|
var sHeight = Math.max(doc.body.scrollHeight, doc.documentElement.scrollHeight)
|
|
var height = Math.max(cHeight, sHeight)
|
|
return height
|
|
}
|
|
|
|
var keyMap = {
|
|
// 编辑
|
|
"Ctrl+E": function() {
|
|
location.href = $("#edit-link").attr('href');
|
|
},
|
|
// 删除
|
|
"Ctrl+D": function() {
|
|
$("#delete-link").click();
|
|
},
|
|
// 新建页面
|
|
"Ctrl+F1": function() {
|
|
location.href = $("#new-like").attr('href');
|
|
},
|
|
// 新建目录
|
|
"Ctrl+F2": function() {
|
|
location.href = $("#dir-like").attr('href');
|
|
}
|
|
};
|
|
if (!isMobile()) initKeys();
|
|
function initKeys() {
|
|
var $doc = $(document);
|
|
$.each(keyMap, function(key, fn) {
|
|
$doc.on('keydown', null, key, function(e) {
|
|
e.preventDefault();
|
|
fn();
|
|
return false;
|
|
});
|
|
});
|
|
}
|
|
|
|
$(".show_page_info").click(function(){
|
|
var page_id = $(this).data("page_id") ;
|
|
$.post(
|
|
DocConfig.server+"/api/page/info",
|
|
{"page_id":page_id},
|
|
function(data){
|
|
var html = "<p>最后编辑时间:"+data.data.addtime+"</p><p>编辑人:"+data.data.author_username+"</p>";
|
|
$.alert(html);
|
|
},
|
|
"json"
|
|
|
|
);
|
|
return false;
|
|
});
|
|
|
|
//删除页面
|
|
$("#delete-link").click(function(){
|
|
var page_id = $(this).data("page_id") ;
|
|
$.confirm(lang["confirm_to_delete"],{},function(){
|
|
$.post(
|
|
DocConfig.server+"/api/page/delete",
|
|
{"page_id":page_id},
|
|
function(data){
|
|
if (data.error_code == 0) {
|
|
$.alert(lang["delete_success"],function(){
|
|
window.location.reload();
|
|
});
|
|
|
|
}else{
|
|
if (data.error_message) {
|
|
$.alert(data.error_message);
|
|
}else{
|
|
$.alert(lang["delete_fail"]);
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
"json"
|
|
|
|
);
|
|
});
|
|
|
|
return false;
|
|
});
|
|
|
|
$("#delete-link").click(function(){
|
|
var page_id = $(this).data("page_id") ;
|
|
$.confirm(lang["confirm_to_delete"],{},function(){
|
|
$.post(
|
|
DocConfig.server+"/api/page/delete",
|
|
{"page_id":page_id},
|
|
function(data){
|
|
if (data.error_code == 0) {
|
|
$.alert(lang["delete_success"],function(){
|
|
window.location.reload();
|
|
});
|
|
|
|
}else{
|
|
if (data.error_message) {
|
|
$.alert(data.error_message);
|
|
}else{
|
|
$.alert(lang["delete_fail"]);
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
"json"
|
|
|
|
);
|
|
});
|
|
|
|
return false;
|
|
});
|
|
window.addEventListener('message', function(e){
|
|
if(e.origin != window.location.origin) return;
|
|
if (e.data.meessage_type != 'img_url') {
|
|
return ;
|
|
}
|
|
var img_url =e.data.img_url;
|
|
var json = {
|
|
"title": "", //相册标题
|
|
"id": 123, //相册id
|
|
"start": 0, //初始显示的图片序号,默认0
|
|
"data": [ //相册包含的图片,数组格式
|
|
{
|
|
"alt": "",
|
|
"pid": 666, //图片id
|
|
"src": img_url, //原图地址
|
|
"thumb": img_url //缩略图地址
|
|
}
|
|
]
|
|
}
|
|
$.photos({
|
|
photos: json
|
|
,anim: 5 //0-6的选择,指定弹出图片动画类型,默认随机(请注意,3.0之前的版本用shift参数)
|
|
});
|
|
}, false);
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|