第五章 工作流图形定义工具(九)-- 递归算法的使用_宪华_新浪博客.mht

来自「包括电子政务系统的架构设计、工作流引擎的设计与开发、工作流图形定义工具的设计与开」· MHT 代码 · 共 1,505 行 · 第 1/5 页

MHT
1,505
字号
=B8=8D=E5=8A=A0=E8=BD=BD Conf =E6=95=B0=E6=8D=AE=E4=BA=86=0A=
		/*=0A=
		if(scope.$uid !=3D "0000000000"){=0A=
			this.dwScript({=0A=
				url		: "http://uic.sinajs.cn/uic?type=3Dnick&uids=3D" + scope.$uid + =
"&varname=3Dnick",=0A=
				charset : "UTF-8"=0A=
			});=0A=
		}=0A=
		*/=0A=
		// =E5=A6=82=E6=9E=9C=E9=A1=B5=E9=9D=A2=E6=B2=A1=E5=AE=9A=E4=B9=89 =
loadPromote =E6=88=96=E8=80=85 loadPromote =E8=AE=BE=E7=BD=AE=E4=B8=BA =
true=EF=BC=8C=E8=BD=BD=E5=85=A5=E6=8E=A8=E5=B9=BF=E4=BD=8D JS=EF=BC=9B=0A=
		// =
