晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/akaindir/www/crm/libraries/jquery/gantt/libs/JST/ |
Upload File : |
$.fn.loadTemplates = function() {
$.JST.loadTemplates($(this));
return this;
};
$.JST = {
_templates: new Object(),
_decorators:new Object(),
loadTemplates: function(elems) {
elems.each(function() {
$(this).find(".__template__").each(function() {
var tmpl = $(this);
var type = tmpl.attr("type");
//template may be inside <!-- ... --> or not in case of ajax loaded templates
if (tmpl.get(0).firstChild.nodeType == 8) // 8==comment
var templateBody = tmpl.get(0).firstChild.nodeValue; // this is inside the comment
else
var templateBody = tmpl.html(); // this is the whole template
if (!templateBody.match(/##\w+##/)) { // is Resig' style? e.g. (#=id#) or (# ...some javascript code 'obj' is the alias for the object #)
var strFunc =
"var p=[],print=function(){p.push.apply(p,arguments);};" +
"with(obj){p.push('" +
templateBody.replace(/[\r\t\n]/g, " ")
.replace(/'(?=[^#]*#\))/g, "\t")
.split("'").join("\\'")
.split("\t").join("'")
.replace(/\(#=(.+?)#\)/g, "',$1,'")
.split("(#").join("');")
.split("#)").join("p.push('")
+ "');}return p.join('');";
try {
$.JST._templates[type] = new Function("obj", strFunc);
} catch (e) {
console.error("JST error: "+type, e,strFunc);
}
} else { //plain template e.g. ##id##
try {
$.JST._templates[type] = templateBody;
} catch (e) {
console.error("JST error: "+type, e,templateBody);
}
}
tmpl.remove();
});
});
},
createFromTemplate: function(jsonData, template, transformToPrintable) {
var templates = $.JST._templates;
var jsData=new Object();
if (transformToPrintable){
for (var prop in jsonData){
var value = jsonData[prop];
if (typeof(value) == "string")
value = (value + "").replace(/\n/g, "<br>");
jsData[prop]=value;
}
} else {
jsData=jsonData;
}
function fillStripData(strip, data) {
for (var prop in data) {
var value = data[prop];
strip = strip.replace(new RegExp("##" + prop + "##", "gi"), value);
}
// then clean the remaining ##xxx##
strip = strip.replace(new RegExp("##\\w+##", "gi"), "");
return strip;
}
var stripString = "";
if (typeof(template) == "undefined") {
alert("Template is required");
stripString = "<div>Template is required</div>";
} else if (typeof(templates[template]) == "function") { // resig template
try {
stripString = templates[template](jsData);// create a jquery object in memory
} catch (e) {
console.error("JST error: "+template,e.message);
stripString = "<div> ERROR: "+template+"<br>" + e.message + "</div>";
}
} else {
stripString = templates[template]; // recover strip template
if (!stripString || stripString.trim() == "") {
console.error("No template found for type '" + template + "'");
return $("<div>");
} else {
stripString = fillStripData(stripString, jsData); //replace placeholders with data
}
}
var ret = $(stripString);// create a jquery object in memory
ret.attr("__template", template); // set __template attribute
//decorate the strip
var dec = $.JST._decorators[template];
if (typeof (dec) == "function")
dec(ret, jsData);
return ret;
},
existsTemplate: function(template) {
return $.JST._templates[template];
},
//decorate function is like function(domElement,jsonData){...}
loadDecorator:function(template, decorator) {
$.JST._decorators[template] = decorator;
},
getDecorator:function(template) {
return $.JST._decorators[template];
},
decorateTemplate:function(element) {
var dec = $.JST._decorators[element.attr("__template")];
if (typeof (dec) == "function")
dec(editor);
},
// asynchronous
ajaxLoadAsynchTemplates: function(templateUrl, callback) {
$.get(templateUrl, function(data) {
var div = $("<div>");
div.html(data);
$.JST.loadTemplates(div);
if (typeof(callback == "function"))
callback();
},"html");
},
ajaxLoadTemplates: function(templateUrl) {
$.ajax({
async:false,
url: templateUrl,
dataType: "html",
success: function(data) {
var div = $("<div>");
div.html(data);
$.JST.loadTemplates(div);
}
});
}
};