U.CD.SL.js 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512
  1. Namespace.register("U.CD.SL");
  2. //注册示例项目区域
  3. U.CD.SL.MySQL = "mysql";
  4. //后台据此判断是到mongodb还是mysql。type是命令类型
  5. U.CD.SL.Data = [];
  6. //保存示例中的数据,避免数据库频繁刷新。
  7. U.CD.SL.PrePD = null;
  8. //保存了示例项目中评论和大图2个按钮,在onmouseover中切换状态。
  9. U.CD.SL.W = null
  10. //示例项目
  11. U.CD.SL.header_close = function () {
  12. $('#cgal_box')[0].remove();
  13. }
  14. U.CD.SL.Init = function () {
  15. $('.UCD_SL_N').length != 0 ? $('.UCD_SL_N').parentg().parentg().parentg().remove() : ''
  16. U.UI.Form({
  17. title: '成功案例',
  18. style: {
  19. 'overflow-y': 'none',
  20. 'overflow-x': 'nonw',
  21. width: 1010,
  22. height: 700
  23. },
  24. content: '<div class="UCD_SL_N" onload="console.log(\'loaded\')"> <div class="UCD_SL_N_T"> <div class="UCD_SL_N_T_B"> <img class="UCD_SL_N_T_B_I" alt="http://www.1473.cn" src="http://www.1473.cn/img/cloudlogo.png" /> </div> <div class="UCD_SL_CD"> <div class="UCD_SL_CD_C" onclick="U.CD.SL.Type(\'JH\')"> 精品区域 </div> <div class="UCD_SL_CD_C" onclick="U.CD.SL.Type(\'TW\')"> 提问区域 </div> <div class="UCD_SL_CD_C" onclick="U.CD.SL.Type(\'ZY\')"> 作业区域 </div> <div class="UCD_SL_CD_C" onclick="U.CD.SL.Type(\'KJ\')"> 控件区域 </div> <div class="UCD_SL_CD_C" onclick="U.CD.SL.PubPro()"> 发布项目 </div> <div class="UCD_SL_CD_S"> <input type="text" /> <div onclick="U.CD.SL.Sou(this)" class=""></div> </div> </div> <div class="UCD_SL_N_T_D"> <div style="margin-top:5px;"> <img style="float: left;margin-right: 5px;" alt="http://www.1473.cn" width="64" height="64" src="http://www.1473.cn/img/qqew.jpg"onclick="window.open(\'http://www.1473.cn\')"/> <div style="float: left; width: 80px; margin-top: 5px;"> <a target="_blank" href="http://shang.qq.com/wpa/qunwpa?idkey=bd0da8199b3ba73a4812241efaba9b444b8cb7646016a13a7d31730c9c09e0a8"> <img border="0" src="http://pub.idqqimg.com/wpa/images/group.png" alt="javascript高手群" title="javascript高手群"></a> <div style="width: 230px; height: 25px;margin-top:3px"> <wb:follow-button uid="3934163141" type="red_1" width="67" height="24"> </wb:follow-button> </div> </div> </div> </div> </div> <div class="UCD_SL_NN"> <div id="UCD_SL_N_N"> </div> <div class="UCD_SL_NN_B"> </div> </div> </div>'
  25. })
  26. if (U.CD.SL.W)
  27. U.CD.SL.W.PSO.remove()
  28. // if (!$("#UCD_SL_N_F_R")[0].childNodes.length) U.D.AD.BDGG($("#UCD_SL_N_F_R")[0], '897767'); //百度广告,外部js加载不成功,导致本网站js不能运行,奇怪了
  29. //暂时做几个功能,以后扩充。
  30. //$('#cgal_box').remove();
  31. //var cgal_box = $$('div', { 'class': 'cgal_box', 'id': 'cgal_box' }, document.body); //成功案例 box
  32. //var cgal_header = $$('div', { 'class': 'cgal_header', 'onmousedown': "U.M.StopBubble();U.D.DragMouseDown(this.parentNode);" }, cgal_box); //成功案例 头部
  33. //$$('p', { 'class': 'header_title', 'innerHTML': '成功案例' }, cgal_header) //标题
  34. //$$('div', { 'class': 'header_close', 'innerHTML': 'X', onclick: [U.CD.SL.header_close, ([])] }, cgal_header) //关闭图标
  35. //$$('div', { 'class': 'box_content', 'id': 'box_content' }, cgal_box) //中部
  36. //var conetent_top_b = $$('div', { 'class': 'conetent_top_b' }, $('#box_content')); //上面那个背景
  37. //$$('img', { 'src': 'http://www.1473.cn/img/cloudlogo.png' }, conetent_top_b) //logo
  38. //var option_div = $$('div', { 'class': 'option_div' }, conetent_top_b) //选项卡
  39. //$$('div', { 'class': 'header_li', 'innerHTML': '精品区域', onclick: [U.CD.SL.Type, (['JH'])] }, option_div); //选项
  40. //$$('div', { 'class': 'header_li', 'innerHTML': '提问区域', onclick: [U.CD.SL.Type, (['TW'])] }, option_div); //选项
  41. //$$('div', { 'class': 'header_li', 'innerHTML': '作业区域', onclick: [U.CD.SL.Type, (['ZY'])] }, option_div); //选项
  42. //$$('div', { 'class': 'header_li', 'innerHTML': '控件区域', onclick: [U.CD.SL.Type, (['KJ'])] }, option_div); //选项
  43. //$$('div', { 'class': 'header_li', 'innerHTML': '发布项目', onclick: [U.CD.SL.Type, (['FB'])] }, option_div); //选项
  44. //var search_div = $$('div', { 'class': 'search_div' }, option_div); //输入框div
  45. //$$('input', { 'class': 'search_' }, search_div) //输入框
  46. //var s_img = $$('img', { 'src': 'img/search.png', 'class': 'search_img' }, search_div) //搜索图标
  47. //s_img.onclick = function () {
  48. // U.CD.SL.Sou(this);
  49. //}
  50. //var talk_div = $$('div', { 'class': 'talk_div' }, conetent_top_b)
  51. //$$('img', { 'src': 'http://www.1473.cn/img/qqew.jpg', onclick: "window.open('http://www.1473.cn')" }, talk_div)
  52. //$$('img', { 'src': 'img/in_wb.png', onclick: "window.open('http://widget.weibo.com/dialog/follow.php?fuid=3934163141&refer=c.1473.cn&language=zh_cn&type=widget_page&vsrc=app_followbutton&backurl=http%3A%2F%2Fc.1473.cn%2F&rnd=1479695872003')", 'id': 'followBtn' }, talk_div)
  53. //$$('img', { 'src': 'img/in_qq.png', onclick: "window.open('http://shang.qq.com/wpa/qunwpa?idkey=bd0da8199b3ba73a4812241efaba9b444b8cb7646016a13a7d31730c9c09e0a8')" }, talk_div)
  54. //var _lans = $("#UCD_SL_N_F")[0].getElementsByTagName("div"), i;
  55. //for (i = 0; i < _lans.length; i++) { if (_lans[i].innerHTML != "HTML5语言") _lans[i].onclick = U.M.apply(this, [[alert, (["有空看看http://www.1473.cn,有惊喜!"])]]) }
  56. //var _s = $("#UCD_SL")[0];
  57. ////_s.style.width = document.body.clientWidth * 0.67 + "px"; //设置展示区域宽度
  58. //_s.style.width = "1000px";
  59. //_s.style.left = (document.body.clientWidth - parseInt(_s.style.width)) / 2 + "px"; //宽度居中
  60. //_s.style.height = document.body.clientHeight - 20 - 20 - 80 + "px"; //减去头部和尾部高度
  61. //_s.style.display = "block"; //显示或隐藏
  62. //$("#UCD_SL_N_N")[0].style.height = _s.clientHeight - 100 + "px";
  63. //选取数据库所有数据,参数1表示滚动加载的页数,以后再修正为滚动加载,数据库默认1次加载500条。
  64. //为了避免频繁加载,结果需要保存到全局变量中。
  65. if (!U.CD.SL.Data[U.CD.USLang]) {
  66. //try catch不成功?以后再搞
  67. try {
  68. U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Select_All", 1, U.CD.USLang]), U.CD.SL.Display, ([""]));
  69. } catch (e) {
  70. alert("数据库连接暂时不成功,但不影响客户端操作");
  71. }
  72. } else {
  73. //显示响应数据
  74. $("#UCD_SL_N_N")[0].innerHTML = "";
  75. U.CD.SL.DisFlow_cg(U.CD.SL.Data[U.CD.USLang]);
  76. }
  77. }
  78. //弹出切换语言窗口
  79. U.CD.SL.L = function () {
  80. $('#UCD_L').length != 0 ? $('.UCD_SL_N').parentg().parentg().parentg().remove() : ''
  81. U.UI.Form({
  82. title: '编程语言切换面板',
  83. style: {
  84. 'overflow': 'none',
  85. width: 537,
  86. height: 300
  87. },
  88. content: ' <div id="UCD_L"> <div class="UCD_L_C"> <div class="UCD_L_C_T"> 无需安装linux环境!无需复杂的配置!瞬间切换语言环境!</div> <div class="UCD_L_C_L"> <div onclick="U.CD.CL.Change(\'C\')"> C语言</div> <div onclick="U.CD.CL.Change(\'PHP\')"> PHP</div> <div onclick="U.CD.CL.Change(\'Python\')"> Python</div> <div onclick="U.CD.CL.Change(\'Nodejs\')"> Nodejs</div> <div onclick="U.CD.CL.Change(\'Ruby\')"> Ruby</div> <div onclick="U.CD.CL.Change(\'Perl\')"> Perl</div> <div onclick="U.CD.CL.Change(\'Lisp\')"> Lisp</div> <div onclick="U.CD.CL.Change(\'Net\')"> Net</div> <div onclick="U.CD.CL.Change(\'Html5\')"> 前端</div> </div> </div> </div>'
  89. })
  90. //var _b = $("#UCD_L_C")[0];
  91. //_b.style.width = "537px";
  92. //_b.style.left = (document.body.clientWidth - parseInt(_b.style.width)) / 2 + "px"; //宽度居中
  93. // _b.style.height = document.body.clientHeight - 20 - 20 - 430 + "px"; //减去头部和尾部高度
  94. //_b.style.display = "block"; //显示或隐藏
  95. }
  96. //展示数据库中发布的项目
  97. U.CD.SL.Display = function (r) {
  98. if (r.value == "" || r.value[0] == undefined) {
  99. return;
  100. }
  101. U.CD.SL.Data[U.CD.USLang] = r.value[0];
  102. //获取mysql数据库返回的数据。
  103. U.CD.SL.DisFlow_cg(r.value[0]);
  104. //U.CD.SL.cgal(r.value[0]);
  105. }
  106. //展示数据
  107. U.CD.SL.DisFlow_cg = function (r) {
  108. var _nr = $("#UCD_SL_N_N")[0], i, _l;
  109. //_l流式布局个数定义
  110. var userId = U.M.Cookies.get("usestudiosso") && U.M.Cookies.get("usestudiosso").split("&")[0].split("userid=").pop();
  111. //当前登录用户的id
  112. _nr.innerHTML = "";
  113. //首先清空上一次数据
  114. if (!r.length)
  115. _nr.innerHTML = "<div class='UCD_SL_TS' onclick='U.CD.U.LoginApply()'>暂时无人添加示例,您可以来添加哦,分享是一种美德,点此分享!</div>";
  116. _l = U.CD.SL.Flowlayout(_nr, 140, 7);
  117. //返回列数,如果已经做了流式布局,下一次进来不再调用此函数。
  118. var a = r, len = a.length, tp;
  119. for (i = 0; i < len; i++) {
  120. for (j = i; j < len; j++) {
  121. if (Date.parse(a[i].CreateDate) < Date.parse(a[j].CreateDate)) {
  122. //按时间排序 降序
  123. tp = a[i];
  124. a[i] = a[j];
  125. a[j] = tp;
  126. }
  127. }
  128. }
  129. r = a;
  130. for (i = 0; i < r.length; i++) {
  131. var _p = $("#UCD_SL_N_N").Child()[i % _l];
  132. //找到流式布局点,追加相应元素,这是技巧
  133. //var _src = "http://www.1473.cn/img/usestudiobackgroudnimage/beta1/bg1(1).jpg";
  134. var _a = $$("div", {
  135. "className": "UCD_SL_N_N_C",
  136. "onmouseover": [[U.CD.SL.DisReply, (["retElement", r[i]])]],
  137. "onclick": [[U.CD.SL.DisOther, ([r[i]])]]
  138. }, _p);
  139. //单个样式
  140. $$("img", {
  141. "className": "UCD_SL_N_N_C_I",
  142. "src": r[i].DImg,
  143. "onerror": [U.M.ImgError, (["this", 1])]
  144. }, _a);
  145. //图像样式
  146. var _b = $$("div", {
  147. "className": "UCD_SL_N_N_C_RD"
  148. }, _a);
  149. //评论,大图样式
  150. $$("div", {
  151. "className": "UCD_SL_N_N_C_R",
  152. "onclick": [[U.M.StopBubble], [U.CD.OU.Reply, ([r[i].DID])]]
  153. }, _b);
  154. //评论样式
  155. //如果是管理员账号,则添加一个发布审核按钮。
  156. if (U.CD.U.IsUSelf().userid == "baa5e5ae-0fc2-4eab-ba44-cd993d6ce5a1")
  157. $$("div", {
  158. "className": "UCD_SL_N_N_C_S",
  159. "innerHTML": "审核",
  160. "onclick": [[U.M.StopBubble], [U.CD.SL.VerConfirm, ([r[i]])]]
  161. }, _b);
  162. //评论样式
  163. $$("div", {
  164. "className": "UCD_SL_N_N_C_D",
  165. "onclick": [[U.M.StopBubble], [U.Img.Create, ([{
  166. 'Img': r[i].DImg,
  167. 'Thm': r[i].DSmallImg
  168. }])]]
  169. }, _b);
  170. //大图样式
  171. r[i].DBrief = r[i].DBrief.replace(/\r\n/g, '<br/>');
  172. //换行符号处理
  173. $$("div", {
  174. "className": "UCD_SL_N_N_C_T",
  175. "title": r[i].DName,
  176. "innerHTML": r[i].DName
  177. }, _a);
  178. //标题样式
  179. $$("div", {
  180. "className": "UCD_SL_N_N_C_N",
  181. "innerHTML": r[i].DBrief
  182. }, _a);
  183. //内容样式
  184. // if (userId && (userId == r[i].UserID)) {
  185. //只有用户自己的案例才可以修改
  186. $$("div", {
  187. "className": "UCD_SL_N_N_C_XG",
  188. "onclick": [[U.M.StopBubble], [U.CD.SL.Publish, [null, US.userinfo.UserId, r[i]]]]
  189. }, _b);
  190. //修改
  191. $$("div", {
  192. "className": "UCD_SL_N_N_C_SC",
  193. "onclick": [[U.M.StopBubble], [function (id, div) {
  194. //删除的函数
  195. U.UI.Confirm("确定要删除吗?", [function (id, div) {
  196. //confirm
  197. var rt = U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Develop_delete_example", id]), 0, ([""]));
  198. //删除数据库案例
  199. if (rt.value.affectedRows == 1) {
  200. //影响行数
  201. $(div).remove();
  202. //把div删除了
  203. U.Alert("删除成功!");
  204. //弹个框
  205. }
  206. }
  207. , ([id, div])], [function () { }
  208. , ([])]);
  209. }
  210. , [r[i].DID, _a]]]//id和div传进去
  211. }, _b);
  212. //删除
  213. // }
  214. }
  215. }
  216. //精华,提问,等切换区域
  217. U.CD.SL.Type = function (t) {
  218. //如果前台有数据,切换时筛选数据
  219. var d = U.CD.SL.Data[U.CD.USLang], n = d.length, i, _r = [];
  220. if (d) {
  221. for (i = 0; i < n; i++) {
  222. if (d[i].DType == t)
  223. _r.push(d[i]);
  224. }
  225. }
  226. // U.CD.SL.cgal(_r);
  227. U.CD.SL.DisFlow_cg(_r);
  228. }
  229. //搜索函数
  230. U.CD.SL.Sou = function (o) {
  231. var s = o.parentNode.getElementsByTagName("input")[0].value;
  232. var d = U.CD.SL.Data[U.CD.USLang], n = d.length, i, _r = [];
  233. if (d) {
  234. for (i = 0; i < n; i++) {
  235. if (d[i].DName.indexOf(s) > -1)
  236. _r.push(d[i]);
  237. }
  238. }
  239. //U.CD.SL.cgal(_r);
  240. U.CD.SL.DisFlow_cg(_r);
  241. }
  242. //鼠标移动到相关条目时弹出查看该项目评论信息。
  243. U.CD.SL.DisReply = function (SO, r) {
  244. //给SO添加2个div,用来查看评论和大图
  245. var _s, i;
  246. if (U.CD.SL.PrePD) {
  247. if (U.CD.SL.PrePD.childNodes[1]) {
  248. _s = U.CD.SL.PrePD.childNodes[1].childNodes;
  249. for (i = 0; i < _s.length; i++) {
  250. _s[i].style.display = "none";
  251. }
  252. }
  253. }
  254. _s = SO.childNodes[1].childNodes;
  255. for (i = 0; i < _s.length; i++) {
  256. _s[i].style.display = "block";
  257. }
  258. U.CD.SL.PrePD = SO;
  259. }
  260. //弹出审核确认取消框。
  261. U.CD.SL.VerConfirm = function (r) {
  262. U.UI.Confirm("你确定取消<span style='color:blue;'>" + r.DName + "</span>在首页中的显示吗?", [U.CD.SL.Verify, ([r])], "");
  263. }
  264. //去数据库通过审核,展示在前台供其他用户查看项目。
  265. U.CD.SL.Verify = function (r) {
  266. U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Add_Develop", r.DID, r.UserID, r.UserName, r.DName, r.DBrief, r.DSmallImg, r.DImg, r.DPrice, "0"]), U.CD.SL.VerifyAsyn, ([""]));
  267. }
  268. //数据库是否成功
  269. U.CD.SL.VerifyAsyn = function (r) {
  270. r.value[0].length ? alert("审核成功") : alert("审核失败");
  271. }
  272. //展示其他人的项目。
  273. U.CD.SL.DisOther = function (u) {
  274. //window.open("http://c.1473.cn/" + "#!/" + encodeURI(u.DID + "|" + u.UserID));//采用新窗口模式
  275. //U.CD.Url.Param(["#!", u.DID + "|" + u.UserID]);
  276. $("#UCD_SL")[0].style.display = "none";
  277. U.CD.Url.Param([u.DID + "|" + u.UserID]);
  278. //采用本窗口加载模式
  279. }
  280. //流式布局函数,封装起来,以后给UC。参数1为大的元素,参数2为小元素的宽度,各个小元素的margin,此函数返回值为列数
  281. U.CD.SL.Flowlayout = function (NR, W, M) {
  282. // var _a = NR.clientWidth, i; //大容器宽度
  283. //var _num = Math.floor(_a / (W + 2 * M)); //小元素宽度
  284. //添加列数到大元素
  285. // for (i = 0; i < _num; i++) {
  286. // $$("div", { "style": { "width": W + "px", "margin": M + "px" }, "className": "UCD_SL_N_N_L" }, NR); //追加流式布局的包容器
  287. // }
  288. // return _num;
  289. var _a = NR.clientWidth, i;
  290. //大容器宽度
  291. var _num = Math.floor(_a / (W + 2 * M));
  292. //小元素宽度
  293. //添加列数到大元素
  294. for (i = 0; i < 5; i++) {
  295. $$("div", {
  296. "style": {
  297. "width": "185px",
  298. "margin-right": "10px"
  299. },
  300. "className": "UCD_SL_N_N_L"
  301. }, NR);
  302. //追加流式布局的包容器
  303. }
  304. return _num;
  305. }
  306. //-------------------------------------------------------------------发布项目到首页区域-----------------------------------------------------
  307. //发布一个项目,会添加到示例项目区域。
  308. U.CD.SL.Publish = function (SO, userid, node) {
  309. //到数据库查询是否已经发不过。
  310. U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Select_One", node.DID]), U.CD.SL.ISPub, (["", SO, userid, node]));
  311. }
  312. //--------------------------------------UJ框架RadioList控件-------------------------------------------------
  313. //S是一个json,表示多个Checkbox的内容,D表示需要生成checkbox的父亲元素,比如一个div
  314. //调用方法。//var ra = U.UI.RadioList($("#UCD_FB_N_CK_CK")[0], { "TW": "提问", "ZY": "作业", "JH": "精华", "CT": "控件" });
  315. //取值方法 ra.value();可以获取用户选择的值。
  316. U.UI.RadioList = function (D, S) {
  317. var T = new U.UI.RadioListT(D, S);
  318. T.init();
  319. //初始化单选按钮组。
  320. return T;
  321. }
  322. U.UI.RadioListT = function (D, S) {
  323. if (U.M.GetType(S) != "Object")
  324. return;
  325. //如果不是数组,返回
  326. D.innerHTML = "";
  327. //清空以前的
  328. this.D = D;
  329. this.S = S;
  330. this.A = [];
  331. //所有checkbox元素,用于选择, //返回选中的Checkbox。
  332. }
  333. U.UI.RadioListT.prototype = {
  334. init: function () {
  335. var S = this.S, p, c;
  336. //得到Checkbox长度,p为span,c为checkbox
  337. for (var s in S) {
  338. if (S.hasOwnProperty(s)) {
  339. p = $$("div", {
  340. "innerHTML": S[s],
  341. "style": {
  342. "cssText": "margin-left:5px;"
  343. }
  344. }, this.D);
  345. c = $$("input", {
  346. "type": "radio",
  347. "value": s,
  348. "onclick": [this.radiochecked, ([this, "retElement"])]
  349. }, p);
  350. this.A.push(c);
  351. }
  352. }
  353. this.A[0].checked = true;
  354. },
  355. //选中函数,其他全部不选中,单击的元素选中。r为保证作用域,"retElement"表示radio元素本身。
  356. radiochecked: function (r, o) {
  357. var i;
  358. for (i = 0; i < r.A.length; i++)
  359. r.A[i].checked = false;
  360. o.checked = true;
  361. },
  362. //返回被选中的值
  363. value: function () {
  364. var i;
  365. for (i = 0; i < this.A.length; i++)
  366. if (this.A[i].checked == true)
  367. return this.A[i].value;
  368. return this.A[0].value;
  369. //默认返回第一个元素
  370. }
  371. }
  372. //检测以前是否发布过的异步函数
  373. U.CD.SL.ISPub = function (r) {
  374. //清空以前数据
  375. var SO = r.context[1]
  376. , userid = r.context[2]
  377. , node = r.context[3];
  378. //得到传递的参数
  379. var _r = r.value[0];
  380. //得到数据库的值。
  381. //如果没获取到数据,表示没发不过,所有选项清空,否则,表示修改,把数据库的值赋予各个选项。
  382. if (_r.length == 0) {
  383. $("#UCD_FB_N_N_Name")[0].value = "",
  384. $("#UCD_FB_N_N_T")[0].value = "",
  385. $("#UCD_FB_NR_IMG")[0].value = "",
  386. $("#UCD_FB_N_N_P")[0].value = "";
  387. } else {
  388. _r = _r[0];
  389. $("#UCD_FB_N_N_Name")[0].value = _r.DName,
  390. $("#UCD_FB_N_N_T")[0].value = _r.DBrief,
  391. $("#UCD_FB_NR_IMG")[0].src = _r.DSmallImg,
  392. $("#UCD_FB_N_N_P")[0].value = _r.DPrice;
  393. }
  394. var _UDUP = $("#UCD_FB")[0];
  395. //获取命令窗口
  396. //var _NR = $("#UCD_FB_N_N")[0]; _NR.innerHTML = ""; //获取内容窗口
  397. if (_r.DName)
  398. $("#UCD_FB_N_T")[0].innerHTML = "您已经发不过" + node.Name + "了?但还可以修改相应信息";
  399. else
  400. $("#UCD_FB_N_T")[0].innerHTML = "您将要发布" + node.Name + "吗?此项目将对所有人可见!";
  401. $("#UCD_FB_N_N_Name")[0].value = node.Name;
  402. //给标题赋值
  403. //生成CheckBoxList
  404. var ra = U.UI.RadioList($("#UCD_FB_N_CK_CK")[0], U.CD.DType);
  405. $("#UCD_FB_NR_IMG")[0].onclick = U.M.apply(this, [[U.M.StopBubble], [U.Img.Create, [([{
  406. 'Thm': _r.DSmallImg,
  407. 'Img': _r.DImg
  408. }])]]]);
  409. $("#UCD_FB_N_N_N_S")[0].onclick = U.M.apply(this, [[U.CD.SL.PSubmit, ([SO, userid, node, ra])]]);
  410. //给提交按钮赋值
  411. _UDUP.style.display = "block";
  412. U.UI.Form({
  413. id: "UCD_FB_Pop",
  414. title: '发布项目窗口',
  415. style: {
  416. 'overflow-y': 'none',
  417. 'overflow-x': 'nonw',
  418. width: 500,
  419. height: 500
  420. },
  421. //bst: _UDUP
  422. content: _UDUP
  423. })
  424. //onclick直接响应
  425. }
  426. //单击发布按钮,发布到mysql
  427. U.CD.SL.PSubmit = function (SO, userid, node, ra) {
  428. var _c = U.CD.U.IsUSelf();
  429. //获取用户登录Cookie. _c.userid _c.username _c.Loginid
  430. if (!_c) {
  431. U.CD.U.LoginApply();
  432. return;
  433. }
  434. //如果未登录,弹出登录窗口。
  435. //_n名字 _b简介 -i图片 _p价格。
  436. var _n = $("#UCD_FB_N_N_Name")[0].value
  437. , _b = $("#UCD_FB_N_N_T")[0].value;
  438. var _s = $("#UCD_FB_NR_IMG")[0].title;
  439. _i = $("#UCD_FB_NR_IMG")[0].src,
  440. _p = $("#UCD_FB_N_N_P")[0].value;
  441. var username = _c.username;
  442. //cookie中的用户名
  443. //id为项目id,存储在mongodb中,
  444. //提交到数据库,ra.value()表示提交到精华区域、学习区域的类型, U.CD.USLang表示提交到哪一个语言。"1"表示发布到首页。
  445. U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Add_Develop", node.ID, userid, username, _n, _b, _s, _i, _p, "1", U.CD.USLang, ra.value()]), U.CD.SL.PSubAsyn, ([""]));
  446. }
  447. //发布成功后异步函数。
  448. U.CD.SL.PSubAsyn = function (r) {
  449. r.value[0].length ? alert("发布项目成功") : alert("发布项目失败");
  450. }
  451. //新用户发布自己的项目
  452. U.CD.SL.PubPro = function () {
  453. var _c = U.CD.U.IsUSelf();
  454. //获取用户登录Cookie. _c.userid _c.username _c.Loginid
  455. if (!_c) {
  456. U.CD.U.LoginApply();
  457. return;
  458. }
  459. //如果未登录,弹出登录窗口。
  460. alert("请在右边项目区域单击操作图标,发布自己的项目,谢谢!!!!");
  461. //U.CD.RT.CProject(_c.userid, U.CD.U.CUser.TNode[0]);
  462. //U.CD.RT.Panel();
  463. }
  464. //切换各种语言示例程序
  465. U.CD.SL.LangSL = function (l) {
  466. U.CD.USLang = l;
  467. //更改当前语言
  468. U.CD.CL.Init(U.CD.USLang);
  469. //重新初始化左边语言栏目。
  470. //U.CD.SL.Init();
  471. //调用示例首页程序。
  472. $("#UCD_TT_T_N")[0].innerHTML = U.CD.USLang + "语言";
  473. }