Namespace.register("U.CD.Url"); //用户登录后的js文件。 //-----------------------------------------------------------------------------引导执行--------------------------------------------------------------------- U.CD.Url.Init = function () { //获取传参,如果有#!等字符,执行url重写。否则,执行一般处理 var _UR = U.M.GetUF(); //获取传参 if (_UR) { U.CD.Url.Param(_UR); } else { //如果没有url重写,显示首页介绍。 //显示示例项目,按道理该将此函数放在上面一个函数里面以实现任意窗口大小一致。没时间了,以后再说 //setTimeout(function () { U.CD.SL.Init(); }, 1000); //我还奇怪了,Chrome居然要延迟才能从nodejs中获取数据,太奇怪! } } //url参数拆分 U.CD.Url.Param = function (r) { //判断是1473主项目的url重载还是本项目的url重载,Chrome不能很好支持此对象 //if (arguments.caller.callee !== U.CD.Init) { U.CD.Url.M(); return; } if (!r) return; if (!U.Ut.isString(r)) { r = decodeURI(r[1]).split("|") || r; //第一个为项目id,第二个为用户id } U.CD.Url.Load(r); } //重写主项目url重载,现在是完全去掉了主项目的内容,以后再修改 //去MySql获取该项目信息。从而得到用户信息 U.CD.Url.Load = function (r) { // if (!U.UF.S.Guid.test(r[1])) return; //如果r[1]为""或者不是Guid,则退出 //mode为接受参数的标志。第一个参数为后台增删查改类型,后面参数为实际传递的参数。//选取数据?其他,还未登录,不需要选取数据,以后再看 if (U.UF.S.Guid.test(r[1])) { var _ld = U.CD.O.Loading("正在装载该示例数据,请稍后。。。。。。"); U.ACD.Request(U.CD.AjaxUrl, (["Select_OneUserByID", r[1], U.CD.USLang]), U.CD.RT.LUDataAsyn, ([_ld, r[0]])); //去mongodb获取该用户所有数据,同时传递项目id做选中操作。 document.location.hash = "#!/" + r[0] + "|" + r[1]; } else if (U.UF.S.Guid.test(r[0])) { var _ld = U.CD.O.Loading("正在装载该示例数据,请稍后。。。。。。"); U.ACD.Request(U.CD.AjaxUrl, (["Select_File", r[0]]), U.CD.RT.LUDataAsyn, ([_ld, r[0]])); //去mongodb获取该用户所有数据,同时传递项目id做选中操作。 document.location.hash = "#!/" + r[0]; // encodeURI(r[0] + "|" + r[1]); } } //执行屏蔽操作,屏蔽掉一些按钮。 U.CD.Url.ForbUser = function () { $("#UCD_TOP_L_BC")[0].style.display = "none"; //屏蔽掉保存按钮 // $("#UCD_TOP_AL")[0].innerHTML = "无操作权限!我要注册"; //给用户提示正在查看其他人的项目 //$("#UCD_TOP_AL")[0].style.backgroundColor = "white"; //单击切换选项时,未登录弹出登录界面,登录后切换回自己项目。 /*$("#UCD_TOP_AL")[0].onclick = function () { var u = U.CD.U.GLID(); if (u) { U.ACD.Request(U.CD.AjaxUrl, (["Select_OneUserByID", u.userid, U.CD.USLang]), U.CD.RT.LUDataAsyn, ([""])); U.CD.Url.AllowUser(); } else { U.CD.U.LoginApply() } };*/ } //登录后开启屏蔽掉的选项 U.CD.Url.AllowUser = function () { $("#UCD_TOP_L_BC")[0].style.display = "block"; //登录后允许保存按钮 //$("#UCD_TOP_AL")[0].innerHTML = ""; //给用户提示正在查看其他人的项目 // $("#UCD_TOP_AL")[0].style.backgroundColor = "rgb(0,136,204)"; } //-------------------------------------------------------------------------------辅助函数-------------------------------------------------------------------- //----------------------------------------暂时未使用的函数-------------------------------------- //主引导函数 U.CD.Url.UrlGuide = function (r) { var r = U.M.GetUF(); //获取传参 if (r && r[1] && r[1].length > 1) { //U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Select_One", _UR[1]]), U.CD.Url.AsynUrlGuide, ([""])); r = decodeURI(r[1]).split("|"); //mode为接受参数的标志。第一个参数为后台增删查改类型,后面参数为实际传递的参数。//选取数据?其他,还未登录,不需要选取数据,以后再看 var _ld = U.CD.O.Loading("正在装载该示例数据,请稍后。。。。。。"); U.ACD.Request(U.CD.AjaxUrl, (["Select_OneUserByID", r[1], U.CD.USLang]), U.CD.RT.LUDataAsyn, ([_ld, r[0]])); //去mongodb获取该用户所有数据,同时传递项目id做选中操作。 // if (_UR[2]) { // var _CID = _UR[3] || ""; // if (_UR[1] == "pb" || _UR[1] == "tg" || _UR[1] == "file") { U.CD.Url.Guide(_UR[1], null, (_CID == "" ? _UR[2] : "")); } // else { U.A.Request("UseStudioManage.GetUserIdByUsername", ([_UR[2]]), U.CD.Url.AsynUrlGuide, (["", _UR[1], _CID])); } //异步处理 // } // else if (_UR[1] != "") { U.CD.Url.Guide(_UR[1]); } } } //执行引导 U.CD.Url.Guide = function (TF, UID, CID) { var _TF = true; switch (TF) { //用户文件夹索引 case "disk": case "photo": case "video": CID = TF == "disk" ? US.DG : (TF == "photo" ? US.PG : US.VG); //网盘位置ID U.M.divdoubleClick("UseStudioUserDiskDiv", CID, UID, null); //查看Disk对应的位置 break; //文件索引 case "file": U.Dk.GetDsikFID(CID); break; case "Office": break; default: break; } } //-------------------------------------------------------------------------------辅助函数-------------------------------------------------------------------- //改变地址栏,改变hash不会刷新页面 U.CD.Url.UrlWrite = function (_url, _title) { document.location.hash = "!/" + _url; document.title = _title + " - 云操作系统"; }