=E5=A6=82=E6=9E=9C=E9=A1=B5=E9=9D=A2=E7=89=B9=E5=88=AB=E5=AE=9A=E4=B9=89 =
loadPromote =E4=B8=BA =
false=EF=BC=8C=E5=88=99=E4=B8=8D=E8=BD=BD=E5=85=A5=EF=BC=8C=E4=B8=BB=E8=A6=
=81=E6=98=AF=E9=92=88=E5=AF=B9=E5=B0=8F=E9=A1=B5=E9=9D=A2=0A=
		if(typeof loadPromote =3D=3D "undefined" || loadPromote =3D=3D true){=0A=
			this.dwScript({=0A=
				url		: scope.$BASEJS  + "common/js/config.js",=0A=
				charset : "UTF-8"=0A=
			});=0A=
		}=0A=
		if (__debug_mode) {=0A=
			this.dwScript({=0A=
				url: scope.$BASEJS + "sina/trace.js"=0A=
			});=0A=
		}=0A=
		else{=0A=
			window.trace =3D function () {};=0A=
		}=0A=
	},=0A=
	fixConfig : function(){=0A=
		if(typeof config =3D=3D "undefined"){=0A=
			trace("conf =E6=8E=A5=E5=8F=A3=E6=8C=82=E4=BA=86", "#F00");=0A=
			return false;=0A=
		}=0A=
		else{=0A=
			if(scope.cfgbak && scope.cfgbak.common){=0A=
				config.common =3D config.common || scope.cfgbak.common;=0A=
			}=0A=
			if (scope.cfgbak && scope.cfgbak.product) {=0A=
				config.product =3D config.product || scope.cfgbak.product;=0A=
			}=0A=
			//2009-03-05 fix config by dongguang=0A=
			if(config.common && typeof config.common.t =3D=3D "undefined"){=0A=
				if(config.common.head && scope.cfgbak.common.head){=0A=
					if(config.common.head.constructor!=3DObject &&  =
scope.cfgbak.common.head.constructor=3D=3DObject){=0A=
						config.common.head=3Dscope.cfgbak.common.head;=0A=
					}=0A=
				}=0A=
				if(config.common.bg && scope.cfgbak.common.bg){=0A=
					if(config.common.bg.constructor!=3DObject &&  =
scope.cfgbak.common.bg.constructor=3D=3DObject){=0A=
						config.common.bg=3Dscope.cfgbak.common.bg;=0A=
					}=0A=
				}=0A=
				if(typeof config.common.t =3D=3D "undefined" && =
scope.cfgbak.common.t){=0A=
					config.common.t =3D scope.cfgbak.common.t;=0A=
				}=0A=
			}=0A=
			if (config.component) {=0A=
				if (typeof config.component.c1 =3D=3D "undefined") {=0A=
					config.component =3D scope.cfgbak.component;=0A=
				}=0A=
			}=0A=
			if(scope.$PRODUCT_NAME =3D=3D "blog"){=0A=
				if(typeof(config.private) !=3D "undefined" && =
typeof(config.private.adver) !=3D "undefined"){=0A=
					var _bak_adver =3D config.private.adver || 0;=0A=
				}else{=0A=
				}=0A=
				this.fixObject(config,scope.cfgbak);=0A=
				if(typeof(config.private) !=3D "undefined" && =
typeof(config.private.adver) !=3D "undefined"){=0A=
					config.private.adver =3D _bak_adver;=0A=
				}else{=0A=
				}=0A=
			}=0A=
			if(typeof config.common =3D=3D"undefined" && typeof =
scope.cfgbak.common !=3D "undefined"){=0A=
				config.common =3D scope.cfgbak.common;=0A=
				return false;=0A=
			}=0A=
			return true;=0A=
		}=0A=
	},=0A=
    fixObject:function(srcObj,extendObj){=0A=
		for(var name in extendObj){=0A=
			if(srcObj[name]){=0A=
				if(srcObj[name].constructor=3D=3DObject){=0A=
						if(this.objIsEmpty(srcObj[name])){=0A=
							srcObj[name]=3DextendObj[name];=0A=
						}else{=0A=
							this.fixObject(srcObj[name],extendObj[name]);=0A=
						}=0A=
					}else{=0A=
						if(srcObj[name]=3D=3D"" && extendObj[name]!=3D""){=0A=
							srcObj[name]=3DextendObj[name];=0A=
						}=0A=
						if(srcObj[name].constructor=3D=3DArray && =
srcObj[name].length<=3D0){=0A=
							srcObj[name]=3DextendObj[name];=0A=
						}=0A=
					}=0A=
				}else{=0A=
					srcObj[name]=3DextendObj[name];=0A=
				}=0A=
			}=0A=
	},=0A=
    objIsEmpty:function(obj){=0A=
			var isTrue=3Dtrue;=0A=
			for(var name in obj){=0A=
				isTrue=3Dfalse;=0A=
				break;=0A=
			}=0A=
			return isTrue;=0A=
	},=0A=
	/**=0A=
	 * @desc add DOM onload Event=0A=
	 */=0A=
	addDOMLoadEvent : function (func) {=0A=
		var __load_events;=0A=
		var __load_timer;=0A=
		if (!__load_events) {=0A=
			var init =3D function () {=0A=
				// quit if this function has already been called=0A=
				if (arguments.callee.done) {=0A=
					return;=0A=
				}=0A=
				// flag this function so we don't do the same thing twice=0A=
				arguments.callee.done =3D true;=0A=
				// kill the timer=0A=
				if (__load_timer) {=0A=
					clearInterval(__load_timer);=0A=
					__load_timer =3D null;=0A=
				}=0A=
				// execute each function in the stack in the order they were added=0A=
				for (var i=3D0;i < __load_events.length;i++) {=0A=
					__load_events[i]();=0A=
				}=0A=
				__load_events =3D null;=0A=
			};=0A=
			// for Mozilla/Opera9=0A=
			if (document.addEventListener) {=0A=
				document.addEventListener("DOMContentLoaded", init, false);=0A=
			}=0A=
			// for Internet Explorer=0A=
			/*@cc_on @*/=0A=
			/*@if (@_win32)=0A=
				var domlen =3D document.getElementsByTagName("*").length;=0A=
				var domnum =3D 0;=0A=
				(function () {=0A=
					if(domnum !=3D domlen) {=0A=
						setTimeout(arguments.callee, 500);=0A=
					}=0A=
					else {=0A=
						setTimeout(init, 500);=0A=
					}=0A=
					domnum =3D domlen;=0A=
				})();=0A=
			@end @*/=0A=
			// for Safari=0A=
			if (/WebKit/i.test(navigator.userAgent)) { // sniff=0A=
				__load_timer =3D setInterval(function() {=0A=
					if (/loaded|complete/.test(document.readyState)) {=0A=
						init(); // call the onload handler=0A=
					}=0A=
				}, 10);=0A=
			}=0A=
			// for other browsers=0A=
			window.onload =3D init;=0A=
=0A=
			// create event function stack=0A=
			__load_events =3D [];=0A=
		}=0A=
		// add function to event stack=0A=
		__load_events.push(func);=0A=
	},=0A=
	$debug : function (){=0A=
		if (__debug_mode) {=0A=
			//trace("dev_mode : " + __dev_mode);=0A=
		}=0A=
	},=0A=
	loadCss : function(){=0A=
		var cssVer =3D (typeof config !=3D "undefined" ? config.product.c : =
"-1") + ".css";=0A=
		this.dwCSS({url : scope.$BASECSS + 'common/css/default.css?' + =
cssVer});=0A=
		this.dwCSS({url : scope.$BASECSS + =
scope.$PRODUCT_NAME+'/css/'+scope.$PRODUCT_NAME+'.css?' + cssVer});=0A=
		if (this.fixConfig() =3D=3D true) {=0A=
			trace(123);=0A=
			var cfg =3D config;=0A=
			var theme_id, tempArray =3D cfg.common.t.split("_");=0A=
			theme_id =3D (cfg.common.r =3D=3D 1) ?this.randomTheme(tempArray[0]) =
: cfg.common.t;=0A=
			this.dwCSS({url: scope.$BASECSS + 'tpl/' + theme_id + '/t.css?' + =
cssVer,id: "themeLink"});=0A=
			this.writeDiyCss();=0A=
		}=0A=
	},=0A=
	loadMiniCss : function (){=0A=
		var cssVer =3D (typeof config !=3D "undefined" ? config.product.c : =
"-1") + ".css";=0A=
		this.dwCSS({url : scope.$BASECSS + 'common/css/default.css?' + =
cssVer});=0A=
		this.dwCSS({url : scope.$BASECSS + =
scope.$PRODUCT_NAME+'/css/'+scope.$PRODUCT_NAME+'.css?' + cssVer});=0A=
	},=0A=
	writeDiyCss:function (){=0A=
//		var path =3D ($isAdmin) ? scope.imgPath : =
"http://static.photo.sina.com.cn/orignal/", diycss =3D "";=0A=
		var diycss =3D "";=0A=
		if(config.common.head && config.common.head.usepic * 1 =3D=3D 1 && =
typeof config.common.head.currpic !=3D "undefined"){=0A=
		=
//=E4=BF=AE=E6=94=B9=E8=AE=BF=E9=97=AE=E5=A4=B4=E5=9B=BE=E6=96=B9=E5=BC=8F=0A=
		var height=3DparseInt(config.common.head.height);=0A=
		var =
num=3DparseInt(config.common.head.currpic.substring(config.common.head.cu=
rrpic.length-2,config.common.head.currpic.length),16)%16+1;=0A=
		=0A=
		var =
path=3D$isAdmin?scope.imgPath:"http://static"+num+".photo.sina.com.cn/ori=
gnal/";=0A=
//		alert("path=3D"+path);=0A=
		var diycss =3D {id:"diy_banner"};=0A=
		diycss.styles =3D =
'.headpic950{background:url('+path+config.common.head.currpic+') '+=0A=
		scope.cssReapetConf[config.common.head.tiled] + ' ' + =
scope.cssPositionXConf[config.common.head.align_h] + ' ' + =
scope.cssPositionYConf[config.common.head.align_v] + ';height:' + height =
+ 'px}.headpic100{height:' +height+ 'px}.ntoptitle{height:' + height + =
'px}';=0A=
		this.dwCSS(diycss);=0A=
		}=0A=
		=0A=
		if(config.common.bg && config.common.bg.usepic * 1 =3D=3D 1 && typeof =
config.common.bg.currpic !=3D "undefined"){=0A=
			=0A=
			=
//=E8=83=8C=E6=99=AF=E5=9B=BE=E5=90=91=E4=B8=8B=E7=A7=BB=E5=8A=A8=E6=89=98=
=E7=9B=98=E9=AB=98=E5=BA=A6=E7=9A=84=E5=81=8F=E7=A7=BB=E9=87=8F=0A=
			var =
offsetY=3Dscope.cssPositionYConf[config.common.bg.align_v]=3D=3D"top"?"43=
px":scope.cssPositionYConf[config.common.bg.align_v];=0A=
			=0A=
		=
//=E4=BF=AE=E6=94=B9=E5=A4=B4=E5=9B=BE=E8=AE=BF=E9=97=AE=E6=96=B9=E5=BC=8F=0A=
			var =
num=3DparseInt(config.common.bg.currpic.substring(config.common.bg.currpi=
c.length-2,config.common.bg.currpic.length),16)%16+1;=0A=
			var =
path=3D$isAdmin?scope.imgPath:"http://static"+num+".photo.sina.com.cn/ori=
gnal/";=0A=
			var diycss =3D {id:"diy_bg"};=0A=
			diycss.styles =3D 'body{background-image:url(' + path + =
config.common.bg.currpic + ');background-repeat: ' + =0A=
			scope.cssReapetConf[config.common.bg.tiled] + '; =
background-position:' + scope.cssPositionXConf[config.common.bg.align_h] =
+ ' ' + offsetY + '} .sinaBottom =
{background:transparent;background-image:none;}';=0A=
			this.dwCSS(diycss);=0A=
		}=0A=
	},=0A=
	getPageId : function (){=0A=
		return scope.$pageid ;=0A=
	},=0A=
	loadResource : function(){=0A=
		this.fixConfig();=0A=
		var page =3D this.getPageId();=0A=
		var jsVer =3D (typeof config !=3D "undefined" ? config.product.j : =
"-1") + ".js";=0A=
		switch(__dev_mode){=0A=
			case 1:=0A=
				var url =3D scope.$BASEJS + 'bind/import.php?url=3Dconf/' + page + =
'.dev.js&product=3D' + scope.$PRODUCT_NAME + "&rnd=3D" + jsVer;=0A=
				break;=0A=
			case 2: =0A=
				var url =3D scope.$BASEJS + 'bind/import.php?url=3Dconf/' + page + =
'.dev.js&product=3D' + scope.$PRODUCT_NAME + "&decode=3D1&rnd=3D" + =
jsVer;=0A=
				break;=0A=
			case 3:=0A=
				var url =3D scope.$BASEJS + "bind/index.php?dev_path=3D/" + =
scope.$PRODUCT_NAME + "/js/conf/" + page + ".dev.js&dev_prefix=3D/" + =
scope.$PRODUCT_NAME + "&" + jsVer;=0A=
				break;=0A=
			case 4: =0A=
			default:=0A=
				var url =3D scope.$BASEJS + scope.$PRODUCT_NAME + "/js/" + page + =
".js?" + jsVer;=0A=
				break;=0A=
		}=0A=
		this.dwScript({url : url});			=0A=
	},=0A=
	runMain : function () 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?