diff --git a/dev.sh b/dev.sh new file mode 100644 index 0000000000000000000000000000000000000000..9de1a594fa100980f973d8c8a751ae42a7ad920c --- /dev/null +++ b/dev.sh @@ -0,0 +1,48 @@ +#!/bin/bash + +PROJECT=$(cd `dirname $0`; pwd) +echo PROJECT=$PROJECT + +mkdir -p $PROJECT/starter/target/classes/webapp/addons +mkdir -p $PROJECT/starter/target/classes/webapp/WEB-INF/addons + +rm -rf $PROJECT/starter/target/classes/webapp/templates +ln -s $PROJECT/jpress-template/src/main/webapp/templates $PROJECT/starter/target/classes/webapp/templates + +rm -rf $PROJECT/starter/target/classes/webapp/static +ln -s $PROJECT/jpress-web/src/main/webapp/static $PROJECT/starter/target/classes/webapp/static + +rm -rf $PROJECT/starter/target/classes/webapp/addons/io.jpress.addon.daotian +ln -sf $PROJECT/jpress-addons/jpress-addon-daotian/src/main/webapp $PROJECT/starter/target/classes/webapp/addons/io.jpress.addon.daotian + +rm -rf $PROJECT/starter/target/classes/webapp/WEB-INF/views/ucenter/_layout +ln -sf $PROJECT/jpress-web/src/main/webapp/WEB-INF/views/ucenter/_layout $PROJECT/starter/target/classes/webapp/WEB-INF/views/ucenter/_layout + +rm -rf $PROJECT/starter/target/classes/webapp/WEB-INF/views/ucenter/article +ln -sf $PROJECT/module-article/module-article-web/src/main/webapp/WEB-INF/views/ucenter/article $PROJECT/starter/target/classes/webapp/WEB-INF/views/ucenter/article + +ADMIN_VIEWS=$PROJECT/jpress-web/src/main/webapp/WEB-INF/views/admin +for i in `ls $ADMIN_VIEWS` +do + folder=$ADMIN_VIEWS/$i + target=$PROJECT/starter/target/classes/webapp/WEB-INF/views/admin/$i + echo "[symblic] $folder -> $target" + rm -rf $target + ln -sf $folder $target +done + +rm -rf $PROJECT/starter/target/classes/webapp/WEB-INF/views/admin/article +ln -sf $PROJECT/module-article/module-article-web/src/main/webapp/WEB-INF/views/admin/article $PROJECT/starter/target/classes/webapp/WEB-INF/views/admin/article + +rm -rf $PROJECT/starter/target/classes/webapp/WEB-INF/views/admin/page +ln -sf $PROJECT/module-page/module-page-web/src/main/webapp/WEB-INF/views/admin/page $PROJECT/starter/target/classes/webapp/WEB-INF/views/admin/page + +rm -rf $PROJECT/starter/target/classes/webapp/WEB-INF/install +ln -sf $PROJECT/jpress-web/src/main/webapp/WEB-INF/install $PROJECT/starter/target/classes/webapp/WEB-INF/install + +cd $PROJECT/jpress-addons/jpress-addon-daotian/ +echo "************************ build plugin jpress-addon-daotian ************************" +mvn clean install + +rm -rf $PROJECT/starter/target/classes/webapp/WEB-INF/addons/io.jpress.addon.daotian.jar +ln -sf $PROJECT/jpress-addons/jpress-addon-daotian/target/jpress-addon-daotian-2.0.jar $PROJECT/starter/target/classes/webapp/WEB-INF/addons/io.jpress.addon.daotian.jar diff --git a/doc/template_dev.md b/doc/template_dev.md index dbfb2c4b95f59bb8875ffe16e8721772a5854793..8f8cba1b7304ba3b59a2dd0677061a8b4eaaf224 100644 --- a/doc/template_dev.md +++ b/doc/template_dev.md @@ -283,7 +283,7 @@ JPress的模板标签,分为以下三种: ``` #if(USER) - #(USER.nickname ??) 欢迎回来,头像:#(USER.avatar ??) + #(USER.nickname ??) 欢迎回来,头像:#(USER.avatar ?? '/static/commons/img/avatar.png') #else 请登录 #end diff --git a/jpress-addons/jpress-addon-daotian/pom.xml b/jpress-addons/jpress-addon-daotian/pom.xml new file mode 100644 index 0000000000000000000000000000000000000000..b0a444f50476960adcb67cdbe5ebff29c4365117 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/pom.xml @@ -0,0 +1,51 @@ + + + + jpress-addons + io.jpress + 2.0 + + 4.0.0 + + io.jpress + jpress-addon-daotian + + + + io.jpress + jpress-core + + + io.jpress + module-article-web + 2.0 + + + + + + + + + src/main/resources + + **/*.* + + false + + + + src/main/webapp + + **/*.* + + false + + + + + + + \ No newline at end of file diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddon.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddon.java new file mode 100644 index 0000000000000000000000000000000000000000..5568b1c9ad248b5ac09be7ec29aa1615ac9f348c --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddon.java @@ -0,0 +1,63 @@ +package io.jpress.addon.daotian; + +import io.jpress.core.addon.Addon; +import io.jpress.core.addon.AddonInfo; + +/** + * 这是一个 JPress 插件的 Daotian 项目,没有具体的功能。 + * + * 其存在的目的是为了帮助开发者,通过 Daotian ,了解如何开发一个 JPress 插件 + * + */ +public class DaotianAddon implements Addon { + + @Override + public void onInstall(AddonInfo addonInfo) { + + /** + * 在 onInstall ,我们一般需要 创建自己的数据表 + * + * onInstall 方法只会执行一次,执行完毕之后不会再执行,除非是用户卸载插件再次安装 + */ + System.out.println("DaotianAddon onInstall"); + + } + + @Override + public void onUninstall(AddonInfo addonInfo) { + + /** + * 在 onUninstall 中,我们一般需要去删除自己在 onInstall 中创建的表 或者 其他资源文件 + * 这个方法是用户在 Jpress 后台卸载插件的时候回触发。 + */ + + System.out.println("DaotianAddon onUninstall"); + } + + @Override + public void onStart(AddonInfo addonInfo) { + + /** + * 在 onStart 方法中,我们可以做很多事情,例如:创建后台或用户中心的菜单 + * + * 此方法是每次项目启动,都会执行。 + * + * 同时用户也可以在后台触发 + */ + + System.out.println("DaotianAddon onStart"); + } + + @Override + public void onStop(AddonInfo addonInfo) { + + /** + * 和 onStart 对应,在 onStart 所处理的事情,在 onStop 应该释放 + * + * 同时用户也可以在后台触发 + */ + + System.out.println("DaotianAddon onStop"); + + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonController.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonController.java new file mode 100644 index 0000000000000000000000000000000000000000..3acb74fea8d87b68b7d30c40ea53c1f98a1a1230 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonController.java @@ -0,0 +1,37 @@ +package io.jpress.addon.daotian; + +import com.jfinal.aop.Inject; +import com.jfinal.kit.Ret; +import io.jboot.web.controller.annotation.RequestMapping; +import io.jpress.addon.daotian.service.StarService; + +/** + * 对外 controller,API 和页面 + */ +@RequestMapping(value = "/daotian", viewPath = "/") +public class DaotianAddonController extends DaotianBaseController { + + @Inject + private StarService ss; + + public void index() { + json(); + } + + // 志愿者信息 + public void volunteer() { + renderJson(Ret.ok().set("data", "")); + } + + public void audio() { + renderJson(Ret.ok().set("data", "")); + } + + public void json() { + renderJson(Ret.ok().set("data", new String[]{"/daotian/attachment", "/daotian/volunteer", "/daotian/audio", "/daotian/test"})); + } + + public void attachment() { + renderJson(Ret.ok().set("data", getAttachment(getPara("title")))); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonHandler.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..dcf0c3f051138bb1acfc7f995c8d9fcf17f653ce --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonHandler.java @@ -0,0 +1,16 @@ +package io.jpress.addon.daotian; + + +import com.jfinal.handler.Handler; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +public class DaotianAddonHandler extends Handler { + @Override + public void handle(String target, HttpServletRequest request, HttpServletResponse response, boolean[] isHandled) { + System.out.println("DaotianAddonHandler invoked for target : " + target); + next.handle(target, request, response, isHandled); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonInterceptor.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonInterceptor.java new file mode 100644 index 0000000000000000000000000000000000000000..38bd91fda930ce283f3f386e59e66b4a3ac91373 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAddonInterceptor.java @@ -0,0 +1,45 @@ +package io.jpress.addon.daotian; + + +import com.alibaba.fastjson.JSON; +import com.jfinal.aop.Inject; +import com.jfinal.aop.Invocation; +import com.jfinal.core.Controller; +import com.jfinal.plugin.activerecord.Page; +import io.jpress.JPressOptions; +import io.jpress.model.Attachment; +import io.jpress.service.AttachmentService; +import io.jpress.web.interceptor.TemplateInterceptor; +import org.apache.commons.lang.StringUtils; + +public class DaotianAddonInterceptor extends TemplateInterceptor { + @Inject + private AttachmentService as; + + @Override + public void intercept(Invocation inv) { + super.intercept(inv); + + System.out.println("DaotianAddonInterceptor invoke"); + + Controller ctl = inv.getController(); + + String url = ctl.getRequest().getRequestURI(); + + try { + if ("/".equals(url)) { // 首页数据 + Page pages = as._paginate(1, 1, "audio"); + ctl.setAttr("audio", pages.getList().get(0)); + } + + String banner = JPressOptions.get("daotian_banner"); + if (StringUtils.isNotBlank(banner)) { + ctl.setAttr("banners", JSON.parseArray(banner, String.class)); + } + } catch (Exception e) { + System.err.println(e.getMessage()); + } + + inv.invoke(); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAuthController.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAuthController.java new file mode 100644 index 0000000000000000000000000000000000000000..4af685bd1510d26e4b3c8d34f0b08dc2d5a641b7 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianAuthController.java @@ -0,0 +1,59 @@ +package io.jpress.addon.daotian; + +import com.jfinal.aop.Before; +import com.jfinal.aop.Inject; +import com.jfinal.kit.Ret; +import io.jboot.web.controller.annotation.RequestMapping; +import io.jpress.addon.daotian.service.StarService; +import io.jpress.model.User; +import io.jpress.web.interceptor.CSRFInterceptor; +import io.jpress.web.interceptor.UserInterceptor; + +/** + * 对外 controller,API 和页面 + */ +@Before({ + CSRFInterceptor.class, + UserInterceptor.class, +}) +@RequestMapping(value = "/daotian/sso", viewPath = "/") +public class DaotianAuthController extends DaotianBaseController { + + @Inject + private StarService ss; + + public void index() { + renderJson(Ret.ok().set("data", new String[]{"/daotian/sso/doStar"})); + } + + // 给用户点赞 + public void doStar() { + User me = getLoginedUser(); + if (me == null) { + renderJson(Ret.fail("code", 301).set("message", "您没有登录")); + return; + } + Long user = getParaToLong("user"); + if (user == null || user < 1) { + renderJson(Ret.fail("code", 20001).set("message", "您要操作的用户不存在")); + return; + } + + int result = ss.doStar(user, me.getId(), 1); + + renderJson(Ret.ok().set("data", result)); + } + + // 我的点赞记录 + public void getMyVote() { + User me = getLoginedUser(); + if (me == null) { + renderJson(Ret.fail("code", 301).set("message", "您没有登录")); + return; + } + + long[] result = ss.getMyVote(me.getId(), 1); + + renderJson(Ret.ok().set("data", result)); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianBaseController.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianBaseController.java new file mode 100644 index 0000000000000000000000000000000000000000..f361d49caaf6cbac524a7ba195b2883cb8303c86 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianBaseController.java @@ -0,0 +1,55 @@ +package io.jpress.addon.daotian; + +import com.jfinal.aop.Inject; +import com.jfinal.plugin.activerecord.Page; +import io.jpress.addon.daotian.service.StarService; +import io.jpress.model.Attachment; +import io.jpress.model.User; +import io.jpress.service.AttachmentService; +import io.jpress.service.UserService; +import io.jpress.web.base.TemplateControllerBase; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class DaotianBaseController extends TemplateControllerBase { + + @Inject + private AttachmentService as; + + @Inject + private UserService us; + + @Inject + private StarService ss; + + public Page getVolunteer() { + + // TODO: 按照点赞数排序 + Page pages = us.selectByRule(getParaToInt("page", 1), 20, 2); + + if (pages.getList().size() > 0) { + // TODO: 用户列表,逗号分隔 + List idList = new ArrayList(); + pages.getList().forEach(user -> { + user.keepSafe(); + idList.add(user.getId().toString()); + }); + + // 查找对应的用户点赞 + Map stars = ss.getStars(String.join(",", idList)); + pages.getList().forEach(user -> { + Long star = stars.get(user.getId()); + user.setRemark(star != null && star > 0 ? star.toString() : "0"); + }); + } + return pages; + } + + public Page getAttachment(String title) { + Page pages = as._paginate(getParaToInt("page", 1), getParaToInt("size", 15), title); + return pages; + } + +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianUpgrader.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianUpgrader.java new file mode 100644 index 0000000000000000000000000000000000000000..6bf4a93826c7f99e50e3a9421cc6bc2b0d0bdce0 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/DaotianUpgrader.java @@ -0,0 +1,18 @@ +package io.jpress.addon.daotian; + +import io.jpress.core.addon.AddonInfo; +import io.jpress.core.addon.AddonUpgrader; + + +public class DaotianUpgrader implements AddonUpgrader { + @Override + public boolean onUpgrade(AddonInfo oldAddon, AddonInfo thisAddon) { + System.out.println("DaotianUpgrader.onUpgrade()"); + return true; + } + + @Override + public void onRollback(AddonInfo oldAddon, AddonInfo thisAddon) { + System.out.println("DaotianUpgrader.onRollback()"); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/admin/DaotianAdminController.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/admin/DaotianAdminController.java new file mode 100644 index 0000000000000000000000000000000000000000..2cc7a5dd407011ab29429d462046d13e3b8752c1 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/admin/DaotianAdminController.java @@ -0,0 +1,68 @@ +package io.jpress.addon.daotian.admin; + +import com.jfinal.aop.Before; +import com.jfinal.aop.Inject; +import com.jfinal.core.ActionKey; +import com.jfinal.kit.Ret; +import io.jboot.web.controller.annotation.RequestMapping; +import io.jpress.JPressConsts; +import io.jpress.addon.daotian.DaotianBaseController; +import io.jpress.addon.daotian.service.StarService; +import io.jpress.core.menu.annotation.AdminMenu; +import io.jpress.service.AttachmentService; +import io.jpress.service.UserService; +import io.jpress.web.interceptor.AdminInterceptor; +import io.jpress.web.interceptor.CSRFInterceptor; +import io.jpress.web.interceptor.PermissionInterceptor; +import io.jpress.web.interceptor.UserInterceptor; + + +@Before({ + CSRFInterceptor.class, + AdminInterceptor.class, + UserInterceptor.class, + PermissionInterceptor.class, +}) +@RequestMapping(value = "/admin/daotian",viewPath = "/") +public class DaotianAdminController extends DaotianBaseController { + + @Inject + private AttachmentService as; + + @Inject + private UserService us; + + @Inject + private StarService ss; + + public void index() { + audio(); + } + + public void json() { + renderJson(Ret.ok().set("message", "json ok....")); + } + + @ActionKey("/admin/daotian/audio") + @AdminMenu(groupId = JPressConsts.SYSTEM_MENU_TEMPLATE, text = "好听的知识") + public void audio() { + setAttr("page", getAttachment("audio")); + render("admin/audio.html"); + } + + /** + * 志愿者列表 + */ + @ActionKey("/admin/daotian/volunteer") + @AdminMenu(groupId = JPressConsts.SYSTEM_MENU_USER, text = "志愿者") + public void volunteer() { + setAttr("page", getVolunteer()); + render("admin/volunteer.html"); + } + + @ActionKey("/admin/daotian/banner") + @AdminMenu(groupId = JPressConsts.SYSTEM_MENU_TEMPLATE, text = "首页轮播图") + public void banner() { + render("admin/banner.html"); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/model/Star.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/model/Star.java new file mode 100644 index 0000000000000000000000000000000000000000..1beb29592e05fdaf3e2b3226ab025c1e3c6d1cc6 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/model/Star.java @@ -0,0 +1,55 @@ +package io.jpress.addon.daotian.model; + +import com.jfinal.plugin.activerecord.IBean; +import io.jboot.db.annotation.Table; +import io.jboot.db.model.JbootModel; + +@Table(tableName = "star") +public class Star extends JbootModel implements IBean { + +// private long userId; // 被点赞用户编号 +// private long starId; // 用户总的点赞数 +// private long period; // 点赞周期 +// private long created; // 创建日期 +// private long stars; // 用户总的点赞数 + + public long getUserId() { + return getLong("user_id"); + } + + public void setUserId(long userId) { + set("user_id", userId); + } + + public long getStarId() { + return getLong("star_id"); + } + + public void setStarId(long starId) { + set("star_id", starId); + } + + public long getPeriod() { + return getLong("period"); + } + + public void setPeriod(long period) { + set("period", period); + } + + public long getCreated() { + return getLong("created"); + } + + public void setCreated(long created) { + set("created", created); + } + + public long getStars() { + return getLong("stars"); + } + + public void setStars(long stars) { + set("stars", stars); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/service/StarService.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/service/StarService.java new file mode 100644 index 0000000000000000000000000000000000000000..f76e1e47ae101eae2af492f0728232136ac10d0e --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/service/StarService.java @@ -0,0 +1,9 @@ +package io.jpress.addon.daotian.service; + +import java.util.Map; + +public interface StarService { + Map getStars(String ids); + int doStar(long userId, long starId, long period); + long[] getMyVote(long starId, long period); +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/service/StarServiceProvider.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/service/StarServiceProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..466724eb7cf2ec5113c9689620386f65465889b6 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/service/StarServiceProvider.java @@ -0,0 +1,59 @@ +package io.jpress.addon.daotian.service; + +import com.jfinal.log.Log; +import com.jfinal.plugin.activerecord.Db; +import io.jboot.aop.annotation.Bean; +import io.jboot.service.JbootServiceBase; +import io.jpress.addon.daotian.model.Star; +import io.jpress.commons.email.SimpleEmailSender; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +@Bean +public class StarServiceProvider extends JbootServiceBase implements StarService { + + private static final Log logger = Log.getLog(StarServiceProvider.class); + + @Override + public Map getStars(String ids) { + + // TODO: sql 优化 + String sql = "select user_id, count(*) stars from star where user_id in (" + ids + ") group by user_id order by stars limit 20"; + + List list = DAO.find(sql); + +// Map map = new HashMap<>(); +// list.forEach(star -> map.put(star.getUserId(), star.getStars())); +// return map; + + return list.stream().collect(Collectors.toMap(a -> a.getUserId(), a -> a.getStars())); + + } + + @Override + public int doStar(long userId, long starId, long period) { + logger.info("doStar from " + starId + " to " + userId); + int result = 0; + try { + result = Db.update("INSERT INTO `star` (`user_id`, `star_id`, `period`) VALUES (?, ?, ?);", userId, starId, period); + } catch (Exception e) { + logger.error("doStar", e); + } + return result; + } + + @Override + public long[] getMyVote(long starId, long period) { + logger.info("getMyVote from " + starId); + String sql = "select user_id from star where star_id = ? and period = ?"; + List list = DAO.find(sql, starId, period); + long[] ids = new long[list.size()]; + for (int i = 0; i < list.size(); i++) { + ids[i] = list.get(i).getUserId(); + } + return ids; + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/AudioController.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/AudioController.java new file mode 100644 index 0000000000000000000000000000000000000000..6432fc391c303fa14195aa2ad8cc88c8dbab1a01 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/AudioController.java @@ -0,0 +1,17 @@ +package io.jpress.addon.daotian.web; + +import io.jboot.web.controller.annotation.RequestMapping; +import io.jpress.addon.daotian.DaotianBaseController; + +/** + * 好听的知识 + */ +@RequestMapping(value = "/audio", viewPath = "/templates/daotian/") +public class AudioController extends DaotianBaseController { + + public void index() { + setAttr("bodyClass", "audio-container"); + setAttr("pages", getAttachment("audio")); + render("audio.html"); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/MessageController.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/MessageController.java new file mode 100644 index 0000000000000000000000000000000000000000..b5a629c17de44dc84ed12f126254eb9484d61aa4 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/MessageController.java @@ -0,0 +1,19 @@ +package io.jpress.addon.daotian.web; + +import io.jboot.web.controller.annotation.RequestMapping; +import io.jpress.addon.daotian.DaotianBaseController; +import io.jpress.module.article.controller.ArticleController; + +/** + * 留言 + */ +@RequestMapping(value = "/message") +public class MessageController extends ArticleController { + + public void index() { + setAttr("bodyClass", "message-container"); + setAttr("style", "message"); + setUrlPara("message"); + super.index(); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/NewsController.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/NewsController.java new file mode 100644 index 0000000000000000000000000000000000000000..352160923da643764165ca8cf08f5ea0a21f68a4 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/NewsController.java @@ -0,0 +1,19 @@ +package io.jpress.addon.daotian.web; + +import io.jboot.web.controller.annotation.RequestMapping; +import io.jpress.module.article.controller.ArticleCategoryController; +import io.jpress.module.article.controller.ArticleController; + +/** + * 新闻列表 + */ +@RequestMapping(value = "/news") +public class NewsController extends ArticleCategoryController { + + public void index() { + setAttr("bodyClass", "news-container"); + setAttr("style", "news"); + setUrlPara("news"); + super.index(); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/VolunteerController.java b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/VolunteerController.java new file mode 100644 index 0000000000000000000000000000000000000000..223f9b5fe6ad860c5029085533e3fbbe1462dee0 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/java/io/jpress/addon/daotian/web/VolunteerController.java @@ -0,0 +1,22 @@ +package io.jpress.addon.daotian.web; + +import com.jfinal.aop.Before; +import io.jboot.web.controller.annotation.RequestMapping; +import io.jpress.addon.daotian.DaotianBaseController; +import io.jpress.web.interceptor.CSRFInterceptor; + +/** + * 志愿者 + */ +@Before({ + CSRFInterceptor.class +}) +@RequestMapping(value = "/volunteer", viewPath = "/templates/daotian/") +public class VolunteerController extends DaotianBaseController { + + public void index() { + setAttr("bodyClass", "volunteer-container"); + setAttr("page", getVolunteer()); + render("volunteer.html"); + } +} diff --git a/jpress-addons/jpress-addon-daotian/src/main/resources/addon.txt b/jpress-addons/jpress-addon-daotian/src/main/resources/addon.txt new file mode 100644 index 0000000000000000000000000000000000000000..8c84648555993fc36b1b26e6f3e845021ef2e7e0 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/resources/addon.txt @@ -0,0 +1,7 @@ +id=io.jpress.addon.daotian +title=daotian +description=这只是一个为稻田养老网站开发的插件 +author=pauli +authorWebsite=http://pauli.cn +version=1.0.2 +versionCode=2 \ No newline at end of file diff --git a/jpress-addons/jpress-addon-daotian/src/main/resources/comment.sql b/jpress-addons/jpress-addon-daotian/src/main/resources/comment.sql new file mode 100644 index 0000000000000000000000000000000000000000..a8cde750ce21361a7b3649ff8ec1e2cdea40207b --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/resources/comment.sql @@ -0,0 +1,2 @@ +ALTER TABLE `article_comment` ADD `mobile` VARCHAR(32) NULL COMMENT '手机号' AFTER `qq`, +ADD `title` VARCHAR(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '评论标题' AFTER `mobile`; \ No newline at end of file diff --git a/jpress-addons/jpress-addon-daotian/src/main/resources/config.txt b/jpress-addons/jpress-addon-daotian/src/main/resources/config.txt new file mode 100644 index 0000000000000000000000000000000000000000..fca3e1c3560535d4208d7bb11c991e2c06b66ab4 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/resources/config.txt @@ -0,0 +1,25 @@ +db.type = mysql +db.url +db.user +db.password +db.driverClassName = "com.mysql.jdbc.Driver" +db.connectionInitSql +db.poolName +db.cachePrepStmts = true +db.prepStmtCacheSize = 500 +db.prepStmtCacheSqlLimit = 2048 +db.maximumPoolSize = 10 +db.maxLifetime +db.idleTimeout +db.minimumIdle = 0 +db.sqlTemplatePath +db.sqlTemplate +db.factory +db.shardingConfigYaml +db.dbProFactory +db.containerFactory +db.transactionLevel +db.table #此数据源包含哪些表,这个配置会覆盖@Table注解的配置 +db.exTable #该数据源排除哪些表,这个配置会修改掉@Table上的配置 +db.dialectClass +db.activeRecordPluginClass \ No newline at end of file diff --git a/jpress-addons/jpress-addon-daotian/src/main/resources/star.sql b/jpress-addons/jpress-addon-daotian/src/main/resources/star.sql new file mode 100644 index 0000000000000000000000000000000000000000..d5d42ebe7259f6aa836b58297a1d46ed006a9395 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/resources/star.sql @@ -0,0 +1,31 @@ +CREATE TABLE `star` ( + `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, + `user_id` int(11) UNSIGNED DEFAULT NULL COMMENT '被点赞用户编号', + `star_id` int(11) UNSIGNED DEFAULT NULL COMMENT '点赞用户编号', + `period` int(11) UNSIGNED DEFAULT NULL COMMENT '点赞周期', + `created` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建日期', + PRIMARY KEY (`id`), + UNIQUE KEY `star_volunteer` (`user_id`, `star_id`, `period`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='点赞记录表'; + + +select a.* from ( + select count(s.user_id) cnt, u.* from `user` u + inner join `user_role_mapping` r + on u.id = r.user_id and r.role_id = 2 + left join `star` s + on u.id = s.user_id and s.period = 1 + group by s.user_id +) a order by a.cnt desc limit 20; + + +CREATE ALGORITHM=TEMPTABLE DEFINER=`jpress`@`localhost` SQL SECURITY DEFINER VIEW volunteer AS +SELECT s.remark, u.id, u.avatar, u.username, u.realname, u.nickname, u.company, u.graduateschool, u.mobile, u.email +FROM `user` u + INNER JOIN `user_role_mapping` r ON + u.id = r.user_id AND r.role_id = 2 + LEFT JOIN ( SELECT user_id, COUNT(*) remark FROM `star` GROUP BY user_id ORDER BY remark DESC LIMIT 20 ) s ON + u.id = s.user_id + ORDER BY + s.remark + DESC LIMIT 20; diff --git a/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/audio.html b/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/audio.html new file mode 100644 index 0000000000000000000000000000000000000000..c1cbaafc00367e65d54c0b90fa49fa1accc781d6 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/audio.html @@ -0,0 +1,89 @@ +#@layout() + +#define content() + + +
+
+

+ 前台展示 +

+

“好听的知识” + 声音是系统附件的一种,请不要在 附件 里面删除使用中的音频文件 +

+
+ +
+
+ +
+ + + + + 选择音频文件... + + +
+
+ +
+ + + + + + + + + + + + + + + #for(audio : page.list) + + + + + + + + + + #end + + +
ID上传人描述路径播放上传时间操作
+
+ +
+
+#end + +#define script() + + + + + + + +#end diff --git a/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/banner.html b/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/banner.html new file mode 100644 index 0000000000000000000000000000000000000000..e3c827246a5056fd6be6f155a1cfcb9617216d12 --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/banner.html @@ -0,0 +1,50 @@ +#@layout() + +#define content() + + +
+
+

首页轮播图 + Banner +

+
+ +
+
+
+ +
+ +
+ + + +
+ +
+
+ + +
+
+
+#end + +#define script() + + + +#end diff --git a/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/volunteer.html b/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/volunteer.html new file mode 100755 index 0000000000000000000000000000000000000000..1bd55681f415a060d12ebdfed0a05e9532281a7d --- /dev/null +++ b/jpress-addons/jpress-addon-daotian/src/main/webapp/admin/volunteer.html @@ -0,0 +1,53 @@ +#@layout() + +#define content() + + +
+ +
+

+ 新建志愿者 + 前台展示 +

+

志愿者管理 + 志愿者是系统用户的一种,请新建用户,并设置角色包含志愿者 +

+
+ +
+ + + + + + + + + + + + + + #for(user : page.list ) + + + + + + + + + + + #end + + +
ID头像登录名昵称点赞数手机创建时间操作
+ #@_paginate() +
+
+#end diff --git a/jpress-addons/pom.xml b/jpress-addons/pom.xml index f497432989f25385260fb23f04dbf38b575c2a66..e2e9e174857beed8c032d1c24a37796cf6868820 100644 --- a/jpress-addons/pom.xml +++ b/jpress-addons/pom.xml @@ -21,6 +21,7 @@ jpress-addon-helloworld + jpress-addon-daotian diff --git a/jpress-core/pom.xml b/jpress-core/pom.xml index d6d1c99113aa4fb2749c2dcfdc4fb00587f43522..4cb2b5e02ebcc67416c9972e047186c98a5c9f9f 100644 --- a/jpress-core/pom.xml +++ b/jpress-core/pom.xml @@ -68,6 +68,8 @@ 1.8 1.8 + UTF-8 + -parameters diff --git a/jpress-core/src/main/java/io/jpress/web/render/TemplateRender.java b/jpress-core/src/main/java/io/jpress/web/render/TemplateRender.java index ad4abb0b29f0bf01ce1df18766903b642874fc0a..bb005026a491f26f5b28c26f63d708b4f169446b 100644 --- a/jpress-core/src/main/java/io/jpress/web/render/TemplateRender.java +++ b/jpress-core/src/main/java/io/jpress/web/render/TemplateRender.java @@ -53,8 +53,6 @@ public class TemplateRender extends Render { return engine; } - private String cdnDomain = JPressOptions.getCDNDomain(); - public TemplateRender(String view) { this.view = view; } @@ -113,6 +111,12 @@ public class TemplateRender extends Render { Elements linkElements = doc.select("link[href]"); replace(linkElements, "href"); + Elements audioElements = doc.select("audio[src]"); + replace(audioElements, "src"); + + Elements sourceElements = doc.select("source[src]"); + replace(sourceElements, "src"); + return doc.toString(); } @@ -123,6 +127,13 @@ public class TemplateRender extends Render { if (template == null) { return; } + + // 后端修改后不需要重新启动,每次渲染页面获取一次 + String cdnDomain = JPressOptions.getCDNDomain(); + + // CDN 排除的路径 + String cdnExclude = JPressOptions.get("cdn_exclude"); + while (iterator.hasNext()) { Element element = iterator.next(); @@ -159,7 +170,7 @@ public class TemplateRender extends Render { url = contextPath + template.getWebAbsolutePath() + "/" + url; } - if (StrUtil.isNotBlank(cdnDomain)) { + if (StrUtil.isNotBlank(cdnDomain) && !url.contains(cdnExclude)) { url = cdnDomain + url; } diff --git a/jpress-service-api/src/main/java/io/jpress/service/UserService.java b/jpress-service-api/src/main/java/io/jpress/service/UserService.java index 0157c4792d37ac094f1822cc3d03b4777f78f7e6..7081d7e27e4f0f5dccdcdc8898ac80ac34566ef9 100644 --- a/jpress-service-api/src/main/java/io/jpress/service/UserService.java +++ b/jpress-service-api/src/main/java/io/jpress/service/UserService.java @@ -90,6 +90,8 @@ public interface UserService extends JbootServiceJoiner{ public Page _paginate(int page, int pagesize, Columns columns); + public Page selectByRule(int page, int pagesize, int role); + public User findByUsernameOrEmail(String usernameOrEmail); public Ret doValidateUserPwd(User user, String pwd); diff --git a/jpress-service-provider/src/main/java/io/jpress/service/provider/UserServiceProvider.java b/jpress-service-provider/src/main/java/io/jpress/service/provider/UserServiceProvider.java index d438aac4c275e1ff53af8b3677e5ddd185d6c4f7..ccb1cb3bd08ca320f3ad076d2b7e60652ca3dc8e 100644 --- a/jpress-service-provider/src/main/java/io/jpress/service/provider/UserServiceProvider.java +++ b/jpress-service-provider/src/main/java/io/jpress/service/provider/UserServiceProvider.java @@ -49,6 +49,13 @@ public class UserServiceProvider extends JbootServiceBase implements UserS return DAO.paginateByColumns(page, pagesize, columns, "id desc"); } + @Override + public Page selectByRule(int page, int pageSize, int role) { + String totalSql = "select count(*) from user_role_mapping where role_id = " + role; + String findSql = "SELECT u.* from user u, user_role_mapping m where u.id = m.user_id and m.role_id = " + role; + return DAO.paginateByFullSql(page, pageSize, totalSql, findSql); + } + @Override public User findByUsernameOrEmail(String usernameOrEmail) { return StrUtil.isEmail(usernameOrEmail) diff --git a/jpress-template/src/main/webapp/templates/BonHumeur/article.html b/jpress-template/src/main/webapp/templates/BonHumeur/article.html index a15856ac3637dacb8ef0bdeea7bf71b7ebba79eb..48c204178822c78e2038b11734af6e7fc07628ef 100755 --- a/jpress-template/src/main/webapp/templates/BonHumeur/article.html +++ b/jpress-template/src/main/webapp/templates/BonHumeur/article.html @@ -91,7 +91,7 @@
- +
#date(article.created)
@@ -148,7 +148,7 @@ #if(comment.parent == null)
- #(comment.author ??)
@@ -171,8 +171,7 @@
- #(comment.parent.author ??) + #(comment.parent.author ??)
@@ -182,7 +181,7 @@
#(comment.parent.content ??)
- #(comment.author ??)
diff --git a/jpress-template/src/main/webapp/templates/JPressPortal/article.html b/jpress-template/src/main/webapp/templates/JPressPortal/article.html index c4a7373ee31c12fcf44f0b846a30c6b940af127a..d298ffa670219523d1e7ef47a3368eb9049b74d8 100755 --- a/jpress-template/src/main/webapp/templates/JPressPortal/article.html +++ b/jpress-template/src/main/webapp/templates/JPressPortal/article.html @@ -88,7 +88,7 @@
- + #(article.user.nickname ??)
@@ -146,7 +146,7 @@ #if(comment.parent == null)
- #(comment.author ??)
@@ -170,7 +170,7 @@
- #(comment.author ??)
diff --git a/jpress-template/src/main/webapp/templates/JPressPortal/artlist.html b/jpress-template/src/main/webapp/templates/JPressPortal/artlist.html index b808b2651a510e041fefbf8c04a9593391ccc5cc..40d2f32d1217e13c7f02024f8fcd4194f028b2dc 100755 --- a/jpress-template/src/main/webapp/templates/JPressPortal/artlist.html +++ b/jpress-template/src/main/webapp/templates/JPressPortal/artlist.html @@ -22,7 +22,7 @@
- +
#date(article.created)
diff --git a/jpress-template/src/main/webapp/templates/daotian/_article-block.html b/jpress-template/src/main/webapp/templates/daotian/_article-block.html new file mode 100644 index 0000000000000000000000000000000000000000..b72006526849d6085b51da2c75a246c1aa06a385 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/_article-block.html @@ -0,0 +1,10 @@ + + +
#(article.title ??)
+

+ #date(article.created, 'yyyy-MM-dd') + #(article.view_count) + +

+

#maxLength(article.text, 50)

+
diff --git a/jpress-template/src/main/webapp/templates/daotian/_carousel.html b/jpress-template/src/main/webapp/templates/daotian/_carousel.html new file mode 100644 index 0000000000000000000000000000000000000000..d611fbb2a8328dcef53fe11a5341cf6fdf47c690 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/_carousel.html @@ -0,0 +1,20 @@ + \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/_comment.html b/jpress-template/src/main/webapp/templates/daotian/_comment.html new file mode 100644 index 0000000000000000000000000000000000000000..6332454596f8fec7cccf70575f3a9506e8d5bb2e --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/_comment.html @@ -0,0 +1,112 @@ +#define script() + + + + + + + + + +#end + +#commentPage() +
+

精选#(article.style == 'message' ? '留言' : '评论')

+ #for(comment : commentPage.list) + #if(comment.parent == null) +
+
+ #(comment.author ?? '游客') +
+
+
+ #(comment.author ?? '游客') + #date(comment.created) +
+
#(comment.content ??)
+
+ + +
+ #else +
+
+ #(comment.parent.author ?? '游客') +
+
+
+ #(comment.parent.author ?? '游客') + #date(comment.parent.created) +
+
#(comment.parent.content ??)
+
+
+ #(comment.author ?? '游客') +
+
+
+ #(comment.author ?? '游客') + #date(comment.created) +
+
#(comment.content ??)
+
+ +
+
+ + +
+ #end + #end +
+ #commentPaginate(anchor="comments") + + #end + #end +
+ +
+

发表#(article.style == 'message' ? '留言' : '评论')

+
+ + + +
+ #if(option('article_comment_vcode_enable')) + + + #end +
+ +
+
\ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/_footer.html b/jpress-template/src/main/webapp/templates/daotian/_footer.html new file mode 100755 index 0000000000000000000000000000000000000000..8f22a223d8f5bc667f1d789a9feadc68b60fc25f --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/_footer.html @@ -0,0 +1,29 @@ + + diff --git a/jpress-template/src/main/webapp/templates/daotian/_header.html b/jpress-template/src/main/webapp/templates/daotian/_header.html new file mode 100755 index 0000000000000000000000000000000000000000..1f80de0bec08493f927ce819bc0dc121d0e14bdf --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/_header.html @@ -0,0 +1,5 @@ + diff --git a/jpress-template/src/main/webapp/templates/daotian/_layout.html b/jpress-template/src/main/webapp/templates/daotian/_layout.html new file mode 100755 index 0000000000000000000000000000000000000000..93258afa10e30b884e26a6b6876ee5b0f7b1535a --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/_layout.html @@ -0,0 +1,33 @@ +#define layout() + + + + + + + + + #(SEO_TITLE ?? (WEB_TITLE + '-' + WEB_SUBTITLE)) + + + + + + #@css?() + + +
+#if(option('nav_header') == true) +#include("_header.html") +#end +#@content() +
+ + + + + +#@script?() + + +#end diff --git a/jpress-template/src/main/webapp/templates/daotian/_nav.html b/jpress-template/src/main/webapp/templates/daotian/_nav.html new file mode 100755 index 0000000000000000000000000000000000000000..bcb6ca53a6a47785c9cf32149ef87a9d547ad448 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/_nav.html @@ -0,0 +1,11 @@ + + diff --git a/jpress-template/src/main/webapp/templates/daotian/article.html b/jpress-template/src/main/webapp/templates/daotian/article.html new file mode 100755 index 0000000000000000000000000000000000000000..9c413f818a628044b6ada844d58568385372e074 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/article.html @@ -0,0 +1,40 @@ +#include("_layout.html") +#@layout() + +#define content() +
+

#(article.title ??)

+
+ #(article.user.nickname ??) + #(article.user.nickname ??) + #date(article.created, 'yyyy-MM-dd') + #(article.view_count) + +
+
+
#(article.content ??)
+ + #relevantArticles(article) +
+

相关文章

+
+ #for(article :relevantArticles ) + + #end +
+
+ #end + + #include("_comment.html") +
+ +#include("_nav.html") + +#end diff --git a/jpress-template/src/main/webapp/templates/daotian/article_message.html b/jpress-template/src/main/webapp/templates/daotian/article_message.html new file mode 100755 index 0000000000000000000000000000000000000000..3e3e8dc9d67c8349e14ef3cf022877735582f9b9 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/article_message.html @@ -0,0 +1,18 @@ +#include("_layout.html") +#@layout() + +#define content() +
+
+

你说我听

+ 留言 +
+
+ +
#(article.content ??)
+
+ #include("_comment.html") +
+ +#include("_nav.html") +#end diff --git a/jpress-template/src/main/webapp/templates/daotian/artlist.html b/jpress-template/src/main/webapp/templates/daotian/artlist.html new file mode 100755 index 0000000000000000000000000000000000000000..7040ef98891163d09d70364a3cf5050c20dfdf08 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/artlist.html @@ -0,0 +1,30 @@ +#include("_layout.html") +#@layout() +#define content() +
+ #articlePage() + +
+

#(category.content ??)

+ #for(article : articlePage.list) + #include("_article-block.html") + #end +
+ + #articlePaginate() + + #end + #end +
+ +#include("_footer.html") + +#end \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/artlist_news.html b/jpress-template/src/main/webapp/templates/daotian/artlist_news.html new file mode 100755 index 0000000000000000000000000000000000000000..cc5f72de27edc1896c9ae940d30cc8dc8ec08904 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/artlist_news.html @@ -0,0 +1,34 @@ +#include("_layout.html") +#@layout() +#define content() +
+ #articlePage() + +
+

新闻报道

+ 新闻报道 +
+ +
+ #for(article : articlePage.list) + #include("_article-block.html") + #end +
+ + #articlePaginate() + + #end + #end +
+ +#include("_footer.html") + +#end \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/audio.html b/jpress-template/src/main/webapp/templates/daotian/audio.html new file mode 100644 index 0000000000000000000000000000000000000000..27cfdcece841fec1ec3ec21f440f7688ec9ca709 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/audio.html @@ -0,0 +1,19 @@ +#include("_layout.html") +#@layout() +#define content() +
+

“好听的知识”

+
+ #for(audio : pages.list) + + + #(audio.description ??) + + #end +
+ +
+#include("_footer.html") +#end \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/css/admin.css b/jpress-template/src/main/webapp/templates/daotian/css/admin.css new file mode 100644 index 0000000000000000000000000000000000000000..538cbf01bfa4ca9f9a8276989e7196b8da84eedb --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/css/admin.css @@ -0,0 +1,61 @@ +.text-bold { + font-weight: bold; +} +.dt-uploader { + display: inline-block; + margin: 0 10px 10px 0; +} +.dt-uploader .btn-primary { + position: absolute; + margin: 50px 0 0 36px; +} +.dt-uploader .btn-warning { + position: absolute; + margin: 78px 0 0 36px; +} +.fileinput-button { + position: relative; + overflow: hidden; + display: inline-block; + min-width: 120px; + width: auto; +} +.fileinput-button input { + position: absolute; + top: 0; + right: 0; + margin: 0; + opacity: 0; + -ms-filter: 'alpha(opacity=0)'; + font-size: 200px !important; + direction: ltr; + cursor: pointer; +} +.fileinput-description { + display: inline-block; + width: 300px; + min-width: 300px; +} +.music-player { + font-size: 20px; + cursor: pointer; +} +.inline-block { + display: inline-block; +} +.admin-content { + background-color: #FFF; + min-height: calc(100vh - 1px); +} +.admin-content .table-striped { + border-bottom: 1px solid #f4f4f4; +} +.form-horizontal .control-label { + padding-top: 0; +} +label .btn-plain { + font-weight: normal; +} +.switchery-wrap .switchery { + margin-top: 0; +} \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/css/app.css b/jpress-template/src/main/webapp/templates/daotian/css/app.css new file mode 100644 index 0000000000000000000000000000000000000000..49e0c195ddea60986849f07317bc8d6939f5b9ce --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/css/app.css @@ -0,0 +1,1088 @@ +/*global*/ +a { + color: #333; +} + +a:hover { + color: #6FB86B; + text-decoration: none; +} + +img { + max-width: 100%; + max-height: 100%; +} + +.m15 { + margin: 15px; +} + +.mw-btn { + display: block; + padding: 0 10px; + line-height: 24px; + text-align: center; + font-size: 12px; + color: #FFFFFF; + background-color: #6FB86B; + border-radius: 4px; + cursor: pointer; +} +.mw-btn:hover, .mw-btn:active, .mw-btn:focus { + color: #FFFFFF; +} + +.dt-wrap, .container { + margin: 0 auto; + max-width: 750px; + color: #333; +} + +html, body { + background-color: #f2f2f2; +} + +.message-content { + margin: 15px 0; + padding: 1px 15px; + background-color: #FFF; +} + +.dt-content { + min-height: 100vh; + height: auto; + position: relative; +} + +.dt-sidebar { + height: 100vh; + width: 320px; + position: absolute; + top: 0; + left: 0px; + background: url(../img/sidebar-image.jpg) no-repeat left top; +} + +.dt-nav-sidebar { + position: absolute; + top: 0; + left: 0; + min-height: 100vh; + height: 100%; + width: 60px; + background-color: #000; +} + +.dt-nav-sidebar ul, .dt-nav-sidebar li { + margin: 0; + padding: 0; +} + +.dt-nav-sidebar ul li a { + display: block; + width: 60px; + height: 40px; + color: #fff; + text-align: center; + line-height: 40px; +} + +.dt-nav-sidebar ul li a.active { + background-color: #6FB86B; +} + +.dt-main { + height: 100vh; + overflow: scroll; +} + +.dt-main-body { + margin: 0 auto; + padding: 0; + overflow: hidden; +} + +/*sidebar*/ +.dt-sidebar-main { + text-align: center; + color: #fff; +} + +.dt-sidebar-main .dt-portrait { + width: 8rem; + height: 8rem; + margin: 2rem auto; + border-radius: 50%; + -webkit-border-radius: 50%; + -moz-border-radius: 50%; + overflow: hidden; + border: 1px solid #eee; + text-align: center; + line-height: 7rem; +} + +.dt-portrait img { + width: 100%; + max-width: 100%; + min-height: 100%; +} + +/*card*/ +.dt-card { + padding: 0; +} + +.dt-card h5 { + margin: 0 0 15px; + line-height: 24px; + font-weight: normal; + font-size: 16px; + word-break: break-all; + overflow-wrap: break-word; + max-height: 48px; + overflow: hidden; +} + +.dt-card:last-child { + border-bottom: none; +} + +.dt-card-tag > * { + display: inline-block; + padding-right: 10px; + color: #999; + font-size: 14px; + font-weight: 300; +} + +.dt-card-tag .view-count { + min-width: 66px; +} + +.dt-card-tag > * > img { + width: 30px; + height: 30px; +} + +.dt-card-tag .avatar { + max-width: 30px; + max-height: 30px; +} + +.dt-card { + display: inline-block; + width: 100%; + box-sizing: border-box; + padding: 1rem; + border-bottom: 1px dashed #d5d5d5; +} + +.dt-card img { + width: 130px; + height: 80px; + margin-right: 10px; +} + +.dt-card .dt-card-main-info { + color: #666; + font-size: 14px; + line-height: 24px; + font-weight: 300; + display: none; +} + +.dt-card { + display: block; + padding: 15px; + min-height: 105px; +} + +.dt-card a:hover { + background-color: #f2f2f2; +} + +.dt-card-main-title { + padding-left: 8px; + border-left: 3px solid #6ea055; + font-size: 16px; + line-height: 20px; + color: #333; +} + +.dt-more { + text-align: center; + padding: 2rem 0; +} + +.dt-more a { + background-color: #6FB86B; + padding: 0.8rem 2rem; + border-radius: 2px; + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + color: #fff; +} + +.dt-more a:hover { + background-color: #0c6b9c; +} + +/*page*/ +.pagination .page-item.active .page-link { + background-color: #6FB86B; + border-color: #6FB86B; + color: #fff; +} + +.pagination .page-item .page-link { + color: #6FB86B; +} + +.pagination-wrap { + text-align: center; +} + +.pagination li.disabled .page-link { + background-color: #eee; + color: #999; +} + +.pagination > li { + display: inline-block; +} + +.pagination li.disabled { + cursor: not-allowed; +} + +.slogan { + margin: 20px 0; + padding: 20px; + min-height: 55px; + line-height: 28px; + text-align: center; + font-size: 18px; + color: #fff; + border-radius: 10px; + word-break: break-all; + white-space: normal; + word-wrap: break-word; + background: -webkit-linear-gradient(#93c47d, #6aa84f); + background: -moz-linear-gradient(#93c47d, #6aa84f); + background: -ms-linear-gradient(#93c47d, #6aa84f); + background: linear-gradient(#93c47d, #6aa84f); +} + +/*footer*/ +.index-footer { + padding: 5px; + text-align: center; + color: #999; +} + +.index-footer a { + color: inherit; +} + +.dt-footer-place { + height: 57px; +} + +.dt-footer { + position: absolute; + position: fixed; + bottom: 0; + left: 0; + right: 0; + margin: 10px 0 0 0; + padding: 10px 10px 0; + line-height: 18px; + border-top: 1px solid #ededed; + background-color: #FFF; + text-align: center; + z-index: 10; +} + +.dt-footer a { + display: block; +} + +.dt-footer ul { + padding: 0; + list-style: none; +} + +.dt-footer .mw-nav-item { + width: 25%; + float: left; +} + +.dt-footer.quick-nav { + padding: 5px 0; + line-height: 40px; +} + +.dt-footer.quick-nav a { + color: #6FB86B; +} + +.dt-copyright a { + color: inherit; +} + +.dt-copyright { + margin-bottom: 0; + padding: 10px 15px; + color: #333; + font-size: 12px; + background-color: #FFF; + text-align: center; +} + +/*header*/ +.dt-header { + padding: 20px 20px 20px 0; +} + +#carousel-index { + height: 260px; + margin: 0 -15px; +} + +.carousel-inner { + max-height: 100%; + height: 100%; +} + +.carousel-inner > .item { + height: 100%; +} + +.carousel-inner > .item > a > img, .carousel-inner > .item > img { + margin: 0 auto; + width: 100%; + height: 100%; +} + +.carousel-indicators li { + border: 1px solid #6FB86B; + margin: 1px 4px; +} + +.carousel-indicators li.active { + background-color: #6FB86B; +} + +.dt-header a { + display: inline-block; + padding: 0 20px 0 0; +} + +.dt-header a.active, .dt-footer a.active { + color: #6FB86B; + font-weight: bold; +} + +.banner-item { + min-height: 100px; + background-color: beige; + text-align: center; +} + +.banner-item img { + width: 100%; +} + +.comment-list { + margin: 0 0 20px; + padding: 5px 20px 0; + background-color: #FFF; + border-radius: 6px; + min-height: 60px; +} + +.comment-list:empty { + display: none; +} + +.add-comment { + margin: 0 0 10px; + padding: 5px 20px 0; + background-color: #FFF; + border-radius: 6px; +} + +.index-category { + border: 1px solid #DDD; + border-radius: 6px; + margin: 15px 0; + background-color: #FFF; +} + +.dt-card-main-title { + margin: 15px; + word-break: keep-all; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.dt-card-main-title.ml0 { + margin-left: 0; +} + +.index-category .mw-btn { + margin: 12px 10px 0 0; + padding: 0 15px; + border-radius: 15px; + font-size: 14px; +} + +.index-category.index-audio .mw-btn { + padding: 0 10px; + border-radius: 4px; +} + +/*artical*/ +.dt-artical-content { + padding: 0; +} + +.dt-artical-title { + margin: 20px 0 10px; + font-size: 24px; + color: #333; + font-weight: 600; + line-height: 34px; +} + +.dt-artical h1, .dt-artical h2, .dt-artical h3, .dt-artical h4, .dt-artical h5 { + padding: 1.5rem 0 0.5rem 0; + font-weight: 600; +} + +.dt-artical h1 { + font-size: 2.4rem; + color: #c7254e; +} + +.dt-artical h2 { + font-size: 2.2rem; +} + +.dt-artical h3 { + font-size: 2rem; +} + +.dt-artical h4 { + font-size: 1.75rem; +} + +.dt-artical h5 { + font-size: 1.5rem; +} + +.dt-artical h6 { + font-size: 1.2rem; +} + +.dt-artical ul, .dt-artical ol, .dt-artical li { + font-size: 1.2rem; + color: #666; +} + +.volunteer-container { + min-height: calc(100vh - 57px); + background-color: #FFF; +} + +.dt-line { + margin: 20px 0; + padding: 20px 0 0 0; + border-top: 1px solid #e5e5e5; +} + +.force-wrap { + word-break: break-all; + word-wrap: break-word; +} + +.dt-artical .img-load-error { + max-width: 150px; + max-height: 150px; +} + +.dt-artical a { + color: #6FB86B; +} + +.dt-artical blockquote { + font-size: 18px; + padding: 2rem 1rem 2rem 2rem; + border-left: 4px solid #6FB86B; + background-color: #f3f3f3; + /*font-style: italic;*/ + font-weight: bold; + line-height: 1.8em; +} + +.dt-artical blockquote:before { + content: " “ "; + font-size: 60px; + vertical-align: bottom; + color: #6FB86B; +} + +.dt-artical blockquote span { + font-size: 36px +} + +.dt-artical p img { + vertical-align: middle; + width: 100%; + max-width: 100%; + height: auto; +} + +.dt-artical p { + padding: 0; + line-height: 24px; + font-size: 14px; + color: #666; + margin-bottom: 10px; + font-weight: 400; +} + +.dt-content-info { + color: #999; + font-size: 1rem; + font-weight: 300; +} + +/*comment panel*/ +.comment-panel { + padding-bottom: 0.5rem; + border-bottom: 1px solid #eee; + margin-top: 2rem; + position: relative; +} + +.comment-secondary-panel { + padding-bottom: 0.5rem; + margin-top: 1rem; + padding-top: 1rem; + border-top: 1px solid #dee2e6; + position: relative; +} + +.comment-panel .comment-panel-portrait { + position: absolute; + top: 0; + left: 0; +} + +.comment-secondary-panel .comment-panel-portrait { + position: absolute; + top: 1rem; + left: 0; +} + +.comment-panel-portrait img { + width: 40px; + height: 40px; +} + +.comment-panel .comment-panel-content { + padding: 0 0 0 50px; + width: 100%; +} + +.comment-panel .comment-panel-content .comment-panel-content-item span { + padding: 0 5px 0 0; + font-size: 14px; + color: #999; +} + +.comment-panel .comment-panel-content .comment-panel-content-main { + margin-top: 5px; + word-break: break-all; + word-spacing: normal; + white-space: pre-wrap; +} + +.comment-panel .comment-panel-secondary { + border: 1px solid #e5e5e5; + padding: 0.5rem 0.5rem 0 0.5rem; + margin: 0.5rem 0; + background-color: #fffffb; +} + +@media (min-width: 576px) { + .dt-panel { + max-width: 30%; + } +} + +.text-red { + color: #dd4b39; +} + +.audio-container { + padding: 15px; + background-color: #78b770; + min-height: calc(100vh - 57px); +} + +.audio-container .pagination { + float: none !important; + text-align: center; + display: block; +} + +.audio-list { + width: auto; + min-height: calc(100vh - 87px); + border-radius: 6px; + background-color: #FFF; +} + +/*comment form*/ +.dt-comment-from { +} + +.dt-comment-from label { + width: 100%; + font-weight: normal; +} + +.dt-comment-from .comment-write { + border: 1px solid #c5c5c5; + padding: 6px 10px; + width: 100%; + box-sizing: border-box; + outline: none; + box-shadow: none; + margin: 3px 0 10px; +} + +.message-article { + margin: 20px 0; + padding: 15px 20px 5px; + background-color: #FFF; + border-radius: 6px; +} + +.dt-comment-from .dt-comment-from-icon { + position: absolute; + top: 0.5rem; + left: 0.5rem; + display: block; + width: 2rem; + height: 2rem; + text-align: center; + line-height: 2rem; + background-color: #6FB86B; + border-radius: 4px; + color: #fff; + +} + +.comment-vcode { + float: left; + font-size: 1rem; + margin-top: 0.5rem; +} + +.comment-vcode .vcode-img { + height: 2.6rem; +} + +.comment-vcode input { + padding: 0 0.5rem; + height: 2.6rem; + border: none; + outline: none; +} + +.dt-comment-from button { + display: block; + margin: 10px auto 20px; + padding: 0; + width: 100%; + max-width: 300px; + border: none; + color: #fff; + font-size: 16px; + text-align: center; + line-height: 34px; + cursor: pointer; + background-color: #6FB86B; + border-radius: 10px; + outline: none; + box-shadow: none; + font-weight: normal; +} + +.dt-comment-from textarea { + height: 100px; +} + +.dt-comment-from .comment-write:focus { +} + +/*recommend aritical*/ +.recommend-panel a.recommend-panel-link { + display: block; +} + +.recommend-panel-bottom { + padding: 1rem; +} + +.dt-title { + margin: 10px 0; + color: #333; +} + +.recommend-panel-top { + overflow: hidden; + height: 12rem; +} + +.recommend-panel-top img { + width: 100%; + max-width: 100%; + min-height: 100%; + transition: 0.4s ease-out; + -webkit-transition: 0.4s ease-out; + -moz-transition: 0.4s ease-out; + -o-transition: 0.4s ease-out; +} + +.recommend-panel-top img:hover { + transform: scale(1.1, 1.1); + -webkit-transform: scale(1.1, 1.1); + -o-transform: scale(1.1, 1.1); + -moz-transform: scale(1.1, 1.1); +} + +.music-player { + font-size: 16px; + line-height: 24px; +} + +.music-player span { + color: #333; +} + +.music-player .icon { + font-size: 20px; + vertical-align: text-bottom; + color: #bebebe; +} + +.playing .icon { + display: inline-block; + -webkit-animation: animal 2s linear infinite; + animation: animal 2s linear infinite; + -webkit-transform-origin: center center; + -ms-transform-origin: center center; + transform-origin: center center; + color: #6fb86b; +} + +.dt-container .pagination > .active > a, +.dt-container .pagination > .active > a:focus, +.dt-container .pagination > .active > a:hover, +.dt-container .pagination > .active > span, +.dt-container .pagination > .active > span:focus, +.dt-container .pagination > .active > span:hover { + background-color: #6fb86b; + border-color: #6fb86b; +} + +@-webkit-keyframes animal { + 0% { + transform: rotate(0deg); + -ms-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + } + 100% { + transform: rotate(-360deg); + -ms-transform: rotate(-360deg); + -webkit-transform: rotate(-360deg); + } +} + +.dt-artical .music-player { + line-height: 42px; + border: 1px solid #DDD; + padding: 5px 10px; + border-radius: 6px; + margin-bottom: 15px; + display: block; +} + +.dt-artical .music-player .icon { + font-size: 30px; + vertical-align: middle; +} + +.btn-plain { + border: none; + outline: none; + box-shadow: none; + background: none; + cursor: pointer; +} + +.article-banner { + position: relative; + margin: 0 -15px; + height: 160px; + overflow: hidden; +} + +.article-banner img { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + line-height: 100%; + text-align: center; +} + +.article-banner h2 { + font-size: 20px; + font-weight: 600; + height: 52px; + line-height: 50px; + position: relative; + z-index: 1; + text-align: center; + color: #FFF; + border: 2px solid #FFF; + border-radius: 50px; + width: 200px; + margin: 50px auto 0; + background-color: rgba(204, 204, 204, 0.4); +} + +.list-content { + padding: 20px 0; +} + +.list-content .list-item { + position: relative; + display: inline-block; + margin: 50px 10px 10px; + padding-bottom: 10px; + width: calc(50% - 22px); + text-align: center; + line-height: 20px; +} + +.list-content .list-item:before { + content: ""; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border: 1px solid #efefef; +} + +.list-content .list-item img { + position: relative; + margin-top: -40px; + width: 80px; + height: 80px; +} + +.list-content .list-item .star { + display: inline-block; + vertical-align: text-top; + line-height: 12px; + min-width: 20px; +} + +.list-content .list-item .voted { + color: #ffbb29; +} + +.list-content .list-item .name { + color: #333; + font-size: 18px; +} + +.list-content .list-item .unit { + color: #666; + font-size: 16px; +} + +.list-content .list-item .content { + margin: 5px auto; + height: 20px; + overflow: hidden; + text-overflow: ellipsis; + word-break: keep-all; + word-wrap: normal; + white-space: nowrap; +} + +.list-content .list-item .btn-star { + font-weight: bold; +} + +div#toast-container { + top: 40%; + left: 10%; + right: 10%; +} + +div#toast-container > div { + margin: 0 auto; + padding: 20px 8px 20px 46px; + width: auto; + max-width: 750px; +} + +.index-audio { + padding-bottom: 15px; +} + +.index-audio .music-player { + margin-left: 15px; +} + +.animated { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} + +@-webkit-keyframes swing { + 20% { + -webkit-transform: rotate3d(0, 0, 1, 15deg); + transform: rotate3d(0, 0, 1, 15deg); + } + + 40% { + -webkit-transform: rotate3d(0, 0, 1, -10deg); + transform: rotate3d(0, 0, 1, -10deg); + } + + 60% { + -webkit-transform: rotate3d(0, 0, 1, 5deg); + transform: rotate3d(0, 0, 1, 5deg); + } + + 80% { + -webkit-transform: rotate3d(0, 0, 1, -5deg); + transform: rotate3d(0, 0, 1, -5deg); + } + + to { + -webkit-transform: rotate3d(0, 0, 1, 0deg); + transform: rotate3d(0, 0, 1, 0deg); + } +} + +@keyframes swing { + 20% { + -webkit-transform: rotate3d(0, 0, 1, 15deg); + transform: rotate3d(0, 0, 1, 15deg); + } + + 40% { + -webkit-transform: rotate3d(0, 0, 1, -10deg); + transform: rotate3d(0, 0, 1, -10deg); + } + + 60% { + -webkit-transform: rotate3d(0, 0, 1, 5deg); + transform: rotate3d(0, 0, 1, 5deg); + } + + 80% { + -webkit-transform: rotate3d(0, 0, 1, -5deg); + transform: rotate3d(0, 0, 1, -5deg); + } + + to { + -webkit-transform: rotate3d(0, 0, 1, 0deg); + transform: rotate3d(0, 0, 1, 0deg); + } +} + +.swing { + -webkit-transform-origin: top center; + transform-origin: top center; + -webkit-animation-name: swing; + animation-name: swing; +} + +.max-line2 { + width: 100%; + height: 100%; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; +} + +@media (max-width: 1200px) { + .dt-main-body { + } +} + +@media (max-width: 576px) { + .dt-sidebar { + height: auto; + width: 100%; + position: static; + background-image: none; + background-color: #6FB86B; + padding: 20px 0; + } + + .dt-card { + margin: 0; + } + + .dt-header { + padding: 20px; + } + + .dt-nav-sidebar { + display: none; + } + + .dt-main-body { + padding: 0 15px 15px; + } + + .dt-content { + height: auto; + } + + .dt-artical-content { + padding: 0; + } + + .dt-card { + } +} + +@media (max-width: 322px) { + .dt-card-tag > * { + font-size: 12px; + } + .dt-card-tag .view-count { + max-width: 44px; + min-width: 44px; + } +} diff --git a/jpress-template/src/main/webapp/templates/daotian/css/iconfont.css b/jpress-template/src/main/webapp/templates/daotian/css/iconfont.css new file mode 100644 index 0000000000000000000000000000000000000000..769f144f27aa3e554c72b1737130fa87467e3120 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/css/iconfont.css @@ -0,0 +1,325 @@ + +@font-face {font-family: "mw-iconfont"; + src: url('../fonts/iconfont.eot?t=1505201933224'); /* IE9*/ + src: url('../fonts/iconfont.eot?t=1505201933224#iefix') format('embedded-opentype'), /* IE6-IE8 */ + url('../fonts/iconfont.woff?t=1505201933224') format('woff'), /* chrome, firefox */ + url('../fonts/iconfont.ttf?t=1505201933224') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/ + url('../fonts/iconfont.svg?t=1505201933224#mw-iconfont') format('svg'); /* iOS 4.1- */ +} +.mw-iconfont { + font-family:"mw-iconfont" !important; + font-size:16px; + font-style:normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.mw-icon-block-diannao:before { content: "\b121"; } +.mw-icon-block-shouji:before { content: "\b113"; } +.mw-icon-block-print:before { content: "\b114"; } +.mw-icon-block-tixing:before { content: "\b115"; } +.mw-icon-block-bianjiwenjian:before { content: "\b116"; } +.mw-icon-block-bingtu:before { content: "\b117"; } +.mw-icon-block-shengqi:before { content: "\b118"; } +.mw-icon-block-yonghu:before { content: "\b119"; } +.mw-icon-block-biaoqing:before { content: "\b120"; } +.mw-icon-block-youjian:before { content: "\b082"; } +.mw-icon-block-xiangyou:before { content: "\b091"; } +.mw-icon-xiangzuo:before { content: "\b092"; } +.mw-icon-block-xiangshang:before { content: "\b093"; } +.mw-icon-block-xiangxia:before { content: "\b094"; } +.mw-icon-block-map:before { content: "\b095"; } +.mw-icon-block-weiruan:before { content: "\b096"; } +.mw-icon-block-pingguo:before { content: "\b097"; } +.mw-icon-block-yaopin:before { content: "\b098"; } +.mw-icon-block-gouwuche:before { content: "\b099"; } +.mw-icon-block-shuru:before { content: "\b100"; } +.mw-icon-outline-sousuo:before { content: "\a120"; } +.mw-icon-block-liebiao:before { content: "\b112"; } +.mw-icon-block-xiazai1:before { content: "\b102"; } +.mw-icon-block-accessory:before { content: "\b103"; } +.mw-icon-block-erweima:before { content: "\b083"; } +.mw-icon-block-gonggao:before { content: "\b104"; } +.mw-icon-block-jingshi:before { content: "\b105"; } +.mw-icon-outline-yuanxuanzhong:before { content: "\a117"; } +.mw-icon-outline-upload:before { content: "\a116"; } +.mw-icon-outline-download:before { content: "\a114"; } +.mw-icon-block-pengyouquan:before { content: "\b106"; } +.mw-icon-block-xinlang:before { content: "\b107"; } +.mw-icon-block-weixin:before { content: "\b108"; } +.mw-icon-msnui-pos:before { content: "\b139"; } +.mw-icon-rili:before { content: "\a144"; } +.mw-icon-block-youxiu:before { content: "\b109"; } +.mw-icon-block-camrea:before { content: "\b110"; } +.mw-icon-block-ydanxuan:before { content: "\b111"; } +.mw-icon-block-btnweixuan:before { content: "\b101"; } +.mw-icon-block-yuebao:before { content: "\b090"; } +.mw-icon-block-gupiao:before { content: "\b089"; } +.mw-icon-block-game:before { content: "\b088"; } +.mw-icon-block-jizhang:before { content: "\b087"; } +.mw-icon-block-kuaiqiang:before { content: "\b086"; } +.mw-icon-block-wodebaozhang:before { content: "\b085"; } +.mw-icon-block-dengdai:before { content: "\b084"; } +.mw-icon-block-tongxunlu:before { content: "\b050"; } +.mw-icon-block-danwei:before { content: "\b049"; } +.mw-icon-block-fuwuchuangb:before { content: "\b048"; } +.mw-icon-outline-browser:before { content: "\a113"; } +.mw-icon-outline-camera2:before { content: "\a112"; } +.mw-icon-outline-delete:before { content: "\a110"; } +.mw-icon-outline-deliver:before { content: "\a109"; } +.mw-icon-outline-down:before { content: "\a108"; } +.mw-icon-outline-download2:before { content: "\a106"; } +.mw-icon-outline-edit:before { content: "\a105"; } +.mw-icon-outline-eraser:before { content: "\a104"; } +.mw-icon-outline-favor:before { content: "\a103"; } +.mw-icon-outline-fill:before { content: "\a102"; } +.mw-icon-outline-folder2:before { content: "\a101"; } +.mw-icon-outline-like:before { content: "\a100"; } +.mw-icon-outline-lock:before { content: "\a099"; } +.mw-icon-outline-mail:before { content: "\a098"; } +.mw-icon-outline-mark:before { content: "\a121"; } +.mw-icon-outline-message2:before { content: "\a096"; } +.mw-icon-outline-more:before { content: "\a095"; } +.mw-icon-outline-notification:before { content: "\a097"; } +.mw-icon-outline-person2:before { content: "\a111"; } +.mw-icon-outline-record:before { content: "\a115"; } +.mw-icon-outline-rest:before { content: "\a118"; } +.mw-icon-outline-search2:before { content: "\a119"; } +.mw-icon-outline-service:before { content: "\a071"; } +.mw-icon-outline-shopping:before { content: "\a086"; } +.mw-icon-outline-telephone:before { content: "\a085"; } +.mw-icon-outline-toleft:before { content: "\a083"; } +.mw-icon-outline-toright:before { content: "\a079"; } +.mw-icon-outline-top:before { content: "\a078"; } +.mw-icon-outline-unlock:before { content: "\a077"; } +.mw-icon-outline-upload2:before { content: "\a076"; } +.mw-icon-outline-pengyouquan:before { content: "\a075"; } +.mw-icon-block-wifi:before { content: "\b081"; } +.mw-icon-outline-category:before { content: "\a087"; } +.mw-icon-outline-close:before { content: "\a072"; } +.mw-icon-outline-comments:before { content: "\a073"; } +.mw-icon-outline-cry:before { content: "\a074"; } +.mw-icon-outline-edit2:before { content: "\a090"; } +.mw-icon-outline-form:before { content: "\a093"; } +.mw-icon-outline-help:before { content: "\a080"; } +.mw-icon-outline-information:before { content: "\a094"; } +.mw-icon-outline-pic:before { content: "\a088"; } +.mw-icon-outline-set:before { content: "\a089"; } +.mw-icon-outline-smile:before { content: "\a091"; } +.mw-icon-outline-success:before { content: "\a092"; } +.mw-icon-outline-wrong:before { content: "\a084"; } +.mw-icon-outline-clock2:before { content: "\a082"; } +.mw-icon-block-shezhi:before { content: "\b076"; } +.mw-icon-block-shangdian:before { content: "\b075"; } +.mw-icon-bofang:before { content: "\a124"; } +.mw-icon-block-dtgou:before { content: "\b073"; } +.mw-icon-outline-xiangshang:before { content: "\a081"; } +.mw-icon-outline-xiangzuo:before { content: "\a063"; } +.mw-icon-block-yuanxuankuang:before { content: "\b070"; } +.mw-icon-block-jiesuo:before { content: "\b069"; } +.mw-icon-block-bi:before { content: "\b068"; } +.mw-icon-outline-bi:before { content: "\a064"; } +.mw-icon-block-shangchuan2:before { content: "\b065"; } +.mw-icon-wenjianjia:before { content: "\a065"; } +.mw-icon-outline-music01:before { content: "\a122"; } +.mw-icon-block-gift:before { content: "\b063"; } +.mw-icon-block-collectselected:before { content: "\b062"; } +.mw-icon-outline-attachment:before { content: "\a068"; } +.mw-icon-outline-zhantie:before { content: "\a069"; } +.mw-icon-outline-discount:before { content: "\a070"; } +.mw-icon-outline-print:before { content: "\a067"; } +.mw-icon-outline-box:before { content: "\a066"; } +.mw-icon-outline-process:before { content: "\a062"; } +.mw-icon-outline-gifts:before { content: "\a060"; } +.mw-icon-outline-lights:before { content: "\a059"; } +.mw-icon-outline-qq:before { content: "\a057"; } +.mw-icon-block-android:before { content: "\b052"; } +.mw-icon-outline-browse:before { content: "\a056"; } +.mw-icon-block-comments:before { content: "\e6ae"; } +.mw-icon-shanchu:before { content: "\b159"; } +.mw-icon-outline-xiangyou01:before { content: "\a055"; } +.mw-icon-outline-filter:before { content: "\a052"; } +.mw-icon-outline-pin:before { content: "\a051"; } +.mw-icon-outline-link:before { content: "\a053"; } +.mw-icon-outline-caidan:before { content: "\a054"; } +.mw-icon-block-link:before { content: "\b051"; } +.mw-icon-block-more:before { content: "\b053"; } +.mw-icon-block-planefill:before { content: "\b054"; } +.mw-icon-outline-pengyouquan1:before { content: "\a058"; } +.mw-icon-block-suo:before { content: "\b055"; } +.mw-icon-quxiaotonglan:before { content: "\b156"; } +.mw-icon-tonglan:before { content: "\b157"; } +.mw-icon-jiantou1:before { content: "\b135"; } +.mw-icon-block-share:before { content: "\b056"; } +.mw-icon-outline-office:before { content: "\a061"; } +.mw-icon-block-chaping:before { content: "\b057"; } +.mw-icon-block-hricon4:before { content: "\b058"; } +.mw-icon-block-hricon:before { content: "\b059"; } +.mw-icon-outline-jifen:before { content: "\a039"; } +.mw-icon-block-serch:before { content: "\b060"; } +.mw-icon-outline-jiahao:before { content: "\a038"; } +.mw-icon-block-zhaopian:before { content: "\b061"; } +.mw-icon-block-clientservice:before { content: "\b064"; } +.mw-icon-outline-weizhi:before { content: "\a037"; } +.mw-icon-iconfontsecurity2:before { content: "\b147"; } +.mw-icon-outline-commpany:before { content: "\a036"; } +.mw-icon-outline-clock:before { content: "\a035"; } +.mw-icon-outline-fenxiang:before { content: "\a032"; } +.mw-icon-block-danxuan:before { content: "\b067"; } +.mw-icon-block-xiangxiafanbai:before { content: "\b071"; } +.mw-icon-outline-bad:before { content: "\a026"; } +.mw-icon-outline-good:before { content: "\a027"; } +.mw-icon-block-circleup:before { content: "\b072"; } +.mw-icon-xiadan:before { content: "\b141"; } +.mw-icon-outline-dianpu:before { content: "\a030"; } +.mw-icon-outline-iconfontstop:before { content: "\a031"; } +.mw-icon-outline-compass:before { content: "\a040"; } +.mw-icon-outline-security:before { content: "\a033"; } +.mw-icon-outline-share1:before { content: "\a034"; } +.mw-icon-block-jiahao:before { content: "\b074"; } +.mw-icon-block-jianhao:before { content: "\b078"; } +.mw-icon-block-music02:before { content: "\b123"; } +.mw-icon-chevron-copy:before { content: "\a134"; } +.mw-icon-chevron-copy-copy-copy:before { content: "\a133"; } +.mw-icon-block-yuanxuan:before { content: "\b079"; } +.mw-icon-shuangjiantou:before { content: "\a140"; } +.mw-icon-block-zhuye:before { content: "\b080"; } +.mw-icon-block-phone:before { content: "\b045"; } +.mw-icon-block-weizhi:before { content: "\b047"; } +.mw-icon-block-xingping:before { content: "\b044"; } +.mw-icon-block-music01:before { content: "\b122"; } +.mw-icon-block-shangchuan:before { content: "\b043"; } +.mw-icon-block-xiazai:before { content: "\b042"; } +.mw-icon-outline-emwdaima:before { content: "\a044"; } +.mw-icon-chevron-copy-copy-copy-copy-copy-copy:before { content: "\a132"; } +.mw-icon-outline-weibo:before { content: "\a045"; } +.mw-icon-outline-arrowleft:before { content: "\a046"; } +.mw-icon-outline-arrowright:before { content: "\a047"; } +.mw-icon-outline-gouwuche:before { content: "\a048"; } +.mw-icon-outline-bukejian:before { content: "\a049"; } +.mw-icon-outline-creditlevel:before { content: "\a050"; } +.mw-icon-sjiantou02:before { content: "\a141"; } +.mw-icon-sjiantou03:before { content: "\a142"; } +.mw-icon-3:before { content: "\a159"; } +.mw-icon-outline-wifi:before { content: "\a043"; } +.mw-icon-coutline-heckbox:before { content: "\a042"; } +.mw-icon-xiadanchenggong:before { content: "\b142"; } +.mw-icon-zanting3:before { content: "\b151"; } +.mw-icon-jiantouyou:before { content: "\b126"; } +.mw-icon-jiahao1:before { content: "\a136"; } +.mw-icon-jianhao:before { content: "\a135"; } +.mw-icon-outline-xuanzhong:before { content: "\a041"; } +.mw-icon-outline-jianhao:before { content: "\a002"; } +.mw-icon-outline-card:before { content: "\a014"; } +.mw-icon-rili1:before { content: "\b140"; } +.mw-icon-outline-diannao:before { content: "\a016"; } +.mw-icon-block-pinglun:before { content: "\b041"; } +.mw-icon-jiantou:before { content: "\b124"; } +.mw-icon-block-caidan:before { content: "\b040"; } +.mw-icon-outline-xiangshang1:before { content: "\a019"; } +.mw-icon-ysbl:before { content: "\a154"; } +.mw-icon-outline-caifu:before { content: "\a020"; } +.mw-icon-outline-gengxin:before { content: "\a021"; } +.mw-icon-outline-copy:before { content: "\a022"; } +.mw-icon-outline-code:before { content: "\a025"; } +.mw-icon-outline-weixin:before { content: "\a024"; } +.mw-icon-outline-iconsz:before { content: "\a023"; } +.mw-icon-kejian:before { content: "\b136"; } +.mw-icon-block-righthollow:before { content: "\b039"; } +.mw-icon-block-lefthollow:before { content: "\b038"; } +.mw-icon-outline-gou:before { content: "\a018"; } +.mw-icon-outline-saoyisao:before { content: "\a017"; } +.mw-icon-block-xiangzuofh:before { content: "\b037"; } +.mw-icon-sjiantou04-copy:before { content: "\a143"; } +.mw-icon-block-zixundianji:before { content: "\b036"; } +.mw-icon-outline-video:before { content: "\a015"; } +.mw-icon-outline-camrea:before { content: "\a013"; } +.mw-icon-outline-40:before { content: "\a012"; } +.mw-icon-block-dianhua:before { content: "\b030"; } +.mw-icon-weizhi:before { content: "\a139"; } +.mw-icon-block-qq:before { content: "\b029"; } +.mw-icon-hj2:before { content: "\a150"; } +.mw-icon-block-guanbi:before { content: "\b028"; } +.mw-icon-block-guanbi2:before { content: "\b024"; } +.mw-icon-block-moban:before { content: "\b021"; } +.mw-icon-outline-tuichu:before { content: "\a011"; } +.mw-icon-outline-radio:before { content: "\a010"; } +.mw-icon-outline-radioactive:before { content: "\a009"; } +.mw-icon-block-anquan:before { content: "\b018"; } +.mw-icon-outline-radio1:before { content: "\a008"; } +.mw-icon-block-tuichu1:before { content: "\b019"; } +.mw-icon-block-youjiantou2:before { content: "\b020"; } +.mw-icon-block-icon-copy:before { content: "\b022"; } +.mw-icon-arrow-t:before { content: "\a131"; } +.mw-icon-block-wenjianlan:before { content: "\b023"; } +.mw-icon-block-fires:before { content: "\b046"; } +.mw-icon-outline-shouye:before { content: "\a007"; } +.mw-icon-block-alarm:before { content: "\b025"; } +.mw-icon-u-arrow3-down:before { content: "\b153"; } +.mw-icon-block-caretleft:before { content: "\b026"; } +.mw-icon-block-caretright:before { content: "\b027"; } +.mw-icon-block-liuliangfenxu:before { content: "\b031"; } +.mw-icon-block-tongji:before { content: "\b032"; } +.mw-icon-block-dingdanfill:before { content: "\b033"; } +.mw-icon-block-copy:before { content: "\b034"; } +.mw-icon-block-computer:before { content: "\b035"; } +.mw-icon-block-tree:before { content: "\b012"; } +.mw-icon-block-shaixuan:before { content: "\b011"; } +.mw-icon-block-shuaxin:before { content: "\b010"; } +.mw-icon-block-bukejian:before { content: "\b009"; } +.mw-icon-block-kejian:before { content: "\b008"; } +.mw-icon-wenhao:before { content: "\b149"; } +.mw-icon-block-fillyixuan:before { content: "\b007"; } +.mw-icon-block-delete:before { content: "\b006"; } +.mw-icon-block-fenxiang:before { content: "\b005"; } +.mw-icon-outline-shouji:before { content: "\a006"; } +.mw-icon-block-shuqian:before { content: "\b004"; } +.mw-icon-block-qian:before { content: "\b002"; } +.mw-icon-block-shou:before { content: "\b017"; } +.mw-icon-outline-xiangxia:before { content: "\a005"; } +.mw-icon-block-tabshouqi:before { content: "\b003"; } +.mw-icon-block-tabxiala:before { content: "\b013"; } +.mw-icon-block-yuyin:before { content: "\b014"; } +.mw-icon-outline-shuzhuangtu:before { content: "\a004"; } +.mw-icon-zhifu:before { content: "\a145"; } +.mw-icon-icon19:before { content: "\b143"; } +.mw-icon-asmkticon0149:before { content: "\a146"; } +.mw-icon-block-wenjianjia:before { content: "\b015"; } +.mw-icon-block-artboard:before { content: "\b016"; } +.mw-icon-outline-liaotian:before { content: "\a003"; } +.mw-icon-outline-xiala:before { content: "\a001"; } +.mw-icon-block-wangluo:before { content: "\b001"; } +.mw-icon-block-jianhao-copy:before { content: "\b077"; } +.mw-icon-chacha:before { content: "\b130"; } +.mw-icon-outline-music02:before { content: "\a123"; } +.mw-icon-moshumagic4:before { content: "\a148"; } +.mw-icon-fahuo:before { content: "\b144"; } +.mw-icon-zanting1:before { content: "\a125"; } +.mw-icon-jiantou7:before { content: "\b134"; } +.mw-icon-zhifu1:before { content: "\b145"; } +.mw-icon-zhiding:before { content: "\b160"; } +.mw-icon-fangda:before { content: "\a156"; } +.mw-icon-suoxiao:before { content: "\a157"; } +.mw-icon-jiantouzuocu:before { content: "\b133"; } +.mw-icon-jiantou5-copy:before { content: "\b132"; } +.mw-icon-dot:before { content: "\b138"; } +.mw-icon-fuzhi:before { content: "\a162"; } +.mw-icon-gouxuan:before { content: "\b148"; } +.mw-icon-close:before { content: "\a158"; } +.mw-icon-suo-kai:before { content: "\b158"; } +.mw-icon-fukuan:before { content: "\b146"; } +.mw-icon-jiantou3:before { content: "\a151"; } +.mw-icon-jiantou4:before { content: "\a152"; } +.mw-icon-shangxiajiantou:before { content: "\b161"; } +.mw-icon-Thelock:before { content: "\b131"; } +.mw-icon-dian:before { content: "\b137"; } +.mw-icon-jingzhunpipei:before { content: "\a155"; } +.mw-icon-arrow-top:before { content: "\b155"; } +.mw-icon-minus:before { content: "\a137"; } +.mw-icon-plus:before { content: "\a138"; } +.mw-icon-shezhi:before { content: "\a160"; } +.mw-icon-jtleft:before { content: "\b154"; } +.mw-icon-zanting4:before { content: "\b150"; } +.mw-icon-jiantoucopy:before { content: "\b152"; } +.mw-icon-jiantou5:before { content: "\a153"; } +.mw-icon-move:before { content: "\a161"; } +.mw-icon-moshumagic4-copy:before { content: "\a149"; } diff --git a/jpress-template/src/main/webapp/templates/daotian/css/pager.mobile.css b/jpress-template/src/main/webapp/templates/daotian/css/pager.mobile.css new file mode 100644 index 0000000000000000000000000000000000000000..95e7562c4d50fd3f1f9fb3703f976fa2839b9123 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/css/pager.mobile.css @@ -0,0 +1,46 @@ +.mw-clearfix:after{content:'';clear:both;height:0;display:block;overflow:hidden;} +.mw-page.mw-pagenum{padding:0 18px;margin:20px 0;font-family:Arial,"Lucida Grande","Microsoft Yahei","Hiragino Sans GB","Hiragino Sans GB W3",SimSun,STHeiti;} +.mw-page.mw-pagenum ul{list-style:none outside none;margin:0;padding:0;border:0;outline:0;} +.mw-page.mw-pagenum li{height:32px;line-height:32px;font-size:14px;} +.mw-page.mw-pagenum li.mw-w25{padding-left:22px;float:right;max-width:35%;} +.mw-page.mw-pagenum li.mw-w25 a{padding:0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;} +.mw-page.mw-pagenum li.mw-w25 a.mw-previous-six{padding:0;} +.mw-page.mw-pagenum li.mw-w25:first-child{padding-left:0;padding-right:22px;float:left;} +.mw-page.mw-pagenum li.mw-w50{overflow:hidden;} +.mw-fright{float:right;} +.mw-w25{text-align:center;} +.mw-w50{text-align:center;} +.mw-page.mw-pagenum li em{font-style:normal;} +.mw-page.mw-pagenum li a{font-size:14px;display:block;width:98%;-webkit-transition:all 0.2s linear;-moz-transition:all 0.2s linear;-o-transition:all 0.2s linear;transition:all 0.2s linear;} +.mw-page.mw-pagenum li a:hover{-webkit-transition:all 0.2s linear;-moz-transition:all 0.2s linear;-o-transition:all 0.2s linear;transition:all 0.2s linear;} +.mw-previous{display:block;width:100%;height:30px;line-height:30px;text-align:center;text-decoration:none;} +.mw-page li.mw-disabled{-webkit-opacity:.5;-moz-opacity:.5;-ms-opacity:.5;opacity:.5;} +.mw-previous-one i{display:none;} +.mw-previous-one{color:#666;background-color:#eee;border-color:#ddd;border-width:1px;border-style:solid;} +.mw-previous-two i{display:none;} +.mw-previous-two{color:#666;background-color:#eee;border-color:#ddd;border-width:1px;border-style:solid;border-radius:6px;} +.mw-previous-three i{display:none;} +.mw-previous-three{color:#fff;background-color:#EA594F;border-color:#EA594F;border-width:1px;border-style:solid;border-radius:40px;} +.mw-previous-four i{display:none;} +.mw-previous-four{color:#666;background-color:#eee;border-color:#ddd;border-width:1px;border-style:solid;border-radius:40px;} +.mw-previous-fives i{display:none;} +.mw-previous-fives{color:#EA594F;background-color:#fff;border-color:#EA594F;border-width:1px;border-style:solid;border-radius:40px;} +.mw-previous-six span{display:none;} +.mw-previous-six{color:#666;background-color:#fff;border-color:#ddd;border-width:1px;border-style:solid;border-radius:40px;width:32px !important;} +.mw-clearfix:after{content:'';clear:both;height:0;display:block;overflow:hidden;} +.mw-page.mw-page-more-box{padding:0;margin:20px 0;font-family:Arial,"Lucida Grande","Microsoft Yahei","Hiragino Sans GB","Hiragino Sans GB W3",SimSun,STHeiti;} +.mw-page.mw-page-more-box a.disabled{display:none;} +.mw-page-more{display:block;padding:0 10px;height:30px;line-height:30px;font-size:14px;color:#666;text-align:center;text-decoration:none;} +.mw-page-more:hover{-webkit-transition:all 0.2s linear;-moz-transition:all 0.2s linear;-o-transition:all 0.2s linear;transition:all 0.2s linear;} +.mw-page-more-one{background-color:#FFF;border-color:#ddd;border-width:1px;border-style:solid;} +.mw-page-more-one:hover{border-color:#ddd;border-width:1px;border-style:solid;} +.mw-page-more-two{background-color:#EEE;border-color:#EEE;border-width:1px;border-style:solid;} +.mw-page-more-two:hover{background-color:#ddd;border-color:#ccc;border-width:1px;border-style:solid;} +.mw-page-more-three{background-color:#fff;border-color:#EEE;border-width:1px;border-style:solid;border-radius:40px;} +.mw-page-more-three:hover{background-color:#eee;border-color:#ddd;border-width:1px;border-style:solid;} +.mw-page-more-four{background-color:#eee;border-color:#ddd;border-width:1px;border-style:solid;} +.mw-page-more-four:hover{background-color:#ccc;border-color:#ccc;border-width:1px;border-style:solid;} +.mw-page-more-fives{background-color:transparent;border-color:transparent;border-width:1px;border-style:solid;} +.mw-page-more-fives:hover{background-color:#ddd;} +.mw-page-more-six{color:#EA594F;background-color:#fff;border-color:#EA594F;border-width:1px;border-style:solid;border-radius:40px;} +.mw-page-more-six:hover{color:#fff;background:#EA594F;border-color:#EA594F;border-width:1px;border-style:solid;} diff --git a/jpress-template/src/main/webapp/templates/daotian/css/railscasts.css b/jpress-template/src/main/webapp/templates/daotian/css/railscasts.css new file mode 100755 index 0000000000000000000000000000000000000000..a14fb1f8394bdd9fd3c8e4cda031e84c0a08580e --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/css/railscasts.css @@ -0,0 +1,25 @@ +/* + +Railscasts-like style (c) Visoft, Inc. (Damien White) + +*/ +.hljs{display:block;overflow-x:auto;padding:0.5em;background:#232323;color:#e6e1dc;} +.hljs-comment,.hljs-quote{color:#bc9458;font-style:italic;} +.hljs-keyword,.hljs-selector-tag{color:#c26230;} +.hljs-string,.hljs-number,.hljs-regexp,.hljs-variable,.hljs-template-variable{color:#a5c261;} +.hljs-subst{color:#519f50;} +.hljs-tag,.hljs-name{color:#e8bf6a;} +.hljs-type{color:#da4939;} +.hljs-symbol,.hljs-bullet,.hljs-built_in,.hljs-builtin-name,.hljs-attr,.hljs-link{color:#6d9cbe;} +.hljs-params{color:#d0d0ff;} +.hljs-attribute{color:#cda869;} +.hljs-meta{color:#9b859d;} +.hljs-title,.hljs-section{color:#ffc66d;} +.hljs-addition{background-color:#144212;color:#e6e1dc;display:inline-block;width:100%;} +.hljs-deletion{background-color:#600;color:#e6e1dc;display:inline-block;width:100%;} +.hljs-selector-class{color:#9b703f;} +.hljs-selector-id{color:#8b98ab;} +.hljs-emphasis{font-style:italic;} +.hljs-strong{font-weight:bold;} +.hljs-link{text-decoration:underline;} + diff --git a/jpress-template/src/main/webapp/templates/daotian/css/reset.mobile.css b/jpress-template/src/main/webapp/templates/daotian/css/reset.mobile.css new file mode 100644 index 0000000000000000000000000000000000000000..02bc1b579e721a7aa0057685b0303a6d25224ceb --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/css/reset.mobile.css @@ -0,0 +1,224 @@ +@charset "UTF-8"; +/* +CSS Reset +*/ +/*布局(grid)(.g-);模块(module)(.m-);元件(unit)(.u-);功能(function)(.f-);皮肤(skin)(.s-);状态(.z-)*/ +/* reset */ +html { height:100%; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; -webkit-font-smoothing: antialiased!important;} +body,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,hr,button,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { margin:0; padding:0;} +body,button, input, select, textarea {font: 12px/1 "Microsoft Yahei","Helvetica Neue", Helvetica, STHeiTi, Arial, sans-serif; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; -webkit-font-smoothing: antialiased!important;} +input.form-control{font:12px/1 "Microsoft Yahei","Helvetica Neue", Helvetica, STHeiTi, Arial, sans-serif;} +body { background-color:transparent; min-height:100%; height:auto !important; height:100%;} +img { border:0; vertical-align:middle; -ms-interpolation-mode:bicubic;} +a {text-decoration:none; background-color: transparent; /* 1 */ -webkit-text-decoration-skip: objects; /* 2 */} +a.focus, a:focus{outline:0;} +a.active.focus, a.active:focus, a.focus:active, a:focus:active, a:hover:active {outline:0;text-decoration:none;font-weight:400;} +a:active,a:visited{text-decoration:none;} + +ul,li,ol { margin:0; padding:0; list-style:none outside none;} +ul.has-style li,ol li { margin-left:25px;} +ul.has-style li { list-style:disc;} +ol li { list-style:decimal;} +ul.inline-style li { float:left; display:inline;} +dl { margin-bottom:18px;} +dt { font-weight:bold;} +dd { margin:0 0 0 9px; padding:0;} +svg:not(:root) { overflow:hidden;} +pre { margin:0; white-space:pre-wrap; white-space:-moz-pre-wrap !important; white-space:-pre-wrap; white-space:-o-pre-wrap; word-wrap:break-word;} + +/*- Form -*/ +button,input,select,textarea { font-size:100%; font-family:tahoma; margin:0; outline:0 none; vertical-align:baseline; *vertical-align:middle; -webkit-appearance: none; -webkit-tap-highlight-color:rgba(255,255,255,0);} +textarea { overflow:auto; vertical-align:top; resize:none;} +button,input { line-height:normal; } +button.active.focus, button.active:focus, button.focus:active, button:focus:active{outline:0;} +input[type="checkbox"],input[type="radio"],.form-radio,.form-checkbox { box-sizing:border-box; padding:0; *height:13px; *width:13px;} + +/*- Html5 -*/ +fieldset { border:1px solid #c0c0c0; margin:0 2px 18px; padding:0.35em 0.625em 0.75em;} +legend { border:0; padding:0; white-space:normal; *margin-left:-7px;} +button::-moz-focus-inner,input::-moz-focus-inner { border:0; padding:0;} +article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary { display:block;} +audio,canvas,video { display:inline-block; *display:inline; *zoom:1;} +audio:not([controls]) { display:none; height:0;} +nav ul,nav ol { list-style:none; list-style-image:none;} +input[type="search"] { -webkit-appearance:textfield; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box;} +input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration { -webkit-appearance:none;} +::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */font: inherit; /* 2 */} +abbr[title] {border-bottom: none; /* 1 */text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */} + +/*- Add the correct display in IE. -*/ +template {display: none;} +/*- Hidden Add the correct display in IE 10-. -*/ +[hidden] {display: none;} + +/*scrollbar*/ +-webkit-overflow-scrolling:touch; +overflow-scrolling:touch; + +::-webkit-scrollbar{width:6px;height: 6px;} +::-webkit-scrollbar-track-piece{margin-right:10px; background-color:#EEE; -webkit-border-radius:8px;} +::-webkit-scrollbar-thumb:vertical{height:8px; background-color:#DDD; -webkit-border-radius:8px;} +::-webkit-scrollbar-thumb:horizontal{ width:6px; background-color:#EEE; -webkit-border-radius:8px;} + +/*------ function ------*/ +/*- f-clearfix -*/ +.f-clearfix:before,.f-clearfix:after,.clearfix:before,.clearfix:after,.f_clearfix:before,.f_clearfix:after { content:""; display:table;} +.f-clearfix:after,.clearfix:after,.f_clearfix:after { clear:both; overflow:hidden;} +.f-clearfix,.clearfix,.f_clearfix { zoom:1;} + +/*- Float -*/ +.f-left { float:left;} +.f-right { float:right;} +.f-no-float{float:none !important;} + +/*- Block -*/ +.f-hide{display:none !important;} +.f-inline {display:inline !important;} +.f-inlineblock{display:inline-block !important;} +.f-block{display:block;} +.f-display-table{display:table;} +.f-table-cell{display:table-cell;} +.f-middle{ vertical-align:middle !important; } + +/*- Overflow -*/ +.f-break{word-break:break-all; word-wrap:break-word;} +.f-ellipsis{overflow:hidden; white-space:nowrap; text-overflow:ellipsis;} +.f-overflow{overflow:hidden;} +.f-no-overflow{overflow:initial !important;} + +/*- position -*/ +.f-fixed{position:fixed !important; z-index:99;} +.f-relative{position:relative;} +.f-absolute{position:absolute;} + +/*- scroll -*/ +.f-scroll-y{overflow-y:scroll;} + +/*- Text-align -*/ +.text-left{ text-align:left !important;} +.text-right{ text-align:right !important;} +.text-center{ text-align:center !important;} +.text-middleAlign{ vertical-align:middle !important; } + +/*- Background -*/ +.background-none{background:none !important;} + +/*- Shadow -*/ +.shadow-none{box-shadow:none; } + +/*- Padding -*/ +.f-p5{padding:5px;} +.f-pt5{padding-top:5px !important;} +.f-pr5{padding-right:5px !important;} +.f-pb5{padding-bottom:5px !important;} +.f-pl5{padding-left:5px !important;} +.f-p10{padding:10px;} +.f-pt10{padding-top:10px !important;} +.f-pr10{padding-right:10px !important;} +.f-pb10{padding-bottom:10px !important;} +.f-pl10{padding-left:10px !important;} +.f-p12{padding:12px;} +.f-pt12{padding-top:12px !important;} +.f-pr12{padding-right:12px !important;} +.f-pb12{padding-bottom:12px !important;} +.f-pl12{padding-left:12px !important;} +.f-p15{padding:15px;} +.f-pt15{padding-top:15px !important;} +.f-pr15{padding-right:15px !important;} +.f-pb15{padding-bottom:15px !important;} +.f-pl15{padding-left:15px !important;} +.f-p18{padding:18px;} +.f-pt18{padding-top:18px !important;} +.f-pr18{padding-right:18px !important;} +.f-pb18{padding-bottom:18px !important;} +.f-pl18{padding-left:18px !important;} +.f-p20{padding:20px;} +.f-pt20{padding-top:20px !important;} +.f-pr20{padding-right:20px !important;} +.f-pb20{padding-bottom:20px !important;} +.f-pl20{padding-left:20px !important;} +.f-p24{padding:24px;} +.f-pt24{padding-top:24px !important;} +.f-pr24{padding-right:24px !important;} +.f-pb24{padding-bottom:24px !important;} +.f-pl24{padding-left:24px !important;} +.f-p30{padding:30px;} +.f-pt30{padding-top:30px !important;} +.f-pr30{padding-right:30px !important;} +.f-pb30{padding-bottom:30px !important;} +.f-pl30{padding-left:30px !important;} + +/*- padding none -*/ +.f-p0{padding:0px !important;} +.f-pt0{padding-top:0px !important;} +.f-pr0{padding-right:0px !important;} +.f-pb0{padding-bottom:0px !important;} +.f-pl0{padding-left:0px !important;} + +/*- Margin -*/ +.f-m5{margin:5px;} +.f-mt5{margin-top:5px !important;} +.f-mr5{margin-right:5px !important;} +.f-mb5{margin-bottom:5px !important;} +.f-ml5{margin-left:5px !important;} +.f-m10{margin:10px;} +.f-mt10{margin-top:10px !important;} +.f-mr10{margin-right:10px !important;} +.f-mb10{margin-bottom:10px !important;} +.f-ml10{margin-left:10px !important;} +.f-m12{margin:12px;} +.f-mt12{margin-top:12px !important;} +.f-mr12{margin-right:12px !important;} +.f-mb12{margin-bottom:12px !important;} +.f-ml12{margin-left:12px !important;} +.f-m15{margin:15px;} +.f-mt15{margin-top:15px !important;} +.f-mr15{margin-right:15px !important;} +.f-mb15{margin-bottom:15px !important;} +.f-ml15{margin-left:15px !important;} +.f-m18{margin:18px;} +.f-mt18{margin-top:18px !important;} +.f-mr18{margin-right:18px !important;} +.f-mb18{margin-bottom:18px !important;} +.f-ml18{margin-left:18px !important;} +.f-m20{margin:20px;} +.f-mt20{margin-top:20px !important;} +.f-mr20{margin-right:20px !important;} +.f-mb20{margin-bottom:20px !important;} +.f-ml20{margin-left:20px !important;} +.f-m30{margin:30px;} +/*- Margin none -*/ +.f-m0{margin:0px !important;} +.f-mt0{margin-top:0px !important;} +.f-mr0{margin-right:0px !important;} +.f-mb0{margin-bottom:0px !important;} +.f-ml0{margin-left:0px !important;} + +/*- about smart -*/ +.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both;opacity:0;filter:alpha(opacity:0)} +.smvContainer{margin:0 auto;position:relative} +.context-menu-list{margin:0;padding:0;min-width:180px;max-width:250px;display:inline-block;position:absolute;list-style-type:none} +.context-menu-item{position:relative} +.control-add-flag{cursor:crosshair!important} +.yibuFrameContent{height:100%} +.smartAbs{position:absolute} +.smartFixed{position:fixed!important} +.smart-deleted,.smart-none{display:none} +.sm-context-menu{background-color:#fff;box-shadow:0 0 15px rgba(0,0,0,.15),0 0 1px 1px rgba(0,0,0,.1);content:'';position:absolute;line-height:1.2;padding-top:0;padding-bottom:0;cursor:default;margin:0;font-size:15px;overflow:visible;border-radius:3px} +div.zoomDiv{z-index:999999999;position:absolute;top:0;left:0;width:200px;height:200px;background:#fff;border:1px solid #CCC;display:none;text-align:center;overflow:hidden} +.ui-hide-handler{display:none!important;} + +/*- 页面模板布局 -*/ +.main-layout-wrapper {position: relative;} +.main-layout {position: relative;margin: 0 auto;} +.header {height: 200px;} +.footer {height: 200px;} + +/*- 所有容器类控件 -*/ +.smAreaC{position:relative; } + +/*-widget nodata -*/ +.m-nodata{padding:12px 14px 12px 10px; border:1px #EEE solid;} +.m-nodata .m-datain{display:table;} +.m-nodata .m-datain .m-dataimg{width:60px; height:auto; float:left; margin-right:6px;} +.m-nodata .m-datain .m-datatext{display:table-cell; vertical-align:middle;line-height:18px; color:#4a4a4a;} diff --git a/jpress-template/src/main/webapp/templates/daotian/error.html b/jpress-template/src/main/webapp/templates/daotian/error.html new file mode 100755 index 0000000000000000000000000000000000000000..acda611f7c2b9be3c1887940d25ba27579147d9d --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/error.html @@ -0,0 +1,22 @@ + + + + + + + #(SEO_TITLE ?? (WEB_TITLE + '-' + WEB_SUBTITLE)) + + + + + + + + +
+
+
404
+
+
+ + diff --git a/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.eot b/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.eot new file mode 100644 index 0000000000000000000000000000000000000000..c394765b25f3649c4edb278f63c3daf61f47a588 Binary files /dev/null and b/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.eot differ diff --git a/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.svg b/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.svg new file mode 100644 index 0000000000000000000000000000000000000000..8b12ae43b9af304e46cbe69a14962dcdc352429c --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.svg @@ -0,0 +1,963 @@ + + + + + +Created by iconfont + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.ttf b/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8bd1021fcee8f732d8ef129855ce00c5c34d9990 Binary files /dev/null and b/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.ttf differ diff --git a/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.woff b/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.woff new file mode 100644 index 0000000000000000000000000000000000000000..87d8abe63ebd774e548f141c85f6fcc8792605da Binary files /dev/null and b/jpress-template/src/main/webapp/templates/daotian/fonts/iconfont.woff differ diff --git a/jpress-template/src/main/webapp/templates/daotian/img/blog-image.jpg b/jpress-template/src/main/webapp/templates/daotian/img/blog-image.jpg new file mode 100755 index 0000000000000000000000000000000000000000..c2b1fa66e38049918110887e7945f7f8d3865716 Binary files /dev/null and b/jpress-template/src/main/webapp/templates/daotian/img/blog-image.jpg differ diff --git a/jpress-template/src/main/webapp/templates/daotian/img/list-image.jpg b/jpress-template/src/main/webapp/templates/daotian/img/list-image.jpg new file mode 100755 index 0000000000000000000000000000000000000000..9f42cb7a22f4f4fd1ffcf9de3db5c829bd57fbe3 Binary files /dev/null and b/jpress-template/src/main/webapp/templates/daotian/img/list-image.jpg differ diff --git a/jpress-template/src/main/webapp/templates/daotian/img/none.png b/jpress-template/src/main/webapp/templates/daotian/img/none.png new file mode 100644 index 0000000000000000000000000000000000000000..2112a270b766b126339d859bf5f73a5058a0beaa Binary files /dev/null and b/jpress-template/src/main/webapp/templates/daotian/img/none.png differ diff --git a/jpress-template/src/main/webapp/templates/daotian/img/sidebar-image.jpg b/jpress-template/src/main/webapp/templates/daotian/img/sidebar-image.jpg new file mode 100755 index 0000000000000000000000000000000000000000..74c25ae600a28127a4042b0cd9962d5f91d4c05a Binary files /dev/null and b/jpress-template/src/main/webapp/templates/daotian/img/sidebar-image.jpg differ diff --git a/jpress-template/src/main/webapp/templates/daotian/index.html b/jpress-template/src/main/webapp/templates/daotian/index.html new file mode 100755 index 0000000000000000000000000000000000000000..c25a14cd4cebdb81cf1e70c6626412e67fa5d788 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/index.html @@ -0,0 +1,48 @@ +#include("_layout.html") +#@layout() +#define content() +
+ #if(banners && banners.size() > 0) + #include("_carousel.html") + #end + + + +
#option('daotian_slogan', '稻田知识养老—知识让你“老而不衰”')
+ + #for(menu : MENUS) +
+ #categoryArticles( categoryId=menu.id, count=option('index_article_count' ?? 3) ) + 更多 +

#(category.content ??)

+ #for(article : articles) + #include("_article-block.html") + #end + #end +
+ #end + + +
+ + +#include("_footer.html") + +#end \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/admin.js b/jpress-template/src/main/webapp/templates/daotian/js/admin.js new file mode 100644 index 0000000000000000000000000000000000000000..1cd199acb9b69fd65558a542e9a699dc00b94048 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/admin.js @@ -0,0 +1,34 @@ +(function(){ + Vue.config.silent = false; + Vue.config.devtools = true; + $('[data-vue]').each(function(){ + var data = this.getAttribute('data-vue'); + window.datax = new Vue({ + el: '#daotian_banner', + data: { + data: data && JSON.parse(data) || [], + }, + methods: { + loadImg: function (index) { + var that = this; + layer.open({ + type: 2, + title: '选择图片', + anim: 2, + shadeClose: true, + shade: 0.5, + area: ['90%', '90%'], + content: jpress.cpath + '/admin/attachment/browse', + end: function () { + that.$set(that.data, index, layer.data.src); + }, + }); + }, + addImg: function() { + this.data.push(''); + this.loadImg(this.data.length - 1); + }, + } + }); + }); +})(); \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/app.js b/jpress-template/src/main/webapp/templates/daotian/js/app.js new file mode 100644 index 0000000000000000000000000000000000000000..697561d7bf33df3bfc4f1359484b09b2fe22b9b1 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/app.js @@ -0,0 +1,117 @@ +(function(){ + +// 底部导航 +$('.dt-footer a').each(function() { + var a = $(this); + if(a.attr('href') === location.pathname) { + a.addClass('active'); + return false; + } +}); + +// 音乐播放,多个音乐进行切换 TODO: 加载优化 +$(document.body).on('click', '.music-player', function(e){ + e.preventDefault(); + var music = $(this); + var audio = music.find('audio'); + if (!audio) { + return; + } + if (music.hasClass('playing')) { + audio[0].pause(); + music.removeClass('playing'); + return; + } + $('.music-player').removeClass('playing').find('audio').each(function(){ + this.pause(); + }); + audio[0].load(); + audio[0].play(); + music.addClass('playing'); +}); + +// 首页轮播,兼容手机样式 +$('.carousel').swipe({ + swipeLeft: function() { $(this).carousel('next'); }, + swipeRight: function() { $(this).carousel('prev'); }, +}); + +var canCancel = false; +var already = '我们已经收到您的点赞了呦~'; +// 点赞 +$(document.body).on('click', '.btn-star', function(){ + var btn = $(this); + var user = +btn.attr('data-user'); + var star = btn.find('.star'); + if (!user || btn.hasClass('voting')) { + return; + } + + if (!canCancel && btn.hasClass('voted')) { // 不能取消点赞 + window.toastr.clear(); + window.toastr.warning(already); + return; + } + + btn.addClass('voting'); + var num = +star.html() || 0; + star.html(Math.max(0, num + (btn.hasClass('voted') ? -1 : 1))); + btn.toggleClass('voted'); + $.post('/daotian/sso/doStar', { + user: user, + }, function(rst) { + rst = rst || ''; + btn.removeClass('voting'); + if (rst.state === 'ok') { + if (rst.data === 1) { + // TODO: 更新数字,后台返回最新点赞 + window.toastr.clear(); + window.toastr.info('您的点赞是对我们最大的鼓励~'); + } else { + star.html(num); + window.toastr.clear(); + window.toastr.warning(already); + } + } else { + window.toastr.clear(); + window.toastr.error('点赞失败:' + rst.message); + btn.toggleClass('voted'); + star.html(num); + if (rst.code === 301) { + setTimeout(function() { + location.href = '/user/login'; + }, 1000); + } + } + }); +}); + +var starContainer = $('.star-container'); +if (starContainer.length) { + $.get('/daotian/sso/getMyVote', function(rst) { + var stars = rst && rst.data || []; + if (stars.length > 0) { + starContainer.find('.btn-star').each(function(){ + var btn = $(this); + var user = +btn.attr('data-user'); + if (stars.indexOf(user) > -1) { + btn.addClass('voted'); + } + }); + } + }); +} + +// 修正留言分页,后端不认识的路由 +$('#commentPagination a.page-link').each(function(){ + var a = $(this); + var href = a.attr('href'); + if (href && /^\/message-/.test(href)) { + a.attr('href', '/article' + href); + } + if (href && /^\/news-/.test(href)) { + a.attr('href', '/article/category/news' + href); + } +}); + +})(); \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/audio.js b/jpress-template/src/main/webapp/templates/daotian/js/audio.js new file mode 100644 index 0000000000000000000000000000000000000000..618934238335a394c0f3b0882d109d3ac8b03050 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/audio.js @@ -0,0 +1,312 @@ +;!function(factory){ + // AMD模块化加载 + if (typeof define === "function" && define.amd) { + define([ "jquery" ], factory); + } else { + factory(jQuery); + } +}(function($){ + $.extend({ + // 判断是否为对象 + isObject: function (v) { + return Object.prototype.toString.call(v) === "[object Object]"; + }, + // 判断是否为字符串 + isString: function (v) { + return Object.prototype.toString.call(v) === "[object String]"; + }, + // 判断是否为数组 + isArray:function (v) { + return Object.prototype.toString.call(v) === "[object Array]"; + }, + // 判断是否为数字 + isNumber:function (v) { + return Object.prototype.toString.call(v) === "[object Number]"; + }, + // 判断是否为布尔 + isBool: function (v) { + return Object.prototype.toString.call(v) === "[object Boolean]"; + }, + // 判断是否为函数 + isFun: function(v) { + return Object.prototype.toString.call(v) === "[object Function]"; + }, + isWeixin: function(v){ + return v.match(/MicroMessenger/i) === "micromessenger" + }, + // 初始化audio + getAudio: function(audio){ + return $(audio).lzaudio(); + } + }); + + // 创建播放器构造函数 + var Audio = function (el){ + var me = this; + me.$parcel = $(el); + me.$el = $(el).find('audio'); + me.el = me.$el[0]; + }; + + // 创建内部工具函数 + var _Tool = function(_this){ + this.el = _this; + } + + _Tool.prototype = { + // 监听播放暂停状态 + _playState: function(statusBtn){ + var me = this.el; + //初始化监听事件 + me.$el.on('play',function(){ + me.state = true + }).on('pause ended.state',function(){ + me.state = false + }); + }, + + // 规定控制器范围 + _findMoudle: function(moudle){ + var me = this.el, + moudle = me.$parcel.parent().find('[data-lzmoudle=' + moudle + ']'); + return moudle.size() ? moudle : me.$parcel.parent(); + }, + + // 时间格式化 + _timeFormatting: function(second){ + return [~~(second / 60 % 60), ~~(second % 60)].join(":") + .replace(/\b(\d)\b/g, "0$1") + }, + + // 移动端自动播放兼容 + _autoplayCompatibility: function(){ + var me = this.el, + ua = navigator.userAgent.toLowerCase(); + // 微信下自动播放 + if(ua.match(/MicroMessenger/i) == 'micromessenger'){ + wx.config({ + debug: false, + appId: '', + timestamp: 1, + nonceStr: '', + signature: '', + jsApiList: [] + }); + wx.ready(function () { + me.el.autoplay && (me.el.play()) + }); + }else{ + me.el.load(); + me.el.play(); + } + }, + + // 原型指回 + constructor: _Tool + }; + + + Audio.prototype = { + // 默认初始化设置 + setAudio: function(data,callback){ + var me = this, + tool = new _Tool(me); + tool._playState(); + $.isFun(data) && (callback = data); + // 缺省设置 + if($.isString(data)){ + var src= data; + data = {}; + data.src = src, + data.auto = true; + data.loop = true + } + // 默认初始化设置 + if($.isObject(data)){ + if(!!data.src){ + if(!!data.auto || data.auto ==null){ + me.el.src = $.isArray(data.src) ? data.src[0] : data.src; + me.el.autoplay = 'autoplay' + }else if(!!data.srcFlog || data.srcFlog == null){ + me.el.src = $.isArray(data.src) ? data.src[0] : data.src; + }; + if((!!data.load || data.load ==null) && (!data.auto && data.auto!=null) && me.el.src) + me.el.preload = data.preload ==null ? 'load' : data.preload; + (!!data.loop || data.loop ==null) && (me.el.loop = 'loop'); + me.src = data.src; + } + }; + (me.el.autoplay && data.mobile) && tool._autoplayCompatibility(); + $.isFun(callback) && callback.call(me); + return me + }, + + // 控制面板设置 + control: function(data){ + var me = this, + tool = new _Tool(me), + dom = tool._findMoudle('control'); + if($.isObject(data)){ + $.isObject(data.clickBtn) && me.clickBtn(dom.find(data.clickBtn.select),data.clickBtn.callback,dom); + $.isObject(data.setDuration) && me.setDuration(dom.find(data.setDuration.select)); + $.isObject(data.setCurrentTime) && me.setCurrentTime(dom.find(data.setCurrentTime.select)); + $.isObject(data.progressCtrl) && me.progressCtrl([ + dom.find(data.progressCtrl.select[0]), + dom.find(data.progressCtrl.select[1]), + dom.find(data.progressCtrl.select[2]) + ],data.progressCtrl.callback) + } + return me + }, + + // 播放列表 + list: function(data){ + var me = this, + tool = new _Tool(me), + dom = tool._findMoudle('list'); + if($.isObject(data)){ + $.isObject(data.clickBtn) && me.clickBtn(dom.find(data.clickBtn.select),data.clickBtn.callback,dom); + $.isObject(data.end) && me.end(data.end.state,data.end.callback); + } + return me + }, + + // 播放暂停按钮交互 + clickBtn: function(statusBtn,callback,$dom){ + var me = this, + bool = true, btn,moudle; + me.state = me.el.autoplay ? false : true; + // 缺省设置 + (!$.isString(statusBtn) && !statusBtn.size()) && (bool = false); + $.isFun(statusBtn) && (callback = statusBtn); + $dom && (moudle = $dom.data('lzmoudle')); + // 添加监听 + if(bool){ + me.$playBtn = me.$parcel.parent().find(statusBtn); + me.$playBtn.off('click').on('click',function(){ + !$.isNumber(me.el.musicIndex) && (me.el.musicIndex = 0); + moudle == 'list' && (me.el.musicIndex = $(this).index()); + if(!!me.el.src) + !me.state ? me.el.play() : me.el.pause(); + $.isFun(callback) && callback.call(me,me.el.musicIndex,this); + }) + } + me.el.autoplay && (me.el.musicIndex = 0); + $.isFun(callback) && callback.call(me,me.el.musicIndex); + me.el.musicIndex = null; + me.state = false; + return me; + }, + + // 设置总时长 + setDuration: function(durationDom){ + var me = this,dom =me.$parcel.find(durationDom), + tool = new _Tool(me); + if(!!dom.length){ + me.$el.off('durationchange.setDuration').on("durationchange.setDuration", function(){ + dom.html(tool._timeFormatting(me.el.duration)) + }) + } + return me + }, + + // 设置当前时间 + setCurrentTime: function(currentTimeDom){ + var me = this,dom =me.$parcel.find(currentTimeDom), + tool = new _Tool(); + if(!!dom.length){ + me.$el.off('timeupdate.setCurrentTime').on("timeupdate.setCurrentTime", function(){ + dom.html(tool._timeFormatting(me.el.currentTime)); + }); + } + return me; + }, + + // 进度控制 + progressCtrl: function($selectArr,callback){ + var me = this, + tool = new _Tool(me), + flag = false, + progressLength = $selectArr[0].width(), + durationVal,currentTime,touch,move; + // 计算总时长 + me.$el.off('durationchange.progressCtrl').on("durationchange.progressCtrl", function(){ + durationVal = me.el.duration + }); + // 根据当前时长与总时长比例设置进度 + me.$el.off('timeupdate.progressCtrl').on("timeupdate.progressCtrl", function(){ + currentTime = me.el.currentTime / durationVal * 100; + $.isArray($selectArr) && $selectArr[1].css('width',currentTime + '%'); + }); + // 点击进度条某个位置 + $($selectArr[0]).off('click touchstart').on('click touchstart',function(e){ + if(e.target !== $selectArr[2][0] && me.el.src){ + touch = $.isArray(e.originalEvent.touches) ? e.originalEvent.touches[0] : e; + move = touch.offsetX - 5; + move = move < 0 ? 0 : move > progressLength ? progressLength : move; + me.el.currentTime = move / progressLength * durationVal; + } + return false; + }); + // 鼠标或手指点击进度条手柄开关 + $selectArr[2].off('mousedown touchstart').on('mousedown touchstart',function(){ + me.el.src && (flag = true); + }); + // 拖拽滑动进度条 + $(document).off('mousemove touchmove').on('mousemove touchmove',function(e){ + e.preventDefault(); + touch = $.isArray(e.originalEvent.touches) ? e.originalEvent.touches[0] : e; + if(flag){ + move = touch.pageX - $selectArr[0].offset().left - 5; + move = move < 0 ? 0 : move > progressLength ? progressLength : move; + me.el.currentTime = move / progressLength * durationVal; + me.el.currentTime == durationVal && (flag = false); + } + }).off('mouseup touchend').on('mouseup touchend',function(){ + // 鼠标或手指松开进度条手柄开关 + flag = false; + }); + $.isFun(callback) && callback.call(me); + return me; + }, + + // 播放结束后 + end: function(state,callback){ + var me = this, + index, + flag = $.isFun(callback) ? true : false; + me.$el.off('ended.end').on('ended.end',function(){ + if($.isString(state)){ + me.loop == 'loop' && console.warn('参数冲突: 当前单曲循环与列表播放正同时开启'); + index = me.el.musicIndex; + !index && (index = 0); + if(state=='next'){ + index++; + index > me.src.length - 1 && (index = 0); + me.el.src=me.src[index]; + me.el.load(); + me.el.play(); + flag && callback.call(me,index); + me.el.musicIndex = index; + }else if(state=='end'|| !state){ + flag && callback.call(me,index) + } + } + return me; + }); + }, + + // 原型指回 + constructor: Audio + } + + // jQ对象级拓展 原型实例化 + $.fn.extend({ + lzaudio:function(){ + var audio; + audio = new Audio(this); + return audio + } + }) + +}); \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/comment.js b/jpress-template/src/main/webapp/templates/daotian/js/comment.js new file mode 100644 index 0000000000000000000000000000000000000000..837113703bc6e16b11bbda6c9518488bdc52362f --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/comment.js @@ -0,0 +1,58 @@ +window.hljs && window.hljs.initHighlightingOnLoad(); +$('#commentForm').on('submit', function () { + var content = $('#content').val().trim(); + var title = $('#title'); + if (title.length && !title.val().trim()) { + window.toastr.clear(); + window.toastr.warning('评论标题不能为空'); + return false; + } + if (!content) { + window.toastr.clear(); + window.toastr.warning('评论内容不能为空'); + return false; + } + $(this).ajaxSubmit({ + type: 'post', + success: function (data) { + if (data.state == 'ok') { + doRenderComment(data, content); + } else { + window.toastr.clear(); + window.toastr.warning('评论失败:' + data.message); + if (data.errorCode == 9) { + location.href = '/user/login'; // TODO, #(CPATH) + } + } + $('#content, #title').val(''); + }, + error: function () { + window.toastr.clear(); + window.toastr.warning('网络错误,请稍后重试'); + } + }); + return false; +}); + +function doRenderComment(data, content) { + if (data.code == 0) { + data = Object.assign({ + nickname: '游客', + avatar: '/static/commons/img/avatar.png', + content: content, + }, data.user, data.comment); + var tmpl = $.templates('#commentTmpl'); + var html = tmpl.render(data); + $('#newComment').append(html); + } else { + window.toastr.clear(); + window.toastr.info('评论发布成功,管理审核后即可正常显示。'); + } +} + +$('body').on('click','.toReply', function () { + $('#pid').val($(this).attr('data-cid')); + $('#title').val('回复 ' + $(this).attr('data-title')); + $('#content').val('回复 @' + $(this).attr('data-author') + ' :').focus(); +}); + diff --git a/jpress-template/src/main/webapp/templates/daotian/js/highlight.pack.js b/jpress-template/src/main/webapp/templates/daotian/js/highlight.pack.js new file mode 100755 index 0000000000000000000000000000000000000000..b45386be52db55e5ee39f514a00256e7e8c60712 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/highlight.pack.js @@ -0,0 +1,2 @@ +/*! highlight.js v9.12.0 | BSD3 License | git.io/hljslicense */ +!function(e){var n="object"==typeof window&&window||"object"==typeof self&&self;"undefined"!=typeof exports?e(exports):n&&(n.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return n.hljs}))}(function(e){function n(e){return e.replace(/&/g,"&").replace(//g,">")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0===t.index}function a(e){return k.test(e)}function i(e){var n,t,r,i,o=e.className+" ";if(o+=e.parentNode?e.parentNode.className:"",t=B.exec(o))return w(t[1])?t[1]:"no-highlight";for(o=o.split(/\s+/),n=0,r=o.length;r>n;n++)if(i=o[n],a(i)||w(i))return i}function o(e){var n,t={},r=Array.prototype.slice.call(arguments,1);for(n in e)t[n]=e[n];return r.forEach(function(e){for(n in e)t[n]=e[n]}),t}function u(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3===i.nodeType?a+=i.nodeValue.length:1===i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function c(e,r,a){function i(){return e.length&&r.length?e[0].offset!==r[0].offset?e[0].offset"}function u(e){s+=""}function c(e){("start"===e.event?o:u)(e.node)}for(var l=0,s="",f=[];e.length||r.length;){var g=i();if(s+=n(a.substring(l,g[0].offset)),l=g[0].offset,g===e){f.reverse().forEach(u);do c(g.splice(0,1)[0]),g=i();while(g===e&&g.length&&g[0].offset===l);f.reverse().forEach(o)}else"start"===g[0].event?f.push(g[0].node):f.pop(),c(g.splice(0,1)[0])}return s+n(a.substr(l))}function l(e){return e.v&&!e.cached_variants&&(e.cached_variants=e.v.map(function(n){return o(e,{v:null},n)})),e.cached_variants||e.eW&&[o(e)]||[e]}function s(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var o={},u=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");o[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?u("keyword",a.k):x(a.k).forEach(function(e){u(e,a.k[e])}),a.k=o}a.lR=t(a.l||/\w+/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),null==a.r&&(a.r=1),a.c||(a.c=[]),a.c=Array.prototype.concat.apply([],a.c.map(function(e){return l("self"===e?a:e)})),a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var c=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=c.length?t(c.join("|"),!0):{exec:function(){return null}}}}r(e)}function f(e,t,a,i){function o(e,n){var t,a;for(t=0,a=n.c.length;a>t;t++)if(r(n.c[t].bR,e))return n.c[t]}function u(e,n){if(r(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?u(e.parent,n):void 0}function c(e,n){return!a&&r(n.iR,e)}function l(e,n){var t=N.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function p(e,n,t,r){var a=r?"":I.classPrefix,i='',i+n+o}function h(){var e,t,r,a;if(!E.k)return n(k);for(a="",t=0,E.lR.lastIndex=0,r=E.lR.exec(k);r;)a+=n(k.substring(t,r.index)),e=l(E,r),e?(B+=e[1],a+=p(e[0],n(r[0]))):a+=n(r[0]),t=E.lR.lastIndex,r=E.lR.exec(k);return a+n(k.substr(t))}function d(){var e="string"==typeof E.sL;if(e&&!y[E.sL])return n(k);var t=e?f(E.sL,k,!0,x[E.sL]):g(k,E.sL.length?E.sL:void 0);return E.r>0&&(B+=t.r),e&&(x[E.sL]=t.top),p(t.language,t.value,!1,!0)}function b(){L+=null!=E.sL?d():h(),k=""}function v(e){L+=e.cN?p(e.cN,"",!0):"",E=Object.create(e,{parent:{value:E}})}function m(e,n){if(k+=e,null==n)return b(),0;var t=o(n,E);if(t)return t.skip?k+=n:(t.eB&&(k+=n),b(),t.rB||t.eB||(k=n)),v(t,n),t.rB?0:n.length;var r=u(E,n);if(r){var a=E;a.skip?k+=n:(a.rE||a.eE||(k+=n),b(),a.eE&&(k=n));do E.cN&&(L+=C),E.skip||(B+=E.r),E=E.parent;while(E!==r.parent);return r.starts&&v(r.starts,""),a.rE?0:n.length}if(c(n,E))throw new Error('Illegal lexeme "'+n+'" for mode "'+(E.cN||"")+'"');return k+=n,n.length||1}var N=w(e);if(!N)throw new Error('Unknown language: "'+e+'"');s(N);var R,E=i||N,x={},L="";for(R=E;R!==N;R=R.parent)R.cN&&(L=p(R.cN,"",!0)+L);var k="",B=0;try{for(var M,j,O=0;;){if(E.t.lastIndex=O,M=E.t.exec(t),!M)break;j=m(t.substring(O,M.index),M[0]),O=M.index+j}for(m(t.substr(O)),R=E;R.parent;R=R.parent)R.cN&&(L+=C);return{r:B,value:L,language:e,top:E}}catch(T){if(T.message&&-1!==T.message.indexOf("Illegal"))return{r:0,value:n(t)};throw T}}function g(e,t){t=t||I.languages||x(y);var r={r:0,value:n(e)},a=r;return t.filter(w).forEach(function(n){var t=f(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}),a.language&&(r.second_best=a),r}function p(e){return I.tabReplace||I.useBR?e.replace(M,function(e,n){return I.useBR&&"\n"===e?"
":I.tabReplace?n.replace(/\t/g,I.tabReplace):""}):e}function h(e,n,t){var r=n?L[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}function d(e){var n,t,r,o,l,s=i(e);a(s)||(I.useBR?(n=document.createElementNS("http://www.w3.org/1999/xhtml","div"),n.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):n=e,l=n.textContent,r=s?f(s,l,!0):g(l),t=u(n),t.length&&(o=document.createElementNS("http://www.w3.org/1999/xhtml","div"),o.innerHTML=r.value,r.value=c(t,u(o),l)),r.value=p(r.value),e.innerHTML=r.value,e.className=h(e.className,s,r.language),e.result={language:r.language,re:r.r},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.r}))}function b(e){I=o(I,e)}function v(){if(!v.called){v.called=!0;var e=document.querySelectorAll("pre code");E.forEach.call(e,d)}}function m(){addEventListener("DOMContentLoaded",v,!1),addEventListener("load",v,!1)}function N(n,t){var r=y[n]=t(e);r.aliases&&r.aliases.forEach(function(e){L[e]=n})}function R(){return x(y)}function w(e){return e=(e||"").toLowerCase(),y[e]||y[L[e]]}var E=[],x=Object.keys,y={},L={},k=/^(no-?highlight|plain|text)$/i,B=/\blang(?:uage)?-([\w-]+)\b/i,M=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,C="
",I={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};return e.highlight=f,e.highlightAuto=g,e.fixMarkup=p,e.highlightBlock=d,e.configure=b,e.initHighlighting=v,e.initHighlightingOnLoad=m,e.registerLanguage=N,e.listLanguages=R,e.getLanguage=w,e.inherit=o,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},e.C=function(n,t,r){var a=e.inherit({cN:"comment",b:n,e:t,c:[]},r||{});return a.c.push(e.PWM),a.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),a},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e.METHOD_GUARD={b:"\\.\\s*"+e.UIR,r:0},e});hljs.registerLanguage("nginx",function(e){var r={cN:"variable",v:[{b:/\$\d+/},{b:/\$\{/,e:/}/},{b:"[\\$\\@]"+e.UIR}]},b={eW:!0,l:"[a-z/_]+",k:{literal:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},r:0,i:"=>",c:[e.HCM,{cN:"string",c:[e.BE,r],v:[{b:/"/,e:/"/},{b:/'/,e:/'/}]},{b:"([a-z]+):/",e:"\\s",eW:!0,eE:!0,c:[r]},{cN:"regexp",c:[e.BE,r],v:[{b:"\\s\\^",e:"\\s|{|;",rE:!0},{b:"~\\*?\\s+",e:"\\s|{|;",rE:!0},{b:"\\*(\\.[a-z\\-]+)+"},{b:"([a-z\\-]+\\.)+\\*"}]},{cN:"number",b:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{cN:"number",b:"\\b\\d+[kKmMgGdshdwy]*\\b",r:0},r]};return{aliases:["nginxconf"],c:[e.HCM,{b:e.UIR+"\\s+{",rB:!0,e:"{",c:[{cN:"section",b:e.UIR}],r:0},{b:e.UIR+"\\s",e:";|{",rB:!0,c:[{cN:"attribute",b:e.UIR,starts:b}],r:0}],i:"[^\\s\\}]"}});hljs.registerLanguage("java",function(e){var a="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",t=a+"(<"+a+"(\\s*,\\s*"+a+")*>)?",r="false synchronized int abstract float private char boolean static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",s="\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",c={cN:"number",b:s,r:0};return{aliases:["jsp"],k:r,i:/<\/|#/,c:[e.C("/\\*\\*","\\*/",{r:0,c:[{b:/\w+@/,r:0},{cN:"doctag",b:"@[A-Za-z]+"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:"class",bK:"class interface",e:/[{;=]/,eE:!0,k:"class interface",i:/[:"\[\]]/,c:[{bK:"extends implements"},e.UTM]},{bK:"new throw return else",r:0},{cN:"function",b:"("+t+"\\s+)+"+e.UIR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:r,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"params",b:/\(/,e:/\)/,k:r,r:0,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},c,{cN:"meta",b:"@[A-Za-z]+"}]}});hljs.registerLanguage("coffeescript",function(e){var c={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super yield import export from as default await then unless until loop of by when and or is isnt not",literal:"true false null undefined yes no on off",built_in:"npm require console print module global window document"},n="[A-Za-z$_][0-9A-Za-z$_]*",r={cN:"subst",b:/#\{/,e:/}/,k:c},i=[e.BNM,e.inherit(e.CNM,{starts:{e:"(\\s*/)?",r:0}}),{cN:"string",v:[{b:/'''/,e:/'''/,c:[e.BE]},{b:/'/,e:/'/,c:[e.BE]},{b:/"""/,e:/"""/,c:[e.BE,r]},{b:/"/,e:/"/,c:[e.BE,r]}]},{cN:"regexp",v:[{b:"///",e:"///",c:[r,e.HCM]},{b:"//[gim]*",r:0},{b:/\/(?![ *])(\\\/|.)*?\/[gim]*(?=\W|$)/}]},{b:"@"+n},{sL:"javascript",eB:!0,eE:!0,v:[{b:"```",e:"```"},{b:"`",e:"`"}]}];r.c=i;var s=e.inherit(e.TM,{b:n}),t="(\\(.*\\))?\\s*\\B[-=]>",o={cN:"params",b:"\\([^\\(]",rB:!0,c:[{b:/\(/,e:/\)/,k:c,c:["self"].concat(i)}]};return{aliases:["coffee","cson","iced"],k:c,i:/\/\*/,c:i.concat([e.C("###","###"),e.HCM,{cN:"function",b:"^\\s*"+n+"\\s*=\\s*"+t,e:"[-=]>",rB:!0,c:[s,o]},{b:/[:\(,=]\s*/,r:0,c:[{cN:"function",b:t,e:"[-=]>",rB:!0,c:[o]}]},{cN:"class",bK:"class",e:"$",i:/[:="\[\]]/,c:[{bK:"extends",eW:!0,i:/[:="\[\]]/,c:[s]},s]},{b:n+":",e:":",rB:!0,rE:!0,r:0}])}});hljs.registerLanguage("http",function(e){var t="HTTP/[0-9\\.]+";return{aliases:["https"],i:"\\S",c:[{b:"^"+t,e:"$",c:[{cN:"number",b:"\\b\\d{3}\\b"}]},{b:"^[A-Z]+ (.*?) "+t+"$",rB:!0,e:"$",c:[{cN:"string",b:" ",e:" ",eB:!0,eE:!0},{b:t},{cN:"keyword",b:"[A-Z]+"}]},{cN:"attribute",b:"^\\w",e:": ",eE:!0,i:"\\n|\\s|=",starts:{e:"$",r:0}},{b:"\\n\\n",starts:{sL:[],eW:!0}}]}});hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},s={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},a={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/\b-?[a-z\._]+\b/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"meta",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,s,a,t]}});hljs.registerLanguage("shell",function(s){return{aliases:["console"],c:[{cN:"meta",b:"^\\s{0,3}[\\w\\d\\[\\]()@-]*[>%$#]",starts:{e:"$",sL:"bash"}}]}});hljs.registerLanguage("sql",function(e){var t=e.C("--","$");return{cI:!0,i:/[<>{}*#]/,c:[{bK:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment",e:/;/,eW:!0,l:/[\w\.]+/,k:{keyword:"abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias allocate allow alter always analyze ancillary and any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second section securefile security seed segment select self sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null",built_in:"array bigint binary bit blob boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text varchar varying void"},c:[{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[e.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[e.BE]},e.CNM,e.CBCM,t]},e.CBCM,t]}});hljs.registerLanguage("makefile",function(e){var i={cN:"variable",v:[{b:"\\$\\("+e.UIR+"\\)",c:[e.BE]},{b:/\$[@%]*>/,e:/$/,i:"\\n"},t.CLCM,t.CBCM]},a=t.IR+"\\s*\\(",c={keyword:"int float while private char catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignof constexpr decltype noexcept static_assert thread_local restrict _Bool complex _Complex _Imaginary atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and or not",built_in:"std string cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr",literal:"true false nullptr NULL"},n=[e,t.CLCM,t.CBCM,s,r];return{aliases:["c","cc","h","c++","h++","hpp"],k:c,i:"",k:c,c:["self",e]},{b:t.IR+"::",k:c},{v:[{b:/=/,e:/;/},{b:/\(/,e:/\)/},{bK:"new throw return else",e:/;/}],k:c,c:n.concat([{b:/\(/,e:/\)/,k:c,c:n.concat(["self"]),r:0}]),r:0},{cN:"function",b:"("+t.IR+"[\\*&\\s]+)+"+a,rB:!0,e:/[{;=]/,eE:!0,k:c,i:/[^\w\s\*&]/,c:[{b:a,rB:!0,c:[t.TM],r:0},{cN:"params",b:/\(/,e:/\)/,k:c,r:0,c:[t.CLCM,t.CBCM,r,s,e]},t.CLCM,t.CBCM,i]},{cN:"class",bK:"class struct",e:/[{;:]/,c:[{b://,c:["self"]},t.TM]}]),exports:{preprocessor:i,strings:r,k:c}}});hljs.registerLanguage("ini",function(e){var b={cN:"string",c:[e.BE],v:[{b:"'''",e:"'''",r:10},{b:'"""',e:'"""',r:10},{b:'"',e:'"'},{b:"'",e:"'"}]};return{aliases:["toml"],cI:!0,i:/\S/,c:[e.C(";","$"),e.HCM,{cN:"section",b:/^\s*\[+/,e:/\]+/},{b:/^[a-z0-9\[\]_-]+\s*=\s*/,e:"$",rB:!0,c:[{cN:"attr",b:/[a-z0-9\[\]_-]+/},{b:/=/,eW:!0,r:0,c:[{cN:"literal",b:/\bon|off|true|false|yes|no\b/},{cN:"variable",v:[{b:/\$[\w\d"][\w\d_]*/},{b:/\$\{(.*?)}/}]},b,{cN:"number",b:/([\+\-]+)?[\d]+_[\d_]+/},e.NM]}]}]}});hljs.registerLanguage("xml",function(s){var e="[A-Za-z0-9\\._:-]+",t={eW:!0,i:/`]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist"],cI:!0,c:[{cN:"meta",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},s.C("",{r:10}),{b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{b:/<\?(php)?/,e:/\?>/,sL:"php",c:[{b:"/\\*",e:"\\*/",skip:!0}]},{cN:"tag",b:"|$)",e:">",k:{name:"style"},c:[t],starts:{e:"",rE:!0,sL:["css","xml"]}},{cN:"tag",b:"|$)",e:">",k:{name:"script"},c:[t],starts:{e:"",rE:!0,sL:["actionscript","javascript","handlebars","xml"]}},{cN:"meta",v:[{b:/<\?xml/,e:/\?>/,r:10},{b:/<\?\w+/,e:/\?>/}]},{cN:"tag",b:"",c:[{cN:"name",b:/[^\/><\s]+/,r:0},t]}]}});hljs.registerLanguage("css",function(e){var c="[a-zA-Z-][a-zA-Z0-9_-]*",t={b:/[A-Z\_\.\-]+\s*:/,rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:/\S/,e:":",eE:!0,starts:{eW:!0,eE:!0,c:[{b:/[\w-]+\(/,rB:!0,c:[{cN:"built_in",b:/[\w-]+/},{b:/\(/,e:/\)/,c:[e.ASM,e.QSM]}]},e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"number",b:"#[0-9A-Fa-f]+"},{cN:"meta",b:"!important"}]}}]};return{cI:!0,i:/[=\/|'\$]/,c:[e.CBCM,{cN:"selector-id",b:/#[A-Za-z0-9_-]+/},{cN:"selector-class",b:/\.[A-Za-z0-9_-]+/},{cN:"selector-attr",b:/\[/,e:/\]/,i:"$"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{b:"@",e:"[{;]",i:/:/,c:[{cN:"keyword",b:/\w+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[e.ASM,e.QSM,e.CSSNM]}]},{cN:"selector-tag",b:c,r:0},{b:"{",e:"}",i:/\S/,c:[e.CBCM,t]}]}});hljs.registerLanguage("diff",function(e){return{aliases:["patch"],c:[{cN:"meta",r:10,v:[{b:/^@@ +\-\d+,\d+ +\+\d+,\d+ +@@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"comment",v:[{b:/Index: /,e:/$/},{b:/={3,}/,e:/$/},{b:/^\-{3}/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+{3}/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"addition",b:"^\\!",e:"$"}]}});hljs.registerLanguage("javascript",function(e){var r="[A-Za-z$_][0-9A-Za-z$_]*",t={keyword:"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise"},a={cN:"number",v:[{b:"\\b(0[bB][01]+)"},{b:"\\b(0[oO][0-7]+)"},{b:e.CNR}],r:0},n={cN:"subst",b:"\\$\\{",e:"\\}",k:t,c:[]},c={cN:"string",b:"`",e:"`",c:[e.BE,n]};n.c=[e.ASM,e.QSM,c,a,e.RM];var s=n.c.concat([e.CBCM,e.CLCM]);return{aliases:["js","jsx"],k:t,c:[{cN:"meta",r:10,b:/^\s*['"]use (strict|asm)['"]/},{cN:"meta",b:/^#!/,e:/$/},e.ASM,e.QSM,c,e.CLCM,e.CBCM,a,{b:/[{,]\s*/,r:0,c:[{b:r+"\\s*:",rB:!0,r:0,c:[{cN:"attr",b:r,r:0}]}]},{b:"("+e.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[e.CLCM,e.CBCM,e.RM,{cN:"function",b:"(\\(.*?\\)|"+r+")\\s*=>",rB:!0,e:"\\s*=>",c:[{cN:"params",v:[{b:r},{b:/\(\s*\)/},{b:/\(/,e:/\)/,eB:!0,eE:!0,k:t,c:s}]}]},{b://,sL:"xml",c:[{b:/<\w+\s*\/>/,skip:!0},{b:/<\w+/,e:/(\/\w+|\w+\/)>/,skip:!0,c:[{b:/<\w+\s*\/>/,skip:!0},"self"]}]}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[e.inherit(e.TM,{b:r}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,c:s}],i:/\[|%/},{b:/\$[(.]/},e.METHOD_GUARD,{cN:"class",bK:"class",e:/[{;=]/,eE:!0,i:/[:"\[\]]/,c:[{bK:"extends"},e.UTM]},{bK:"constructor",e:/\{/,eE:!0}],i:/#(?!!)/}});hljs.registerLanguage("cs",function(e){var i={keyword:"abstract as base bool break byte case catch char checked const continue decimal default delegate do double enum event explicit extern finally fixed float for foreach goto if implicit in int interface internal is lock long nameof object operator out override params private protected public readonly ref sbyte sealed short sizeof stackalloc static string struct switch this try typeof uint ulong unchecked unsafe ushort using virtual void volatile while add alias ascending async await by descending dynamic equals from get global group into join let on orderby partial remove select set value var where yield",literal:"null false true"},t={cN:"string",b:'@"',e:'"',c:[{b:'""'}]},r=e.inherit(t,{i:/\n/}),a={cN:"subst",b:"{",e:"}",k:i},c=e.inherit(a,{i:/\n/}),n={cN:"string",b:/\$"/,e:'"',i:/\n/,c:[{b:"{{"},{b:"}}"},e.BE,c]},s={cN:"string",b:/\$@"/,e:'"',c:[{b:"{{"},{b:"}}"},{b:'""'},a]},o=e.inherit(s,{i:/\n/,c:[{b:"{{"},{b:"}}"},{b:'""'},c]});a.c=[s,n,t,e.ASM,e.QSM,e.CNM,e.CBCM],c.c=[o,n,r,e.ASM,e.QSM,e.CNM,e.inherit(e.CBCM,{i:/\n/})];var l={v:[s,n,t,e.ASM,e.QSM]},b=e.IR+"(<"+e.IR+"(\\s*,\\s*"+e.IR+")*>)?(\\[\\])?";return{aliases:["csharp"],k:i,i:/::/,c:[e.C("///","$",{rB:!0,c:[{cN:"doctag",v:[{b:"///",r:0},{b:""},{b:""}]}]}),e.CLCM,e.CBCM,{cN:"meta",b:"#",e:"$",k:{"meta-keyword":"if else elif endif define undef warning error line region endregion pragma checksum"}},l,e.CNM,{bK:"class interface",e:/[{;=]/,i:/[^\s:]/,c:[e.TM,e.CLCM,e.CBCM]},{bK:"namespace",e:/[{;=]/,i:/[^\s:]/,c:[e.inherit(e.TM,{b:"[a-zA-Z](\\.?\\w)*"}),e.CLCM,e.CBCM]},{cN:"meta",b:"^\\s*\\[",eB:!0,e:"\\]",eE:!0,c:[{cN:"meta-string",b:/"/,e:/"/}]},{bK:"new return throw await else",r:0},{cN:"function",b:"("+b+"\\s+)+"+e.IR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:i,c:[{b:e.IR+"\\s*\\(",rB:!0,c:[e.TM],r:0},{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,k:i,r:0,c:[l,e.CNM,e.CBCM]},e.CLCM,e.CBCM]}]}});hljs.registerLanguage("perl",function(e){var t="getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when",r={cN:"subst",b:"[$@]\\{",e:"\\}",k:t},s={b:"->{",e:"}"},n={v:[{b:/\$\d/},{b:/[\$%@](\^\w\b|#\w+(::\w+)*|{\w+}|\w+(::\w*)*)/},{b:/[\$%@][^\s\w{]/,r:0}]},i=[e.BE,r,n],o=[n,e.HCM,e.C("^\\=\\w","\\=cut",{eW:!0}),s,{cN:"string",c:i,v:[{b:"q[qwxr]?\\s*\\(",e:"\\)",r:5},{b:"q[qwxr]?\\s*\\[",e:"\\]",r:5},{b:"q[qwxr]?\\s*\\{",e:"\\}",r:5},{b:"q[qwxr]?\\s*\\|",e:"\\|",r:5},{b:"q[qwxr]?\\s*\\<",e:"\\>",r:5},{b:"qw\\s+q",e:"q",r:5},{b:"'",e:"'",c:[e.BE]},{b:'"',e:'"'},{b:"`",e:"`",c:[e.BE]},{b:"{\\w+}",c:[],r:0},{b:"-?\\w+\\s*\\=\\>",c:[],r:0}]},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\/\\/|"+e.RSR+"|\\b(split|return|print|reverse|grep)\\b)\\s*",k:"split return print reverse grep",r:0,c:[e.HCM,{cN:"regexp",b:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",r:10},{cN:"regexp",b:"(m|qr)?/",e:"/[a-z]*",c:[e.BE],r:0}]},{cN:"function",bK:"sub",e:"(\\s*\\(.*?\\))?[;{]",eE:!0,r:5,c:[e.TM]},{b:"-\\w\\b",r:0},{b:"^__DATA__$",e:"^__END__$",sL:"mojolicious",c:[{b:"^@@.*",e:"$",cN:"comment"}]}];return r.c=o,s.c=o,{aliases:["pl","pm"],l:/[\w\.]+/,k:t,c:o}});hljs.registerLanguage("markdown",function(e){return{aliases:["md","mkdown","mkd"],c:[{cN:"section",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"quote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"^```w*s*$",e:"^```s*$"},{b:"`.+?`"},{b:"^( {4}| )",e:"$",r:0}]},{b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].*?[\\)\\]]",rB:!0,c:[{cN:"string",b:"\\[",e:"\\]",eB:!0,rE:!0,r:0},{cN:"link",b:"\\]\\(",e:"\\)",eB:!0,eE:!0},{cN:"symbol",b:"\\]\\[",e:"\\]",eB:!0,eE:!0}],r:10},{b:/^\[[^\n]+\]:/,rB:!0,c:[{cN:"symbol",b:/\[/,e:/\]/,eB:!0,eE:!0},{cN:"link",b:/:\s*/,e:/$/,eB:!0}]}]}});hljs.registerLanguage("php",function(e){var c={b:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*"},i={cN:"meta",b:/<\?(php)?|\?>/},t={cN:"string",c:[e.BE,i],v:[{b:'b"',e:'"'},{b:"b'",e:"'"},e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null})]},a={v:[e.BNM,e.CNM]};return{aliases:["php3","php4","php5","php6"],cI:!0,k:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",c:[e.HCM,e.C("//","$",{c:[i]}),e.C("/\\*","\\*/",{c:[{cN:"doctag",b:"@[A-Za-z]+"}]}),e.C("__halt_compiler.+?;",!1,{eW:!0,k:"__halt_compiler",l:e.UIR}),{cN:"string",b:/<<<['"]?\w+['"]?$/,e:/^\w+;?$/,c:[e.BE,{cN:"subst",v:[{b:/\$\w+/},{b:/\{\$/,e:/\}/}]}]},i,{cN:"keyword",b:/\$this\b/},c,{b:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{cN:"function",bK:"function",e:/[;{]/,eE:!0,i:"\\$|\\[|%",c:[e.UTM,{cN:"params",b:"\\(",e:"\\)",c:["self",c,e.CBCM,t,a]}]},{cN:"class",bK:"class interface",e:"{",eE:!0,i:/[:\(\$"]/,c:[{bK:"extends implements"},e.UTM]},{bK:"namespace",e:";",i:/[\.']/,c:[e.UTM]},{bK:"use",e:";",c:[e.UTM]},{b:"=>"},t,a]}});hljs.registerLanguage("ruby",function(e){var b="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",r={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",literal:"true false nil"},c={cN:"doctag",b:"@[A-Za-z]+"},a={b:"#<",e:">"},s=[e.C("#","$",{c:[c]}),e.C("^\\=begin","^\\=end",{c:[c],r:10}),e.C("^__END__","\\n$")],n={cN:"subst",b:"#\\{",e:"}",k:r},t={cN:"string",c:[e.BE,n],v:[{b:/'/,e:/'/},{b:/"/,e:/"/},{b:/`/,e:/`/},{b:"%[qQwWx]?\\(",e:"\\)"},{b:"%[qQwWx]?\\[",e:"\\]"},{b:"%[qQwWx]?{",e:"}"},{b:"%[qQwWx]?<",e:">"},{b:"%[qQwWx]?/",e:"/"},{b:"%[qQwWx]?%",e:"%"},{b:"%[qQwWx]?-",e:"-"},{b:"%[qQwWx]?\\|",e:"\\|"},{b:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{b:/<<(-?)\w+$/,e:/^\s*\w+$/}]},i={cN:"params",b:"\\(",e:"\\)",endsParent:!0,k:r},d=[t,a,{cN:"class",bK:"class module",e:"$|;",i:/=/,c:[e.inherit(e.TM,{b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{b:"<\\s*",c:[{b:"("+e.IR+"::)?"+e.IR}]}].concat(s)},{cN:"function",bK:"def",e:"$|;",c:[e.inherit(e.TM,{b:b}),i].concat(s)},{b:e.IR+"::"},{cN:"symbol",b:e.UIR+"(\\!|\\?)?:",r:0},{cN:"symbol",b:":(?!\\s)",c:[t,{b:b}],r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{cN:"params",b:/\|/,e:/\|/,k:r},{b:"("+e.RSR+"|unless)\\s*",k:"unless",c:[a,{cN:"regexp",c:[e.BE,n],i:/\n/,v:[{b:"/",e:"/[a-z]*"},{b:"%r{",e:"}[a-z]*"},{b:"%r\\(",e:"\\)[a-z]*"},{b:"%r!",e:"![a-z]*"},{b:"%r\\[",e:"\\][a-z]*"}]}].concat(s),r:0}].concat(s);n.c=d,i.c=d;var l="[>?]>",o="[\\w#]+\\(\\w+\\):\\d+:\\d+>",u="(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>",w=[{b:/^\s*=>/,starts:{e:"$",c:d}},{cN:"meta",b:"^("+l+"|"+o+"|"+u+")",starts:{e:"$",c:d}}];return{aliases:["rb","gemspec","podspec","thor","irb"],k:r,i:/\/\*/,c:s.concat(w).concat(d)}});hljs.registerLanguage("python",function(e){var r={keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},b={cN:"meta",b:/^(>>>|\.\.\.) /},c={cN:"subst",b:/\{/,e:/\}/,k:r,i:/#/},a={cN:"string",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[b],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[b],r:10},{b:/(fr|rf|f)'''/,e:/'''/,c:[b,c]},{b:/(fr|rf|f)"""/,e:/"""/,c:[b,c]},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},{b:/(fr|rf|f)'/,e:/'/,c:[c]},{b:/(fr|rf|f)"/,e:/"/,c:[c]},e.ASM,e.QSM]},s={cN:"number",r:0,v:[{b:e.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:e.CNR+"[lLjJ]?"}]},i={cN:"params",b:/\(/,e:/\)/,c:["self",b,s,a]};return c.c=[a,s,b],{aliases:["py","gyp"],k:r,i:/(<\/|->|\?)|=>/,c:[b,s,a,e.HCM,{v:[{cN:"function",bK:"def"},{cN:"class",bK:"class"}],e:/:/,i:/[${=;\n,]/,c:[e.UTM,i,{b:/->/,eW:!0,k:"None"}]},{cN:"meta",b:/^[\t ]*@/,e:/$/},{b:/\b(print|exec)\(/}]}});hljs.registerLanguage("apache",function(e){var r={cN:"number",b:"[\\$%]\\d+"};return{aliases:["apacheconf"],cI:!0,c:[e.HCM,{cN:"section",b:""},{cN:"attribute",b:/\w+/,r:0,k:{nomarkup:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{e:/$/,r:0,k:{literal:"on off all"},c:[{cN:"meta",b:"\\s\\[",e:"\\]$"},{cN:"variable",b:"[\\$%]\\{",e:"\\}",c:["self",r]},r,e.QSM]}}],i:/\S/}});hljs.registerLanguage("objectivec",function(e){var t={cN:"built_in",b:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},_={keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},i=/[a-zA-Z@][a-zA-Z0-9_]*/,n="@interface @class @protocol @implementation";return{aliases:["mm","objc","obj-c"],k:_,l:i,i:""}]}]},{cN:"class",b:"("+n.split(" ").join("|")+")\\b",e:"({|$)",eE:!0,k:n,l:i,c:[e.UTM]},{b:"\\."+e.UIR,r:0}]}});hljs.registerLanguage("json",function(e){var i={literal:"true false null"},n=[e.QSM,e.CNM],r={e:",",eW:!0,eE:!0,c:n,k:i},t={b:"{",e:"}",c:[{cN:"attr",b:/"/,e:/"/,c:[e.BE],i:"\\n"},e.inherit(r,{b:/:/})],i:"\\S"},c={b:"\\[",e:"\\]",c:[e.inherit(r)],i:"\\S"};return n.splice(n.length,0,t,c),{c:n,k:i,i:"\\S"}}); \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/jquery-ui.min.js b/jpress-template/src/main/webapp/templates/daotian/js/jquery-ui.min.js new file mode 100644 index 0000000000000000000000000000000000000000..64fd8e89ae2cd03aa21b4b5eda84950c5a431291 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/jquery-ui.min.js @@ -0,0 +1,7 @@ +/*! jQuery UI - v1.10.4 - 2014-08-07 +* http://jqueryui.com +* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.draggable.js, jquery.ui.droppable.js, jquery.ui.resizable.js, jquery.ui.selectable.js, jquery.ui.sortable.js, jquery.ui.accordion.js, jquery.ui.button.js, jquery.ui.datepicker.js, jquery.ui.dialog.js, jquery.ui.progressbar.js, jquery.ui.spinner.js, jquery.ui.tabs.js, jquery.ui.tooltip.js +* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ + +(function(e,t){function i(t,i){var a,n,o,r=t.nodeName.toLowerCase();return"area"===r?(a=t.parentNode,n=a.name,t.href&&n&&"map"===a.nodeName.toLowerCase()?(o=e("img[usemap=#"+n+"]")[0],!!o&&s(o)):!1):(/input|select|textarea|button|object/.test(r)?!t.disabled:"a"===r?t.href||i:i)&&s(t)}function s(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}var a=0,n=/^ui-id-\d+$/;e.ui=e.ui||{},e.extend(e.ui,{version:"1.10.4",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({focus:function(t){return function(i,s){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),s&&s.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),scrollParent:function(){var t;return t=e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(i){if(i!==t)return this.css("zIndex",i);if(this.length)for(var s,a,n=e(this[0]);n.length&&n[0]!==document;){if(s=n.css("position"),("absolute"===s||"relative"===s||"fixed"===s)&&(a=parseInt(n.css("zIndex"),10),!isNaN(a)&&0!==a))return a;n=n.parent()}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++a)})},removeUniqueId:function(){return this.each(function(){n.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,s){return!!e.data(t,s[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var s=e.attr(t,"tabindex"),a=isNaN(s);return(a||s>=0)&&i(t,!a)}}),e("").outerWidth(1).jquery||e.each(["Width","Height"],function(i,s){function a(t,i,s,a){return e.each(n,function(){i-=parseFloat(e.css(t,"padding"+this))||0,s&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),a&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var n="Width"===s?["Left","Right"]:["Top","Bottom"],o=s.toLowerCase(),r={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+s]=function(i){return i===t?r["inner"+s].call(this):this.each(function(){e(this).css(o,a(this,i)+"px")})},e.fn["outer"+s]=function(t,i){return"number"!=typeof t?r["outer"+s].call(this,t):this.each(function(){e(this).css(o,a(this,t,!0,i)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.support.selectstart="onselectstart"in document.createElement("div"),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e.extend(e.ui,{plugin:{add:function(t,i,s){var a,n=e.ui[t].prototype;for(a in s)n.plugins[a]=n.plugins[a]||[],n.plugins[a].push([i,s[a]])},call:function(e,t,i){var s,a=e.plugins[t];if(a&&e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType)for(s=0;a.length>s;s++)e.options[a[s][0]]&&a[s][1].apply(e.element,i)}},hasScroll:function(t,i){if("hidden"===e(t).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",a=!1;return t[s]>0?!0:(t[s]=1,a=t[s]>0,t[s]=0,a)}})})(jQuery);(function(e,t){var i=0,s=Array.prototype.slice,a=e.cleanData;e.cleanData=function(t){for(var i,s=0;null!=(i=t[s]);s++)try{e(i).triggerHandler("remove")}catch(n){}a(t)},e.widget=function(i,s,a){var n,r,o,h,l={},u=i.split(".")[0];i=i.split(".")[1],n=u+"-"+i,a||(a=s,s=e.Widget),e.expr[":"][n.toLowerCase()]=function(t){return!!e.data(t,n)},e[u]=e[u]||{},r=e[u][i],o=e[u][i]=function(e,i){return this._createWidget?(arguments.length&&this._createWidget(e,i),t):new o(e,i)},e.extend(o,r,{version:a.version,_proto:e.extend({},a),_childConstructors:[]}),h=new s,h.options=e.widget.extend({},h.options),e.each(a,function(i,a){return e.isFunction(a)?(l[i]=function(){var e=function(){return s.prototype[i].apply(this,arguments)},t=function(e){return s.prototype[i].apply(this,e)};return function(){var i,s=this._super,n=this._superApply;return this._super=e,this._superApply=t,i=a.apply(this,arguments),this._super=s,this._superApply=n,i}}(),t):(l[i]=a,t)}),o.prototype=e.widget.extend(h,{widgetEventPrefix:r?h.widgetEventPrefix||i:i},l,{constructor:o,namespace:u,widgetName:i,widgetFullName:n}),r?(e.each(r._childConstructors,function(t,i){var s=i.prototype;e.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete r._childConstructors):s._childConstructors.push(o),e.widget.bridge(i,o)},e.widget.extend=function(i){for(var a,n,r=s.call(arguments,1),o=0,h=r.length;h>o;o++)for(a in r[o])n=r[o][a],r[o].hasOwnProperty(a)&&n!==t&&(i[a]=e.isPlainObject(n)?e.isPlainObject(i[a])?e.widget.extend({},i[a],n):e.widget.extend({},n):n);return i},e.widget.bridge=function(i,a){var n=a.prototype.widgetFullName||i;e.fn[i]=function(r){var o="string"==typeof r,h=s.call(arguments,1),l=this;return r=!o&&h.length?e.widget.extend.apply(null,[r].concat(h)):r,o?this.each(function(){var s,a=e.data(this,n);return a?e.isFunction(a[r])&&"_"!==r.charAt(0)?(s=a[r].apply(a,h),s!==a&&s!==t?(l=s&&s.jquery?l.pushStack(s.get()):s,!1):t):e.error("no such method '"+r+"' for "+i+" widget instance"):e.error("cannot call methods on "+i+" prior to initialization; "+"attempted to call method '"+r+"'")}):this.each(function(){var t=e.data(this,n);t?t.option(r||{})._init():e.data(this,n,new a(r,this))}),l}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{disabled:!1,create:null},_createWidget:function(t,s){s=e(s||this.defaultElement||this)[0],this.element=e(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this.bindings=e(),this.hoverable=e(),this.focusable=e(),s!==this&&(e.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===s&&this.destroy()}}),this.document=e(s.style?s.ownerDocument:s.document||s),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(i,s){var a,n,r,o=i;if(0===arguments.length)return e.widget.extend({},this.options);if("string"==typeof i)if(o={},a=i.split("."),i=a.shift(),a.length){for(n=o[i]=e.widget.extend({},this.options[i]),r=0;a.length-1>r;r++)n[a[r]]=n[a[r]]||{},n=n[a[r]];if(i=a.pop(),1===arguments.length)return n[i]===t?null:n[i];n[i]=s}else{if(1===arguments.length)return this.options[i]===t?null:this.options[i];o[i]=s}return this._setOptions(o),this},_setOptions:function(e){var t;for(t in e)this._setOption(t,e[t]);return this},_setOption:function(e,t){return this.options[e]=t,"disabled"===e&&(this.widget().toggleClass(this.widgetFullName+"-disabled ui-state-disabled",!!t).attr("aria-disabled",t),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_on:function(i,s,a){var n,r=this;"boolean"!=typeof i&&(a=s,s=i,i=!1),a?(s=n=e(s),this.bindings=this.bindings.add(s)):(a=s,s=this.element,n=this.widget()),e.each(a,function(a,o){function h(){return i||r.options.disabled!==!0&&!e(this).hasClass("ui-state-disabled")?("string"==typeof o?r[o]:o).apply(r,arguments):t}"string"!=typeof o&&(h.guid=o.guid=o.guid||h.guid||e.guid++);var l=a.match(/^(\w+)\s*(.*)$/),u=l[1]+r.eventNamespace,d=l[2];d?n.delegate(d,u,h):s.bind(u,h)})},_off:function(e,t){t=(t||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.unbind(t).undelegate(t)},_delay:function(e,t){function i(){return("string"==typeof e?s[e]:e).apply(s,arguments)}var s=this;return setTimeout(i,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){e(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){e(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){e(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){e(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,s){var a,n,r=this.options[t];if(s=s||{},i=e.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],n=i.originalEvent)for(a in n)a in i||(i[a]=n[a]);return this.element.trigger(i,s),!(e.isFunction(r)&&r.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,i){e.Widget.prototype["_"+t]=function(s,a,n){"string"==typeof a&&(a={effect:a});var r,o=a?a===!0||"number"==typeof a?i:a.effect||i:t;a=a||{},"number"==typeof a&&(a={duration:a}),r=!e.isEmptyObject(a),a.complete=n,a.delay&&s.delay(a.delay),r&&e.effects&&e.effects.effect[o]?s[t](a):o!==t&&s[o]?s[o](a.duration,a.easing,n):s.queue(function(i){e(this)[t](),n&&n.call(s[0]),i()})}})})(jQuery);(function(e){var t=!1;e(document).mouseup(function(){t=!1}),e.widget("ui.mouse",{version:"1.10.4",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var t=this;this.element.bind("mousedown."+this.widgetName,function(e){return t._mouseDown(e)}).bind("click."+this.widgetName,function(i){return!0===e.data(i.target,t.widgetName+".preventClickEvent")?(e.removeData(i.target,t.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):undefined}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(i){if(!t){this._mouseStarted&&this._mouseUp(i),this._mouseDownEvent=i;var s=this,a=1===i.which,n="string"==typeof this.options.cancel&&i.target.nodeName?e(i.target).closest(this.options.cancel).length:!1;return a&&!n&&this._mouseCapture(i)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){s.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(i)&&this._mouseDelayMet(i)&&(this._mouseStarted=this._mouseStart(i)!==!1,!this._mouseStarted)?(i.preventDefault(),!0):(!0===e.data(i.target,this.widgetName+".preventClickEvent")&&e.removeData(i.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(e){return s._mouseMove(e)},this._mouseUpDelegate=function(e){return s._mouseUp(e)},e(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),i.preventDefault(),t=!0,!0)):!0}},_mouseMove:function(t){return e.ui.ie&&(!document.documentMode||9>document.documentMode)&&!t.button?this._mouseUp(t):this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){return e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})})(jQuery);(function(e,t){function i(e,t,i){return[parseFloat(e[0])*(p.test(e[0])?t/100:1),parseFloat(e[1])*(p.test(e[1])?i/100:1)]}function s(t,i){return parseInt(e.css(t,i),10)||0}function a(t){var i=t[0];return 9===i.nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:e.isWindow(i)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()}}e.ui=e.ui||{};var n,r=Math.max,o=Math.abs,h=Math.round,l=/left|center|right/,u=/top|center|bottom/,d=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,p=/%$/,m=e.fn.position;e.position={scrollbarWidth:function(){if(n!==t)return n;var i,s,a=e("
"),r=a.children()[0];return e("body").append(a),i=r.offsetWidth,a.css("overflow","scroll"),s=r.offsetWidth,i===s&&(s=a[0].clientWidth),a.remove(),n=i-s},getScrollInfo:function(t){var i=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),s=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),a="scroll"===i||"auto"===i&&t.widths?"left":i>0?"right":"center",vertical:0>n?"top":a>0?"bottom":"middle"};d>p&&p>o(i+s)&&(h.horizontal="center"),c>f&&f>o(a+n)&&(h.vertical="middle"),h.important=r(o(i),o(s))>r(o(a),o(n))?"horizontal":"vertical",t.using.call(this,e,h)}),u.offset(e.extend(S,{using:l}))})},e.ui.position={fit:{left:function(e,t){var i,s=t.within,a=s.isWindow?s.scrollLeft:s.offset.left,n=s.width,o=e.left-t.collisionPosition.marginLeft,h=a-o,l=o+t.collisionWidth-n-a;t.collisionWidth>n?h>0&&0>=l?(i=e.left+h+t.collisionWidth-n-a,e.left+=h-i):e.left=l>0&&0>=h?a:h>l?a+n-t.collisionWidth:a:h>0?e.left+=h:l>0?e.left-=l:e.left=r(e.left-o,e.left)},top:function(e,t){var i,s=t.within,a=s.isWindow?s.scrollTop:s.offset.top,n=t.within.height,o=e.top-t.collisionPosition.marginTop,h=a-o,l=o+t.collisionHeight-n-a;t.collisionHeight>n?h>0&&0>=l?(i=e.top+h+t.collisionHeight-n-a,e.top+=h-i):e.top=l>0&&0>=h?a:h>l?a+n-t.collisionHeight:a:h>0?e.top+=h:l>0?e.top-=l:e.top=r(e.top-o,e.top)}},flip:{left:function(e,t){var i,s,a=t.within,n=a.offset.left+a.scrollLeft,r=a.width,h=a.isWindow?a.scrollLeft:a.offset.left,l=e.left-t.collisionPosition.marginLeft,u=l-h,d=l+t.collisionWidth-r-h,c="left"===t.my[0]?-t.elemWidth:"right"===t.my[0]?t.elemWidth:0,p="left"===t.at[0]?t.targetWidth:"right"===t.at[0]?-t.targetWidth:0,m=-2*t.offset[0];0>u?(i=e.left+c+p+m+t.collisionWidth-r-n,(0>i||o(u)>i)&&(e.left+=c+p+m)):d>0&&(s=e.left-t.collisionPosition.marginLeft+c+p+m-h,(s>0||d>o(s))&&(e.left+=c+p+m))},top:function(e,t){var i,s,a=t.within,n=a.offset.top+a.scrollTop,r=a.height,h=a.isWindow?a.scrollTop:a.offset.top,l=e.top-t.collisionPosition.marginTop,u=l-h,d=l+t.collisionHeight-r-h,c="top"===t.my[1],p=c?-t.elemHeight:"bottom"===t.my[1]?t.elemHeight:0,m="top"===t.at[1]?t.targetHeight:"bottom"===t.at[1]?-t.targetHeight:0,f=-2*t.offset[1];0>u?(s=e.top+p+m+f+t.collisionHeight-r-n,e.top+p+m+f>u&&(0>s||o(u)>s)&&(e.top+=p+m+f)):d>0&&(i=e.top-t.collisionPosition.marginTop+p+m+f-h,e.top+p+m+f>d&&(i>0||d>o(i))&&(e.top+=p+m+f))}},flipfit:{left:function(){e.ui.position.flip.left.apply(this,arguments),e.ui.position.fit.left.apply(this,arguments)},top:function(){e.ui.position.flip.top.apply(this,arguments),e.ui.position.fit.top.apply(this,arguments)}}},function(){var t,i,s,a,n,r=document.getElementsByTagName("body")[0],o=document.createElement("div");t=document.createElement(r?"div":"body"),s={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},r&&e.extend(s,{position:"absolute",left:"-1000px",top:"-1000px"});for(n in s)t.style[n]=s[n];t.appendChild(o),i=r||document.documentElement,i.insertBefore(t,i.firstChild),o.style.cssText="position: absolute; left: 10.7432222px;",a=e(o).offset().left,e.support.offsetFractions=a>10&&11>a,t.innerHTML="",i.removeChild(t)}()})(jQuery);(function(e){e.widget("ui.draggable",e.ui.mouse,{version:"1.10.4",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"!==this.options.helper||/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},_destroy:function(){this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy()},_mouseCapture:function(t){var i=this.options;return this.helper||i.disabled||e(t.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(t),this.handle?(e(i.iframeFix===!0?"iframe":i.iframeFix).each(function(){e("
").css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(e(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(t){var i=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offsetParent=this.helper.offsetParent(),this.offsetParentCssPosition=this.offsetParent.css("position"),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.offset.scroll=!1,e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!i.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_mouseDrag:function(t,i){if("fixed"===this.offsetParentCssPosition&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",t,s)===!1)return this._mouseUp({}),!1;this.position=s.position}return this.options.axis&&"y"===this.options.axis||(this.helper[0].style.left=this.position.left+"px"),this.options.axis&&"x"===this.options.axis||(this.helper[0].style.top=this.position.top+"px"),e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var i=this,s=!1;return e.ui.ddmanager&&!this.options.dropBehaviour&&(s=e.ui.ddmanager.drop(this,t)),this.dropped&&(s=this.dropped,this.dropped=!1),"original"!==this.options.helper||e.contains(this.element[0].ownerDocument,this.element[0])?("invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",t)!==!1&&i._clear()}):this._trigger("stop",t)!==!1&&this._clear(),!1):!1},_mouseUp:function(t){return e("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){return this.options.handle?!!e(t.target).closest(this.element.find(this.options.handle)).length:!0},_createHelper:function(t){var i=this.options,s=e.isFunction(i.helper)?e(i.helper.apply(this.element[0],[t])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return s.parents("body").length||s.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s[0]===this.element[0]||/(fixed|absolute)/.test(s.css("position"))||s.css("position","absolute"),s},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){var t=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&e.ui.ie)&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var e=this.element.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,i,s,a=this.options;return a.containment?"window"===a.containment?(this.containment=[e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,e(window).scrollLeft()+e(window).width()-this.helperProportions.width-this.margins.left,e(window).scrollTop()+(e(window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],undefined):"document"===a.containment?(this.containment=[0,0,e(document).width()-this.helperProportions.width-this.margins.left,(e(document).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],undefined):a.containment.constructor===Array?(this.containment=a.containment,undefined):("parent"===a.containment&&(a.containment=this.helper[0].parentNode),i=e(a.containment),s=i[0],s&&(t="hidden"!==i.css("overflow"),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(t?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(t?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=i),undefined):(this.containment=null,undefined)},_convertPositionTo:function(t,i){i||(i=this.position);var s="absolute"===t?1:-1,a="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent;return this.offset.scroll||(this.offset.scroll={top:a.scrollTop(),left:a.scrollLeft()}),{top:i.top+this.offset.relative.top*s+this.offset.parent.top*s-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top)*s,left:i.left+this.offset.relative.left*s+this.offset.parent.left*s-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)*s}},_generatePosition:function(t){var i,s,a,n,r=this.options,o="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,h=t.pageX,l=t.pageY;return this.offset.scroll||(this.offset.scroll={top:o.scrollTop(),left:o.scrollLeft()}),this.originalPosition&&(this.containment&&(this.relative_container?(s=this.relative_container.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,t.pageX-this.offset.click.lefti[2]&&(h=i[2]+this.offset.click.left),t.pageY-this.offset.click.top>i[3]&&(l=i[3]+this.offset.click.top)),r.grid&&(a=r.grid[1]?this.originalPageY+Math.round((l-this.originalPageY)/r.grid[1])*r.grid[1]:this.originalPageY,l=i?a-this.offset.click.top>=i[1]||a-this.offset.click.top>i[3]?a:a-this.offset.click.top>=i[1]?a-r.grid[1]:a+r.grid[1]:a,n=r.grid[0]?this.originalPageX+Math.round((h-this.originalPageX)/r.grid[0])*r.grid[0]:this.originalPageX,h=i?n-this.offset.click.left>=i[0]||n-this.offset.click.left>i[2]?n:n-this.offset.click.left>=i[0]?n-r.grid[0]:n+r.grid[0]:n)),{top:l-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top),left:h-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1},_trigger:function(t,i,s){return s=s||this._uiHash(),e.ui.plugin.call(this,t,[i,s]),"drag"===t&&(this.positionAbs=this._convertPositionTo("absolute")),e.Widget.prototype._trigger.call(this,t,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),e.ui.plugin.add("draggable","connectToSortable",{start:function(t,i){var s=e(this).data("ui-draggable"),a=s.options,n=e.extend({},i,{item:s.element});s.sortables=[],e(a.connectToSortable).each(function(){var i=e.data(this,"ui-sortable");i&&!i.options.disabled&&(s.sortables.push({instance:i,shouldRevert:i.options.revert}),i.refreshPositions(),i._trigger("activate",t,n))})},stop:function(t,i){var s=e(this).data("ui-draggable"),a=e.extend({},i,{item:s.element});e.each(s.sortables,function(){this.instance.isOver?(this.instance.isOver=0,s.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=this.shouldRevert),this.instance._mouseStop(t),this.instance.options.helper=this.instance.options._helper,"original"===s.options.helper&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",t,a))})},drag:function(t,i){var s=e(this).data("ui-draggable"),a=this;e.each(s.sortables,function(){var n=!1,r=this;this.instance.positionAbs=s.positionAbs,this.instance.helperProportions=s.helperProportions,this.instance.offset.click=s.offset.click,this.instance._intersectsWith(this.instance.containerCache)&&(n=!0,e.each(s.sortables,function(){return this.instance.positionAbs=s.positionAbs,this.instance.helperProportions=s.helperProportions,this.instance.offset.click=s.offset.click,this!==r&&this.instance._intersectsWith(this.instance.containerCache)&&e.contains(r.instance.element[0],this.instance.element[0])&&(n=!1),n})),n?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=e(a).clone().removeAttr("id").appendTo(this.instance.element).data("ui-sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return i.helper[0]},t.target=this.instance.currentItem[0],this.instance._mouseCapture(t,!0),this.instance._mouseStart(t,!0,!0),this.instance.offset.click.top=s.offset.click.top,this.instance.offset.click.left=s.offset.click.left,this.instance.offset.parent.left-=s.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=s.offset.parent.top-this.instance.offset.parent.top,s._trigger("toSortable",t),s.dropped=this.instance.element,s.currentItem=s.element,this.instance.fromOutside=s),this.instance.currentItem&&this.instance._mouseDrag(t)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",t,this.instance._uiHash(this.instance)),this.instance._mouseStop(t,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),s._trigger("fromSortable",t),s.dropped=!1)})}}),e.ui.plugin.add("draggable","cursor",{start:function(){var t=e("body"),i=e(this).data("ui-draggable").options;t.css("cursor")&&(i._cursor=t.css("cursor")),t.css("cursor",i.cursor)},stop:function(){var t=e(this).data("ui-draggable").options;t._cursor&&e("body").css("cursor",t._cursor)}}),e.ui.plugin.add("draggable","opacity",{start:function(t,i){var s=e(i.helper),a=e(this).data("ui-draggable").options;s.css("opacity")&&(a._opacity=s.css("opacity")),s.css("opacity",a.opacity)},stop:function(t,i){var s=e(this).data("ui-draggable").options;s._opacity&&e(i.helper).css("opacity",s._opacity)}}),e.ui.plugin.add("draggable","scroll",{start:function(){var t=e(this).data("ui-draggable");t.scrollParent[0]!==document&&"HTML"!==t.scrollParent[0].tagName&&(t.overflowOffset=t.scrollParent.offset())},drag:function(t){var i=e(this).data("ui-draggable"),s=i.options,a=!1;i.scrollParent[0]!==document&&"HTML"!==i.scrollParent[0].tagName?(s.axis&&"x"===s.axis||(i.overflowOffset.top+i.scrollParent[0].offsetHeight-t.pageY=0;d--)o=p.snapElements[d].left,h=o+p.snapElements[d].width,l=p.snapElements[d].top,u=l+p.snapElements[d].height,o-f>v||g>h+f||l-f>b||y>u+f||!e.contains(p.snapElements[d].item.ownerDocument,p.snapElements[d].item)?(p.snapElements[d].snapping&&p.options.snap.release&&p.options.snap.release.call(p.element,t,e.extend(p._uiHash(),{snapItem:p.snapElements[d].item})),p.snapElements[d].snapping=!1):("inner"!==m.snapMode&&(s=f>=Math.abs(l-b),a=f>=Math.abs(u-y),n=f>=Math.abs(o-v),r=f>=Math.abs(h-g),s&&(i.position.top=p._convertPositionTo("relative",{top:l-p.helperProportions.height,left:0}).top-p.margins.top),a&&(i.position.top=p._convertPositionTo("relative",{top:u,left:0}).top-p.margins.top),n&&(i.position.left=p._convertPositionTo("relative",{top:0,left:o-p.helperProportions.width}).left-p.margins.left),r&&(i.position.left=p._convertPositionTo("relative",{top:0,left:h}).left-p.margins.left)),c=s||a||n||r,"outer"!==m.snapMode&&(s=f>=Math.abs(l-y),a=f>=Math.abs(u-b),n=f>=Math.abs(o-g),r=f>=Math.abs(h-v),s&&(i.position.top=p._convertPositionTo("relative",{top:l,left:0}).top-p.margins.top),a&&(i.position.top=p._convertPositionTo("relative",{top:u-p.helperProportions.height,left:0}).top-p.margins.top),n&&(i.position.left=p._convertPositionTo("relative",{top:0,left:o}).left-p.margins.left),r&&(i.position.left=p._convertPositionTo("relative",{top:0,left:h-p.helperProportions.width}).left-p.margins.left)),!p.snapElements[d].snapping&&(s||a||n||r||c)&&p.options.snap.snap&&p.options.snap.snap.call(p.element,t,e.extend(p._uiHash(),{snapItem:p.snapElements[d].item})),p.snapElements[d].snapping=s||a||n||r||c)}}),e.ui.plugin.add("draggable","stack",{start:function(){var t,i=this.data("ui-draggable").options,s=e.makeArray(e(i.stack)).sort(function(t,i){return(parseInt(e(t).css("zIndex"),10)||0)-(parseInt(e(i).css("zIndex"),10)||0)});s.length&&(t=parseInt(e(s[0]).css("zIndex"),10)||0,e(s).each(function(i){e(this).css("zIndex",t+i)}),this.css("zIndex",t+s.length))}}),e.ui.plugin.add("draggable","zIndex",{start:function(t,i){var s=e(i.helper),a=e(this).data("ui-draggable").options;s.css("zIndex")&&(a._zIndex=s.css("zIndex")),s.css("zIndex",a.zIndex)},stop:function(t,i){var s=e(this).data("ui-draggable").options;s._zIndex&&e(i.helper).css("zIndex",s._zIndex)}})})(jQuery);(function(e){function t(e,t,i){return e>t&&t+i>e}e.widget("ui.droppable",{version:"1.10.4",widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var t,i=this.options,s=i.accept;this.isover=!1,this.isout=!0,this.accept=e.isFunction(s)?s:function(e){return e.is(s)},this.proportions=function(){return arguments.length?(t=arguments[0],undefined):t?t:t={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight}},e.ui.ddmanager.droppables[i.scope]=e.ui.ddmanager.droppables[i.scope]||[],e.ui.ddmanager.droppables[i.scope].push(this),i.addClasses&&this.element.addClass("ui-droppable")},_destroy:function(){for(var t=0,i=e.ui.ddmanager.droppables[this.options.scope];i.length>t;t++)i[t]===this&&i.splice(t,1);this.element.removeClass("ui-droppable ui-droppable-disabled")},_setOption:function(t,i){"accept"===t&&(this.accept=e.isFunction(i)?i:function(e){return e.is(i)}),e.Widget.prototype._setOption.apply(this,arguments)},_activate:function(t){var i=e.ui.ddmanager.current;this.options.activeClass&&this.element.addClass(this.options.activeClass),i&&this._trigger("activate",t,this.ui(i))},_deactivate:function(t){var i=e.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass),i&&this._trigger("deactivate",t,this.ui(i))},_over:function(t){var i=e.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.addClass(this.options.hoverClass),this._trigger("over",t,this.ui(i)))},_out:function(t){var i=e.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("out",t,this.ui(i)))},_drop:function(t,i){var s=i||e.ui.ddmanager.current,a=!1;return s&&(s.currentItem||s.element)[0]!==this.element[0]?(this.element.find(":data(ui-droppable)").not(".ui-draggable-dragging").each(function(){var t=e.data(this,"ui-droppable");return t.options.greedy&&!t.options.disabled&&t.options.scope===s.options.scope&&t.accept.call(t.element[0],s.currentItem||s.element)&&e.ui.intersect(s,e.extend(t,{offset:t.element.offset()}),t.options.tolerance)?(a=!0,!1):undefined}),a?!1:this.accept.call(this.element[0],s.currentItem||s.element)?(this.options.activeClass&&this.element.removeClass(this.options.activeClass),this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("drop",t,this.ui(s)),this.element):!1):!1},ui:function(e){return{draggable:e.currentItem||e.element,helper:e.helper,position:e.position,offset:e.positionAbs}}}),e.ui.intersect=function(e,i,s){if(!i.offset)return!1;var a,n,r=(e.positionAbs||e.position.absolute).left,o=(e.positionAbs||e.position.absolute).top,h=r+e.helperProportions.width,l=o+e.helperProportions.height,u=i.offset.left,d=i.offset.top,c=u+i.proportions().width,p=d+i.proportions().height;switch(s){case"fit":return r>=u&&c>=h&&o>=d&&p>=l;case"intersect":return r+e.helperProportions.width/2>u&&c>h-e.helperProportions.width/2&&o+e.helperProportions.height/2>d&&p>l-e.helperProportions.height/2;case"pointer":return a=(e.positionAbs||e.position.absolute).left+(e.clickOffset||e.offset.click).left,n=(e.positionAbs||e.position.absolute).top+(e.clickOffset||e.offset.click).top,t(n,d,i.proportions().height)&&t(a,u,i.proportions().width);case"touch":return(o>=d&&p>=o||l>=d&&p>=l||d>o&&l>p)&&(r>=u&&c>=r||h>=u&&c>=h||u>r&&h>c);default:return!1}},e.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(t,i){var s,a,n=e.ui.ddmanager.droppables[t.options.scope]||[],r=i?i.type:null,o=(t.currentItem||t.element).find(":data(ui-droppable)").addBack();e:for(s=0;n.length>s;s++)if(!(n[s].options.disabled||t&&!n[s].accept.call(n[s].element[0],t.currentItem||t.element))){for(a=0;o.length>a;a++)if(o[a]===n[s].element[0]){n[s].proportions().height=0;continue e}n[s].visible="none"!==n[s].element.css("display"),n[s].visible&&("mousedown"===r&&n[s]._activate.call(n[s],i),n[s].offset=n[s].element.offset(),n[s].proportions({width:n[s].element[0].offsetWidth,height:n[s].element[0].offsetHeight}))}},drop:function(t,i){var s=!1;return e.each((e.ui.ddmanager.droppables[t.options.scope]||[]).slice(),function(){this.options&&(!this.options.disabled&&this.visible&&e.ui.intersect(t,this,this.options.tolerance)&&(s=this._drop.call(this,i)||s),!this.options.disabled&&this.visible&&this.accept.call(this.element[0],t.currentItem||t.element)&&(this.isout=!0,this.isover=!1,this._deactivate.call(this,i)))}),s},dragStart:function(t,i){t.element.parentsUntil("body").bind("scroll.droppable",function(){t.options.refreshPositions||e.ui.ddmanager.prepareOffsets(t,i)})},drag:function(t,i){t.options.refreshPositions&&e.ui.ddmanager.prepareOffsets(t,i),e.each(e.ui.ddmanager.droppables[t.options.scope]||[],function(){if(!this.options.disabled&&!this.greedyChild&&this.visible){var s,a,n,r=e.ui.intersect(t,this,this.options.tolerance),o=!r&&this.isover?"isout":r&&!this.isover?"isover":null;o&&(this.options.greedy&&(a=this.options.scope,n=this.element.parents(":data(ui-droppable)").filter(function(){return e.data(this,"ui-droppable").options.scope===a}),n.length&&(s=e.data(n[0],"ui-droppable"),s.greedyChild="isover"===o)),s&&"isover"===o&&(s.isover=!1,s.isout=!0,s._out.call(s,i)),this[o]=!0,this["isout"===o?"isover":"isout"]=!1,this["isover"===o?"_over":"_out"].call(this,i),s&&"isout"===o&&(s.isout=!1,s.isover=!0,s._over.call(s,i)))}})},dragStop:function(t,i){t.element.parentsUntil("body").unbind("scroll.droppable"),t.options.refreshPositions||e.ui.ddmanager.prepareOffsets(t,i)}}})(jQuery);(function(e){function t(e){return parseInt(e,10)||0}function i(e){return!isNaN(parseInt(e,10))}e.widget("ui.resizable",e.ui.mouse,{version:"1.10.4",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_create:function(){var t,i,s,a,n,r=this,o=this.options;if(this.element.addClass("ui-resizable"),e.extend(this,{_aspectRatio:!!o.aspectRatio,aspectRatio:o.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:o.helper||o.ghost||o.animate?o.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(e("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.data("ui-resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=o.handles||(e(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),t=this.handles.split(","),this.handles={},i=0;t.length>i;i++)s=e.trim(t[i]),n="ui-resizable-"+s,a=e("
"),a.css({zIndex:o.zIndex}),"se"===s&&a.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[s]=".ui-resizable-"+s,this.element.append(a);this._renderAxis=function(t){var i,s,a,n;t=t||this.element;for(i in this.handles)this.handles[i].constructor===String&&(this.handles[i]=e(this.handles[i],this.element).show()),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)&&(s=e(this.handles[i],this.element),n=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),a=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),t.css(a,n),this._proportionallyResize()),e(this.handles[i]).length},this._renderAxis(this.element),this._handles=e(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){r.resizing||(this.className&&(a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=a&&a[1]?a[1]:"se")}),o.autoHide&&(this._handles.hide(),e(this.element).addClass("ui-resizable-autohide").mouseenter(function(){o.disabled||(e(this).removeClass("ui-resizable-autohide"),r._handles.show())}).mouseleave(function(){o.disabled||r.resizing||(e(this).addClass("ui-resizable-autohide"),r._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var t,i=function(t){e(t).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),t=this.element,this.originalElement.css({position:t.css("position"),width:t.outerWidth(),height:t.outerHeight(),top:t.css("top"),left:t.css("left")}).insertAfter(t),t.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_mouseCapture:function(t){var i,s,a=!1;for(i in this.handles)s=e(this.handles[i])[0],(s===t.target||e.contains(s,t.target))&&(a=!0);return!this.options.disabled&&a},_mouseStart:function(i){var s,a,n,r=this.options,o=this.element.position(),h=this.element;return this.resizing=!0,/absolute/.test(h.css("position"))?h.css({position:"absolute",top:h.css("top"),left:h.css("left")}):h.is(".ui-draggable")&&h.css({position:"absolute",top:o.top,left:o.left}),this._renderProxy(),s=t(this.helper.css("left")),a=t(this.helper.css("top")),r.containment&&(s+=e(r.containment).scrollLeft()||0,a+=e(r.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:s,top:a},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:h.width(),height:h.height()},this.originalSize=this._helper?{width:h.outerWidth(),height:h.outerHeight()}:{width:h.width(),height:h.height()},this.originalPosition={left:s,top:a},this.sizeDiff={width:h.outerWidth()-h.width(),height:h.outerHeight()-h.height()},this.originalMousePosition={left:i.pageX,top:i.pageY},this.aspectRatio="number"==typeof r.aspectRatio?r.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=e(".ui-resizable-"+this.axis).css("cursor"),e("body").css("cursor","auto"===n?this.axis+"-resize":n),h.addClass("ui-resizable-resizing"),this._propagate("start",i),!0},_mouseDrag:function(t){var i,s=this.helper,a={},n=this.originalMousePosition,r=this.axis,o=this.position.top,h=this.position.left,l=this.size.width,u=this.size.height,d=t.pageX-n.left||0,c=t.pageY-n.top||0,p=this._change[r];return p?(i=p.apply(this,[t,d,c]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(i=this._updateRatio(i,t)),i=this._respectSize(i,t),this._updateCache(i),this._propagate("resize",t),this.position.top!==o&&(a.top=this.position.top+"px"),this.position.left!==h&&(a.left=this.position.left+"px"),this.size.width!==l&&(a.width=this.size.width+"px"),this.size.height!==u&&(a.height=this.size.height+"px"),s.css(a),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),e.isEmptyObject(a)||this._trigger("resize",t,this.ui()),!1):!1},_mouseStop:function(t){this.resizing=!1;var i,s,a,n,r,o,h,l=this.options,u=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),a=s&&e.ui.hasScroll(i[0],"left")?0:u.sizeDiff.height,n=s?0:u.sizeDiff.width,r={width:u.helper.width()-n,height:u.helper.height()-a},o=parseInt(u.element.css("left"),10)+(u.position.left-u.originalPosition.left)||null,h=parseInt(u.element.css("top"),10)+(u.position.top-u.originalPosition.top)||null,l.animate||this.element.css(e.extend(r,{top:h,left:o})),u.helper.height(u.size.height),u.helper.width(u.size.width),this._helper&&!l.animate&&this._proportionallyResize()),e("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updateVirtualBoundaries:function(e){var t,s,a,n,r,o=this.options;r={minWidth:i(o.minWidth)?o.minWidth:0,maxWidth:i(o.maxWidth)?o.maxWidth:1/0,minHeight:i(o.minHeight)?o.minHeight:0,maxHeight:i(o.maxHeight)?o.maxHeight:1/0},(this._aspectRatio||e)&&(t=r.minHeight*this.aspectRatio,a=r.minWidth/this.aspectRatio,s=r.maxHeight*this.aspectRatio,n=r.maxWidth/this.aspectRatio,t>r.minWidth&&(r.minWidth=t),a>r.minHeight&&(r.minHeight=a),r.maxWidth>s&&(r.maxWidth=s),r.maxHeight>n&&(r.maxHeight=n)),this._vBoundaries=r},_updateCache:function(e){this.offset=this.helper.offset(),i(e.left)&&(this.position.left=e.left),i(e.top)&&(this.position.top=e.top),i(e.height)&&(this.size.height=e.height),i(e.width)&&(this.size.width=e.width)},_updateRatio:function(e){var t=this.position,s=this.size,a=this.axis;return i(e.height)?e.width=e.height*this.aspectRatio:i(e.width)&&(e.height=e.width/this.aspectRatio),"sw"===a&&(e.left=t.left+(s.width-e.width),e.top=null),"nw"===a&&(e.top=t.top+(s.height-e.height),e.left=t.left+(s.width-e.width)),e},_respectSize:function(e){var t=this._vBoundaries,s=this.axis,a=i(e.width)&&t.maxWidth&&t.maxWidthe.width,o=i(e.height)&&t.minHeight&&t.minHeight>e.height,h=this.originalPosition.left+this.originalSize.width,l=this.position.top+this.size.height,u=/sw|nw|w/.test(s),d=/nw|ne|n/.test(s);return r&&(e.width=t.minWidth),o&&(e.height=t.minHeight),a&&(e.width=t.maxWidth),n&&(e.height=t.maxHeight),r&&u&&(e.left=h-t.minWidth),a&&u&&(e.left=h-t.maxWidth),o&&d&&(e.top=l-t.minHeight),n&&d&&(e.top=l-t.maxHeight),e.width||e.height||e.left||!e.top?e.width||e.height||e.top||!e.left||(e.left=null):e.top=null,e},_proportionallyResize:function(){if(this._proportionallyResizeElements.length){var e,t,i,s,a,n=this.helper||this.element;for(e=0;this._proportionallyResizeElements.length>e;e++){if(a=this._proportionallyResizeElements[e],!this.borderDif)for(this.borderDif=[],i=[a.css("borderTopWidth"),a.css("borderRightWidth"),a.css("borderBottomWidth"),a.css("borderLeftWidth")],s=[a.css("paddingTop"),a.css("paddingRight"),a.css("paddingBottom"),a.css("paddingLeft")],t=0;i.length>t;t++)this.borderDif[t]=(parseInt(i[t],10)||0)+(parseInt(s[t],10)||0);a.css({height:n.height()-this.borderDif[0]-this.borderDif[2]||0,width:n.width()-this.borderDif[1]-this.borderDif[3]||0})}}},_renderProxy:function(){var t=this.element,i=this.options;this.elementOffset=t.offset(),this._helper?(this.helper=this.helper||e("
"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(e,t){return{width:this.originalSize.width+t}},w:function(e,t){var i=this.originalSize,s=this.originalPosition;return{left:s.left+t,width:i.width-t}},n:function(e,t,i){var s=this.originalSize,a=this.originalPosition;return{top:a.top+i,height:s.height-i}},s:function(e,t,i){return{height:this.originalSize.height+i}},se:function(t,i,s){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,i,s]))},sw:function(t,i,s){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,i,s]))},ne:function(t,i,s){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,i,s]))},nw:function(t,i,s){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,i,s]))}},_propagate:function(t,i){e.ui.plugin.call(this,t,[i,this.ui()]),"resize"!==t&&this._trigger(t,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),e.ui.plugin.add("resizable","animate",{stop:function(t){var i=e(this).data("ui-resizable"),s=i.options,a=i._proportionallyResizeElements,n=a.length&&/textarea/i.test(a[0].nodeName),r=n&&e.ui.hasScroll(a[0],"left")?0:i.sizeDiff.height,o=n?0:i.sizeDiff.width,h={width:i.size.width-o,height:i.size.height-r},l=parseInt(i.element.css("left"),10)+(i.position.left-i.originalPosition.left)||null,u=parseInt(i.element.css("top"),10)+(i.position.top-i.originalPosition.top)||null;i.element.animate(e.extend(h,u&&l?{top:u,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseInt(i.element.css("width"),10),height:parseInt(i.element.css("height"),10),top:parseInt(i.element.css("top"),10),left:parseInt(i.element.css("left"),10)};a&&a.length&&e(a[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",t)}})}}),e.ui.plugin.add("resizable","containment",{start:function(){var i,s,a,n,r,o,h,l=e(this).data("ui-resizable"),u=l.options,d=l.element,c=u.containment,p=c instanceof e?c.get(0):/parent/.test(c)?d.parent().get(0):c;p&&(l.containerElement=e(p),/document/.test(c)||c===document?(l.containerOffset={left:0,top:0},l.containerPosition={left:0,top:0},l.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}):(i=e(p),s=[],e(["Top","Right","Left","Bottom"]).each(function(e,a){s[e]=t(i.css("padding"+a))}),l.containerOffset=i.offset(),l.containerPosition=i.position(),l.containerSize={height:i.innerHeight()-s[3],width:i.innerWidth()-s[1]},a=l.containerOffset,n=l.containerSize.height,r=l.containerSize.width,o=e.ui.hasScroll(p,"left")?p.scrollWidth:r,h=e.ui.hasScroll(p)?p.scrollHeight:n,l.parentData={element:p,left:a.left,top:a.top,width:o,height:h}))},resize:function(t){var i,s,a,n,r=e(this).data("ui-resizable"),o=r.options,h=r.containerOffset,l=r.position,u=r._aspectRatio||t.shiftKey,d={top:0,left:0},c=r.containerElement;c[0]!==document&&/static/.test(c.css("position"))&&(d=h),l.left<(r._helper?h.left:0)&&(r.size.width=r.size.width+(r._helper?r.position.left-h.left:r.position.left-d.left),u&&(r.size.height=r.size.width/r.aspectRatio),r.position.left=o.helper?h.left:0),l.top<(r._helper?h.top:0)&&(r.size.height=r.size.height+(r._helper?r.position.top-h.top:r.position.top),u&&(r.size.width=r.size.height*r.aspectRatio),r.position.top=r._helper?h.top:0),r.offset.left=r.parentData.left+r.position.left,r.offset.top=r.parentData.top+r.position.top,i=Math.abs((r._helper?r.offset.left-d.left:r.offset.left-d.left)+r.sizeDiff.width),s=Math.abs((r._helper?r.offset.top-d.top:r.offset.top-h.top)+r.sizeDiff.height),a=r.containerElement.get(0)===r.element.parent().get(0),n=/relative|absolute/.test(r.containerElement.css("position")),a&&n&&(i-=Math.abs(r.parentData.left)),i+r.size.width>=r.parentData.width&&(r.size.width=r.parentData.width-i,u&&(r.size.height=r.size.width/r.aspectRatio)),s+r.size.height>=r.parentData.height&&(r.size.height=r.parentData.height-s,u&&(r.size.width=r.size.height*r.aspectRatio))},stop:function(){var t=e(this).data("ui-resizable"),i=t.options,s=t.containerOffset,a=t.containerPosition,n=t.containerElement,r=e(t.helper),o=r.offset(),h=r.outerWidth()-t.sizeDiff.width,l=r.outerHeight()-t.sizeDiff.height;t._helper&&!i.animate&&/relative/.test(n.css("position"))&&e(this).css({left:o.left-a.left-s.left,width:h,height:l}),t._helper&&!i.animate&&/static/.test(n.css("position"))&&e(this).css({left:o.left-a.left-s.left,width:h,height:l})}}),e.ui.plugin.add("resizable","alsoResize",{start:function(){var t=e(this).data("ui-resizable"),i=t.options,s=function(t){e(t).each(function(){var t=e(this);t.data("ui-resizable-alsoresize",{width:parseInt(t.width(),10),height:parseInt(t.height(),10),left:parseInt(t.css("left"),10),top:parseInt(t.css("top"),10)})})};"object"!=typeof i.alsoResize||i.alsoResize.parentNode?s(i.alsoResize):i.alsoResize.length?(i.alsoResize=i.alsoResize[0],s(i.alsoResize)):e.each(i.alsoResize,function(e){s(e)})},resize:function(t,i){var s=e(this).data("ui-resizable"),a=s.options,n=s.originalSize,r=s.originalPosition,o={height:s.size.height-n.height||0,width:s.size.width-n.width||0,top:s.position.top-r.top||0,left:s.position.left-r.left||0},h=function(t,s){e(t).each(function(){var t=e(this),a=e(this).data("ui-resizable-alsoresize"),n={},r=s&&s.length?s:t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(r,function(e,t){var i=(a[t]||0)+(o[t]||0);i&&i>=0&&(n[t]=i||null)}),t.css(n)})};"object"!=typeof a.alsoResize||a.alsoResize.nodeType?h(a.alsoResize):e.each(a.alsoResize,function(e,t){h(e,t)})},stop:function(){e(this).removeData("resizable-alsoresize")}}),e.ui.plugin.add("resizable","ghost",{start:function(){var t=e(this).data("ui-resizable"),i=t.options,s=t.size;t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:s.height,width:s.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof i.ghost?i.ghost:""),t.ghost.appendTo(t.helper)},resize:function(){var t=e(this).data("ui-resizable");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=e(this).data("ui-resizable");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),e.ui.plugin.add("resizable","grid",{resize:function(){var t=e(this).data("ui-resizable"),i=t.options,s=t.size,a=t.originalSize,n=t.originalPosition,r=t.axis,o="number"==typeof i.grid?[i.grid,i.grid]:i.grid,h=o[0]||1,l=o[1]||1,u=Math.round((s.width-a.width)/h)*h,d=Math.round((s.height-a.height)/l)*l,c=a.width+u,p=a.height+d,m=i.maxWidth&&c>i.maxWidth,f=i.maxHeight&&p>i.maxHeight,g=i.minWidth&&i.minWidth>c,v=i.minHeight&&i.minHeight>p;i.grid=o,g&&(c+=h),v&&(p+=l),m&&(c-=h),f&&(p-=l),/^(se|s|e)$/.test(r)?(t.size.width=c,t.size.height=p):/^(ne)$/.test(r)?(t.size.width=c,t.size.height=p,t.position.top=n.top-d):/^(sw)$/.test(r)?(t.size.width=c,t.size.height=p,t.position.left=n.left-u):(p-l>0?(t.size.height=p,t.position.top=n.top-d):(t.size.height=l,t.position.top=n.top+a.height-l),c-h>0?(t.size.width=c,t.position.left=n.left-u):(t.size.width=h,t.position.left=n.left+a.width-h))}})})(jQuery);(function(e){e.widget("ui.selectable",e.ui.mouse,{version:"1.10.4",options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var t,i=this;this.element.addClass("ui-selectable"),this.dragged=!1,this.refresh=function(){t=e(i.options.filter,i.element[0]),t.addClass("ui-selectee"),t.each(function(){var t=e(this),i=t.offset();e.data(this,"selectable-item",{element:this,$element:t,left:i.left,top:i.top,right:i.left+t.outerWidth(),bottom:i.top+t.outerHeight(),startselected:!1,selected:t.hasClass("ui-selected"),selecting:t.hasClass("ui-selecting"),unselecting:t.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=t.addClass("ui-selectee"),this._mouseInit(),this.helper=e("
")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled"),this._mouseDestroy()},_mouseStart:function(t){var i=this,s=this.options;this.opos=[t.pageX,t.pageY],this.options.disabled||(this.selectees=e(s.filter,this.element[0]),this._trigger("start",t),e(s.appendTo).append(this.helper),this.helper.css({left:t.pageX,top:t.pageY,width:0,height:0}),s.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var s=e.data(this,"selectable-item");s.startselected=!0,t.metaKey||t.ctrlKey||(s.$element.removeClass("ui-selected"),s.selected=!1,s.$element.addClass("ui-unselecting"),s.unselecting=!0,i._trigger("unselecting",t,{unselecting:s.element}))}),e(t.target).parents().addBack().each(function(){var s,a=e.data(this,"selectable-item");return a?(s=!t.metaKey&&!t.ctrlKey||!a.$element.hasClass("ui-selected"),a.$element.removeClass(s?"ui-unselecting":"ui-selected").addClass(s?"ui-selecting":"ui-unselecting"),a.unselecting=!s,a.selecting=s,a.selected=s,s?i._trigger("selecting",t,{selecting:a.element}):i._trigger("unselecting",t,{unselecting:a.element}),!1):undefined}))},_mouseDrag:function(t){if(this.dragged=!0,!this.options.disabled){var i,s=this,a=this.options,n=this.opos[0],r=this.opos[1],o=t.pageX,h=t.pageY;return n>o&&(i=o,o=n,n=i),r>h&&(i=h,h=r,r=i),this.helper.css({left:n,top:r,width:o-n,height:h-r}),this.selectees.each(function(){var i=e.data(this,"selectable-item"),l=!1;i&&i.element!==s.element[0]&&("touch"===a.tolerance?l=!(i.left>o||n>i.right||i.top>h||r>i.bottom):"fit"===a.tolerance&&(l=i.left>n&&o>i.right&&i.top>r&&h>i.bottom),l?(i.selected&&(i.$element.removeClass("ui-selected"),i.selected=!1),i.unselecting&&(i.$element.removeClass("ui-unselecting"),i.unselecting=!1),i.selecting||(i.$element.addClass("ui-selecting"),i.selecting=!0,s._trigger("selecting",t,{selecting:i.element}))):(i.selecting&&((t.metaKey||t.ctrlKey)&&i.startselected?(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.$element.addClass("ui-selected"),i.selected=!0):(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.startselected&&(i.$element.addClass("ui-unselecting"),i.unselecting=!0),s._trigger("unselecting",t,{unselecting:i.element}))),i.selected&&(t.metaKey||t.ctrlKey||i.startselected||(i.$element.removeClass("ui-selected"),i.selected=!1,i.$element.addClass("ui-unselecting"),i.unselecting=!0,s._trigger("unselecting",t,{unselecting:i.element})))))}),!1}},_mouseStop:function(t){var i=this;return this.dragged=!1,e(".ui-unselecting",this.element[0]).each(function(){var s=e.data(this,"selectable-item");s.$element.removeClass("ui-unselecting"),s.unselecting=!1,s.startselected=!1,i._trigger("unselected",t,{unselected:s.element})}),e(".ui-selecting",this.element[0]).each(function(){var s=e.data(this,"selectable-item");s.$element.removeClass("ui-selecting").addClass("ui-selected"),s.selecting=!1,s.selected=!0,s.startselected=!0,i._trigger("selected",t,{selected:s.element})}),this._trigger("stop",t),this.helper.remove(),!1}})})(jQuery);(function(e){function t(e,t,i){return e>t&&t+i>e}function i(e){return/left|right/.test(e.css("float"))||/inline|table-cell/.test(e.css("display"))}e.widget("ui.sortable",e.ui.mouse,{version:"1.10.4",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_create:function(){var e=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?"x"===e.axis||i(this.items[0].item):!1,this.offset=this.element.offset(),this._mouseInit(),this.ready=!0},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var e=this.items.length-1;e>=0;e--)this.items[e].item.removeData(this.widgetName+"-item");return this},_setOption:function(t,i){"disabled"===t?(this.options[t]=i,this.widget().toggleClass("ui-sortable-disabled",!!i)):e.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(t,i){var s=null,a=!1,n=this;return this.reverting?!1:this.options.disabled||"static"===this.options.type?!1:(this._refreshItems(t),e(t.target).parents().each(function(){return e.data(this,n.widgetName+"-item")===n?(s=e(this),!1):undefined}),e.data(t.target,n.widgetName+"-item")===n&&(s=e(t.target)),s?!this.options.handle||i||(e(this.options.handle,s).find("*").addBack().each(function(){this===t.target&&(a=!0)}),a)?(this.currentItem=s,this._removeCurrentsFromItems(),!0):!1:!1)},_mouseStart:function(t,i,s){var a,n,r=this.options;if(this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(t),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,r.cursorAt&&this._adjustOffsetFromHelper(r.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!==this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),r.containment&&this._setContainment(),r.cursor&&"auto"!==r.cursor&&(n=this.document.find("body"),this.storedCursor=n.css("cursor"),n.css("cursor",r.cursor),this.storedStylesheet=e("").appendTo(n)),r.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",r.opacity)),r.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",r.zIndex)),this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",t,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions(),!s)for(a=this.containers.length-1;a>=0;a--)this.containers[a]._trigger("activate",t,this._uiHash(this));return e.ui.ddmanager&&(e.ui.ddmanager.current=this),e.ui.ddmanager&&!r.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(t),!0},_mouseDrag:function(t){var i,s,a,n,r=this.options,o=!1;for(this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs),this.options.scroll&&(this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-t.pageY=0;i--)if(s=this.items[i],a=s.item[0],n=this._intersectsWithPointer(s),n&&s.instance===this.currentContainer&&a!==this.currentItem[0]&&this.placeholder[1===n?"next":"prev"]()[0]!==a&&!e.contains(this.placeholder[0],a)&&("semi-dynamic"===this.options.type?!e.contains(this.element[0],a):!0)){if(this.direction=1===n?"down":"up","pointer"!==this.options.tolerance&&!this._intersectsWithSides(s))break;this._rearrange(t,s),this._trigger("change",t,this._uiHash());break}return this._contactContainers(t),e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),this._trigger("sort",t,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(t,i){if(t){if(e.ui.ddmanager&&!this.options.dropBehaviour&&e.ui.ddmanager.drop(this,t),this.options.revert){var s=this,a=this.placeholder.offset(),n=this.options.axis,r={};n&&"x"!==n||(r.left=a.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollLeft)),n&&"y"!==n||(r.top=a.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollTop)),this.reverting=!0,e(this.helper).animate(r,parseInt(this.options.revert,10)||500,function(){s._clear(t)})}else this._clear(t,i);return!1}},cancel:function(){if(this.dragging){this._mouseUp({target:null}),"original"===this.options.helper?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var t=this.containers.length-1;t>=0;t--)this.containers[t]._trigger("deactivate",null,this._uiHash(this)),this.containers[t].containerCache.over&&(this.containers[t]._trigger("out",null,this._uiHash(this)),this.containers[t].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),"original"!==this.options.helper&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),e.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?e(this.domPosition.prev).after(this.currentItem):e(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(t){var i=this._getItemsAsjQuery(t&&t.connected),s=[];return t=t||{},e(i).each(function(){var i=(e(t.item||this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[\-=_](.+)/);i&&s.push((t.key||i[1]+"[]")+"="+(t.key&&t.expression?i[1]:i[2]))}),!s.length&&t.key&&s.push(t.key+"="),s.join("&")},toArray:function(t){var i=this._getItemsAsjQuery(t&&t.connected),s=[];return t=t||{},i.each(function(){s.push(e(t.item||this).attr(t.attribute||"id")||"")}),s},_intersectsWith:function(e){var t=this.positionAbs.left,i=t+this.helperProportions.width,s=this.positionAbs.top,a=s+this.helperProportions.height,n=e.left,r=n+e.width,o=e.top,h=o+e.height,l=this.offset.click.top,u=this.offset.click.left,d="x"===this.options.axis||s+l>o&&h>s+l,c="y"===this.options.axis||t+u>n&&r>t+u,p=d&&c;return"pointer"===this.options.tolerance||this.options.forcePointerForContainers||"pointer"!==this.options.tolerance&&this.helperProportions[this.floating?"width":"height"]>e[this.floating?"width":"height"]?p:t+this.helperProportions.width/2>n&&r>i-this.helperProportions.width/2&&s+this.helperProportions.height/2>o&&h>a-this.helperProportions.height/2},_intersectsWithPointer:function(e){var i="x"===this.options.axis||t(this.positionAbs.top+this.offset.click.top,e.top,e.height),s="y"===this.options.axis||t(this.positionAbs.left+this.offset.click.left,e.left,e.width),a=i&&s,n=this._getDragVerticalDirection(),r=this._getDragHorizontalDirection();return a?this.floating?r&&"right"===r||"down"===n?2:1:n&&("down"===n?2:1):!1},_intersectsWithSides:function(e){var i=t(this.positionAbs.top+this.offset.click.top,e.top+e.height/2,e.height),s=t(this.positionAbs.left+this.offset.click.left,e.left+e.width/2,e.width),a=this._getDragVerticalDirection(),n=this._getDragHorizontalDirection();return this.floating&&n?"right"===n&&s||"left"===n&&!s:a&&("down"===a&&i||"up"===a&&!i)},_getDragVerticalDirection:function(){var e=this.positionAbs.top-this.lastPositionAbs.top;return 0!==e&&(e>0?"down":"up")},_getDragHorizontalDirection:function(){var e=this.positionAbs.left-this.lastPositionAbs.left;return 0!==e&&(e>0?"right":"left")},refresh:function(e){return this._refreshItems(e),this.refreshPositions(),this},_connectWith:function(){var e=this.options;return e.connectWith.constructor===String?[e.connectWith]:e.connectWith},_getItemsAsjQuery:function(t){function i(){o.push(this)}var s,a,n,r,o=[],h=[],l=this._connectWith();if(l&&t)for(s=l.length-1;s>=0;s--)for(n=e(l[s]),a=n.length-1;a>=0;a--)r=e.data(n[a],this.widgetFullName),r&&r!==this&&!r.options.disabled&&h.push([e.isFunction(r.options.items)?r.options.items.call(r.element):e(r.options.items,r.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),r]);for(h.push([e.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):e(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]),s=h.length-1;s>=0;s--)h[s][0].each(i);return e(o)},_removeCurrentsFromItems:function(){var t=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=e.grep(this.items,function(e){for(var i=0;t.length>i;i++)if(t[i]===e.item[0])return!1;return!0})},_refreshItems:function(t){this.items=[],this.containers=[this];var i,s,a,n,r,o,h,l,u=this.items,d=[[e.isFunction(this.options.items)?this.options.items.call(this.element[0],t,{item:this.currentItem}):e(this.options.items,this.element),this]],c=this._connectWith();if(c&&this.ready)for(i=c.length-1;i>=0;i--)for(a=e(c[i]),s=a.length-1;s>=0;s--)n=e.data(a[s],this.widgetFullName),n&&n!==this&&!n.options.disabled&&(d.push([e.isFunction(n.options.items)?n.options.items.call(n.element[0],t,{item:this.currentItem}):e(n.options.items,n.element),n]),this.containers.push(n));for(i=d.length-1;i>=0;i--)for(r=d[i][1],o=d[i][0],s=0,l=o.length;l>s;s++)h=e(o[s]),h.data(this.widgetName+"-item",r),u.push({item:h,instance:r,width:0,height:0,left:0,top:0})},refreshPositions:function(t){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());var i,s,a,n;for(i=this.items.length-1;i>=0;i--)s=this.items[i],s.instance!==this.currentContainer&&this.currentContainer&&s.item[0]!==this.currentItem[0]||(a=this.options.toleranceElement?e(this.options.toleranceElement,s.item):s.item,t||(s.width=a.outerWidth(),s.height=a.outerHeight()),n=a.offset(),s.left=n.left,s.top=n.top);if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(i=this.containers.length-1;i>=0;i--)n=this.containers[i].element.offset(),this.containers[i].containerCache.left=n.left,this.containers[i].containerCache.top=n.top,this.containers[i].containerCache.width=this.containers[i].element.outerWidth(),this.containers[i].containerCache.height=this.containers[i].element.outerHeight();return this},_createPlaceholder:function(t){t=t||this;var i,s=t.options;s.placeholder&&s.placeholder.constructor!==String||(i=s.placeholder,s.placeholder={element:function(){var s=t.currentItem[0].nodeName.toLowerCase(),a=e("<"+s+">",t.document[0]).addClass(i||t.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");return"tr"===s?t.currentItem.children().each(function(){e(" ",t.document[0]).attr("colspan",e(this).attr("colspan")||1).appendTo(a)}):"img"===s&&a.attr("src",t.currentItem.attr("src")),i||a.css("visibility","hidden"),a},update:function(e,a){(!i||s.forcePlaceholderSize)&&(a.height()||a.height(t.currentItem.innerHeight()-parseInt(t.currentItem.css("paddingTop")||0,10)-parseInt(t.currentItem.css("paddingBottom")||0,10)),a.width()||a.width(t.currentItem.innerWidth()-parseInt(t.currentItem.css("paddingLeft")||0,10)-parseInt(t.currentItem.css("paddingRight")||0,10)))}}),t.placeholder=e(s.placeholder.element.call(t.element,t.currentItem)),t.currentItem.after(t.placeholder),s.placeholder.update(t,t.placeholder)},_contactContainers:function(s){var a,n,r,o,h,l,u,d,c,p,m=null,f=null;for(a=this.containers.length-1;a>=0;a--)if(!e.contains(this.currentItem[0],this.containers[a].element[0]))if(this._intersectsWith(this.containers[a].containerCache)){if(m&&e.contains(this.containers[a].element[0],m.element[0]))continue;m=this.containers[a],f=a}else this.containers[a].containerCache.over&&(this.containers[a]._trigger("out",s,this._uiHash(this)),this.containers[a].containerCache.over=0);if(m)if(1===this.containers.length)this.containers[f].containerCache.over||(this.containers[f]._trigger("over",s,this._uiHash(this)),this.containers[f].containerCache.over=1);else{for(r=1e4,o=null,p=m.floating||i(this.currentItem),h=p?"left":"top",l=p?"width":"height",u=this.positionAbs[h]+this.offset.click[h],n=this.items.length-1;n>=0;n--)e.contains(this.containers[f].element[0],this.items[n].item[0])&&this.items[n].item[0]!==this.currentItem[0]&&(!p||t(this.positionAbs.top+this.offset.click.top,this.items[n].top,this.items[n].height))&&(d=this.items[n].item.offset()[h],c=!1,Math.abs(d-u)>Math.abs(d+this.items[n][l]-u)&&(c=!0,d+=this.items[n][l]),r>Math.abs(d-u)&&(r=Math.abs(d-u),o=this.items[n],this.direction=c?"up":"down"));if(!o&&!this.options.dropOnEmpty)return;if(this.currentContainer===this.containers[f])return;o?this._rearrange(s,o,null,!0):this._rearrange(s,null,this.containers[f].element,!0),this._trigger("change",s,this._uiHash()),this.containers[f]._trigger("change",s,this._uiHash(this)),this.currentContainer=this.containers[f],this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[f]._trigger("over",s,this._uiHash(this)),this.containers[f].containerCache.over=1}},_createHelper:function(t){var i=this.options,s=e.isFunction(i.helper)?e(i.helper.apply(this.element[0],[t,this.currentItem])):"clone"===i.helper?this.currentItem.clone():this.currentItem;return s.parents("body").length||e("parent"!==i.appendTo?i.appendTo:this.currentItem[0].parentNode)[0].appendChild(s[0]),s[0]===this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(!s[0].style.width||i.forceHelperSize)&&s.width(this.currentItem.width()),(!s[0].style.height||i.forceHelperSize)&&s.height(this.currentItem.height()),s},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&e.ui.ie)&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var e=this.currentItem.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,i,s,a=this.options;"parent"===a.containment&&(a.containment=this.helper[0].parentNode),("document"===a.containment||"window"===a.containment)&&(this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,e("document"===a.containment?document:window).width()-this.helperProportions.width-this.margins.left,(e("document"===a.containment?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]),/^(document|window|parent)$/.test(a.containment)||(t=e(a.containment)[0],i=e(a.containment).offset(),s="hidden"!==e(t).css("overflow"),this.containment=[i.left+(parseInt(e(t).css("borderLeftWidth"),10)||0)+(parseInt(e(t).css("paddingLeft"),10)||0)-this.margins.left,i.top+(parseInt(e(t).css("borderTopWidth"),10)||0)+(parseInt(e(t).css("paddingTop"),10)||0)-this.margins.top,i.left+(s?Math.max(t.scrollWidth,t.offsetWidth):t.offsetWidth)-(parseInt(e(t).css("borderLeftWidth"),10)||0)-(parseInt(e(t).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,i.top+(s?Math.max(t.scrollHeight,t.offsetHeight):t.offsetHeight)-(parseInt(e(t).css("borderTopWidth"),10)||0)-(parseInt(e(t).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top])},_convertPositionTo:function(t,i){i||(i=this.position);var s="absolute"===t?1:-1,a="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,n=/(html|body)/i.test(a[0].tagName);return{top:i.top+this.offset.relative.top*s+this.offset.parent.top*s-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():n?0:a.scrollTop())*s,left:i.left+this.offset.relative.left*s+this.offset.parent.left*s-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():n?0:a.scrollLeft())*s}},_generatePosition:function(t){var i,s,a=this.options,n=t.pageX,r=t.pageY,o="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,h=/(html|body)/i.test(o[0].tagName);return"relative"!==this.cssPosition||this.scrollParent[0]!==document&&this.scrollParent[0]!==this.offsetParent[0]||(this.offset.relative=this._getRelativeOffset()),this.originalPosition&&(this.containment&&(t.pageX-this.offset.click.leftthis.containment[2]&&(n=this.containment[2]+this.offset.click.left),t.pageY-this.offset.click.top>this.containment[3]&&(r=this.containment[3]+this.offset.click.top)),a.grid&&(i=this.originalPageY+Math.round((r-this.originalPageY)/a.grid[1])*a.grid[1],r=this.containment?i-this.offset.click.top>=this.containment[1]&&i-this.offset.click.top<=this.containment[3]?i:i-this.offset.click.top>=this.containment[1]?i-a.grid[1]:i+a.grid[1]:i,s=this.originalPageX+Math.round((n-this.originalPageX)/a.grid[0])*a.grid[0],n=this.containment?s-this.offset.click.left>=this.containment[0]&&s-this.offset.click.left<=this.containment[2]?s:s-this.offset.click.left>=this.containment[0]?s-a.grid[0]:s+a.grid[0]:s)),{top:r-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():h?0:o.scrollTop()),left:n-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():h?0:o.scrollLeft())}},_rearrange:function(e,t,i,s){i?i[0].appendChild(this.placeholder[0]):t.item[0].parentNode.insertBefore(this.placeholder[0],"down"===this.direction?t.item[0]:t.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var a=this.counter;this._delay(function(){a===this.counter&&this.refreshPositions(!s)})},_clear:function(e,t){function i(e,t,i){return function(s){i._trigger(e,s,t._uiHash(t))}}this.reverting=!1;var s,a=[];if(!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null,this.helper[0]===this.currentItem[0]){for(s in this._storedCSS)("auto"===this._storedCSS[s]||"static"===this._storedCSS[s])&&(this._storedCSS[s]="");this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();for(this.fromOutside&&!t&&a.push(function(e){this._trigger("receive",e,this._uiHash(this.fromOutside))}),!this.fromOutside&&this.domPosition.prev===this.currentItem.prev().not(".ui-sortable-helper")[0]&&this.domPosition.parent===this.currentItem.parent()[0]||t||a.push(function(e){this._trigger("update",e,this._uiHash())}),this!==this.currentContainer&&(t||(a.push(function(e){this._trigger("remove",e,this._uiHash())}),a.push(function(e){return function(t){e._trigger("receive",t,this._uiHash(this))}}.call(this,this.currentContainer)),a.push(function(e){return function(t){e._trigger("update",t,this._uiHash(this))}}.call(this,this.currentContainer)))),s=this.containers.length-1;s>=0;s--)t||a.push(i("deactivate",this,this.containers[s])),this.containers[s].containerCache.over&&(a.push(i("out",this,this.containers[s])),this.containers[s].containerCache.over=0);if(this.storedCursor&&(this.document.find("body").css("cursor",this.storedCursor),this.storedStylesheet.remove()),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex","auto"===this._storedZIndex?"":this._storedZIndex),this.dragging=!1,this.cancelHelperRemoval){if(!t){for(this._trigger("beforeStop",e,this._uiHash()),s=0;a.length>s;s++)a[s].call(this,e);this._trigger("stop",e,this._uiHash())}return this.fromOutside=!1,!1}if(t||this._trigger("beforeStop",e,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!==this.currentItem[0]&&this.helper.remove(),this.helper=null,!t){for(s=0;a.length>s;s++)a[s].call(this,e);this._trigger("stop",e,this._uiHash())}return this.fromOutside=!1,!0},_trigger:function(){e.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(t){var i=t||this;return{helper:i.helper,placeholder:i.placeholder||e([]),position:i.position,originalPosition:i.originalPosition,offset:i.positionAbs,item:i.currentItem,sender:t?t.element:null}}})})(jQuery);(function(e){var t=0,i={},s={};i.height=i.paddingTop=i.paddingBottom=i.borderTopWidth=i.borderBottomWidth="hide",s.height=s.paddingTop=s.paddingBottom=s.borderTopWidth=s.borderBottomWidth="show",e.widget("ui.accordion",{version:"1.10.4",options:{active:0,animate:{},collapsible:!1,event:"click",header:"> li > :first-child,> :not(li):even",heightStyle:"auto",icons:{activeHeader:"ui-icon-triangle-1-s",header:"ui-icon-triangle-1-e"},activate:null,beforeActivate:null},_create:function(){var t=this.options;this.prevShow=this.prevHide=e(),this.element.addClass("ui-accordion ui-widget ui-helper-reset").attr("role","tablist"),t.collapsible||t.active!==!1&&null!=t.active||(t.active=0),this._processPanels(),0>t.active&&(t.active+=this.headers.length),this._refresh()},_getCreateEventData:function(){return{header:this.active,panel:this.active.length?this.active.next():e(),content:this.active.length?this.active.next():e()}},_createIcons:function(){var t=this.options.icons;t&&(e("").addClass("ui-accordion-header-icon ui-icon "+t.header).prependTo(this.headers),this.active.children(".ui-accordion-header-icon").removeClass(t.header).addClass(t.activeHeader),this.headers.addClass("ui-accordion-icons"))},_destroyIcons:function(){this.headers.removeClass("ui-accordion-icons").children(".ui-accordion-header-icon").remove()},_destroy:function(){var e;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role"),this.headers.removeClass("ui-accordion-header ui-accordion-header-active ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("aria-controls").removeAttr("tabIndex").each(function(){/^ui-accordion/.test(this.id)&&this.removeAttribute("id")}),this._destroyIcons(),e=this.headers.next().css("display","").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled").each(function(){/^ui-accordion/.test(this.id)&&this.removeAttribute("id")}),"content"!==this.options.heightStyle&&e.css("height","")},_setOption:function(e,t){return"active"===e?(this._activate(t),undefined):("event"===e&&(this.options.event&&this._off(this.headers,this.options.event),this._setupEvents(t)),this._super(e,t),"collapsible"!==e||t||this.options.active!==!1||this._activate(0),"icons"===e&&(this._destroyIcons(),t&&this._createIcons()),"disabled"===e&&this.headers.add(this.headers.next()).toggleClass("ui-state-disabled",!!t),undefined)},_keydown:function(t){if(!t.altKey&&!t.ctrlKey){var i=e.ui.keyCode,s=this.headers.length,a=this.headers.index(t.target),n=!1;switch(t.keyCode){case i.RIGHT:case i.DOWN:n=this.headers[(a+1)%s];break;case i.LEFT:case i.UP:n=this.headers[(a-1+s)%s];break;case i.SPACE:case i.ENTER:this._eventHandler(t);break;case i.HOME:n=this.headers[0];break;case i.END:n=this.headers[s-1]}n&&(e(t.target).attr("tabIndex",-1),e(n).attr("tabIndex",0),n.focus(),t.preventDefault())}},_panelKeyDown:function(t){t.keyCode===e.ui.keyCode.UP&&t.ctrlKey&&e(t.currentTarget).prev().focus()},refresh:function(){var t=this.options;this._processPanels(),t.active===!1&&t.collapsible===!0||!this.headers.length?(t.active=!1,this.active=e()):t.active===!1?this._activate(0):this.active.length&&!e.contains(this.element[0],this.active[0])?this.headers.length===this.headers.find(".ui-state-disabled").length?(t.active=!1,this.active=e()):this._activate(Math.max(0,t.active-1)):t.active=this.headers.index(this.active),this._destroyIcons(),this._refresh()},_processPanels:function(){this.headers=this.element.find(this.options.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all"),this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom").filter(":not(.ui-accordion-content-active)").hide()},_refresh:function(){var i,s=this.options,a=s.heightStyle,n=this.element.parent(),r=this.accordionId="ui-accordion-"+(this.element.attr("id")||++t);this.active=this._findActive(s.active).addClass("ui-accordion-header-active ui-state-active ui-corner-top").removeClass("ui-corner-all"),this.active.next().addClass("ui-accordion-content-active").show(),this.headers.attr("role","tab").each(function(t){var i=e(this),s=i.attr("id"),a=i.next(),n=a.attr("id");s||(s=r+"-header-"+t,i.attr("id",s)),n||(n=r+"-panel-"+t,a.attr("id",n)),i.attr("aria-controls",n),a.attr("aria-labelledby",s)}).next().attr("role","tabpanel"),this.headers.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1}).next().attr({"aria-hidden":"true"}).hide(),this.active.length?this.active.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}).next().attr({"aria-hidden":"false"}):this.headers.eq(0).attr("tabIndex",0),this._createIcons(),this._setupEvents(s.event),"fill"===a?(i=n.height(),this.element.siblings(":visible").each(function(){var t=e(this),s=t.css("position");"absolute"!==s&&"fixed"!==s&&(i-=t.outerHeight(!0))}),this.headers.each(function(){i-=e(this).outerHeight(!0)}),this.headers.next().each(function(){e(this).height(Math.max(0,i-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")):"auto"===a&&(i=0,this.headers.next().each(function(){i=Math.max(i,e(this).css("height","").height())}).height(i))},_activate:function(t){var i=this._findActive(t)[0];i!==this.active[0]&&(i=i||this.active[0],this._eventHandler({target:i,currentTarget:i,preventDefault:e.noop}))},_findActive:function(t){return"number"==typeof t?this.headers.eq(t):e()},_setupEvents:function(t){var i={keydown:"_keydown"};t&&e.each(t.split(" "),function(e,t){i[t]="_eventHandler"}),this._off(this.headers.add(this.headers.next())),this._on(this.headers,i),this._on(this.headers.next(),{keydown:"_panelKeyDown"}),this._hoverable(this.headers),this._focusable(this.headers)},_eventHandler:function(t){var i=this.options,s=this.active,a=e(t.currentTarget),n=a[0]===s[0],r=n&&i.collapsible,o=r?e():a.next(),h=s.next(),l={oldHeader:s,oldPanel:h,newHeader:r?e():a,newPanel:o};t.preventDefault(),n&&!i.collapsible||this._trigger("beforeActivate",t,l)===!1||(i.active=r?!1:this.headers.index(a),this.active=n?e():a,this._toggle(l),s.removeClass("ui-accordion-header-active ui-state-active"),i.icons&&s.children(".ui-accordion-header-icon").removeClass(i.icons.activeHeader).addClass(i.icons.header),n||(a.removeClass("ui-corner-all").addClass("ui-accordion-header-active ui-state-active ui-corner-top"),i.icons&&a.children(".ui-accordion-header-icon").removeClass(i.icons.header).addClass(i.icons.activeHeader),a.next().addClass("ui-accordion-content-active")))},_toggle:function(t){var i=t.newPanel,s=this.prevShow.length?this.prevShow:t.oldPanel;this.prevShow.add(this.prevHide).stop(!0,!0),this.prevShow=i,this.prevHide=s,this.options.animate?this._animate(i,s,t):(s.hide(),i.show(),this._toggleComplete(t)),s.attr({"aria-hidden":"true"}),s.prev().attr("aria-selected","false"),i.length&&s.length?s.prev().attr({tabIndex:-1,"aria-expanded":"false"}):i.length&&this.headers.filter(function(){return 0===e(this).attr("tabIndex")}).attr("tabIndex",-1),i.attr("aria-hidden","false").prev().attr({"aria-selected":"true",tabIndex:0,"aria-expanded":"true"})},_animate:function(e,t,a){var n,r,o,h=this,l=0,u=e.length&&(!t.length||e.index()",options:{disabled:null,text:!0,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset"+this.eventNamespace).bind("reset"+this.eventNamespace,a),"boolean"!=typeof this.options.disabled?this.options.disabled=!!this.element.prop("disabled"):this.element.prop("disabled",this.options.disabled),this._determineButtonType(),this.hasTitle=!!this.buttonElement.attr("title");var s=this,r=this.options,o="checkbox"===this.type||"radio"===this.type,h=o?"":"ui-state-active";null===r.label&&(r.label="input"===this.type?this.buttonElement.val():this.buttonElement.html()),this._hoverable(this.buttonElement),this.buttonElement.addClass(i).attr("role","button").bind("mouseenter"+this.eventNamespace,function(){r.disabled||this===t&&e(this).addClass("ui-state-active")}).bind("mouseleave"+this.eventNamespace,function(){r.disabled||e(this).removeClass(h)}).bind("click"+this.eventNamespace,function(e){r.disabled&&(e.preventDefault(),e.stopImmediatePropagation())}),this._on({focus:function(){this.buttonElement.addClass("ui-state-focus")},blur:function(){this.buttonElement.removeClass("ui-state-focus")}}),o&&this.element.bind("change"+this.eventNamespace,function(){s.refresh()}),"checkbox"===this.type?this.buttonElement.bind("click"+this.eventNamespace,function(){return r.disabled?!1:undefined}):"radio"===this.type?this.buttonElement.bind("click"+this.eventNamespace,function(){if(r.disabled)return!1;e(this).addClass("ui-state-active"),s.buttonElement.attr("aria-pressed","true");var t=s.element[0];n(t).not(t).map(function(){return e(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed","false")}):(this.buttonElement.bind("mousedown"+this.eventNamespace,function(){return r.disabled?!1:(e(this).addClass("ui-state-active"),t=this,s.document.one("mouseup",function(){t=null}),undefined)}).bind("mouseup"+this.eventNamespace,function(){return r.disabled?!1:(e(this).removeClass("ui-state-active"),undefined)}).bind("keydown"+this.eventNamespace,function(t){return r.disabled?!1:((t.keyCode===e.ui.keyCode.SPACE||t.keyCode===e.ui.keyCode.ENTER)&&e(this).addClass("ui-state-active"),undefined)}).bind("keyup"+this.eventNamespace+" blur"+this.eventNamespace,function(){e(this).removeClass("ui-state-active")}),this.buttonElement.is("a")&&this.buttonElement.keyup(function(t){t.keyCode===e.ui.keyCode.SPACE&&e(this).click()})),this._setOption("disabled",r.disabled),this._resetButton()},_determineButtonType:function(){var e,t,i;this.type=this.element.is("[type=checkbox]")?"checkbox":this.element.is("[type=radio]")?"radio":this.element.is("input")?"input":"button","checkbox"===this.type||"radio"===this.type?(e=this.element.parents().last(),t="label[for='"+this.element.attr("id")+"']",this.buttonElement=e.find(t),this.buttonElement.length||(e=e.length?e.siblings():this.element.siblings(),this.buttonElement=e.filter(t),this.buttonElement.length||(this.buttonElement=e.find(t))),this.element.addClass("ui-helper-hidden-accessible"),i=this.element.is(":checked"),i&&this.buttonElement.addClass("ui-state-active"),this.buttonElement.prop("aria-pressed",i)):this.buttonElement=this.element},widget:function(){return this.buttonElement},_destroy:function(){this.element.removeClass("ui-helper-hidden-accessible"),this.buttonElement.removeClass(i+" ui-state-active "+s).removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html()),this.hasTitle||this.buttonElement.removeAttr("title")},_setOption:function(e,t){return this._super(e,t),"disabled"===e?(this.element.prop("disabled",!!t),t&&this.buttonElement.removeClass("ui-state-focus"),undefined):(this._resetButton(),undefined)},refresh:function(){var t=this.element.is("input, button")?this.element.is(":disabled"):this.element.hasClass("ui-button-disabled");t!==this.options.disabled&&this._setOption("disabled",t),"radio"===this.type?n(this.element[0]).each(function(){e(this).is(":checked")?e(this).button("widget").addClass("ui-state-active").attr("aria-pressed","true"):e(this).button("widget").removeClass("ui-state-active").attr("aria-pressed","false")}):"checkbox"===this.type&&(this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed","true"):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed","false"))},_resetButton:function(){if("input"===this.type)return this.options.label&&this.element.val(this.options.label),undefined;var t=this.buttonElement.removeClass(s),i=e("",this.document[0]).addClass("ui-button-text").html(this.options.label).appendTo(t.empty()).text(),a=this.options.icons,n=a.primary&&a.secondary,r=[];a.primary||a.secondary?(this.options.text&&r.push("ui-button-text-icon"+(n?"s":a.primary?"-primary":"-secondary")),a.primary&&t.prepend(""),a.secondary&&t.append(""),this.options.text||(r.push(n?"ui-button-icons-only":"ui-button-icon-only"),this.hasTitle||t.attr("title",e.trim(i)))):r.push("ui-button-text-only"),t.addClass(r.join(" "))}}),e.widget("ui.buttonset",{version:"1.10.4",options:{items:"button, input[type=button], input[type=submit], input[type=reset], input[type=checkbox], input[type=radio], a, :data(ui-button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(e,t){"disabled"===e&&this.buttons.button("option",e,t),this._super(e,t)},refresh:function(){var t="rtl"===this.element.css("direction");this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return e(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(t?"ui-corner-right":"ui-corner-left").end().filter(":last").addClass(t?"ui-corner-left":"ui-corner-right").end().end()},_destroy:function(){this.element.removeClass("ui-buttonset"),this.buttons.map(function(){return e(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy")}})})(jQuery);(function(e,t){function i(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},e.extend(this._defaults,this.regional[""]),this.dpDiv=s(e("
"))}function s(t){var i="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return t.delegate(i,"mouseout",function(){e(this).removeClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).removeClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).removeClass("ui-datepicker-next-hover")}).delegate(i,"mouseover",function(){e.datepicker._isDisabledDatepicker(n.inline?t.parent()[0]:n.input[0])||(e(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),e(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).addClass("ui-datepicker-next-hover"))})}function a(t,i){e.extend(t,i);for(var s in i)null==i[s]&&(t[s]=i[s]);return t}e.extend(e.ui,{datepicker:{version:"1.10.4"}});var n,o="datepicker";e.extend(i.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(e){return a(this._defaults,e||{}),this},_attachDatepicker:function(t,i){var s,a,n;s=t.nodeName.toLowerCase(),a="div"===s||"span"===s,t.id||(this.uuid+=1,t.id="dp"+this.uuid),n=this._newInst(e(t),a),n.settings=e.extend({},i||{}),"input"===s?this._connectDatepicker(t,n):a&&this._inlineDatepicker(t,n)},_newInst:function(t,i){var a=t[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:a,input:t,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:i,dpDiv:i?s(e("
")):this.dpDiv}},_connectDatepicker:function(t,i){var s=e(t);i.append=e([]),i.trigger=e([]),s.hasClass(this.markerClassName)||(this._attachments(s,i),s.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp),this._autoSize(i),e.data(t,o,i),i.settings.disabled&&this._disableDatepicker(t))},_attachments:function(t,i){var s,a,n,o=this._get(i,"appendText"),r=this._get(i,"isRTL");i.append&&i.append.remove(),o&&(i.append=e(""+o+""),t[r?"before":"after"](i.append)),t.unbind("focus",this._showDatepicker),i.trigger&&i.trigger.remove(),s=this._get(i,"showOn"),("focus"===s||"both"===s)&&t.focus(this._showDatepicker),("button"===s||"both"===s)&&(a=this._get(i,"buttonText"),n=this._get(i,"buttonImage"),i.trigger=e(this._get(i,"buttonImageOnly")?e("").addClass(this._triggerClass).attr({src:n,alt:a,title:a}):e("").addClass(this._triggerClass).html(n?e("").attr({src:n,alt:a,title:a}):a)),t[r?"before":"after"](i.trigger),i.trigger.click(function(){return e.datepicker._datepickerShowing&&e.datepicker._lastInput===t[0]?e.datepicker._hideDatepicker():e.datepicker._datepickerShowing&&e.datepicker._lastInput!==t[0]?(e.datepicker._hideDatepicker(),e.datepicker._showDatepicker(t[0])):e.datepicker._showDatepicker(t[0]),!1}))},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t,i,s,a,n=new Date(2009,11,20),o=this._get(e,"dateFormat");o.match(/[DM]/)&&(t=function(e){for(i=0,s=0,a=0;e.length>a;a++)e[a].length>i&&(i=e[a].length,s=a);return s},n.setMonth(t(this._get(e,o.match(/MM/)?"monthNames":"monthNamesShort"))),n.setDate(t(this._get(e,o.match(/DD/)?"dayNames":"dayNamesShort"))+20-n.getDay())),e.input.attr("size",this._formatDate(e,n).length)}},_inlineDatepicker:function(t,i){var s=e(t);s.hasClass(this.markerClassName)||(s.addClass(this.markerClassName).append(i.dpDiv),e.data(t,o,i),this._setDate(i,this._getDefaultDate(i),!0),this._updateDatepicker(i),this._updateAlternate(i),i.settings.disabled&&this._disableDatepicker(t),i.dpDiv.css("display","block"))},_dialogDatepicker:function(t,i,s,n,r){var h,l,u,d,c,p=this._dialogInst;return p||(this.uuid+=1,h="dp"+this.uuid,this._dialogInput=e(""),this._dialogInput.keydown(this._doKeyDown),e("body").append(this._dialogInput),p=this._dialogInst=this._newInst(this._dialogInput,!1),p.settings={},e.data(this._dialogInput[0],o,p)),a(p.settings,n||{}),i=i&&i.constructor===Date?this._formatDate(p,i):i,this._dialogInput.val(i),this._pos=r?r.length?r:[r.pageX,r.pageY]:null,this._pos||(l=document.documentElement.clientWidth,u=document.documentElement.clientHeight,d=document.documentElement.scrollLeft||document.body.scrollLeft,c=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[l/2-100+d,u/2-150+c]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),p.settings.onSelect=s,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),e.blockUI&&e.blockUI(this.dpDiv),e.data(this._dialogInput[0],o,p),this},_destroyDatepicker:function(t){var i,s=e(t),a=e.data(t,o);s.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),e.removeData(t,o),"input"===i?(a.append.remove(),a.trigger.remove(),s.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):("div"===i||"span"===i)&&s.removeClass(this.markerClassName).empty())},_enableDatepicker:function(t){var i,s,a=e(t),n=e.data(t,o);a.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!1,n.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):("div"===i||"span"===i)&&(s=a.children("."+this._inlineClass),s.children().removeClass("ui-state-disabled"),s.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}))},_disableDatepicker:function(t){var i,s,a=e(t),n=e.data(t,o);a.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!0,n.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):("div"===i||"span"===i)&&(s=a.children("."+this._inlineClass),s.children().addClass("ui-state-disabled"),s.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}),this._disabledInputs[this._disabledInputs.length]=t)},_isDisabledDatepicker:function(e){if(!e)return!1;for(var t=0;this._disabledInputs.length>t;t++)if(this._disabledInputs[t]===e)return!0;return!1},_getInst:function(t){try{return e.data(t,o)}catch(i){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(i,s,n){var o,r,h,l,u=this._getInst(i);return 2===arguments.length&&"string"==typeof s?"defaults"===s?e.extend({},e.datepicker._defaults):u?"all"===s?e.extend({},u.settings):this._get(u,s):null:(o=s||{},"string"==typeof s&&(o={},o[s]=n),u&&(this._curInst===u&&this._hideDatepicker(),r=this._getDateDatepicker(i,!0),h=this._getMinMaxDate(u,"min"),l=this._getMinMaxDate(u,"max"),a(u.settings,o),null!==h&&o.dateFormat!==t&&o.minDate===t&&(u.settings.minDate=this._formatDate(u,h)),null!==l&&o.dateFormat!==t&&o.maxDate===t&&(u.settings.maxDate=this._formatDate(u,l)),"disabled"in o&&(o.disabled?this._disableDatepicker(i):this._enableDatepicker(i)),this._attachments(e(i),u),this._autoSize(u),this._setDate(u,r),this._updateAlternate(u),this._updateDatepicker(u)),t)},_changeDatepicker:function(e,t,i){this._optionDatepicker(e,t,i)},_refreshDatepicker:function(e){var t=this._getInst(e);t&&this._updateDatepicker(t)},_setDateDatepicker:function(e,t){var i=this._getInst(e);i&&(this._setDate(i,t),this._updateDatepicker(i),this._updateAlternate(i))},_getDateDatepicker:function(e,t){var i=this._getInst(e);return i&&!i.inline&&this._setDateFromField(i,t),i?this._getDate(i):null},_doKeyDown:function(t){var i,s,a,n=e.datepicker._getInst(t.target),o=!0,r=n.dpDiv.is(".ui-datepicker-rtl");if(n._keyEvent=!0,e.datepicker._datepickerShowing)switch(t.keyCode){case 9:e.datepicker._hideDatepicker(),o=!1;break;case 13:return a=e("td."+e.datepicker._dayOverClass+":not(."+e.datepicker._currentClass+")",n.dpDiv),a[0]&&e.datepicker._selectDay(t.target,n.selectedMonth,n.selectedYear,a[0]),i=e.datepicker._get(n,"onSelect"),i?(s=e.datepicker._formatDate(n),i.apply(n.input?n.input[0]:null,[s,n])):e.datepicker._hideDatepicker(),!1;case 27:e.datepicker._hideDatepicker();break;case 33:e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(n,"stepBigMonths"):-e.datepicker._get(n,"stepMonths"),"M");break;case 34:e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(n,"stepBigMonths"):+e.datepicker._get(n,"stepMonths"),"M");break;case 35:(t.ctrlKey||t.metaKey)&&e.datepicker._clearDate(t.target),o=t.ctrlKey||t.metaKey;break;case 36:(t.ctrlKey||t.metaKey)&&e.datepicker._gotoToday(t.target),o=t.ctrlKey||t.metaKey;break;case 37:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,r?1:-1,"D"),o=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(n,"stepBigMonths"):-e.datepicker._get(n,"stepMonths"),"M");break;case 38:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,-7,"D"),o=t.ctrlKey||t.metaKey;break;case 39:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,r?-1:1,"D"),o=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(n,"stepBigMonths"):+e.datepicker._get(n,"stepMonths"),"M");break;case 40:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,7,"D"),o=t.ctrlKey||t.metaKey;break;default:o=!1}else 36===t.keyCode&&t.ctrlKey?e.datepicker._showDatepicker(this):o=!1;o&&(t.preventDefault(),t.stopPropagation())},_doKeyPress:function(i){var s,a,n=e.datepicker._getInst(i.target);return e.datepicker._get(n,"constrainInput")?(s=e.datepicker._possibleChars(e.datepicker._get(n,"dateFormat")),a=String.fromCharCode(null==i.charCode?i.keyCode:i.charCode),i.ctrlKey||i.metaKey||" ">a||!s||s.indexOf(a)>-1):t},_doKeyUp:function(t){var i,s=e.datepicker._getInst(t.target);if(s.input.val()!==s.lastVal)try{i=e.datepicker.parseDate(e.datepicker._get(s,"dateFormat"),s.input?s.input.val():null,e.datepicker._getFormatConfig(s)),i&&(e.datepicker._setDateFromField(s),e.datepicker._updateAlternate(s),e.datepicker._updateDatepicker(s))}catch(a){}return!0},_showDatepicker:function(t){if(t=t.target||t,"input"!==t.nodeName.toLowerCase()&&(t=e("input",t.parentNode)[0]),!e.datepicker._isDisabledDatepicker(t)&&e.datepicker._lastInput!==t){var i,s,n,o,r,h,l;i=e.datepicker._getInst(t),e.datepicker._curInst&&e.datepicker._curInst!==i&&(e.datepicker._curInst.dpDiv.stop(!0,!0),i&&e.datepicker._datepickerShowing&&e.datepicker._hideDatepicker(e.datepicker._curInst.input[0])),s=e.datepicker._get(i,"beforeShow"),n=s?s.apply(t,[t,i]):{},n!==!1&&(a(i.settings,n),i.lastVal=null,e.datepicker._lastInput=t,e.datepicker._setDateFromField(i),e.datepicker._inDialog&&(t.value=""),e.datepicker._pos||(e.datepicker._pos=e.datepicker._findPos(t),e.datepicker._pos[1]+=t.offsetHeight),o=!1,e(t).parents().each(function(){return o|="fixed"===e(this).css("position"),!o}),r={left:e.datepicker._pos[0],top:e.datepicker._pos[1]},e.datepicker._pos=null,i.dpDiv.empty(),i.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),e.datepicker._updateDatepicker(i),r=e.datepicker._checkOffset(i,r,o),i.dpDiv.css({position:e.datepicker._inDialog&&e.blockUI?"static":o?"fixed":"absolute",display:"none",left:r.left+"px",top:r.top+"px"}),i.inline||(h=e.datepicker._get(i,"showAnim"),l=e.datepicker._get(i,"duration"),i.dpDiv.zIndex(e(t).zIndex()+1),e.datepicker._datepickerShowing=!0,e.effects&&e.effects.effect[h]?i.dpDiv.show(h,e.datepicker._get(i,"showOptions"),l):i.dpDiv[h||"show"](h?l:null),e.datepicker._shouldFocusInput(i)&&i.input.focus(),e.datepicker._curInst=i))}},_updateDatepicker:function(t){this.maxRows=4,n=t,t.dpDiv.empty().append(this._generateHTML(t)),this._attachHandlers(t),t.dpDiv.find("."+this._dayOverClass+" a").mouseover();var i,s=this._getNumberOfMonths(t),a=s[1],o=17;t.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),a>1&&t.dpDiv.addClass("ui-datepicker-multi-"+a).css("width",o*a+"em"),t.dpDiv[(1!==s[0]||1!==s[1]?"add":"remove")+"Class"]("ui-datepicker-multi"),t.dpDiv[(this._get(t,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),t===e.datepicker._curInst&&e.datepicker._datepickerShowing&&e.datepicker._shouldFocusInput(t)&&t.input.focus(),t.yearshtml&&(i=t.yearshtml,setTimeout(function(){i===t.yearshtml&&t.yearshtml&&t.dpDiv.find("select.ui-datepicker-year:first").replaceWith(t.yearshtml),i=t.yearshtml=null},0))},_shouldFocusInput:function(e){return e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&!e.input.is(":focus")},_checkOffset:function(t,i,s){var a=t.dpDiv.outerWidth(),n=t.dpDiv.outerHeight(),o=t.input?t.input.outerWidth():0,r=t.input?t.input.outerHeight():0,h=document.documentElement.clientWidth+(s?0:e(document).scrollLeft()),l=document.documentElement.clientHeight+(s?0:e(document).scrollTop());return i.left-=this._get(t,"isRTL")?a-o:0,i.left-=s&&i.left===t.input.offset().left?e(document).scrollLeft():0,i.top-=s&&i.top===t.input.offset().top+r?e(document).scrollTop():0,i.left-=Math.min(i.left,i.left+a>h&&h>a?Math.abs(i.left+a-h):0),i.top-=Math.min(i.top,i.top+n>l&&l>n?Math.abs(n+r):0),i},_findPos:function(t){for(var i,s=this._getInst(t),a=this._get(s,"isRTL");t&&("hidden"===t.type||1!==t.nodeType||e.expr.filters.hidden(t));)t=t[a?"previousSibling":"nextSibling"];return i=e(t).offset(),[i.left,i.top]},_hideDatepicker:function(t){var i,s,a,n,r=this._curInst;!r||t&&r!==e.data(t,o)||this._datepickerShowing&&(i=this._get(r,"showAnim"),s=this._get(r,"duration"),a=function(){e.datepicker._tidyDialog(r)},e.effects&&(e.effects.effect[i]||e.effects[i])?r.dpDiv.hide(i,e.datepicker._get(r,"showOptions"),s,a):r.dpDiv["slideDown"===i?"slideUp":"fadeIn"===i?"fadeOut":"hide"](i?s:null,a),i||a(),this._datepickerShowing=!1,n=this._get(r,"onClose"),n&&n.apply(r.input?r.input[0]:null,[r.input?r.input.val():"",r]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),e.blockUI&&(e.unblockUI(),e("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(e){e.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(t){if(e.datepicker._curInst){var i=e(t.target),s=e.datepicker._getInst(i[0]);(i[0].id!==e.datepicker._mainDivId&&0===i.parents("#"+e.datepicker._mainDivId).length&&!i.hasClass(e.datepicker.markerClassName)&&!i.closest("."+e.datepicker._triggerClass).length&&e.datepicker._datepickerShowing&&(!e.datepicker._inDialog||!e.blockUI)||i.hasClass(e.datepicker.markerClassName)&&e.datepicker._curInst!==s)&&e.datepicker._hideDatepicker()}},_adjustDate:function(t,i,s){var a=e(t),n=this._getInst(a[0]);this._isDisabledDatepicker(a[0])||(this._adjustInstDate(n,i+("M"===s?this._get(n,"showCurrentAtPos"):0),s),this._updateDatepicker(n))},_gotoToday:function(t){var i,s=e(t),a=this._getInst(s[0]);this._get(a,"gotoCurrent")&&a.currentDay?(a.selectedDay=a.currentDay,a.drawMonth=a.selectedMonth=a.currentMonth,a.drawYear=a.selectedYear=a.currentYear):(i=new Date,a.selectedDay=i.getDate(),a.drawMonth=a.selectedMonth=i.getMonth(),a.drawYear=a.selectedYear=i.getFullYear()),this._notifyChange(a),this._adjustDate(s)},_selectMonthYear:function(t,i,s){var a=e(t),n=this._getInst(a[0]);n["selected"+("M"===s?"Month":"Year")]=n["draw"+("M"===s?"Month":"Year")]=parseInt(i.options[i.selectedIndex].value,10),this._notifyChange(n),this._adjustDate(a)},_selectDay:function(t,i,s,a){var n,o=e(t);e(a).hasClass(this._unselectableClass)||this._isDisabledDatepicker(o[0])||(n=this._getInst(o[0]),n.selectedDay=n.currentDay=e("a",a).html(),n.selectedMonth=n.currentMonth=i,n.selectedYear=n.currentYear=s,this._selectDate(t,this._formatDate(n,n.currentDay,n.currentMonth,n.currentYear)))},_clearDate:function(t){var i=e(t);this._selectDate(i,"")},_selectDate:function(t,i){var s,a=e(t),n=this._getInst(a[0]);i=null!=i?i:this._formatDate(n),n.input&&n.input.val(i),this._updateAlternate(n),s=this._get(n,"onSelect"),s?s.apply(n.input?n.input[0]:null,[i,n]):n.input&&n.input.trigger("change"),n.inline?this._updateDatepicker(n):(this._hideDatepicker(),this._lastInput=n.input[0],"object"!=typeof n.input[0]&&n.input.focus(),this._lastInput=null)},_updateAlternate:function(t){var i,s,a,n=this._get(t,"altField");n&&(i=this._get(t,"altFormat")||this._get(t,"dateFormat"),s=this._getDate(t),a=this.formatDate(i,s,this._getFormatConfig(t)),e(n).each(function(){e(this).val(a)}))},noWeekends:function(e){var t=e.getDay();return[t>0&&6>t,""]},iso8601Week:function(e){var t,i=new Date(e.getTime());return i.setDate(i.getDate()+4-(i.getDay()||7)),t=i.getTime(),i.setMonth(0),i.setDate(1),Math.floor(Math.round((t-i)/864e5)/7)+1},parseDate:function(i,s,a){if(null==i||null==s)throw"Invalid arguments";if(s="object"==typeof s?""+s:s+"",""===s)return null;var n,o,r,h,l=0,u=(a?a.shortYearCutoff:null)||this._defaults.shortYearCutoff,d="string"!=typeof u?u:(new Date).getFullYear()%100+parseInt(u,10),c=(a?a.dayNamesShort:null)||this._defaults.dayNamesShort,p=(a?a.dayNames:null)||this._defaults.dayNames,f=(a?a.monthNamesShort:null)||this._defaults.monthNamesShort,m=(a?a.monthNames:null)||this._defaults.monthNames,g=-1,v=-1,y=-1,b=-1,_=!1,x=function(e){var t=i.length>n+1&&i.charAt(n+1)===e;return t&&n++,t},w=function(e){var t=x(e),i="@"===e?14:"!"===e?20:"y"===e&&t?4:"o"===e?3:2,a=RegExp("^\\d{1,"+i+"}"),n=s.substring(l).match(a);if(!n)throw"Missing number at position "+l;return l+=n[0].length,parseInt(n[0],10)},k=function(i,a,n){var o=-1,r=e.map(x(i)?n:a,function(e,t){return[[t,e]]}).sort(function(e,t){return-(e[1].length-t[1].length)});if(e.each(r,function(e,i){var a=i[1];return s.substr(l,a.length).toLowerCase()===a.toLowerCase()?(o=i[0],l+=a.length,!1):t}),-1!==o)return o+1;throw"Unknown name at position "+l},D=function(){if(s.charAt(l)!==i.charAt(n))throw"Unexpected literal at position "+l;l++};for(n=0;i.length>n;n++)if(_)"'"!==i.charAt(n)||x("'")?D():_=!1;else switch(i.charAt(n)){case"d":y=w("d");break;case"D":k("D",c,p);break;case"o":b=w("o");break;case"m":v=w("m");break;case"M":v=k("M",f,m);break;case"y":g=w("y");break;case"@":h=new Date(w("@")),g=h.getFullYear(),v=h.getMonth()+1,y=h.getDate();break;case"!":h=new Date((w("!")-this._ticksTo1970)/1e4),g=h.getFullYear(),v=h.getMonth()+1,y=h.getDate();break;case"'":x("'")?D():_=!0;break;default:D()}if(s.length>l&&(r=s.substr(l),!/^\s+/.test(r)))throw"Extra/unparsed characters found in date: "+r;if(-1===g?g=(new Date).getFullYear():100>g&&(g+=(new Date).getFullYear()-(new Date).getFullYear()%100+(d>=g?0:-100)),b>-1)for(v=1,y=b;;){if(o=this._getDaysInMonth(g,v-1),o>=y)break;v++,y-=o}if(h=this._daylightSavingAdjust(new Date(g,v-1,y)),h.getFullYear()!==g||h.getMonth()+1!==v||h.getDate()!==y)throw"Invalid date";return h},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:1e7*60*60*24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925)),formatDate:function(e,t,i){if(!t)return"";var s,a=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,n=(i?i.dayNames:null)||this._defaults.dayNames,o=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,r=(i?i.monthNames:null)||this._defaults.monthNames,h=function(t){var i=e.length>s+1&&e.charAt(s+1)===t;return i&&s++,i},l=function(e,t,i){var s=""+t;if(h(e))for(;i>s.length;)s="0"+s;return s},u=function(e,t,i,s){return h(e)?s[t]:i[t]},d="",c=!1;if(t)for(s=0;e.length>s;s++)if(c)"'"!==e.charAt(s)||h("'")?d+=e.charAt(s):c=!1;else switch(e.charAt(s)){case"d":d+=l("d",t.getDate(),2);break;case"D":d+=u("D",t.getDay(),a,n);break;case"o":d+=l("o",Math.round((new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()-new Date(t.getFullYear(),0,0).getTime())/864e5),3);break;case"m":d+=l("m",t.getMonth()+1,2);break;case"M":d+=u("M",t.getMonth(),o,r);break;case"y":d+=h("y")?t.getFullYear():(10>t.getYear()%100?"0":"")+t.getYear()%100;break;case"@":d+=t.getTime();break;case"!":d+=1e4*t.getTime()+this._ticksTo1970;break;case"'":h("'")?d+="'":c=!0;break;default:d+=e.charAt(s)}return d},_possibleChars:function(e){var t,i="",s=!1,a=function(i){var s=e.length>t+1&&e.charAt(t+1)===i;return s&&t++,s};for(t=0;e.length>t;t++)if(s)"'"!==e.charAt(t)||a("'")?i+=e.charAt(t):s=!1;else switch(e.charAt(t)){case"d":case"m":case"y":case"@":i+="0123456789";break;case"D":case"M":return null;case"'":a("'")?i+="'":s=!0;break;default:i+=e.charAt(t)}return i},_get:function(e,i){return e.settings[i]!==t?e.settings[i]:this._defaults[i]},_setDateFromField:function(e,t){if(e.input.val()!==e.lastVal){var i=this._get(e,"dateFormat"),s=e.lastVal=e.input?e.input.val():null,a=this._getDefaultDate(e),n=a,o=this._getFormatConfig(e);try{n=this.parseDate(i,s,o)||a}catch(r){s=t?"":s}e.selectedDay=n.getDate(),e.drawMonth=e.selectedMonth=n.getMonth(),e.drawYear=e.selectedYear=n.getFullYear(),e.currentDay=s?n.getDate():0,e.currentMonth=s?n.getMonth():0,e.currentYear=s?n.getFullYear():0,this._adjustInstDate(e)}},_getDefaultDate:function(e){return this._restrictMinMax(e,this._determineDate(e,this._get(e,"defaultDate"),new Date))},_determineDate:function(t,i,s){var a=function(e){var t=new Date;return t.setDate(t.getDate()+e),t},n=function(i){try{return e.datepicker.parseDate(e.datepicker._get(t,"dateFormat"),i,e.datepicker._getFormatConfig(t))}catch(s){}for(var a=(i.toLowerCase().match(/^c/)?e.datepicker._getDate(t):null)||new Date,n=a.getFullYear(),o=a.getMonth(),r=a.getDate(),h=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,l=h.exec(i);l;){switch(l[2]||"d"){case"d":case"D":r+=parseInt(l[1],10);break;case"w":case"W":r+=7*parseInt(l[1],10);break;case"m":case"M":o+=parseInt(l[1],10),r=Math.min(r,e.datepicker._getDaysInMonth(n,o));break;case"y":case"Y":n+=parseInt(l[1],10),r=Math.min(r,e.datepicker._getDaysInMonth(n,o))}l=h.exec(i)}return new Date(n,o,r)},o=null==i||""===i?s:"string"==typeof i?n(i):"number"==typeof i?isNaN(i)?s:a(i):new Date(i.getTime());return o=o&&"Invalid Date"==""+o?s:o,o&&(o.setHours(0),o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0)),this._daylightSavingAdjust(o)},_daylightSavingAdjust:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null},_setDate:function(e,t,i){var s=!t,a=e.selectedMonth,n=e.selectedYear,o=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=o.getDate(),e.drawMonth=e.selectedMonth=e.currentMonth=o.getMonth(),e.drawYear=e.selectedYear=e.currentYear=o.getFullYear(),a===e.selectedMonth&&n===e.selectedYear||i||this._notifyChange(e),this._adjustInstDate(e),e.input&&e.input.val(s?"":this._formatDate(e))},_getDate:function(e){var t=!e.currentYear||e.input&&""===e.input.val()?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(t){var i=this._get(t,"stepMonths"),s="#"+t.id.replace(/\\\\/g,"\\");t.dpDiv.find("[data-handler]").map(function(){var t={prev:function(){e.datepicker._adjustDate(s,-i,"M")},next:function(){e.datepicker._adjustDate(s,+i,"M")},hide:function(){e.datepicker._hideDatepicker()},today:function(){e.datepicker._gotoToday(s)},selectDay:function(){return e.datepicker._selectDay(s,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return e.datepicker._selectMonthYear(s,this,"M"),!1},selectYear:function(){return e.datepicker._selectMonthYear(s,this,"Y"),!1}};e(this).bind(this.getAttribute("data-event"),t[this.getAttribute("data-handler")])})},_generateHTML:function(e){var t,i,s,a,n,o,r,h,l,u,d,c,p,f,m,g,v,y,b,_,x,w,k,D,T,S,M,N,C,A,P,I,z,H,F,E,O,j,W,L=new Date,R=this._daylightSavingAdjust(new Date(L.getFullYear(),L.getMonth(),L.getDate())),Y=this._get(e,"isRTL"),J=this._get(e,"showButtonPanel"),B=this._get(e,"hideIfNoPrevNext"),K=this._get(e,"navigationAsDateFormat"),V=this._getNumberOfMonths(e),U=this._get(e,"showCurrentAtPos"),q=this._get(e,"stepMonths"),Q=1!==V[0]||1!==V[1],G=this._daylightSavingAdjust(e.currentDay?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(9999,9,9)),$=this._getMinMaxDate(e,"min"),X=this._getMinMaxDate(e,"max"),Z=e.drawMonth-U,et=e.drawYear;if(0>Z&&(Z+=12,et--),X)for(t=this._daylightSavingAdjust(new Date(X.getFullYear(),X.getMonth()-V[0]*V[1]+1,X.getDate())),t=$&&$>t?$:t;this._daylightSavingAdjust(new Date(et,Z,1))>t;)Z--,0>Z&&(Z=11,et--);for(e.drawMonth=Z,e.drawYear=et,i=this._get(e,"prevText"),i=K?this.formatDate(i,this._daylightSavingAdjust(new Date(et,Z-q,1)),this._getFormatConfig(e)):i,s=this._canAdjustMonth(e,-1,et,Z)?"
"+i+"":B?"":""+i+"",a=this._get(e,"nextText"),a=K?this.formatDate(a,this._daylightSavingAdjust(new Date(et,Z+q,1)),this._getFormatConfig(e)):a,n=this._canAdjustMonth(e,1,et,Z)?""+a+"":B?"":""+a+"",o=this._get(e,"currentText"),r=this._get(e,"gotoCurrent")&&e.currentDay?G:R,o=K?this.formatDate(o,r,this._getFormatConfig(e)):o,h=e.inline?"":"",l=J?"
"+(Y?h:"")+(this._isInRange(e,r)?"":"")+(Y?"":h)+"
":"",u=parseInt(this._get(e,"firstDay"),10),u=isNaN(u)?0:u,d=this._get(e,"showWeek"),c=this._get(e,"dayNames"),p=this._get(e,"dayNamesMin"),f=this._get(e,"monthNames"),m=this._get(e,"monthNamesShort"),g=this._get(e,"beforeShowDay"),v=this._get(e,"showOtherMonths"),y=this._get(e,"selectOtherMonths"),b=this._getDefaultDate(e),_="",w=0;V[0]>w;w++){for(k="",this.maxRows=4,D=0;V[1]>D;D++){if(T=this._daylightSavingAdjust(new Date(et,Z,e.selectedDay)),S=" ui-corner-all",M="",Q){if(M+="
"}for(M+="
"+(/all|left/.test(S)&&0===w?Y?n:s:"")+(/all|right/.test(S)&&0===w?Y?s:n:"")+this._generateMonthYearHeader(e,Z,et,$,X,w>0||D>0,f,m)+"
"+"",N=d?"":"",x=0;7>x;x++)C=(x+u)%7,N+="=5?" class='ui-datepicker-week-end'":"")+">"+""+p[C]+"";for(M+=N+"",A=this._getDaysInMonth(et,Z),et===e.selectedYear&&Z===e.selectedMonth&&(e.selectedDay=Math.min(e.selectedDay,A)),P=(this._getFirstDayOfMonth(et,Z)-u+7)%7,I=Math.ceil((P+A)/7),z=Q?this.maxRows>I?this.maxRows:I:I,this.maxRows=z,H=this._daylightSavingAdjust(new Date(et,Z,1-P)),F=0;z>F;F++){for(M+="",E=d?"":"",x=0;7>x;x++)O=g?g.apply(e.input?e.input[0]:null,[H]):[!0,""],j=H.getMonth()!==Z,W=j&&!y||!O[0]||$&&$>H||X&&H>X,E+="",H.setDate(H.getDate()+1),H=this._daylightSavingAdjust(H);M+=E+""}Z++,Z>11&&(Z=0,et++),M+="
"+this._get(e,"weekHeader")+"
"+this._get(e,"calculateWeek")(H)+""+(j&&!v?" ":W?""+H.getDate()+"":""+H.getDate()+"")+"
"+(Q?"
"+(V[0]>0&&D===V[1]-1?"
":""):""),k+=M}_+=k}return _+=l,e._keyEvent=!1,_},_generateMonthYearHeader:function(e,t,i,s,a,n,o,r){var h,l,u,d,c,p,f,m,g=this._get(e,"changeMonth"),v=this._get(e,"changeYear"),y=this._get(e,"showMonthAfterYear"),b="
",_="";if(n||!g)_+=""+o[t]+"";else{for(h=s&&s.getFullYear()===i,l=a&&a.getFullYear()===i,_+=""}if(y||(b+=_+(!n&&g&&v?"":" ")),!e.yearshtml)if(e.yearshtml="",n||!v)b+=""+i+"";else{for(d=this._get(e,"yearRange").split(":"),c=(new Date).getFullYear(),p=function(e){var t=e.match(/c[+\-].*/)?i+parseInt(e.substring(1),10):e.match(/[+\-].*/)?c+parseInt(e,10):parseInt(e,10); +return isNaN(t)?c:t},f=p(d[0]),m=Math.max(f,p(d[1]||"")),f=s?Math.max(f,s.getFullYear()):f,m=a?Math.min(m,a.getFullYear()):m,e.yearshtml+="",b+=e.yearshtml,e.yearshtml=null}return b+=this._get(e,"yearSuffix"),y&&(b+=(!n&&g&&v?"":" ")+_),b+="
"},_adjustInstDate:function(e,t,i){var s=e.drawYear+("Y"===i?t:0),a=e.drawMonth+("M"===i?t:0),n=Math.min(e.selectedDay,this._getDaysInMonth(s,a))+("D"===i?t:0),o=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(s,a,n)));e.selectedDay=o.getDate(),e.drawMonth=e.selectedMonth=o.getMonth(),e.drawYear=e.selectedYear=o.getFullYear(),("M"===i||"Y"===i)&&this._notifyChange(e)},_restrictMinMax:function(e,t){var i=this._getMinMaxDate(e,"min"),s=this._getMinMaxDate(e,"max"),a=i&&i>t?i:t;return s&&a>s?s:a},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return null==t?[1,1]:"number"==typeof t?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return new Date(e,t,1).getDay()},_canAdjustMonth:function(e,t,i,s){var a=this._getNumberOfMonths(e),n=this._daylightSavingAdjust(new Date(i,s+(0>t?t:a[0]*a[1]),1));return 0>t&&n.setDate(this._getDaysInMonth(n.getFullYear(),n.getMonth())),this._isInRange(e,n)},_isInRange:function(e,t){var i,s,a=this._getMinMaxDate(e,"min"),n=this._getMinMaxDate(e,"max"),o=null,r=null,h=this._get(e,"yearRange");return h&&(i=h.split(":"),s=(new Date).getFullYear(),o=parseInt(i[0],10),r=parseInt(i[1],10),i[0].match(/[+\-].*/)&&(o+=s),i[1].match(/[+\-].*/)&&(r+=s)),(!a||t.getTime()>=a.getTime())&&(!n||t.getTime()<=n.getTime())&&(!o||t.getFullYear()>=o)&&(!r||r>=t.getFullYear())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t="string"!=typeof t?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,i,s){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var a=t?"object"==typeof t?t:this._daylightSavingAdjust(new Date(s,i,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),a,this._getFormatConfig(e))}}),e.fn.datepicker=function(t){if(!this.length)return this;e.datepicker.initialized||(e(document).mousedown(e.datepicker._checkExternalClick),e.datepicker.initialized=!0),0===e("#"+e.datepicker._mainDivId).length&&e("body").append(e.datepicker.dpDiv);var i=Array.prototype.slice.call(arguments,1);return"string"!=typeof t||"isDisabled"!==t&&"getDate"!==t&&"widget"!==t?"option"===t&&2===arguments.length&&"string"==typeof arguments[1]?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i)):this.each(function(){"string"==typeof t?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this].concat(i)):e.datepicker._attachDatepicker(this,t)}):e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i))},e.datepicker=new i,e.datepicker.initialized=!1,e.datepicker.uuid=(new Date).getTime(),e.datepicker.version="1.10.4"})(jQuery);(function(e){var t={buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},i={maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0};e.widget("ui.dialog",{version:"1.10.4",options:{appendTo:"body",autoOpen:!0,buttons:[],closeOnEscape:!0,closeText:"close",dialogClass:"",draggable:!0,hide:null,height:"auto",maxHeight:null,maxWidth:null,minHeight:150,minWidth:150,modal:!1,position:{my:"center",at:"center",of:window,collision:"fit",using:function(t){var i=e(this).css(t).offset().top;0>i&&e(this).css("top",t.top-i)}},resizable:!0,show:null,title:null,width:300,beforeClose:null,close:null,drag:null,dragStart:null,dragStop:null,focus:null,open:null,resize:null,resizeStart:null,resizeStop:null},_create:function(){this.originalCss={display:this.element[0].style.display,width:this.element[0].style.width,minHeight:this.element[0].style.minHeight,maxHeight:this.element[0].style.maxHeight,height:this.element[0].style.height},this.originalPosition={parent:this.element.parent(),index:this.element.parent().children().index(this.element)},this.originalTitle=this.element.attr("title"),this.options.title=this.options.title||this.originalTitle,this._createWrapper(),this.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(this.uiDialog),this._createTitlebar(),this._createButtonPane(),this.options.draggable&&e.fn.draggable&&this._makeDraggable(),this.options.resizable&&e.fn.resizable&&this._makeResizable(),this._isOpen=!1},_init:function(){this.options.autoOpen&&this.open()},_appendTo:function(){var t=this.options.appendTo;return t&&(t.jquery||t.nodeType)?e(t):this.document.find(t||"body").eq(0)},_destroy:function(){var e,t=this.originalPosition;this._destroyOverlay(),this.element.removeUniqueId().removeClass("ui-dialog-content ui-widget-content").css(this.originalCss).detach(),this.uiDialog.stop(!0,!0).remove(),this.originalTitle&&this.element.attr("title",this.originalTitle),e=t.parent.children().eq(t.index),e.length&&e[0]!==this.element[0]?e.before(this.element):t.parent.append(this.element)},widget:function(){return this.uiDialog},disable:e.noop,enable:e.noop,close:function(t){var i,s=this;if(this._isOpen&&this._trigger("beforeClose",t)!==!1){if(this._isOpen=!1,this._destroyOverlay(),!this.opener.filter(":focusable").focus().length)try{i=this.document[0].activeElement,i&&"body"!==i.nodeName.toLowerCase()&&e(i).blur()}catch(a){}this._hide(this.uiDialog,this.options.hide,function(){s._trigger("close",t)})}},isOpen:function(){return this._isOpen},moveToTop:function(){this._moveToTop()},_moveToTop:function(e,t){var i=!!this.uiDialog.nextAll(":visible").insertBefore(this.uiDialog).length;return i&&!t&&this._trigger("focus",e),i},open:function(){var t=this;return this._isOpen?(this._moveToTop()&&this._focusTabbable(),undefined):(this._isOpen=!0,this.opener=e(this.document[0].activeElement),this._size(),this._position(),this._createOverlay(),this._moveToTop(null,!0),this._show(this.uiDialog,this.options.show,function(){t._focusTabbable(),t._trigger("focus")}),this._trigger("open"),undefined)},_focusTabbable:function(){var e=this.element.find("[autofocus]");e.length||(e=this.element.find(":tabbable")),e.length||(e=this.uiDialogButtonPane.find(":tabbable")),e.length||(e=this.uiDialogTitlebarClose.filter(":tabbable")),e.length||(e=this.uiDialog),e.eq(0).focus()},_keepFocus:function(t){function i(){var t=this.document[0].activeElement,i=this.uiDialog[0]===t||e.contains(this.uiDialog[0],t);i||this._focusTabbable()}t.preventDefault(),i.call(this),this._delay(i)},_createWrapper:function(){this.uiDialog=e("
").addClass("ui-dialog ui-widget ui-widget-content ui-corner-all ui-front "+this.options.dialogClass).hide().attr({tabIndex:-1,role:"dialog"}).appendTo(this._appendTo()),this._on(this.uiDialog,{keydown:function(t){if(this.options.closeOnEscape&&!t.isDefaultPrevented()&&t.keyCode&&t.keyCode===e.ui.keyCode.ESCAPE)return t.preventDefault(),this.close(t),undefined;if(t.keyCode===e.ui.keyCode.TAB){var i=this.uiDialog.find(":tabbable"),s=i.filter(":first"),a=i.filter(":last");t.target!==a[0]&&t.target!==this.uiDialog[0]||t.shiftKey?t.target!==s[0]&&t.target!==this.uiDialog[0]||!t.shiftKey||(a.focus(1),t.preventDefault()):(s.focus(1),t.preventDefault())}},mousedown:function(e){this._moveToTop(e)&&this._focusTabbable()}}),this.element.find("[aria-describedby]").length||this.uiDialog.attr({"aria-describedby":this.element.uniqueId().attr("id")})},_createTitlebar:function(){var t;this.uiDialogTitlebar=e("
").addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(this.uiDialog),this._on(this.uiDialogTitlebar,{mousedown:function(t){e(t.target).closest(".ui-dialog-titlebar-close")||this.uiDialog.focus()}}),this.uiDialogTitlebarClose=e("").button({label:this.options.closeText,icons:{primary:"ui-icon-closethick"},text:!1}).addClass("ui-dialog-titlebar-close").appendTo(this.uiDialogTitlebar),this._on(this.uiDialogTitlebarClose,{click:function(e){e.preventDefault(),this.close(e)}}),t=e("").uniqueId().addClass("ui-dialog-title").prependTo(this.uiDialogTitlebar),this._title(t),this.uiDialog.attr({"aria-labelledby":t.attr("id")})},_title:function(e){this.options.title||e.html(" "),e.text(this.options.title)},_createButtonPane:function(){this.uiDialogButtonPane=e("
").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),this.uiButtonSet=e("
").addClass("ui-dialog-buttonset").appendTo(this.uiDialogButtonPane),this._createButtons()},_createButtons:function(){var t=this,i=this.options.buttons;return this.uiDialogButtonPane.remove(),this.uiButtonSet.empty(),e.isEmptyObject(i)||e.isArray(i)&&!i.length?(this.uiDialog.removeClass("ui-dialog-buttons"),undefined):(e.each(i,function(i,s){var a,n;s=e.isFunction(s)?{click:s,text:i}:s,s=e.extend({type:"button"},s),a=s.click,s.click=function(){a.apply(t.element[0],arguments)},n={icons:s.icons,text:s.showText},delete s.icons,delete s.showText,e("",s).button(n).appendTo(t.uiButtonSet)}),this.uiDialog.addClass("ui-dialog-buttons"),this.uiDialogButtonPane.appendTo(this.uiDialog),undefined)},_makeDraggable:function(){function t(e){return{position:e.position,offset:e.offset}}var i=this,s=this.options;this.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(s,a){e(this).addClass("ui-dialog-dragging"),i._blockFrames(),i._trigger("dragStart",s,t(a))},drag:function(e,s){i._trigger("drag",e,t(s))},stop:function(a,n){s.position=[n.position.left-i.document.scrollLeft(),n.position.top-i.document.scrollTop()],e(this).removeClass("ui-dialog-dragging"),i._unblockFrames(),i._trigger("dragStop",a,t(n))}})},_makeResizable:function(){function t(e){return{originalPosition:e.originalPosition,originalSize:e.originalSize,position:e.position,size:e.size}}var i=this,s=this.options,a=s.resizable,n=this.uiDialog.css("position"),r="string"==typeof a?a:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:this.element,maxWidth:s.maxWidth,maxHeight:s.maxHeight,minWidth:s.minWidth,minHeight:this._minHeight(),handles:r,start:function(s,a){e(this).addClass("ui-dialog-resizing"),i._blockFrames(),i._trigger("resizeStart",s,t(a))},resize:function(e,s){i._trigger("resize",e,t(s))},stop:function(a,n){s.height=e(this).height(),s.width=e(this).width(),e(this).removeClass("ui-dialog-resizing"),i._unblockFrames(),i._trigger("resizeStop",a,t(n))}}).css("position",n)},_minHeight:function(){var e=this.options;return"auto"===e.height?e.minHeight:Math.min(e.minHeight,e.height)},_position:function(){var e=this.uiDialog.is(":visible");e||this.uiDialog.show(),this.uiDialog.position(this.options.position),e||this.uiDialog.hide()},_setOptions:function(s){var a=this,n=!1,r={};e.each(s,function(e,s){a._setOption(e,s),e in t&&(n=!0),e in i&&(r[e]=s)}),n&&(this._size(),this._position()),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option",r)},_setOption:function(e,t){var i,s,a=this.uiDialog;"dialogClass"===e&&a.removeClass(this.options.dialogClass).addClass(t),"disabled"!==e&&(this._super(e,t),"appendTo"===e&&this.uiDialog.appendTo(this._appendTo()),"buttons"===e&&this._createButtons(),"closeText"===e&&this.uiDialogTitlebarClose.button({label:""+t}),"draggable"===e&&(i=a.is(":data(ui-draggable)"),i&&!t&&a.draggable("destroy"),!i&&t&&this._makeDraggable()),"position"===e&&this._position(),"resizable"===e&&(s=a.is(":data(ui-resizable)"),s&&!t&&a.resizable("destroy"),s&&"string"==typeof t&&a.resizable("option","handles",t),s||t===!1||this._makeResizable()),"title"===e&&this._title(this.uiDialogTitlebar.find(".ui-dialog-title")))},_size:function(){var e,t,i,s=this.options;this.element.show().css({width:"auto",minHeight:0,maxHeight:"none",height:0}),s.minWidth>s.width&&(s.width=s.minWidth),e=this.uiDialog.css({height:"auto",width:s.width}).outerHeight(),t=Math.max(0,s.minHeight-e),i="number"==typeof s.maxHeight?Math.max(0,s.maxHeight-e):"none","auto"===s.height?this.element.css({minHeight:t,maxHeight:i,height:"auto"}):this.element.height(Math.max(0,s.height-e)),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())},_blockFrames:function(){this.iframeBlocks=this.document.find("iframe").map(function(){var t=e(this);return e("
").css({position:"absolute",width:t.outerWidth(),height:t.outerHeight()}).appendTo(t.parent()).offset(t.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_allowInteraction:function(t){return e(t.target).closest(".ui-dialog").length?!0:!!e(t.target).closest(".ui-datepicker").length},_createOverlay:function(){if(this.options.modal){var t=this,i=this.widgetFullName;e.ui.dialog.overlayInstances||this._delay(function(){e.ui.dialog.overlayInstances&&this.document.bind("focusin.dialog",function(s){t._allowInteraction(s)||(s.preventDefault(),e(".ui-dialog:visible:last .ui-dialog-content").data(i)._focusTabbable())})}),this.overlay=e("
").addClass("ui-widget-overlay ui-front").appendTo(this._appendTo()),this._on(this.overlay,{mousedown:"_keepFocus"}),e.ui.dialog.overlayInstances++}},_destroyOverlay:function(){this.options.modal&&this.overlay&&(e.ui.dialog.overlayInstances--,e.ui.dialog.overlayInstances||this.document.unbind("focusin.dialog"),this.overlay.remove(),this.overlay=null)}}),e.ui.dialog.overlayInstances=0,e.uiBackCompat!==!1&&e.widget("ui.dialog",e.ui.dialog,{_position:function(){var t,i=this.options.position,s=[],a=[0,0];i?(("string"==typeof i||"object"==typeof i&&"0"in i)&&(s=i.split?i.split(" "):[i[0],i[1]],1===s.length&&(s[1]=s[0]),e.each(["left","top"],function(e,t){+s[e]===s[e]&&(a[e]=s[e],s[e]=t)}),i={my:s[0]+(0>a[0]?a[0]:"+"+a[0])+" "+s[1]+(0>a[1]?a[1]:"+"+a[1]),at:s.join(" ")}),i=e.extend({},e.ui.dialog.prototype.options.position,i)):i=e.ui.dialog.prototype.options.position,t=this.uiDialog.is(":visible"),t||this.uiDialog.show(),this.uiDialog.position(i),t||this.uiDialog.hide()}})})(jQuery);(function(e,t){e.widget("ui.progressbar",{version:"1.10.4",options:{max:100,value:0,change:null,complete:null},min:0,_create:function(){this.oldValue=this.options.value=this._constrainedValue(),this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min}),this.valueDiv=e("
").appendTo(this.element),this._refreshValue()},_destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.valueDiv.remove()},value:function(e){return e===t?this.options.value:(this.options.value=this._constrainedValue(e),this._refreshValue(),t)},_constrainedValue:function(e){return e===t&&(e=this.options.value),this.indeterminate=e===!1,"number"!=typeof e&&(e=0),this.indeterminate?!1:Math.min(this.options.max,Math.max(this.min,e))},_setOptions:function(e){var t=e.value;delete e.value,this._super(e),this.options.value=this._constrainedValue(t),this._refreshValue()},_setOption:function(e,t){"max"===e&&(t=Math.max(this.min,t)),this._super(e,t)},_percentage:function(){return this.indeterminate?100:100*(this.options.value-this.min)/(this.options.max-this.min)},_refreshValue:function(){var t=this.options.value,i=this._percentage();this.valueDiv.toggle(this.indeterminate||t>this.min).toggleClass("ui-corner-right",t===this.options.max).width(i.toFixed(0)+"%"),this.element.toggleClass("ui-progressbar-indeterminate",this.indeterminate),this.indeterminate?(this.element.removeAttr("aria-valuenow"),this.overlayDiv||(this.overlayDiv=e("
").appendTo(this.valueDiv))):(this.element.attr({"aria-valuemax":this.options.max,"aria-valuenow":t}),this.overlayDiv&&(this.overlayDiv.remove(),this.overlayDiv=null)),this.oldValue!==t&&(this.oldValue=t,this._trigger("change")),t===this.options.max&&this._trigger("complete")}})})(jQuery);(function(e){function t(e){return function(){var t=this.element.val();e.apply(this,arguments),this._refresh(),t!==this.element.val()&&this._trigger("change")}}e.widget("ui.spinner",{version:"1.10.4",defaultElement:"",widgetEventPrefix:"spin",options:{culture:null,icons:{down:"ui-icon-triangle-1-s",up:"ui-icon-triangle-1-n"},incremental:!0,max:null,min:null,numberFormat:null,page:10,step:1,change:null,spin:null,start:null,stop:null},_create:function(){this._setOption("max",this.options.max),this._setOption("min",this.options.min),this._setOption("step",this.options.step),""!==this.value()&&this._value(this.element.val(),!0),this._draw(),this._on(this._events),this._refresh(),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_getCreateOptions:function(){var t={},i=this.element;return e.each(["min","max","step"],function(e,s){var a=i.attr(s);void 0!==a&&a.length&&(t[s]=a)}),t},_events:{keydown:function(e){this._start(e)&&this._keydown(e)&&e.preventDefault()},keyup:"_stop",focus:function(){this.previous=this.element.val()},blur:function(e){return this.cancelBlur?(delete this.cancelBlur,void 0):(this._stop(),this._refresh(),this.previous!==this.element.val()&&this._trigger("change",e),void 0)},mousewheel:function(e,t){if(t){if(!this.spinning&&!this._start(e))return!1;this._spin((t>0?1:-1)*this.options.step,e),clearTimeout(this.mousewheelTimer),this.mousewheelTimer=this._delay(function(){this.spinning&&this._stop(e)},100),e.preventDefault()}},"mousedown .ui-spinner-button":function(t){function i(){var e=this.element[0]===this.document[0].activeElement;e||(this.element.focus(),this.previous=s,this._delay(function(){this.previous=s}))}var s;s=this.element[0]===this.document[0].activeElement?this.previous:this.element.val(),t.preventDefault(),i.call(this),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur,i.call(this)}),this._start(t)!==!1&&this._repeat(null,e(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t)},"mouseup .ui-spinner-button":"_stop","mouseenter .ui-spinner-button":function(t){return e(t.currentTarget).hasClass("ui-state-active")?this._start(t)===!1?!1:(this._repeat(null,e(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t),void 0):void 0},"mouseleave .ui-spinner-button":"_stop"},_draw:function(){var e=this.uiSpinner=this.element.addClass("ui-spinner-input").attr("autocomplete","off").wrap(this._uiSpinnerHtml()).parent().append(this._buttonHtml());this.element.attr("role","spinbutton"),this.buttons=e.find(".ui-spinner-button").attr("tabIndex",-1).button().removeClass("ui-corner-all"),this.buttons.height()>Math.ceil(.5*e.height())&&e.height()>0&&e.height(e.height()),this.options.disabled&&this.disable()},_keydown:function(t){var i=this.options,s=e.ui.keyCode;switch(t.keyCode){case s.UP:return this._repeat(null,1,t),!0;case s.DOWN:return this._repeat(null,-1,t),!0;case s.PAGE_UP:return this._repeat(null,i.page,t),!0;case s.PAGE_DOWN:return this._repeat(null,-i.page,t),!0}return!1},_uiSpinnerHtml:function(){return""},_buttonHtml:function(){return""+""+""+""+""},_start:function(e){return this.spinning||this._trigger("start",e)!==!1?(this.counter||(this.counter=1),this.spinning=!0,!0):!1},_repeat:function(e,t,i){e=e||500,clearTimeout(this.timer),this.timer=this._delay(function(){this._repeat(40,t,i)},e),this._spin(t*this.options.step,i)},_spin:function(e,t){var i=this.value()||0;this.counter||(this.counter=1),i=this._adjustValue(i+e*this._increment(this.counter)),this.spinning&&this._trigger("spin",t,{value:i})===!1||(this._value(i),this.counter++)},_increment:function(t){var i=this.options.incremental;return i?e.isFunction(i)?i(t):Math.floor(t*t*t/5e4-t*t/500+17*t/200+1):1},_precision:function(){var e=this._precisionOf(this.options.step);return null!==this.options.min&&(e=Math.max(e,this._precisionOf(this.options.min))),e},_precisionOf:function(e){var t=""+e,i=t.indexOf(".");return-1===i?0:t.length-i-1},_adjustValue:function(e){var t,i,s=this.options;return t=null!==s.min?s.min:0,i=e-t,i=Math.round(i/s.step)*s.step,e=t+i,e=parseFloat(e.toFixed(this._precision())),null!==s.max&&e>s.max?s.max:null!==s.min&&s.min>e?s.min:e},_stop:function(e){this.spinning&&(clearTimeout(this.timer),clearTimeout(this.mousewheelTimer),this.counter=0,this.spinning=!1,this._trigger("stop",e))},_setOption:function(e,t){if("culture"===e||"numberFormat"===e){var i=this._parse(this.element.val());return this.options[e]=t,this.element.val(this._format(i)),void 0}("max"===e||"min"===e||"step"===e)&&"string"==typeof t&&(t=this._parse(t)),"icons"===e&&(this.buttons.first().find(".ui-icon").removeClass(this.options.icons.up).addClass(t.up),this.buttons.last().find(".ui-icon").removeClass(this.options.icons.down).addClass(t.down)),this._super(e,t),"disabled"===e&&(t?(this.element.prop("disabled",!0),this.buttons.button("disable")):(this.element.prop("disabled",!1),this.buttons.button("enable")))},_setOptions:t(function(e){this._super(e),this._value(this.element.val())}),_parse:function(e){return"string"==typeof e&&""!==e&&(e=window.Globalize&&this.options.numberFormat?Globalize.parseFloat(e,10,this.options.culture):+e),""===e||isNaN(e)?null:e},_format:function(e){return""===e?"":window.Globalize&&this.options.numberFormat?Globalize.format(e,this.options.numberFormat,this.options.culture):e},_refresh:function(){this.element.attr({"aria-valuemin":this.options.min,"aria-valuemax":this.options.max,"aria-valuenow":this._parse(this.element.val())})},_value:function(e,t){var i;""!==e&&(i=this._parse(e),null!==i&&(t||(i=this._adjustValue(i)),e=this._format(i))),this.element.val(e),this._refresh()},_destroy:function(){this.element.removeClass("ui-spinner-input").prop("disabled",!1).removeAttr("autocomplete").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.uiSpinner.replaceWith(this.element)},stepUp:t(function(e){this._stepUp(e)}),_stepUp:function(e){this._start()&&(this._spin((e||1)*this.options.step),this._stop())},stepDown:t(function(e){this._stepDown(e)}),_stepDown:function(e){this._start()&&(this._spin((e||1)*-this.options.step),this._stop())},pageUp:t(function(e){this._stepUp((e||1)*this.options.page)}),pageDown:t(function(e){this._stepDown((e||1)*this.options.page)}),value:function(e){return arguments.length?(t(this._value).call(this,e),void 0):this._parse(this.element.val())},widget:function(){return this.uiSpinner}})})(jQuery);(function(e,t){function i(){return++a}function s(e){return e=e.cloneNode(!1),e.hash.length>1&&decodeURIComponent(e.href.replace(n,""))===decodeURIComponent(location.href.replace(n,""))}var a=0,n=/#.*$/;e.widget("ui.tabs",{version:"1.10.4",delay:300,options:{active:null,collapsible:!1,event:"click",heightStyle:"content",hide:null,show:null,activate:null,beforeActivate:null,beforeLoad:null,load:null},_create:function(){var t=this,i=this.options;this.running=!1,this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all").toggleClass("ui-tabs-collapsible",i.collapsible).delegate(".ui-tabs-nav > li","mousedown"+this.eventNamespace,function(t){e(this).is(".ui-state-disabled")&&t.preventDefault()}).delegate(".ui-tabs-anchor","focus"+this.eventNamespace,function(){e(this).closest("li").is(".ui-state-disabled")&&this.blur()}),this._processTabs(),i.active=this._initialActive(),e.isArray(i.disabled)&&(i.disabled=e.unique(i.disabled.concat(e.map(this.tabs.filter(".ui-state-disabled"),function(e){return t.tabs.index(e)}))).sort()),this.active=this.options.active!==!1&&this.anchors.length?this._findActive(i.active):e(),this._refresh(),this.active.length&&this.load(i.active)},_initialActive:function(){var i=this.options.active,s=this.options.collapsible,a=location.hash.substring(1);return null===i&&(a&&this.tabs.each(function(s,n){return e(n).attr("aria-controls")===a?(i=s,!1):t}),null===i&&(i=this.tabs.index(this.tabs.filter(".ui-tabs-active"))),(null===i||-1===i)&&(i=this.tabs.length?0:!1)),i!==!1&&(i=this.tabs.index(this.tabs.eq(i)),-1===i&&(i=s?!1:0)),!s&&i===!1&&this.anchors.length&&(i=0),i},_getCreateEventData:function(){return{tab:this.active,panel:this.active.length?this._getPanelForTab(this.active):e()}},_tabKeydown:function(i){var s=e(this.document[0].activeElement).closest("li"),a=this.tabs.index(s),n=!0;if(!this._handlePageNav(i)){switch(i.keyCode){case e.ui.keyCode.RIGHT:case e.ui.keyCode.DOWN:a++;break;case e.ui.keyCode.UP:case e.ui.keyCode.LEFT:n=!1,a--;break;case e.ui.keyCode.END:a=this.anchors.length-1;break;case e.ui.keyCode.HOME:a=0;break;case e.ui.keyCode.SPACE:return i.preventDefault(),clearTimeout(this.activating),this._activate(a),t;case e.ui.keyCode.ENTER:return i.preventDefault(),clearTimeout(this.activating),this._activate(a===this.options.active?!1:a),t;default:return}i.preventDefault(),clearTimeout(this.activating),a=this._focusNextTab(a,n),i.ctrlKey||(s.attr("aria-selected","false"),this.tabs.eq(a).attr("aria-selected","true"),this.activating=this._delay(function(){this.option("active",a)},this.delay))}},_panelKeydown:function(t){this._handlePageNav(t)||t.ctrlKey&&t.keyCode===e.ui.keyCode.UP&&(t.preventDefault(),this.active.focus())},_handlePageNav:function(i){return i.altKey&&i.keyCode===e.ui.keyCode.PAGE_UP?(this._activate(this._focusNextTab(this.options.active-1,!1)),!0):i.altKey&&i.keyCode===e.ui.keyCode.PAGE_DOWN?(this._activate(this._focusNextTab(this.options.active+1,!0)),!0):t},_findNextTab:function(t,i){function s(){return t>a&&(t=0),0>t&&(t=a),t}for(var a=this.tabs.length-1;-1!==e.inArray(s(),this.options.disabled);)t=i?t+1:t-1;return t},_focusNextTab:function(e,t){return e=this._findNextTab(e,t),this.tabs.eq(e).focus(),e},_setOption:function(e,i){return"active"===e?(this._activate(i),t):"disabled"===e?(this._setupDisabled(i),t):(this._super(e,i),"collapsible"===e&&(this.element.toggleClass("ui-tabs-collapsible",i),i||this.options.active!==!1||this._activate(0)),"event"===e&&this._setupEvents(i),"heightStyle"===e&&this._setupHeightStyle(i),t)},_tabId:function(e){return e.attr("aria-controls")||"ui-tabs-"+i()},_sanitizeSelector:function(e){return e?e.replace(/[!"$%&'()*+,.\/:;<=>?@\[\]\^`{|}~]/g,"\\$&"):""},refresh:function(){var t=this.options,i=this.tablist.children(":has(a[href])");t.disabled=e.map(i.filter(".ui-state-disabled"),function(e){return i.index(e)}),this._processTabs(),t.active!==!1&&this.anchors.length?this.active.length&&!e.contains(this.tablist[0],this.active[0])?this.tabs.length===t.disabled.length?(t.active=!1,this.active=e()):this._activate(this._findNextTab(Math.max(0,t.active-1),!1)):t.active=this.tabs.index(this.active):(t.active=!1,this.active=e()),this._refresh()},_refresh:function(){this._setupDisabled(this.options.disabled),this._setupEvents(this.options.event),this._setupHeightStyle(this.options.heightStyle),this.tabs.not(this.active).attr({"aria-selected":"false",tabIndex:-1}),this.panels.not(this._getPanelForTab(this.active)).hide().attr({"aria-expanded":"false","aria-hidden":"true"}),this.active.length?(this.active.addClass("ui-tabs-active ui-state-active").attr({"aria-selected":"true",tabIndex:0}),this._getPanelForTab(this.active).show().attr({"aria-expanded":"true","aria-hidden":"false"})):this.tabs.eq(0).attr("tabIndex",0)},_processTabs:function(){var t=this;this.tablist=this._getList().addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").attr("role","tablist"),this.tabs=this.tablist.find("> li:has(a[href])").addClass("ui-state-default ui-corner-top").attr({role:"tab",tabIndex:-1}),this.anchors=this.tabs.map(function(){return e("a",this)[0]}).addClass("ui-tabs-anchor").attr({role:"presentation",tabIndex:-1}),this.panels=e(),this.anchors.each(function(i,a){var n,r,o,h=e(a).uniqueId().attr("id"),l=e(a).closest("li"),u=l.attr("aria-controls");s(a)?(n=a.hash,r=t.element.find(t._sanitizeSelector(n))):(o=t._tabId(l),n="#"+o,r=t.element.find(n),r.length||(r=t._createPanel(o),r.insertAfter(t.panels[i-1]||t.tablist)),r.attr("aria-live","polite")),r.length&&(t.panels=t.panels.add(r)),u&&l.data("ui-tabs-aria-controls",u),l.attr({"aria-controls":n.substring(1),"aria-labelledby":h}),r.attr("aria-labelledby",h)}),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").attr("role","tabpanel")},_getList:function(){return this.tablist||this.element.find("ol,ul").eq(0)},_createPanel:function(t){return e("
").attr("id",t).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",!0)},_setupDisabled:function(t){e.isArray(t)&&(t.length?t.length===this.anchors.length&&(t=!0):t=!1);for(var i,s=0;i=this.tabs[s];s++)t===!0||-1!==e.inArray(s,t)?e(i).addClass("ui-state-disabled").attr("aria-disabled","true"):e(i).removeClass("ui-state-disabled").removeAttr("aria-disabled");this.options.disabled=t},_setupEvents:function(t){var i={click:function(e){e.preventDefault()}};t&&e.each(t.split(" "),function(e,t){i[t]="_eventHandler"}),this._off(this.anchors.add(this.tabs).add(this.panels)),this._on(this.anchors,i),this._on(this.tabs,{keydown:"_tabKeydown"}),this._on(this.panels,{keydown:"_panelKeydown"}),this._focusable(this.tabs),this._hoverable(this.tabs)},_setupHeightStyle:function(t){var i,s=this.element.parent();"fill"===t?(i=s.height(),i-=this.element.outerHeight()-this.element.height(),this.element.siblings(":visible").each(function(){var t=e(this),s=t.css("position");"absolute"!==s&&"fixed"!==s&&(i-=t.outerHeight(!0))}),this.element.children().not(this.panels).each(function(){i-=e(this).outerHeight(!0)}),this.panels.each(function(){e(this).height(Math.max(0,i-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")):"auto"===t&&(i=0,this.panels.each(function(){i=Math.max(i,e(this).height("").height())}).height(i))},_eventHandler:function(t){var i=this.options,s=this.active,a=e(t.currentTarget),n=a.closest("li"),r=n[0]===s[0],o=r&&i.collapsible,h=o?e():this._getPanelForTab(n),l=s.length?this._getPanelForTab(s):e(),u={oldTab:s,oldPanel:l,newTab:o?e():n,newPanel:h};t.preventDefault(),n.hasClass("ui-state-disabled")||n.hasClass("ui-tabs-loading")||this.running||r&&!i.collapsible||this._trigger("beforeActivate",t,u)===!1||(i.active=o?!1:this.tabs.index(n),this.active=r?e():n,this.xhr&&this.xhr.abort(),l.length||h.length||e.error("jQuery UI Tabs: Mismatching fragment identifier."),h.length&&this.load(this.tabs.index(n),t),this._toggle(t,u))},_toggle:function(t,i){function s(){n.running=!1,n._trigger("activate",t,i)}function a(){i.newTab.closest("li").addClass("ui-tabs-active ui-state-active"),r.length&&n.options.show?n._show(r,n.options.show,s):(r.show(),s())}var n=this,r=i.newPanel,o=i.oldPanel;this.running=!0,o.length&&this.options.hide?this._hide(o,this.options.hide,function(){i.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),a()}):(i.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),o.hide(),a()),o.attr({"aria-expanded":"false","aria-hidden":"true"}),i.oldTab.attr("aria-selected","false"),r.length&&o.length?i.oldTab.attr("tabIndex",-1):r.length&&this.tabs.filter(function(){return 0===e(this).attr("tabIndex")}).attr("tabIndex",-1),r.attr({"aria-expanded":"true","aria-hidden":"false"}),i.newTab.attr({"aria-selected":"true",tabIndex:0})},_activate:function(t){var i,s=this._findActive(t);s[0]!==this.active[0]&&(s.length||(s=this.active),i=s.find(".ui-tabs-anchor")[0],this._eventHandler({target:i,currentTarget:i,preventDefault:e.noop}))},_findActive:function(t){return t===!1?e():this.tabs.eq(t)},_getIndex:function(e){return"string"==typeof e&&(e=this.anchors.index(this.anchors.filter("[href$='"+e+"']"))),e},_destroy:function(){this.xhr&&this.xhr.abort(),this.element.removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible"),this.tablist.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").removeAttr("role"),this.anchors.removeClass("ui-tabs-anchor").removeAttr("role").removeAttr("tabIndex").removeUniqueId(),this.tabs.add(this.panels).each(function(){e.data(this,"ui-tabs-destroy")?e(this).remove():e(this).removeClass("ui-state-default ui-state-active ui-state-disabled ui-corner-top ui-corner-bottom ui-widget-content ui-tabs-active ui-tabs-panel").removeAttr("tabIndex").removeAttr("aria-live").removeAttr("aria-busy").removeAttr("aria-selected").removeAttr("aria-labelledby").removeAttr("aria-hidden").removeAttr("aria-expanded").removeAttr("role")}),this.tabs.each(function(){var t=e(this),i=t.data("ui-tabs-aria-controls");i?t.attr("aria-controls",i).removeData("ui-tabs-aria-controls"):t.removeAttr("aria-controls")}),this.panels.show(),"content"!==this.options.heightStyle&&this.panels.css("height","")},enable:function(i){var s=this.options.disabled;s!==!1&&(i===t?s=!1:(i=this._getIndex(i),s=e.isArray(s)?e.map(s,function(e){return e!==i?e:null}):e.map(this.tabs,function(e,t){return t!==i?t:null})),this._setupDisabled(s))},disable:function(i){var s=this.options.disabled;if(s!==!0){if(i===t)s=!0;else{if(i=this._getIndex(i),-1!==e.inArray(i,s))return;s=e.isArray(s)?e.merge([i],s).sort():[i]}this._setupDisabled(s)}},load:function(t,i){t=this._getIndex(t);var a=this,n=this.tabs.eq(t),r=n.find(".ui-tabs-anchor"),o=this._getPanelForTab(n),h={tab:n,panel:o};s(r[0])||(this.xhr=e.ajax(this._ajaxSettings(r,i,h)),this.xhr&&"canceled"!==this.xhr.statusText&&(n.addClass("ui-tabs-loading"),o.attr("aria-busy","true"),this.xhr.success(function(e){setTimeout(function(){o.html(e),a._trigger("load",i,h)},1)}).complete(function(e,t){setTimeout(function(){"abort"===t&&a.panels.stop(!1,!0),n.removeClass("ui-tabs-loading"),o.removeAttr("aria-busy"),e===a.xhr&&delete a.xhr},1)})))},_ajaxSettings:function(t,i,s){var a=this;return{url:t.attr("href"),beforeSend:function(t,n){return a._trigger("beforeLoad",i,e.extend({jqXHR:t,ajaxSettings:n},s))}}},_getPanelForTab:function(t){var i=e(t).attr("aria-controls");return this.element.find(this._sanitizeSelector("#"+i))}})})(jQuery);(function(e){function t(t,i){var s=(t.attr("aria-describedby")||"").split(/\s+/);s.push(i),t.data("ui-tooltip-id",i).attr("aria-describedby",e.trim(s.join(" ")))}function i(t){var i=t.data("ui-tooltip-id"),s=(t.attr("aria-describedby")||"").split(/\s+/),a=e.inArray(i,s);-1!==a&&s.splice(a,1),t.removeData("ui-tooltip-id"),s=e.trim(s.join(" ")),s?t.attr("aria-describedby",s):t.removeAttr("aria-describedby")}var s=0;e.widget("ui.tooltip",{version:"1.10.4",options:{content:function(){var t=e(this).attr("title")||"";return e("").text(t).html()},hide:!0,items:"[title]:not([disabled])",position:{my:"left top+15",at:"left bottom",collision:"flipfit flip"},show:!0,tooltipClass:null,track:!1,close:null,open:null},_create:function(){this._on({mouseover:"open",focusin:"open"}),this.tooltips={},this.parents={},this.options.disabled&&this._disable()},_setOption:function(t,i){var s=this;return"disabled"===t?(this[i?"_disable":"_enable"](),this.options[t]=i,void 0):(this._super(t,i),"content"===t&&e.each(this.tooltips,function(e,t){s._updateContent(t)}),void 0)},_disable:function(){var t=this;e.each(this.tooltips,function(i,s){var a=e.Event("blur");a.target=a.currentTarget=s[0],t.close(a,!0)}),this.element.find(this.options.items).addBack().each(function(){var t=e(this);t.is("[title]")&&t.data("ui-tooltip-title",t.attr("title")).attr("title","")})},_enable:function(){this.element.find(this.options.items).addBack().each(function(){var t=e(this);t.data("ui-tooltip-title")&&t.attr("title",t.data("ui-tooltip-title"))})},open:function(t){var i=this,s=e(t?t.target:this.element).closest(this.options.items);s.length&&!s.data("ui-tooltip-id")&&(s.attr("title")&&s.data("ui-tooltip-title",s.attr("title")),s.data("ui-tooltip-open",!0),t&&"mouseover"===t.type&&s.parents().each(function(){var t,s=e(this);s.data("ui-tooltip-open")&&(t=e.Event("blur"),t.target=t.currentTarget=this,i.close(t,!0)),s.attr("title")&&(s.uniqueId(),i.parents[this.id]={element:this,title:s.attr("title")},s.attr("title",""))}),this._updateContent(s,t))},_updateContent:function(e,t){var i,s=this.options.content,a=this,n=t?t.type:null;return"string"==typeof s?this._open(t,e,s):(i=s.call(e[0],function(i){e.data("ui-tooltip-open")&&a._delay(function(){t&&(t.type=n),this._open(t,e,i)})}),i&&this._open(t,e,i),void 0)},_open:function(i,s,a){function n(e){l.of=e,r.is(":hidden")||r.position(l)}var r,o,h,l=e.extend({},this.options.position);if(a){if(r=this._find(s),r.length)return r.find(".ui-tooltip-content").html(a),void 0;s.is("[title]")&&(i&&"mouseover"===i.type?s.attr("title",""):s.removeAttr("title")),r=this._tooltip(s),t(s,r.attr("id")),r.find(".ui-tooltip-content").html(a),this.options.track&&i&&/^mouse/.test(i.type)?(this._on(this.document,{mousemove:n}),n(i)):r.position(e.extend({of:s},this.options.position)),r.hide(),this._show(r,this.options.show),this.options.show&&this.options.show.delay&&(h=this.delayedShow=setInterval(function(){r.is(":visible")&&(n(l.of),clearInterval(h))},e.fx.interval)),this._trigger("open",i,{tooltip:r}),o={keyup:function(t){if(t.keyCode===e.ui.keyCode.ESCAPE){var i=e.Event(t);i.currentTarget=s[0],this.close(i,!0)}},remove:function(){this._removeTooltip(r)}},i&&"mouseover"!==i.type||(o.mouseleave="close"),i&&"focusin"!==i.type||(o.focusout="close"),this._on(!0,s,o)}},close:function(t){var s=this,a=e(t?t.currentTarget:this.element),n=this._find(a);this.closing||(clearInterval(this.delayedShow),a.data("ui-tooltip-title")&&a.attr("title",a.data("ui-tooltip-title")),i(a),n.stop(!0),this._hide(n,this.options.hide,function(){s._removeTooltip(e(this))}),a.removeData("ui-tooltip-open"),this._off(a,"mouseleave focusout keyup"),a[0]!==this.element[0]&&this._off(a,"remove"),this._off(this.document,"mousemove"),t&&"mouseleave"===t.type&&e.each(this.parents,function(t,i){e(i.element).attr("title",i.title),delete s.parents[t]}),this.closing=!0,this._trigger("close",t,{tooltip:n}),this.closing=!1)},_tooltip:function(t){var i="ui-tooltip-"+s++,a=e("
").attr({id:i,role:"tooltip"}).addClass("ui-tooltip ui-widget ui-corner-all ui-widget-content "+(this.options.tooltipClass||""));return e("
").addClass("ui-tooltip-content").appendTo(a),a.appendTo(this.document[0].body),this.tooltips[i]=t,a},_find:function(t){var i=t.data("ui-tooltip-id");return i?e("#"+i):e()},_removeTooltip:function(e){e.remove(),delete this.tooltips[e.attr("id")]},_destroy:function(){var t=this;e.each(this.tooltips,function(i,s){var a=e.Event("blur");a.target=a.currentTarget=s[0],t.close(a,!0),e("#"+i).remove(),s.data("ui-tooltip-title")&&(s.attr("title",s.data("ui-tooltip-title")),s.removeData("ui-tooltip-title"))})}})})(jQuery); \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/jquery.touchSwipe.min.js b/jpress-template/src/main/webapp/templates/daotian/js/jquery.touchSwipe.min.js new file mode 100644 index 0000000000000000000000000000000000000000..8ba849405d1f15742c3750204014a2a4fcc445cc --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/jquery.touchSwipe.min.js @@ -0,0 +1,16 @@ +/*! + * @fileOverview TouchSwipe - jQuery Plugin + * @version 1.6.18 + * + * @author Matt Bryson http://www.github.com/mattbryson + * @see https://github.com/mattbryson/TouchSwipe-Jquery-Plugin + * @see http://labs.rampinteractive.co.uk/touchSwipe/ + * @see http://plugins.jquery.com/project/touchSwipe + * @license + * Copyright (c) 2010-2015 Matt Bryson + * Dual licensed under the MIT or GPL Version 2 licenses. + * + */ + +!function(factory){"function"==typeof define&&define.amd&&define.amd.jQuery?define(["jquery"],factory):factory("undefined"!=typeof module&&module.exports?require("jquery"):jQuery)}(function($){"use strict";function init(options){return!options||void 0!==options.allowPageScroll||void 0===options.swipe&&void 0===options.swipeStatus||(options.allowPageScroll=NONE),void 0!==options.click&&void 0===options.tap&&(options.tap=options.click),options||(options={}),options=$.extend({},$.fn.swipe.defaults,options),this.each(function(){var $this=$(this),plugin=$this.data(PLUGIN_NS);plugin||(plugin=new TouchSwipe(this,options),$this.data(PLUGIN_NS,plugin))})}function TouchSwipe(element,options){function touchStart(jqEvent){if(!(getTouchInProgress()||$(jqEvent.target).closest(options.excludedElements,$element).length>0)){var event=jqEvent.originalEvent?jqEvent.originalEvent:jqEvent;if(!event.pointerType||"mouse"!=event.pointerType||0!=options.fallbackToMouseEvents){var ret,touches=event.touches,evt=touches?touches[0]:event;return phase=PHASE_START,touches?fingerCount=touches.length:options.preventDefaultEvents!==!1&&jqEvent.preventDefault(),distance=0,direction=null,currentDirection=null,pinchDirection=null,duration=0,startTouchesDistance=0,endTouchesDistance=0,pinchZoom=1,pinchDistance=0,maximumsMap=createMaximumsData(),cancelMultiFingerRelease(),createFingerData(0,evt),!touches||fingerCount===options.fingers||options.fingers===ALL_FINGERS||hasPinches()?(startTime=getTimeStamp(),2==fingerCount&&(createFingerData(1,touches[1]),startTouchesDistance=endTouchesDistance=calculateTouchesDistance(fingerData[0].start,fingerData[1].start)),(options.swipeStatus||options.pinchStatus)&&(ret=triggerHandler(event,phase))):ret=!1,ret===!1?(phase=PHASE_CANCEL,triggerHandler(event,phase),ret):(options.hold&&(holdTimeout=setTimeout($.proxy(function(){$element.trigger("hold",[event.target]),options.hold&&(ret=options.hold.call($element,event,event.target))},this),options.longTapThreshold)),setTouchInProgress(!0),null)}}}function touchMove(jqEvent){var event=jqEvent.originalEvent?jqEvent.originalEvent:jqEvent;if(phase!==PHASE_END&&phase!==PHASE_CANCEL&&!inMultiFingerRelease()){var ret,touches=event.touches,evt=touches?touches[0]:event,currentFinger=updateFingerData(evt);if(endTime=getTimeStamp(),touches&&(fingerCount=touches.length),options.hold&&clearTimeout(holdTimeout),phase=PHASE_MOVE,2==fingerCount&&(0==startTouchesDistance?(createFingerData(1,touches[1]),startTouchesDistance=endTouchesDistance=calculateTouchesDistance(fingerData[0].start,fingerData[1].start)):(updateFingerData(touches[1]),endTouchesDistance=calculateTouchesDistance(fingerData[0].end,fingerData[1].end),pinchDirection=calculatePinchDirection(fingerData[0].end,fingerData[1].end)),pinchZoom=calculatePinchZoom(startTouchesDistance,endTouchesDistance),pinchDistance=Math.abs(startTouchesDistance-endTouchesDistance)),fingerCount===options.fingers||options.fingers===ALL_FINGERS||!touches||hasPinches()){if(direction=calculateDirection(currentFinger.start,currentFinger.end),currentDirection=calculateDirection(currentFinger.last,currentFinger.end),validateDefaultEvent(jqEvent,currentDirection),distance=calculateDistance(currentFinger.start,currentFinger.end),duration=calculateDuration(),setMaxDistance(direction,distance),ret=triggerHandler(event,phase),!options.triggerOnTouchEnd||options.triggerOnTouchLeave){var inBounds=!0;if(options.triggerOnTouchLeave){var bounds=getbounds(this);inBounds=isInBounds(currentFinger.end,bounds)}!options.triggerOnTouchEnd&&inBounds?phase=getNextPhase(PHASE_MOVE):options.triggerOnTouchLeave&&!inBounds&&(phase=getNextPhase(PHASE_END)),phase!=PHASE_CANCEL&&phase!=PHASE_END||triggerHandler(event,phase)}}else phase=PHASE_CANCEL,triggerHandler(event,phase);ret===!1&&(phase=PHASE_CANCEL,triggerHandler(event,phase))}}function touchEnd(jqEvent){var event=jqEvent.originalEvent?jqEvent.originalEvent:jqEvent,touches=event.touches;if(touches){if(touches.length&&!inMultiFingerRelease())return startMultiFingerRelease(event),!0;if(touches.length&&inMultiFingerRelease())return!0}return inMultiFingerRelease()&&(fingerCount=fingerCountAtRelease),endTime=getTimeStamp(),duration=calculateDuration(),didSwipeBackToCancel()||!validateSwipeDistance()?(phase=PHASE_CANCEL,triggerHandler(event,phase)):options.triggerOnTouchEnd||options.triggerOnTouchEnd===!1&&phase===PHASE_MOVE?(options.preventDefaultEvents!==!1&&jqEvent.preventDefault(),phase=PHASE_END,triggerHandler(event,phase)):!options.triggerOnTouchEnd&&hasTap()?(phase=PHASE_END,triggerHandlerForGesture(event,phase,TAP)):phase===PHASE_MOVE&&(phase=PHASE_CANCEL,triggerHandler(event,phase)),setTouchInProgress(!1),null}function touchCancel(){fingerCount=0,endTime=0,startTime=0,startTouchesDistance=0,endTouchesDistance=0,pinchZoom=1,cancelMultiFingerRelease(),setTouchInProgress(!1)}function touchLeave(jqEvent){var event=jqEvent.originalEvent?jqEvent.originalEvent:jqEvent;options.triggerOnTouchLeave&&(phase=getNextPhase(PHASE_END),triggerHandler(event,phase))}function removeListeners(){$element.unbind(START_EV,touchStart),$element.unbind(CANCEL_EV,touchCancel),$element.unbind(MOVE_EV,touchMove),$element.unbind(END_EV,touchEnd),LEAVE_EV&&$element.unbind(LEAVE_EV,touchLeave),setTouchInProgress(!1)}function getNextPhase(currentPhase){var nextPhase=currentPhase,validTime=validateSwipeTime(),validDistance=validateSwipeDistance(),didCancel=didSwipeBackToCancel();return!validTime||didCancel?nextPhase=PHASE_CANCEL:!validDistance||currentPhase!=PHASE_MOVE||options.triggerOnTouchEnd&&!options.triggerOnTouchLeave?!validDistance&¤tPhase==PHASE_END&&options.triggerOnTouchLeave&&(nextPhase=PHASE_CANCEL):nextPhase=PHASE_END,nextPhase}function triggerHandler(event,phase){var ret,touches=event.touches;return(didSwipe()||hasSwipes())&&(ret=triggerHandlerForGesture(event,phase,SWIPE)),(didPinch()||hasPinches())&&ret!==!1&&(ret=triggerHandlerForGesture(event,phase,PINCH)),didDoubleTap()&&ret!==!1?ret=triggerHandlerForGesture(event,phase,DOUBLE_TAP):didLongTap()&&ret!==!1?ret=triggerHandlerForGesture(event,phase,LONG_TAP):didTap()&&ret!==!1&&(ret=triggerHandlerForGesture(event,phase,TAP)),phase===PHASE_CANCEL&&touchCancel(event),phase===PHASE_END&&(touches?touches.length||touchCancel(event):touchCancel(event)),ret}function triggerHandlerForGesture(event,phase,gesture){var ret;if(gesture==SWIPE){if($element.trigger("swipeStatus",[phase,direction||null,distance||0,duration||0,fingerCount,fingerData,currentDirection]),options.swipeStatus&&(ret=options.swipeStatus.call($element,event,phase,direction||null,distance||0,duration||0,fingerCount,fingerData,currentDirection),ret===!1))return!1;if(phase==PHASE_END&&validateSwipe()){if(clearTimeout(singleTapTimeout),clearTimeout(holdTimeout),$element.trigger("swipe",[direction,distance,duration,fingerCount,fingerData,currentDirection]),options.swipe&&(ret=options.swipe.call($element,event,direction,distance,duration,fingerCount,fingerData,currentDirection),ret===!1))return!1;switch(direction){case LEFT:$element.trigger("swipeLeft",[direction,distance,duration,fingerCount,fingerData,currentDirection]),options.swipeLeft&&(ret=options.swipeLeft.call($element,event,direction,distance,duration,fingerCount,fingerData,currentDirection));break;case RIGHT:$element.trigger("swipeRight",[direction,distance,duration,fingerCount,fingerData,currentDirection]),options.swipeRight&&(ret=options.swipeRight.call($element,event,direction,distance,duration,fingerCount,fingerData,currentDirection));break;case UP:$element.trigger("swipeUp",[direction,distance,duration,fingerCount,fingerData,currentDirection]),options.swipeUp&&(ret=options.swipeUp.call($element,event,direction,distance,duration,fingerCount,fingerData,currentDirection));break;case DOWN:$element.trigger("swipeDown",[direction,distance,duration,fingerCount,fingerData,currentDirection]),options.swipeDown&&(ret=options.swipeDown.call($element,event,direction,distance,duration,fingerCount,fingerData,currentDirection))}}}if(gesture==PINCH){if($element.trigger("pinchStatus",[phase,pinchDirection||null,pinchDistance||0,duration||0,fingerCount,pinchZoom,fingerData]),options.pinchStatus&&(ret=options.pinchStatus.call($element,event,phase,pinchDirection||null,pinchDistance||0,duration||0,fingerCount,pinchZoom,fingerData),ret===!1))return!1;if(phase==PHASE_END&&validatePinch())switch(pinchDirection){case IN:$element.trigger("pinchIn",[pinchDirection||null,pinchDistance||0,duration||0,fingerCount,pinchZoom,fingerData]),options.pinchIn&&(ret=options.pinchIn.call($element,event,pinchDirection||null,pinchDistance||0,duration||0,fingerCount,pinchZoom,fingerData));break;case OUT:$element.trigger("pinchOut",[pinchDirection||null,pinchDistance||0,duration||0,fingerCount,pinchZoom,fingerData]),options.pinchOut&&(ret=options.pinchOut.call($element,event,pinchDirection||null,pinchDistance||0,duration||0,fingerCount,pinchZoom,fingerData))}}return gesture==TAP?phase!==PHASE_CANCEL&&phase!==PHASE_END||(clearTimeout(singleTapTimeout),clearTimeout(holdTimeout),hasDoubleTap()&&!inDoubleTap()?(doubleTapStartTime=getTimeStamp(),singleTapTimeout=setTimeout($.proxy(function(){doubleTapStartTime=null,$element.trigger("tap",[event.target]),options.tap&&(ret=options.tap.call($element,event,event.target))},this),options.doubleTapThreshold)):(doubleTapStartTime=null,$element.trigger("tap",[event.target]),options.tap&&(ret=options.tap.call($element,event,event.target)))):gesture==DOUBLE_TAP?phase!==PHASE_CANCEL&&phase!==PHASE_END||(clearTimeout(singleTapTimeout),clearTimeout(holdTimeout),doubleTapStartTime=null,$element.trigger("doubletap",[event.target]),options.doubleTap&&(ret=options.doubleTap.call($element,event,event.target))):gesture==LONG_TAP&&(phase!==PHASE_CANCEL&&phase!==PHASE_END||(clearTimeout(singleTapTimeout),doubleTapStartTime=null,$element.trigger("longtap",[event.target]),options.longTap&&(ret=options.longTap.call($element,event,event.target)))),ret}function validateSwipeDistance(){var valid=!0;return null!==options.threshold&&(valid=distance>=options.threshold),valid}function didSwipeBackToCancel(){var cancelled=!1;return null!==options.cancelThreshold&&null!==direction&&(cancelled=getMaxDistance(direction)-distance>=options.cancelThreshold),cancelled}function validatePinchDistance(){return null===options.pinchThreshold||pinchDistance>=options.pinchThreshold}function validateSwipeTime(){var result;return result=!options.maxTimeThreshold||!(duration>=options.maxTimeThreshold)}function validateDefaultEvent(jqEvent,direction){if(options.preventDefaultEvents!==!1)if(options.allowPageScroll===NONE)jqEvent.preventDefault();else{var auto=options.allowPageScroll===AUTO;switch(direction){case LEFT:(options.swipeLeft&&auto||!auto&&options.allowPageScroll!=HORIZONTAL)&&jqEvent.preventDefault();break;case RIGHT:(options.swipeRight&&auto||!auto&&options.allowPageScroll!=HORIZONTAL)&&jqEvent.preventDefault();break;case UP:(options.swipeUp&&auto||!auto&&options.allowPageScroll!=VERTICAL)&&jqEvent.preventDefault();break;case DOWN:(options.swipeDown&&auto||!auto&&options.allowPageScroll!=VERTICAL)&&jqEvent.preventDefault();break;case NONE:}}}function validatePinch(){var hasCorrectFingerCount=validateFingers(),hasEndPoint=validateEndPoint(),hasCorrectDistance=validatePinchDistance();return hasCorrectFingerCount&&hasEndPoint&&hasCorrectDistance}function hasPinches(){return!!(options.pinchStatus||options.pinchIn||options.pinchOut)}function didPinch(){return!(!validatePinch()||!hasPinches())}function validateSwipe(){var hasValidTime=validateSwipeTime(),hasValidDistance=validateSwipeDistance(),hasCorrectFingerCount=validateFingers(),hasEndPoint=validateEndPoint(),didCancel=didSwipeBackToCancel(),valid=!didCancel&&hasEndPoint&&hasCorrectFingerCount&&hasValidDistance&&hasValidTime;return valid}function hasSwipes(){return!!(options.swipe||options.swipeStatus||options.swipeLeft||options.swipeRight||options.swipeUp||options.swipeDown)}function didSwipe(){return!(!validateSwipe()||!hasSwipes())}function validateFingers(){return fingerCount===options.fingers||options.fingers===ALL_FINGERS||!SUPPORTS_TOUCH}function validateEndPoint(){return 0!==fingerData[0].end.x}function hasTap(){return!!options.tap}function hasDoubleTap(){return!!options.doubleTap}function hasLongTap(){return!!options.longTap}function validateDoubleTap(){if(null==doubleTapStartTime)return!1;var now=getTimeStamp();return hasDoubleTap()&&now-doubleTapStartTime<=options.doubleTapThreshold}function inDoubleTap(){return validateDoubleTap()}function validateTap(){return(1===fingerCount||!SUPPORTS_TOUCH)&&(isNaN(distance)||distanceoptions.longTapThreshold&&distance=0?LEFT:angle<=360&&angle>=315?LEFT:angle>=135&&angle<=225?RIGHT:angle>45&&angle<135?DOWN:UP}function getTimeStamp(){var now=new Date;return now.getTime()}function getbounds(el){el=$(el);var offset=el.offset(),bounds={left:offset.left,right:offset.left+el.outerWidth(),top:offset.top,bottom:offset.top+el.outerHeight()};return bounds}function isInBounds(point,bounds){return point.x>bounds.left&&point.xbounds.top&&point.y)|(\\*))\\s*((?:[^\\"+_t+"]|\\"+_t+"(?!\\"+bt+"))*?)",ft.rTag="(?:"+rt+")",rt=new RegExp("(?:"+t+rt+"(\\/)?|\\"+mt+"(\\"+wt+")?\\"+xt+"(?:(?:\\/(\\w+))\\s*|!--[\\s\\S]*?--))"+e,"g"),ft.rTmpl=new RegExp("^\\s|\\s$|<.*>|([^\\\\]|^)[{}]|"+t+".*"+e),ht):gt.delimiters}function c(t,e){e||t===!0||(e=t,t=void 0);var n,r,i,o,a=this,s=!e||"root"===e;if(t){if(o=e&&a.type===e&&a,!o)if(n=a.views,a._.useKey){for(r in n)if(o=e?n[r].get(t,e):n[r])break}else for(r=0,i=n.length;!o&&r1,v=f.ctx;if(n){if(f._||(p=f.index,f=f.tag),c=f,v&&v.hasOwnProperty(n)||(v=ct).hasOwnProperty(n)){if(s=v[n],"tag"===n||"tagCtx"===n||"root"===n||"parentTags"===n||f._.it===n)return s}else v=void 0;if((f.tagCtx||f.linked)&&(s&&s._cxp||(f=f.tagCtx||st(s)?f:(f=f.scope||f,!f.isTop&&f.ctx.tag||f),void 0!==s&&f.tagCtx&&(f=f.tagCtx.view.scope),v=f._ocps,s=v&&v.hasOwnProperty(n)&&v[n]||s,s&&s._cxp||!i&&!g||((v||(f._ocps=f._ocps||{}))[n]=s=[{_ocp:s,_vw:c,_key:n}],s._cxp={path:Tt,ind:0,updateValue:function(t,n){return e.observable(s[0]).setProperty(Tt,t),this}})),d=s&&s._cxp)){if(arguments.length>2)return a=s[1]?ft._ceo(s[1].deps):[Tt],a.unshift(s[0]),a._cxp=d,a;if(p=d.tagElse,u=s[1]?d.tag&&d.tag.cvtArgs?d.tag.cvtArgs(1,p)[d.ind]:s[1](s[0].data,s[0],ft):s[0]._ocp,g)return s&&u!==r&&ft._ucp(n,r,f,d),f;s=u}return s&&st(s)&&(o=function(){return s.apply(this&&this!==t?this:c,arguments)},l(o,s),o._vw=c),o||s}}function h(t){return t&&(t.fn?t:this.getRsc("templates",t)||lt(t))}function m(t,e,n,r){var o,a,s,d,p="number"==typeof n&&e.tmpl.bnds[n-1],c=e.linkCtx;if(void 0===r&&p&&p._lr&&(r=""),void 0!==r?n=r={props:{},args:[r]}:p&&(n=p(e.data,e,ft)),p=p._bd&&p,t||p){if(o=c&&c.tag,n.view=e,!o){if(o=l(new ft._tg,{_:{bnd:p,unlinked:!0,lt:n.lt},inline:!c,tagName:":",convert:t,flow:!0,tagCtx:n,tagCtxs:[n],_is:"tag"}),s=n.args.length,s>1)for(d=o.bindTo=[];s--;)d.unshift(s);c&&(c.tag=o,o.linkCtx=c),n.ctx=Q(n.ctx,(c?c.view:e).ctx),i(o,n)}o._er=r&&a,o.ctx=n.ctx||o.ctx||{},n.ctx=void 0,a=o.cvtArgs()[0],o._er=r&&a}else a=n.args[0];return a=p&&e._.onRender?e._.onRender(a,e,o):a,void 0!=a?a:""}function x(t,e){var n,r,i,o,a,s,d,l=this;if(l.tagName?(s=l,l=s.tagCtxs?s.tagCtxs[e||0]:s.tagCtx):s=l.tag,a=s.bindFrom,o=l.args,(d=s.convert)&&""+d===d&&(d="true"===d?void 0:l.view.getRsc("converters",d)||S("Unknown converter: '"+d+"'")),d&&!t&&(o=o.slice()),a){for(i=[],n=a.length;n--;)r=a[n],i.unshift(_(l,r));t&&(o=i)}if(d){if(d=d.apply(s,i||o),void 0===d)return o;if(a=a||[0],n=a.length,dt(d)&&d.length===n||(d=[d],a=[0],n=1),t)o=d;else for(;n--;)r=a[n],+r===r&&(o[r]=d[n])}return o}function _(t,e){return t=t[+e===e?"args":"props"],t&&t[e]}function b(t){return this.cvtArgs(1,t)}function w(t,e){var n,r,i=this;if(""+e===e){for(;void 0===n&&i;)r=i.tmpl&&i.tmpl[t],n=r&&r[e],i=i.parent;return n||ot[t][e]}}function y(t,e,n,r,o,a){function s(t){var e=d[t];if(void 0!==e)for(e=dt(e)?e:[e],h=e.length;h--;)J=e[h],isNaN(parseInt(J))||(e[h]=parseInt(J));return e||[0]}e=e||it;var d,l,p,c,u,f,g,h,m,w,y,k,C,T,j,A,N,R,F,V,M,$,E,I,D,J,U,q,K,L,B=0,H="",Z=e.linkCtx||0,z=e.ctx,G=n||e.tmpl,W="number"==typeof r&&e.tmpl.bnds[r-1];for("tag"===t._is?(d=t,t=d.tagName,r=d.tagCtxs,p=d.template):(l=e.getRsc("tags",t)||S("Unknown tag: {{"+t+"}} "),p=l.template),void 0===a&&W&&(W._lr=l.lateRender&&W._lr!==!1||W._lr)&&(a=""),void 0!==a?(H+=a,r=a=[{props:{},args:[],params:{props:{}}}]):W&&(r=W(e.data,e,ft)),g=r.length;B0&&(a=n)){if(!a)if(/^\.\/[^\\:*?"<>]*$/.test(n))(s=lt[t=t||n])?n=s:a=document.getElementById(n);else if(e.fn&&!ft.rTmpl.test(n))try{a=e(n,document)[0]}catch(d){}a&&("SCRIPT"!==a.tagName&&S(n+": Use script block, not "+a.tagName),i?n=a.innerHTML:(o=a.getAttribute(Ht),o&&(o!==Zt?(n=lt[o],delete lt[o]):e.fn&&(n=e.data(a)[Zt])),o&&n||(t=t||(e.fn?Zt:n),n=A(t,a.innerHTML,r,i)),n.tmplName=t=t||o,t!==Zt&&(lt[t]=n),a.setAttribute(Ht,t),e.fn&&e.data(a,Zt,n))),a=void 0}else n.fn||(n=void 0);return n}var a,s,d=n=n||"";if(ft._html=pt.html,0===i&&(i=void 0,d=o(d)),i=i||(n.markup?n.bnds?l({},n):n:{}),i.tmplName=i.tmplName||t||"unnamed",r&&(i._parentTmpl=r),!d&&n.markup&&(d=o(n.markup))&&d.fn&&(d=d.markup),void 0!==d)return d.render||n.render?d.tmpls&&(s=d):(n=V(d,i),J(d.replace(Ft,"\\$&"),n)),s||(s=l(function(){return s.render.apply(s,arguments)},n),C(s)),s}function N(t,e){return st(t)?t.call(e):t}function R(t){for(var e=[],n=0,r=t.length;nO-(U||0))){if(U=I.slice(U,O+i.length),q!==!0)if(K=a||f[h-1].bd,L=K[K.length-1],L&&L.prm){for(;L.sb&&L.sb.prm;)L=L.sb;B=L.sb={path:L.sb,bnd:L.bnd}}else K.push(B={path:K.pop()});$=xt+":"+U+" onerror=''"+_t,q=v[$],q||(v[$]=!0,v[$]=q=J($,n,!0)),q!==!0&&B&&(B._cpfn=q,B.prm=u.bd,B.bnd=B.bnd||B.path&&B.path.indexOf("^")>=0)}return l?(l=!F,l?i:R+'"'):d?(d=!V,d?i:R+'"'):(_?(x[h]=O++,u=f[++h]={bd:[]},_):"")+(P?h?"":(g=I.slice(g,O),(o?(o=s=a=!1,"\b"):"\b,")+g+(g=O+i.length,c&&e.push(u.bd=[]),"\b")):C?(h&&D(t),c&&e.pop(),o="_"+w,s=b,g=O+i.length,c&&(c=u.bd=e[o]=[],c.skp=!b),w+":"):w?w.split("^").join(".").replace(jt,S)+(A?(u=f[++h]={bd:[]},m[h]=Q,A):y):y?y:M?(M=m[h]||M,m[h]=!1,u=f[--h],M+(A?(u=f[++h],m[h]=Q,A):"")):N?(m[h]||D(t),","):p?"":(l=F,d=V,'"'))}D(t)}var o,a,s,d,l,p,c=e&&e[0],u={bd:c},f={0:u},g=0,v=(n?n.links:c&&(c.links=c.links||{}))||it.tmpl.links,h=0,m={},x={};return"@"===t.charAt(0)&&(t=t.replace(Ut,".")),p=(t+(n?" ":"")).replace(At,i),!h&&p||D(t)}function B(t,e,n){var r,i,o,a,s,d,l,p,c,u,f,g,v,h,m,x,_,b,w,y,k,C,T,j,A,N,R,F,M,$,E,P,O,I=0,S=vt.useViews||e.useViews||e.tags||e.templates||e.helpers||e.converters,J="",q={},L=t.length;for(""+e===e?(b=n?'data-link="'+e.replace(Nt," ").slice(1,-1)+'"':e,e=0):(b=e.tmplName||"unnamed",e.allowCode&&(q.allowCode=!0),e.debug&&(q.debug=!0),f=e.bnds,_=e.tmpls),r=0;r":a+o):(k&&(w=V(C,q),w.tmplName=b+"/"+o,w.useViews=w.useViews||S,B(k,w),S=w.useViews,_.push(w)),A||(y=o,S=S||o&&(!ut[o]||!ut[o].flow),j=J,J=""),T=t[r+1],T=T&&"else"===T[0]),M=F?";\ntry{\nret+=":"\n+",h="",m="",N&&(g||$||a&&a!==Bt||E)){if(R=new Function("data,view,j,u","// "+b+" "+ ++I+" "+o+P+"{"+s+"};"+O),R._er=F,R._tag=o,R._bd=!!g,R._lr=E,n)return R;U(R,g),x='c("'+a+'",view,',u=!0,h=x+I+",",m=")"}if(J+=N?(n?(F?"try{\n":"")+"return ":M)+(u?(u=void 0,S=c=!0,x+(R?(f[I-1]=R,I):"{"+s+"}")+")"):">"===o?(l=!0,"h("+v[0]+")"):(p=!0,"((v="+v[0]+")!=null?v:"+(n?"null)":'"")'))):(d=!0,"\n{view:view,tmpl:"+(k?_.length:"0")+","+s+"},"),y&&!T){if(J="["+J.slice(0,-1)+"]",x='t("'+y+'",view,this,',n||g){if(J=new Function("data,view,j,u"," // "+b+" "+I+" "+y+P+J+O),J._er=F,J._tag=y,g&&U(f[I-1]=J,g),J._lr=E,n)return J;h=x+I+",undefined,",m=")"}J=j+M+x+(g&&I||J)+")",g=0,y=0}F&&!T&&(S=!0,J+=";\n}catch(e){ret"+(n?"urn ":"+=")+h+"j._err(e,view,"+F+")"+m+";}"+(n?"":"ret=ret"))}J="// "+b+(q.debug?"\ndebugger;":"")+"\nvar v"+(d?",t=j._tag":"")+(c?",c=j._cnvt":"")+(l?",h=j._html":"")+(n?(i[8]?", ob":"")+";\n":',ret=""')+J+(n?"\n":";\nreturn ret;");try{J=new Function("data,view,j,u",J)}catch(Q){D("Compiled template code:\n\n"+J+'\n: "'+(Q.message||Q)+'"')}return e&&(e.fn=J,e.useViews=!!S),J}function Q(t,e){return t&&t!==e?e?l(l({},e),t):t:e&&l({},e)}function H(t,n){var r,i,o=[];if(typeof t===Qt||st(t))for(r in t)i=t[r],r===at||!t.hasOwnProperty(r)||n.props.noFunctions&&e.isFunction(i)||o.push({key:r,prop:i});return Z(o,n)}function Z(t,n){var r,i,o,a=n.tag,s=n.props,d=n.params.props,l=s.filter,p=s.sort,c=p===!0,u=parseInt(s.step),f=s.reverse?-1:1;if(!dt(t))return t;if(c||p&&""+p===p?(r=t.map(function(t,e){return t=c?t:g(t,p),{i:e,v:""+t===t?t.toLowerCase():t}}),r.sort(function(t,e){return t.v>e.v?f:t.vt.length?t.length:+o,t=t.slice(i,o)),u>1){for(i=0,o=t.length,r=[];i=|[<>%*:?\/]|(=))\s*|(!*?(@)?[#~]?[\w$.^]+)([([])?)|(,\s*)|(\(?)\\?(?:(')|("))|(?:\s*(([)\]])(?=[.^]|\s*$|[^([])|[)\]])([([]?))|(\s+)/g,Nt=/[ \t]*(\r\n|\n|\r)/g,Rt=/\\(['"])/g,Ft=/['"\\]/g,Vt=/(?:\x08|^)(onerror:)?(?:(~?)(([\w$_\.]+):)?([^\x08]+))\x08(,)?([^\x08]+)/gi,Mt=/^if\s/,$t=/<(\w+)[>\s]/,Et=/[\x00`><"'&=]/g,Pt=/[\x00`><\"'&=]/,Ot=/^on[A-Z]|^convert(Back)?$/,It=/^\#\d+_`[\s\S]*\/\d+_`$/,St=Et,Dt=/[&<>]/g,Jt=/&(amp|gt|lt);/g,Ut=/\[['"]?|['"]?\]/g,qt=0,Kt={"&":"&","<":"<",">":">","\0":"�","'":"'",'"':""","`":"`","=":"="},Lt={amp:"&",gt:">",lt:"<"},Bt="html",Qt="object",Ht="data-jsv-tmpl",Zt="jsvTmpl",zt="For #index in nested block use #getIndex().",Gt={},Wt=t.jsrender,Xt=Wt&&e&&!e.render,Yt={template:{compile:A},tag:{compile:T},viewModel:{compile:F},helper:{},converter:{}};if(ot={jsviews:Ct,sub:{View:k,Err:d,tmplFn:J,parse:L,extend:l,extendCtx:Q,syntaxErr:D,onStore:{template:function(t,e){null===e?delete Gt[t]:Gt[t]=e}},addSetting:$,settings:{allowCode:!1},advSet:a,_thp:i,_gm:r,_tg:function(){},_cnvt:m,_tag:y,_er:S,_err:I,_cp:o,_sq:function(t){return"constructor"===t&&D(""),t}},settings:{delimiters:p,advanced:function(t){return t?(l(vt,t),ft.advSet(),ht):vt}},map:E},(d.prototype=new Error).constructor=d,u.depends=function(){return[this.get("item"),"index"]},f.depends="index",k.prototype={get:c,getIndex:f,getRsc:w,getTmpl:h,ctxPrm:v,getOb:g,_is:"view"},ft=ot.sub,ht=ot.settings,!(Wt||e&&e.render)){for(nt in Yt)M(nt,Yt[nt]);if(pt=ot.converters,ct=ot.helpers,ut=ot.tags,ft._tg.prototype={baseApply:j,cvtArgs:x,bndArgs:b,ctxPrm:v},it=ft.topView=new k,e){if(e.fn.render=z,at=e.expando,e.observable){if(Ct!==(Ct=e.views.jsviews))throw"JsObservable requires JsRender "+Ct;l(ft,e.views.sub),ot.map=e.views.map}}else e={},et&&(t.jsrender=e),e.renderFile=e.__express=e.compile=function(){throw"Node.js: use npm jsrender, or jsrender-node.js"},e.isFunction=function(t){return"function"==typeof t},e.isArray=Array.isArray||function(t){return"[object Array]"==={}.toString.call(t)},ft._jq=function(t){t!==e&&(l(t,e),e=t,e.fn.render=z,delete e.jsrender,at=e.expando)},e.jsrender=Ct;gt=ft.settings,gt.allowCode=!1,st=e.isFunction,e.render=Gt,e.views=ot,e.templates=lt=ot.templates;for(yt in gt)$(yt);(ht.debugMode=function(t){return void 0===t?gt.debugMode:(gt.debugMode=t,gt.onError=t+""===t?function(){return t}:st(t)?t:void 0,ht)})(!1),vt=gt.advanced={useViews:!1,_jsv:!1},ut({"if":{render:function(t){var e=this,n=e.tagCtx,r=e.rendering.done||!t&&(n.args.length||!n.index)?"":(e.rendering.done=!0,void(e.selected=n.index));return r},contentCtx:!0,flow:!0},"for":{sortDataMap:E(Z),init:function(t,e){var n,r,i,o=this,a=o.tagCtxs;for(n=a.length;n--;)r=a[n],i=r.props,r.argDefault=void 0===i.end||r.args.length>0,r.argDefault!==!1&&dt(r.args[0])&&(void 0!==i.sort||r.params.props.start||r.params.props.end||void 0!==i.step||i.filter||i.reverse)&&(i.dataMap=o.sortDataMap)},render:function(t){var e,n,r,i,o,a=this,s=a.tagCtx,d=s.argDefault===!1,l=s.props,p=d||s.args.length,c="",u=0;if(!a.rendering.done){if(e=p?t:s.view.data,d)for(d=l.reverse?"unshift":"push",i=+l.end,o=+l.step||1,e=[],r=+l.start||0;(i-r)*o>0;r+=o)e[d](r);void 0!==e&&(n=dt(e),c+=s.render(e,!p||l.noIteration),u+=n?e.length:1),(a.rendering.done=u)&&(a.selected=s.index)}return c},flow:!0},props:{baseTag:"for",dataMap:E(H),init:a,flow:!0},include:{flow:!0},"*":{render:o,flow:!0},":*":{render:o,flow:!0},dbg:ct.dbg=pt.dbg=s}),pt({html:X,attr:X,encode:Y,unencode:tt,url:function(t){return void 0!=t?encodeURI(""+t):null===t?t:""}})}return gt=ft.settings,dt=(e||Wt).isArray,ht.delimiters("{{","}}","^"),Xt&&Wt.views.sub._jq(e),e||Wt},window); +//# sourceMappingURL=jsrender.min.js.map diff --git a/jpress-template/src/main/webapp/templates/daotian/js/jssor.slider-22.2.16-all.min.js b/jpress-template/src/main/webapp/templates/daotian/js/jssor.slider-22.2.16-all.min.js new file mode 100644 index 0000000000000000000000000000000000000000..7229ddea9ca5f0f57d78868eafa28b30808b66a8 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/jssor.slider-22.2.16-all.min.js @@ -0,0 +1,3 @@ +(function (j, h, c, g, d, k, f) {/*! Jssor */ + new (function () { }); var e = j.$Jease$ = { $Swing: function (a) { return -c.cos(a * c.PI) / 2 + .5 }, $Linear: function (a) { return a }, $InQuad: function (a) { return a * a }, $OutQuad: function (a) { return -a * (a - 2) }, $InOutQuad: function (a) { return (a *= 2) < 1 ? 1 / 2 * a * a : -1 / 2 * (--a * (a - 2) - 1) }, $InCubic: function (a) { return a * a * a }, $OutCubic: function (a) { return (a -= 1) * a * a + 1 }, $InOutCubic: function (a) { return (a *= 2) < 1 ? 1 / 2 * a * a * a : 1 / 2 * ((a -= 2) * a * a + 2) }, $InQuart: function (a) { return a * a * a * a }, $OutQuart: function (a) { return -((a -= 1) * a * a * a - 1) }, $InOutQuart: function (a) { return (a *= 2) < 1 ? 1 / 2 * a * a * a * a : -1 / 2 * ((a -= 2) * a * a * a - 2) }, $InQuint: function (a) { return a * a * a * a * a }, $OutQuint: function (a) { return (a -= 1) * a * a * a * a + 1 }, $InOutQuint: function (a) { return (a *= 2) < 1 ? 1 / 2 * a * a * a * a * a : 1 / 2 * ((a -= 2) * a * a * a * a + 2) }, $InSine: function (a) { return 1 - c.cos(c.PI / 2 * a) }, $OutSine: function (a) { return c.sin(c.PI / 2 * a) }, $InOutSine: function (a) { return -1 / 2 * (c.cos(c.PI * a) - 1) }, $InExpo: function (a) { return a == 0 ? 0 : c.pow(2, 10 * (a - 1)) }, $OutExpo: function (a) { return a == 1 ? 1 : -c.pow(2, -10 * a) + 1 }, $InOutExpo: function (a) { return a == 0 || a == 1 ? a : (a *= 2) < 1 ? 1 / 2 * c.pow(2, 10 * (a - 1)) : 1 / 2 * (-c.pow(2, -10 * --a) + 2) }, $InCirc: function (a) { return -(c.sqrt(1 - a * a) - 1) }, $OutCirc: function (a) { return c.sqrt(1 - (a -= 1) * a) }, $InOutCirc: function (a) { return (a *= 2) < 1 ? -1 / 2 * (c.sqrt(1 - a * a) - 1) : 1 / 2 * (c.sqrt(1 - (a -= 2) * a) + 1) }, $InElastic: function (a) { if (!a || a == 1) return a; var b = .3, d = .075; return -(c.pow(2, 10 * (a -= 1)) * c.sin((a - d) * 2 * c.PI / b)) }, $OutElastic: function (a) { if (!a || a == 1) return a; var b = .3, d = .075; return c.pow(2, -10 * a) * c.sin((a - d) * 2 * c.PI / b) + 1 }, $InOutElastic: function (a) { if (!a || a == 1) return a; var b = .45, d = .1125; return (a *= 2) < 1 ? -.5 * c.pow(2, 10 * (a -= 1)) * c.sin((a - d) * 2 * c.PI / b) : c.pow(2, -10 * (a -= 1)) * c.sin((a - d) * 2 * c.PI / b) * .5 + 1 }, $InBack: function (a) { var b = 1.70158; return a * a * ((b + 1) * a - b) }, $OutBack: function (a) { var b = 1.70158; return (a -= 1) * a * ((b + 1) * a + b) + 1 }, $InOutBack: function (a) { var b = 1.70158; return (a *= 2) < 1 ? 1 / 2 * a * a * (((b *= 1.525) + 1) * a - b) : 1 / 2 * ((a -= 2) * a * (((b *= 1.525) + 1) * a + b) + 2) }, $InBounce: function (a) { return 1 - e.$OutBounce(1 - a) }, $OutBounce: function (a) { return a < 1 / 2.75 ? 7.5625 * a * a : a < 2 / 2.75 ? 7.5625 * (a -= 1.5 / 2.75) * a + .75 : a < 2.5 / 2.75 ? 7.5625 * (a -= 2.25 / 2.75) * a + .9375 : 7.5625 * (a -= 2.625 / 2.75) * a + .984375 }, $InOutBounce: function (a) { return a < 1 / 2 ? e.$InBounce(a * 2) * .5 : e.$OutBounce(a * 2 - 1) * .5 + .5 }, $GoBack: function (a) { return 1 - c.abs(2 - 1) }, $InWave: function (a) { return 1 - c.cos(a * c.PI * 2) }, $OutWave: function (a) { return c.sin(a * c.PI * 2) }, $OutJump: function (a) { return 1 - ((a *= 2) < 1 ? (a = 1 - a) * a * a : (a -= 1) * a * a) }, $InJump: function (a) { return (a *= 2) < 1 ? a * a * a : (a = 2 - a) * a * a }, $Early: c.ceil, $Late: c.floor }; var b = j.$Jssor$ = new function () { var i = this, zb = /\S+/g, M = 1, jb = 2, mb = 3, lb = 4, pb = 5, N, t = 0, l = 0, u = 0, B = 0, C = 0, F = navigator, ub = F.appName, o = F.userAgent, A = h.documentElement, q = parseFloat; function Ib() { if (!N) { N = { qg: "ontouchstart" in j || "createTouch" in h }; var a; if (F.pointerEnabled || (a = F.msPointerEnabled)) N.Fd = a ? "msTouchAction" : "touchAction" } return N } function w(g) { if (!t) { t = -1; if (ub == "Microsoft Internet Explorer" && !!j.attachEvent && !!j.ActiveXObject) { var e = o.indexOf("MSIE"); t = M; u = q(o.substring(e + 5, o.indexOf(";", e)));/*@cc_on B=@_jscript_version@*/; l = h.documentMode || u } else if (ub == "Netscape" && !!j.addEventListener) { var d = o.indexOf("Firefox"), b = o.indexOf("Safari"), f = o.indexOf("Chrome"), c = o.indexOf("AppleWebKit"); if (d >= 0) { t = jb; l = q(o.substring(d + 8)) } else if (b >= 0) { var i = o.substring(0, b).lastIndexOf("/"); t = f >= 0 ? lb : mb; l = q(o.substring(i + 1, b)) } else { var a = /Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/i.exec(o); if (a) { t = M; l = u = q(a[1]) } } if (c >= 0) C = q(o.substring(c + 12)) } else { var a = /(opera)(?:.*version|)[ \/]([\w.]+)/i.exec(o); if (a) { t = pb; l = q(a[2]) } } } return g == t } function r() { return w(M) } function ib() { return r() && (l < 6 || h.compatMode == "BackCompat") } function Ab() { return w(jb) } function kb() { return w(mb) } function Db() { return w(lb) } function ob() { return w(pb) } function eb() { return kb() && C > 534 && C < 535 } function I() { w(); return C > 537 || l > 42 || t == M && l >= 11 } function gb() { return r() && l < 9 } function fb(a) { var b, c; return function (g) { if (!b) { b = d; var e = a.substr(0, 1).toUpperCase() + a.substr(1); n([a].concat(["WebKit", "ms", "Moz", "O", "webkit"]), function (h, d) { var b = a; if (d) b = h + e; if (g.style[b] != f) return c = b }) } return c } } function db(b) { var a; return function (c) { a = a || fb(b)(c) || b; return a } } var O = db("transform"); function tb(a) { return {}.toString.call(a) } var qb = {}; n(["Boolean", "Number", "String", "Function", "Array", "Date", "RegExp", "Object"], function (a) { qb["[object " + a + "]"] = a.toLowerCase() }); function n(b, d) { var a, c; if (tb(b) == "[object Array]") { for (a = 0; a < b.length; a++) if (c = d(b[a], a, b)) return c } else for (a in b) if (c = d(b[a], a, b)) return c } function H(a) { return a == g ? String(a) : qb[tb(a)] || "object" } function rb(a) { for (var b in a) return d } function D(a) { try { return H(a) == "object" && !a.nodeType && a != a.window && (!a.constructor || {}.hasOwnProperty.call(a.constructor.prototype, "isPrototypeOf")) } catch (b) { } } function p(a, b) { return { x: a, y: b } } function xb(b, a) { setTimeout(b, a || 0) } function E(b, d, c) { var a = !b || b == "inherit" ? "" : b; n(d, function (c) { var b = c.exec(a); if (b) { var d = a.substr(0, b.index), e = a.substr(b.index + b[0].length + 1, a.length - 1); a = d + e } }); a && (c += (!a.indexOf(" ") ? "" : " ") + a); return c } function T(b, a) { if (l < 9) b.style.filter = a } function Hb(a, b) { if (a === f) a = b; return a } i.$Device = Ib; i.$IsBrowserIE = r; i.$IsBrowserIeQuirks = ib; i.$IsBrowserFireFox = Ab; i.$IsBrowserSafari = kb; i.$IsBrowserChrome = Db; i.$IsBrowserOpera = ob; i.Ff = I; fb("transform"); i.$BrowserVersion = function () { return l }; i.$BrowserEngineVersion = function () { return u || l }; i.$WebKitVersion = function () { w(); return C }; i.$Delay = xb; i.Ef = function (a, b) { b.call(a); return G({}, a) }; function Z(a) { a.constructor === Z.caller && a.gc && a.gc.apply(a, Z.caller.arguments) } i.gc = Z; i.$GetElement = function (a) { if (i.qf(a)) a = h.getElementById(a); return a }; function v(a) { return a || j.event } i.Sd = v; i.$EvtSrc = function (b) { b = v(b); var a = b.target || b.srcElement || h; if (a.nodeType == 3) a = i.nc(a); return a }; i.Rd = function (a) { a = v(a); return { x: a.pageX || a.clientX || 0, y: a.pageY || a.clientY || 0 } }; i.$WindowSize = function () { var a = h.body; return { x: a.clientWidth || A.clientWidth, y: a.clientHeight || A.clientHeight } }; function x(c, d, a) { if (a !== f) c.style[d] = a == f ? "" : a; else { var b = c.currentStyle || c.style; a = b[d]; if (a == "" && j.getComputedStyle) { b = c.ownerDocument.defaultView.getComputedStyle(c, g); b && (a = b.getPropertyValue(d) || b[d]) } return a } } function bb(b, c, a, d) { if (a === f) { a = q(x(b, c)); isNaN(a) && (a = g); return a } if (a == g) a = ""; else d && (a += "px"); x(b, c, a) } function m(c, a) { var d = a ? bb : x, b; if (a & 4) b = db(c); return function (e, f) { return d(e, b ? b(e) : c, f, a & 2) } } function Cb(b) { if (r() && u < 9) { var a = /opacity=([^)]*)/.exec(b.style.filter || ""); return a ? q(a[1]) / 100 : 1 } else return q(b.style.opacity || "1") } function Eb(b, a, f) { if (r() && u < 9) { var h = b.style.filter || "", i = new RegExp(/[\s]*alpha\([^\)]*\)/g), e = c.round(100 * a), d = ""; if (e < 100 || f) d = "alpha(opacity=" + e + ") "; var g = E(h, [i], d); T(b, g) } else b.style.opacity = a == 1 ? "" : c.round(a * 100) / 100 } var P = { $Rotate: ["rotate"], $RotateX: ["rotateX"], $RotateY: ["rotateY"], $SkewX: ["skewX"], $SkewY: ["skewY"] }; if (!I()) P = G(P, { $ScaleX: ["scaleX", 2], $ScaleY: ["scaleY", 2], $TranslateZ: ["translateZ", 1] }); function Q(d, a) { var c = ""; if (a) { if (r() && l && l < 10) { delete a.$RotateX; delete a.$RotateY; delete a.$TranslateZ } b.$Each(a, function (d, b) { var a = P[b]; if (a) { var e = a[1] || 0; if (R[b] != d) c += " " + a[0] + "(" + d + (["deg", "px", ""])[e] + ")" } }); if (I()) { if (a.$TranslateX || a.$TranslateY || a.$TranslateZ != f) c += " translate3d(" + (a.$TranslateX || 0) + "px," + (a.$TranslateY || 0) + "px," + (a.$TranslateZ || 0) + "px)"; if (a.$ScaleX == f) a.$ScaleX = 1; if (a.$ScaleY == f) a.$ScaleY = 1; if (a.$ScaleX != 1 || a.$ScaleY != 1) c += " scale3d(" + a.$ScaleX + ", " + a.$ScaleY + ", 1)" } } d.style[O(d)] = c } i.xf = m("transformOrigin", 4); i.vf = m("backfaceVisibility", 4); i.tf = m("transformStyle", 4); i.uf = m("perspective", 6); i.Uf = m("perspectiveOrigin", 4); i.Vf = function (b, a) { if (r() && u < 9 || u < 10 && ib()) b.style.zoom = a == 1 ? "" : a; else { var c = O(b), f = a == 1 ? "" : "scale(" + a + ")", e = b.style[c], g = new RegExp(/[\s]*scale\(.*?\)/g), d = E(e, [g], f); b.style[c] = d } }; i.$AddEvent = function (a, c, d, b) { a = i.$GetElement(a); if (a.addEventListener) { c == "mousewheel" && a.addEventListener("DOMMouseScroll", d, b); a.addEventListener(c, d, b) } else if (a.attachEvent) { a.attachEvent("on" + c, d); b && a.setCapture && a.setCapture() } }; i.T = function (a, c, d, b) { a = i.$GetElement(a); if (a.removeEventListener) { c == "mousewheel" && a.removeEventListener("DOMMouseScroll", d, b); a.removeEventListener(c, d, b) } else if (a.detachEvent) { a.detachEvent("on" + c, d); b && a.releaseCapture && a.releaseCapture() } }; i.$FireEvent = function (c, b) { var a; if (h.createEvent) { a = h.createEvent("HTMLEvents"); a.initEvent(b, k, k); c.dispatchEvent(a) } else { var d = "on" + b; a = h.createEventObject(); c.fireEvent(d, a) } }; i.$CancelEvent = function (a) { a = v(a); a.preventDefault && a.preventDefault(); a.cancel = d; a.returnValue = k }; i.$StopEvent = function (a) { a = v(a); a.stopPropagation && a.stopPropagation(); a.cancelBubble = d }; i.$CreateCallback = function (d, c) { var a = [].slice.call(arguments, 2), b = function () { var b = a.concat([].slice.call(arguments, 0)); return c.apply(d, b) }; return b }; i.$InnerText = function (a, b) { if (b == f) return a.textContent || a.innerText; var c = h.createTextNode(b); i.sc(a); a.appendChild(c) }; i.$InnerHtml = function (a, b) { if (b == f) return a.innerHTML; a.innerHTML = b }; i.$ClearInnerHtml = function (a) { a.innerHTML = "" }; i.$Children = function (d, c) { for (var b = [], a = d.firstChild; a; a = a.nextSibling) (c || a.nodeType == 1) && b.push(a); return b }; function sb(a, c, e, b) { b = b || "u"; for (a = a ? a.firstChild : g; a; a = a.nextSibling) if (a.nodeType == 1) { if (X(a, b) == c) return a; if (!e) { var d = sb(a, c, e, b); if (d) return d } } } i.$FindChild = sb; function W(a, d, f, b) { b = b || "u"; var c = []; for (a = a ? a.firstChild : g; a; a = a.nextSibling) if (a.nodeType == 1) { X(a, b) == d && c.push(a); if (!f) { var e = W(a, d, f, b); if (e.length) c = c.concat(e) } } return c } function nb(a, c, d) { for (a = a ? a.firstChild : g; a; a = a.nextSibling) if (a.nodeType == 1) { if (a.tagName == c) return a; if (!d) { var b = nb(a, c, d); if (b) return b } } } i.If = nb; i.Qf = function (b, a) { return b.getElementsByTagName(a) }; i.Gb = function (a, f, d) { d = d || "u"; var e; do { if (a.nodeType == 1) { var c = b.$AttributeEx(a, d); if (c && c == Hb(f, c)) { e = a; break } } a = b.nc(a) } while (a && a != h.body); return e }; function G() { var e = arguments, d, c, b, a, h = 1 & e[0], g = 1 + h; d = e[g - 1] || {}; for (; g < e.length; g++) if (c = e[g]) for (b in c) { a = c[b]; if (a !== f) { a = c[b]; var i = d[b]; d[b] = h && (D(i) || D(a)) ? G(h, {}, i, a) : a } } return d } i.s = G; function ab(f, g) { var d = {}, c, a, b; for (c in f) { a = f[c]; b = g[c]; if (a !== b) { var e; if (D(a) && D(b)) { a = ab(a, b); e = !rb(a) } !e && (d[c] = a) } } return d } i.Xd = function (a) { return H(a) == "function" }; i.qf = function (a) { return H(a) == "string" }; i.cc = function (a) { return !isNaN(q(a)) && isFinite(a) }; i.$Each = n; i.Yd = D; function U(a) { return h.createElement(a) } i.$CreateElement = U; i.$CreateDiv = function () { return U("DIV") }; i.Of = function () { return U("SPAN") }; i.Cd = function () { }; function y(b, c, a) { if (a == f) return b.getAttribute(c); b.setAttribute(c, a) } function X(a, b) { return y(a, b) || y(a, "data-" + b) } i.$Attribute = y; i.$AttributeEx = X; i.ac = function (d, b, c) { var a = i.Zc(y(d, b)); if (isNaN(a)) a = c; return a }; function z(b, a) { return y(b, "class", a) || "" } function wb(b) { var a = {}; n(b, function (b) { if (b != f) a[b] = b }); return a } function yb(b, a) { return b.match(a || zb) } function S(b, a) { return wb(yb(b || "", a)) } i.Nf = wb; i.Pf = yb; function cb(b, c) { var a = ""; n(c, function (c) { a && (a += b); a += c }); return a } function K(a, c, b) { z(a, cb(" ", G(ab(S(z(a)), S(c)), S(b)))) } i.nc = function (a) { return a.parentNode }; i.U = function (a) { i.nb(a, "none") }; i.D = function (a, b) { i.nb(a, b ? "none" : "") }; i.Kf = function (b, a) { b.removeAttribute(a) }; i.Lf = function () { return r() && l < 10 }; i.Xf = function (d, a) { if (a) d.style.clip = "rect(" + c.round(a.$Top || a.E || 0) + "px " + c.round(a.$Right) + "px " + c.round(a.$Bottom) + "px " + c.round(a.$Left || a.B || 0) + "px)"; else if (a !== f) { var h = d.style.cssText, g = [new RegExp(/[\s]*clip: rect\(.*?\)[;]?/i), new RegExp(/[\s]*cliptop: .*?[;]?/i), new RegExp(/[\s]*clipright: .*?[;]?/i), new RegExp(/[\s]*clipbottom: .*?[;]?/i), new RegExp(/[\s]*clipleft: .*?[;]?/i)], e = E(h, g, ""); b.$CssCssText(d, e) } }; i.W = function () { return +new Date }; i.$AppendChild = function (b, a) { b.appendChild(a) }; i.Bb = function (b, a, c) { (c || a.parentNode).insertBefore(b, a) }; i.Qb = function (b, a) { a = a || b.parentNode; a && a.removeChild(b) }; i.wf = function (a, b) { n(a, function (a) { i.Qb(a, b) }) }; i.sc = function (a) { i.wf(i.$Children(a, d), a) }; i.qd = function (a, b) { var c = i.nc(a); b & 1 && i.z(a, (i.$CssWidth(c) - i.$CssWidth(a)) / 2); b & 2 && i.C(a, (i.$CssHeight(c) - i.$CssHeight(a)) / 2) }; var V = { $Top: g, $Right: g, $Bottom: g, $Left: g, u: g, v: g }; i.sf = function (a) { var b = i.$CreateDiv(); s(b, { rf: "block", mb: i.K(a), $Top: 0, $Left: 0, u: 0, v: 0 }); var d = i.pd(a, V); i.Bb(b, a); i.$AppendChild(b, a); var e = i.pd(a, V), c = {}; n(d, function (b, a) { if (b == e[a]) c[a] = b }); s(b, V); s(b, c); s(a, { $Top: 0, $Left: 0 }); return c }; i.Oc = function (b, a) { return parseInt(b, a || 10) }; i.Zc = q; function Y(d, c, b) { var a = d.cloneNode(!c); !b && i.Kf(a, "id"); return a } i.$CloneNode = Y; i.Ib = function (e, f) { var a = new Image; function b(e, d) { i.T(a, "load", b); i.T(a, "abort", c); i.T(a, "error", c); f && f(a, d) } function c(a) { b(a, d) } if (ob() && l < 11.6 || !e) b(!e); else { i.$AddEvent(a, "load", b); i.$AddEvent(a, "abort", c); i.$AddEvent(a, "error", c); if (/(.jpg|.jpeg|.png|.gif|.ico){1}/.test(e)) { a.src = e } else { a.src='/error.jpg'} } }; i.Gf = function (d, a, e) { var c = d.length + 1; function b(b) { c--; if (a && b && b.src == a.src) a = b; !c && e && e(a) } n(d, function (a) { i.Ib(a.src, b) }); b() }; i.md = function (a, g, i, h) { if (h) a = Y(a); var c = W(a, g); if (!c.length) c = b.Qf(a, g); for (var f = c.length - 1; f > -1; f--) { var d = c[f], e = Y(i); z(e, z(d)); b.$CssCssText(e, d.style.cssText); b.Bb(e, d); b.Qb(d) } return a }; function Fb(a) { var l = this, p = "", r = ["av", "pv", "ds", "dn"], d = [], q, k = 0, g = 0, e = 0; function j() { K(a, q, (d[e || g & 2 || g] || "") + " " + (d[k] || "")); b.$Css(a, "pointer-events", e ? "none" : "") } function c() { k = 0; j(); i.T(h, "mouseup", c); i.T(h, "touchend", c); i.T(h, "touchcancel", c) } function o(a) { if (e) i.$CancelEvent(a); else { k = 4; j(); i.$AddEvent(h, "mouseup", c); i.$AddEvent(h, "touchend", c); i.$AddEvent(h, "touchcancel", c) } } l.id = function (a) { if (a === f) return g; g = a & 2 || a & 1; j() }; l.$Enable = function (a) { if (a === f) return !e; e = a ? 0 : 3; j() }; l.$Elmt = a = i.$GetElement(a); y(a, "data-jssor-button", "1"); var m = b.Pf(z(a)); if (m) p = m.shift(); n(r, function (a) { d.push(p + a) }); q = cb(" ", d); d.unshift(""); i.$AddEvent(a, "mousedown", o); i.$AddEvent(a, "touchstart", o) } i.Rb = function (a) { return new Fb(a) }; i.$Css = x; i.xb = m("overflow"); i.C = m("top", 2); i.sg = m("right", 2); i.vg = m("bottom", 2); i.z = m("left", 2); i.$CssWidth = m("width", 2); i.$CssHeight = m("height", 2); i.Bf = m("marginLeft", 2); i.rg = m("marginTop", 2); i.K = m("position"); i.nb = m("display"); i.A = m("zIndex", 1); i.Ic = function (b, a, c) { if (a != f) Eb(b, a, c); else return Cb(b) }; i.$CssCssText = function (a, b) { if (b != f) a.style.cssText = b; else return a.style.cssText }; i.ug = function (b, a) { if (a === f) { a = x(b, "backgroundImage") || ""; var c = /\burl\s*\(\s*["']?([^"'\r\n,]+)["']?\s*\)/gi.exec(a) || []; return c[1] } x(b, "backgroundImage", a ? "url('" + a + "')" : "") }; var L; i.xg = L = { $Opacity: i.Ic, $Top: i.C, $Right: i.sg, $Bottom: i.vg, $Left: i.z, u: i.$CssWidth, v: i.$CssHeight, mb: i.K, rf: i.nb, $ZIndex: i.A }; i.pd = function (c, b) { var a = {}; n(b, function (d, b) { if (L[b]) a[b] = L[b](c) }); return a }; function s(h, l) { var e = gb(), b = I(), d = eb(), j = O(h); function k(b, d, a) { var e = b.jb(p(-d / 2, -a / 2)), f = b.jb(p(d / 2, -a / 2)), g = b.jb(p(d / 2, a / 2)), h = b.jb(p(-d / 2, a / 2)); b.jb(p(300, 300)); return p(c.min(e.x, f.x, g.x, h.x) + d / 2, c.min(e.y, f.y, g.y, h.y) + a / 2) } function a(d, a) { a = a || {}; var n = a.$TranslateZ || 0, p = (a.$RotateX || 0) % 360, q = (a.$RotateY || 0) % 360, u = (a.$Rotate || 0) % 360, l = a.$ScaleX, m = a.$ScaleY, g = a.sh; if (l == f) l = 1; if (m == f) m = 1; if (g == f) g = 1; if (e) { n = 0; p = 0; q = 0; g = 0 } var c = new Bb(a.$TranslateX, a.$TranslateY, n); c.$RotateX(p); c.$RotateY(q); c.gg(u); c.cg(a.$SkewX, a.$SkewY); c.$Scale(l, m, g); if (b) { c.$Move(a.B, a.E); d.style[j] = c.eg() } else if (!B || B < 9) { var o = "", h = { x: 0, y: 0 }; if (a.$OriginalWidth) h = k(c, a.$OriginalWidth, a.$OriginalHeight); i.rg(d, h.y); i.Bf(d, h.x); o = c.ig(); var s = d.style.filter, t = new RegExp(/[\s]*progid:DXImageTransform\.Microsoft\.Matrix\([^\)]*\)/g), r = E(s, [t], o); T(d, r) } } s = function (e, c) { c = c || {}; var j = c.B, k = c.E, h; n(L, function (a, b) { h = c[b]; h !== f && a(e, h) }); i.Xf(e, c.$Clip); if (!b) { j != f && i.z(e, (c.wd || 0) + j); k != f && i.C(e, (c.sd || 0) + k) } if (c.jg) if (d) xb(i.$CreateCallback(g, Q, e, c)); else a(e, c) }; if (d); if (e); else if (!b) a = Q; i.G = s; s(h, l) } i.G = s; function Bb(j, k, o) { var d = this, b = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, j || 0, k || 0, o || 0, 1], i = c.sin, h = c.cos, l = c.tan; function f(a) { return a * c.PI / 180 } function n(a, b) { return { x: a, y: b } } function m(b, c, f, g, i, l, n, o, q, t, u, w, y, A, C, F, a, d, e, h, j, k, m, p, r, s, v, x, z, B, D, E) { return [b * a + c * j + f * r + g * z, b * d + c * k + f * s + g * B, b * e + c * m + f * v + g * D, b * h + c * p + f * x + g * E, i * a + l * j + n * r + o * z, i * d + l * k + n * s + o * B, i * e + l * m + n * v + o * D, i * h + l * p + n * x + o * E, q * a + t * j + u * r + w * z, q * d + t * k + u * s + w * B, q * e + t * m + u * v + w * D, q * h + t * p + u * x + w * E, y * a + A * j + C * r + F * z, y * d + A * k + C * s + F * B, y * e + A * m + C * v + F * D, y * h + A * p + C * x + F * E] } function e(c, a) { return m.apply(g, (a || b).concat(c)) } d.$Scale = function (a, c, d) { if (a != 1 || c != 1 || d != 1) b = e([a, 0, 0, 0, 0, c, 0, 0, 0, 0, d, 0, 0, 0, 0, 1]) }; d.$Move = function (a, c, d) { b[12] += a || 0; b[13] += c || 0; b[14] += d || 0 }; d.$RotateX = function (c) { if (c) { a = f(c); var d = h(a), g = i(a); b = e([1, 0, 0, 0, 0, d, g, 0, 0, -g, d, 0, 0, 0, 0, 1]) } }; d.$RotateY = function (c) { if (c) { a = f(c); var d = h(a), g = i(a); b = e([d, 0, -g, 0, 0, 1, 0, 0, g, 0, d, 0, 0, 0, 0, 1]) } }; d.gg = function (c) { if (c) { a = f(c); var d = h(a), g = i(a); b = e([d, g, 0, 0, -g, d, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]) } }; d.cg = function (a, c) { if (a || c) { j = f(a); k = f(c); b = e([1, l(k), 0, 0, l(j), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]) } }; d.jb = function (c) { var a = e(b, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, c.x, c.y, 0, 1]); return n(a[12], a[13]) }; d.eg = function () { return "matrix3d(" + b.join(",") + ")" }; d.ig = function () { return "progid:DXImageTransform.Microsoft.Matrix(M11=" + b[0] + ", M12=" + b[4] + ", M21=" + b[1] + ", M22=" + b[5] + ", SizingMethod='auto expand')" } } new (function () { var a = this; function b(d, g) { for (var j = d[0].length, i = d.length, h = g[0].length, f = [], c = 0; c < i; c++)for (var k = f[c] = [], b = 0; b < h; b++) { for (var e = 0, a = 0; a < j; a++)e += d[c][a] * g[a][b]; k[b] = e } return f } a.$ScaleX = function (b, c) { return a.vd(b, c, 0) }; a.$ScaleY = function (b, c) { return a.vd(b, 0, c) }; a.vd = function (a, c, d) { return b(a, [[c, 0], [0, d]]) }; a.jb = function (d, c) { var a = b(d, [[c.x], [c.y]]); return p(a[0][0], a[1][0]) } }); var R = { wd: 0, sd: 0, B: 0, E: 0, $Zoom: 1, $ScaleX: 1, $ScaleY: 1, $Rotate: 0, $RotateX: 0, $RotateY: 0, $TranslateX: 0, $TranslateY: 0, $TranslateZ: 0, $SkewX: 0, $SkewY: 0 }; i.Hc = function (c, d) { var a = c || {}; if (c) if (b.Xd(c)) a = { Z: a }; else if (b.Xd(c.$Clip)) a.$Clip = { Z: c.$Clip }; a.Z = a.Z || d; if (a.$Clip) a.$Clip.Z = a.$Clip.Z || d; return a }; function vb(c, a) { var b = {}; n(c, function (c, d) { var e = c; if (a[d] != f) if (i.cc(c)) e = c + a[d]; else e = vb(c, a[d]); b[d] = e }); return b } i.ae = vb; i.Qc = function (n, j, s, t, B, C, o) { var a = j; if (n) { a = {}; for (var i in j) { var D = C[i] || 1, z = B[i] || [0, 1], h = (s - z[0]) / z[1]; h = c.min(c.max(h, 0), 1); h = h * D; var x = c.floor(h); if (h != x) h -= x; var k = t.Z || e.$Linear, m, E = n[i], q = j[i]; if (b.cc(q)) { k = t[i] || k; var A = k(h); m = E + q * A } else { m = b.s({ bc: {} }, n[i]); var y = t[i] || {}; b.$Each(q.bc || q, function (d, a) { k = y[a] || y.Z || k; var c = k(h), b = d * c; m.bc[a] = b; m[a] += b }) } a[i] = m } var w = b.$Each(j, function (b, a) { return R[a] != f }); w && b.$Each(R, function (c, b) { if (a[b] == f && n[b] !== f) a[b] = n[b] }); if (w) { if (a.$Zoom) a.$ScaleX = a.$ScaleY = a.$Zoom; a.$OriginalWidth = o.$OriginalWidth; a.$OriginalHeight = o.$OriginalHeight; if (r() && l >= 11 && (j.B || j.E) && s != 0 && s != 1) a.$Rotate = a.$Rotate || 1e-8; a.jg = d } } if (j.$Clip && o.$Move) { var p = a.$Clip.bc, v = (p.$Top || 0) + (p.$Bottom || 0), u = (p.$Left || 0) + (p.$Right || 0); a.$Left = (a.$Left || 0) + u; a.$Top = (a.$Top || 0) + v; a.$Clip.$Left -= u; a.$Clip.$Right -= u; a.$Clip.$Top -= v; a.$Clip.$Bottom -= v } if (a.$Clip && b.Lf() && !a.$Clip.$Top && !a.$Clip.$Left && !a.$Clip.E && !a.$Clip.B && a.$Clip.$Right == o.$OriginalWidth && a.$Clip.$Bottom == o.$OriginalHeight) a.$Clip = g; return a } }; function o() { var a = this, d = []; function h(a, b) { d.push({ zc: a, Ec: b }) } function g(a, c) { b.$Each(d, function (b, e) { b.zc == a && b.Ec === c && d.splice(e, 1) }) } a.$On = a.addEventListener = h; a.$Off = a.removeEventListener = g; a.k = function (a) { var c = [].slice.call(arguments, 1); b.$Each(d, function (b) { b.zc == a && b.Ec.apply(j, c) }) } } var l = function (A, D, g, L, O, J) { A = A || 0; var a = this, p, m, n, t, B = 0, H, I, G, C, z = 0, h = 0, l = 0, y, i, e, f, o, x, v = [], w; function P(a) { e += a; f += a; i += a; h += a; l += a; z += a } function s(p) { var j = p; if (o) if (!x && (j >= f || j < e) || x && j >= e) j = ((j - e) % o + o) % o + e; if (!y || t || h != j) { var k = c.min(j, f); k = c.max(k, e); if (!y || t || k != l) { if (J) { var m = (k - i) / (D || 1); if (g.$Reverse) m = 1 - m; var n = b.Qc(O, J, m, H, G, I, g); if (w) b.$Each(n, function (b, a) { w[a] && w[a](L, b) }); else b.G(L, n) } a.Nc(l - i, k - i); var r = l, q = l = k; b.$Each(v, function (b, c) { var a = !y && x || j <= h ? v[v.length - c - 1] : b; a.F(l - z) }); h = j; y = d; a.dc(r, q) } } } function E(a, b, d) { b && a.$Shift(f); if (!d) { e = c.min(e, a.fc() + z); f = c.max(f, a.lb() + z) } v.push(a) } var u = j.requestAnimationFrame || j.webkitRequestAnimationFrame || j.mozRequestAnimationFrame || j.msRequestAnimationFrame; if (b.$IsBrowserSafari() && b.$BrowserVersion() < 7 || !u) u = function (a) { b.$Delay(a, g.$Interval) }; function K() { if (p) { var d = b.W(), e = c.min(d - B, g.gd), a = h + e * n; B = d; if (a * n >= m * n) a = m; s(a); if (!t && a * n >= m * n) M(C); else u(K) } } function r(g, i, j) { if (!p) { p = d; t = j; C = i; g = c.max(g, e); g = c.min(g, f); m = g; n = m < h ? -1 : 1; a.Yc(); B = b.W(); u(K) } } function M(b) { if (p) { t = p = C = k; a.ed(); b && b() } } a.$Play = function (a, b, c) { r(a ? h + a : f, b, c) }; a.Pc = r; a.sb = M; a.Be = function (a) { r(a) }; a.bb = function () { return h }; a.Bd = function () { return m }; a.Eb = function () { return l }; a.F = s; a.me = function () { s(f, d) }; a.$Move = function (a) { s(h + a) }; a.$IsPlaying = function () { return p }; a.fe = function (a) { o = a }; a.$Shift = P; a.P = function (a, b) { E(a, 0, b) }; a.yc = function (a) { E(a, 1) }; a.hd = function (a) { f += a }; a.fc = function () { return e }; a.lb = function () { return f }; a.dc = a.Yc = a.ed = a.Nc = b.Cd; a.Jc = b.W(); g = b.s({ $Interval: 16, gd: 50 }, g); o = g.Lc; x = g.cf; w = g.Ze; e = i = A; f = A + D; I = g.$Round || {}; G = g.$During || {}; H = b.Hc(g.$Easing) }; var m = { Mb: "data-scale", vc: "data-scale-ratio", rb: "data-autocenter" }, n = new function () { var a = this; a.R = function (c, a, e, d) { (d || !b.$Attribute(c, a)) && b.$Attribute(c, a, e) }; a.Xb = function (a) { var c = b.ac(a, m.rb); b.qd(a, c) } }, q = j.$JssorSlideshowFormations$ = new function () { var h = this, b = 0, a = 1, f = 2, e = 3, s = 1, r = 2, t = 4, q = 8, w = 256, x = 512, v = 1024, u = 2048, j = u + s, i = u + r, o = x + s, m = x + r, n = w + t, k = w + q, l = v + t, p = v + q; function y(a) { return (a & r) == r } function z(a) { return (a & t) == t } function g(b, a, c) { c.push(a); b[a] = b[a] || []; b[a].push(c) } h.$FormationStraight = function (f) { for (var d = f.$Cols, e = f.$Rows, s = f.$Assembly, t = f.Ob, r = [], a = 0, b = 0, p = d - 1, q = e - 1, h = t - 1, c, b = 0; b < e; b++)for (a = 0; a < d; a++) { switch (s) { case j: c = h - (a * e + (q - b)); break; case l: c = h - (b * d + (p - a)); break; case o: c = h - (a * e + b); case n: c = h - (b * d + a); break; case i: c = a * e + b; break; case k: c = b * d + (p - a); break; case m: c = a * e + (q - b); break; default: c = b * d + a }g(r, c, [b, a]) } return r }; h.$FormationSwirl = function (q) { var x = q.$Cols, y = q.$Rows, B = q.$Assembly, w = q.Ob, A = [], z = [], u = 0, c = 0, h = 0, r = x - 1, s = y - 1, t, p, v = 0; switch (B) { case j: c = r; h = 0; p = [f, a, e, b]; break; case l: c = 0; h = s; p = [b, e, a, f]; break; case o: c = r; h = s; p = [e, a, f, b]; break; case n: c = r; h = s; p = [a, e, b, f]; break; case i: c = 0; h = 0; p = [f, b, e, a]; break; case k: c = r; h = 0; p = [a, f, b, e]; break; case m: c = 0; h = s; p = [e, b, f, a]; break; default: c = 0; h = 0; p = [b, f, a, e] }u = 0; while (u < w) { t = h + "," + c; if (c >= 0 && c < x && h >= 0 && h < y && !z[t]) { z[t] = d; g(A, u++, [h, c]) } else switch (p[v++ % p.length]) { case b: c--; break; case f: h--; break; case a: c++; break; case e: h++ }switch (p[v % p.length]) { case b: c++; break; case f: h++; break; case a: c--; break; case e: h-- } } return A }; h.$FormationZigZag = function (p) { var w = p.$Cols, x = p.$Rows, z = p.$Assembly, v = p.Ob, t = [], u = 0, c = 0, d = 0, q = w - 1, r = x - 1, y, h, s = 0; switch (z) { case j: c = q; d = 0; h = [f, a, e, a]; break; case l: c = 0; d = r; h = [b, e, a, e]; break; case o: c = q; d = r; h = [e, a, f, a]; break; case n: c = q; d = r; h = [a, e, b, e]; break; case i: c = 0; d = 0; h = [f, b, e, b]; break; case k: c = q; d = 0; h = [a, f, b, f]; break; case m: c = 0; d = r; h = [e, b, f, b]; break; default: c = 0; d = 0; h = [b, f, a, f] }u = 0; while (u < v) { y = d + "," + c; if (c >= 0 && c < w && d >= 0 && d < x && typeof t[y] == "undefined") { g(t, u++, [d, c]); switch (h[s % h.length]) { case b: c++; break; case f: d++; break; case a: c--; break; case e: d-- } } else { switch (h[s++ % h.length]) { case b: c--; break; case f: d--; break; case a: c++; break; case e: d++ }switch (h[s++ % h.length]) { case b: c++; break; case f: d++; break; case a: c--; break; case e: d-- } } } return t }; h.$FormationStraightStairs = function (q) { var u = q.$Cols, v = q.$Rows, e = q.$Assembly, t = q.Ob, r = [], s = 0, c = 0, d = 0, f = u - 1, h = v - 1, x = t - 1; switch (e) { case j: case m: case o: case i: var a = 0, b = 0; break; case k: case l: case n: case p: var a = f, b = 0; break; default: e = p; var a = f, b = 0 }c = a; d = b; while (s < t) { if (z(e) || y(e)) g(r, x - s++, [d, c]); else g(r, s++, [d, c]); switch (e) { case j: case m: c--; d++; break; case o: case i: c++; d--; break; case k: case l: c--; d--; break; case p: case n: default: c++; d++ }if (c < 0 || d < 0 || c > f || d > h) { switch (e) { case j: case m: a++; break; case k: case l: case o: case i: b++; break; case p: case n: default: a-- }if (a < 0 || b < 0 || a > f || b > h) { switch (e) { case j: case m: a = f; b++; break; case o: case i: b = h; a++; break; case k: case l: b = h; a--; break; case p: case n: default: a = 0; b++ }if (b > h) b = h; else if (b < 0) b = 0; else if (a > f) a = f; else if (a < 0) a = 0 } d = b; c = a } } return r }; h.$FormationSquare = function (i) { var a = i.$Cols || 1, b = i.$Rows || 1, j = [], d, e, f, h, k; f = a < b ? (b - a) / 2 : 0; h = a > b ? (a - b) / 2 : 0; k = c.round(c.max(a / 2, b / 2)) + 1; for (d = 0; d < a; d++)for (e = 0; e < b; e++)g(j, k - c.min(d + 1 + f, e + 1 + h, a - d + f, b - e + h), [e, d]); return j }; h.$FormationRectangle = function (f) { var d = f.$Cols || 1, e = f.$Rows || 1, h = [], a, b, i; i = c.round(c.min(d / 2, e / 2)) + 1; for (a = 0; a < d; a++)for (b = 0; b < e; b++)g(h, i - c.min(a + 1, b + 1, d - a, e - b), [b, a]); return h }; h.$FormationRandom = function (d) { for (var e = [], a, b = 0; b < d.$Rows; b++)for (a = 0; a < d.$Cols; a++)g(e, c.ceil(1e5 * c.random()) % 13, [b, a]); return e }; h.$FormationCircle = function (d) { for (var e = d.$Cols || 1, f = d.$Rows || 1, h = [], a, i = e / 2 - .5, j = f / 2 - .5, b = 0; b < e; b++)for (a = 0; a < f; a++)g(h, c.round(c.sqrt(c.pow(b - i, 2) + c.pow(a - j, 2))), [a, b]); return h }; h.$FormationCross = function (d) { for (var e = d.$Cols || 1, f = d.$Rows || 1, h = [], a, i = e / 2 - .5, j = f / 2 - .5, b = 0; b < e; b++)for (a = 0; a < f; a++)g(h, c.round(c.min(c.abs(b - i), c.abs(a - j))), [a, b]); return h }; h.$FormationRectangleCross = function (f) { for (var h = f.$Cols || 1, i = f.$Rows || 1, j = [], a, d = h / 2 - .5, e = i / 2 - .5, k = c.max(d, e) + 1, b = 0; b < h; b++)for (a = 0; a < i; a++)g(j, c.round(k - c.max(d - c.abs(b - d), e - c.abs(a - e))) - 1, [a, b]); return j } }; j.$JssorSlideshowRunner$ = function (m, s, p, u, z, A) { var a = this, v, h, f, y = 0, x = u.$TransitionsOrder, r, i = 8; function t(a) { if (a.$Top) a.E = a.$Top; if (a.$Left) a.B = a.$Left; b.$Each(a, function (a) { b.Yd(a) && t(a) }) } function j(h, f, g) { var a = { $Interval: f, $Duration: 1, $Delay: 0, $Cols: 1, $Rows: 1, $Opacity: 0, $Zoom: 0, $Clip: 0, $Move: k, $SlideOut: k, $Reverse: k, $Formation: q.$FormationRandom, $Assembly: 1032, $ChessMode: { $Column: 0, $Row: 0 }, $Easing: e.$Linear, $Round: {}, Yb: [], $During: {} }; b.s(a, h); if (a.$Rows == 0) a.$Rows = c.round(a.$Cols * g); t(a); a.Ob = a.$Cols * a.$Rows; a.$Easing = b.Hc(a.$Easing, e.$Linear); a.Me = c.ceil(a.$Duration / a.$Interval); a.Le = function (c, b) { c /= a.$Cols; b /= a.$Rows; var f = c + "x" + b; if (!a.Yb[f]) { a.Yb[f] = { u: c, v: b }; for (var d = 0; d < a.$Cols; d++)for (var e = 0; e < a.$Rows; e++)a.Yb[f][e + "," + d] = { $Top: e * b, $Right: d * c + c, $Bottom: e * b + b, $Left: d * c } } return a.Yb[f] }; if (a.$Brother) { a.$Brother = j(a.$Brother, f, g); a.$SlideOut = d } return a } function n(z, i, a, v, n, l) { var y = this, t, u = {}, h = {}, m = [], f, e, r, p = a.$ChessMode.$Column || 0, q = a.$ChessMode.$Row || 0, g = a.Le(n, l), o = B(a), C = o.length - 1, s = a.$Duration + a.$Delay * C, w = v + s, j = a.$SlideOut, x; w += 50; function B(a) { var b = a.$Formation(a); return a.$Reverse ? b.reverse() : b } y.fd = w; y.Zb = function (d) { d -= v; var e = d < s; if (e || x) { x = e; if (!j) d = s - d; var f = c.ceil(d / a.$Interval); b.$Each(h, function (a, e) { var d = c.max(f, a.Oe); d = c.min(d, a.length - 1); if (a.ad != d) { if (!a.ad && !j) b.D(m[e]); else d == a.Ne && j && b.U(m[e]); a.ad = d; b.G(m[e], a[d]) } }) } }; i = b.$CloneNode(i); A(i, 0, 0); b.$Each(o, function (i, m) { b.$Each(i, function (G) { var I = G[0], H = G[1], v = I + "," + H, o = k, s = k, x = k; if (p && H % 2) { if (p & 3) o = !o; if (p & 12) s = !s; if (p & 16) x = !x } if (q && I % 2) { if (q & 3) o = !o; if (q & 12) s = !s; if (q & 16) x = !x } a.$Top = a.$Top || a.$Clip & 4; a.$Bottom = a.$Bottom || a.$Clip & 8; a.$Left = a.$Left || a.$Clip & 1; a.$Right = a.$Right || a.$Clip & 2; var C = s ? a.$Bottom : a.$Top, z = s ? a.$Top : a.$Bottom, B = o ? a.$Right : a.$Left, A = o ? a.$Left : a.$Right; a.$Clip = C || z || B || A; r = {}; e = { E: 0, B: 0, $Opacity: 1, u: n, v: l }; f = b.s({}, e); t = b.s({}, g[v]); if (a.$Opacity) e.$Opacity = 2 - a.$Opacity; if (a.$ZIndex) { e.$ZIndex = a.$ZIndex; f.$ZIndex = 0 } var K = a.$Cols * a.$Rows > 1 || a.$Clip; if (a.$Zoom || a.$Rotate) { var J = d; if (J) { e.$Zoom = a.$Zoom ? a.$Zoom - 1 : 1; f.$Zoom = 1; var N = a.$Rotate || 0; e.$Rotate = N * 360 * (x ? -1 : 1); f.$Rotate = 0 } } if (K) { var i = t.bc = {}; if (a.$Clip) { var w = a.$ScaleClip || 1; if (C && z) { i.$Top = g.v / 2 * w; i.$Bottom = -i.$Top } else if (C) i.$Bottom = -g.v * w; else if (z) i.$Top = g.v * w; if (B && A) { i.$Left = g.u / 2 * w; i.$Right = -i.$Left } else if (B) i.$Right = -g.u * w; else if (A) i.$Left = g.u * w } r.$Clip = t; f.$Clip = g[v] } var L = o ? 1 : -1, M = s ? 1 : -1; if (a.x) e.B += n * a.x * L; if (a.y) e.E += l * a.y * M; b.$Each(e, function (a, c) { if (b.cc(a)) if (a != f[c]) r[c] = a - f[c] }); u[v] = j ? f : e; var D = a.Me, y = c.round(m * a.$Delay / a.$Interval); h[v] = new Array(y); h[v].Oe = y; h[v].Ne = y + D - 1; for (var F = 0; F <= D; F++) { var E = b.Qc(f, r, F / D, a.$Easing, a.$During, a.$Round, { $Move: a.$Move, $OriginalWidth: n, $OriginalHeight: l }); E.$ZIndex = E.$ZIndex || 1; h[v].push(E) } }) }); o.reverse(); b.$Each(o, function (a) { b.$Each(a, function (c) { var f = c[0], e = c[1], d = f + "," + e, a = i; if (e || f) a = b.$CloneNode(i); b.G(a, u[d]); b.xb(a, "hidden"); b.K(a, "absolute"); z.ge(a); m[d] = a; b.D(a, !j) }) }) } function w() { var a = this, b = 0; l.call(a, 0, v); a.dc = function (c, a) { if (a - b > i) { b = a; f && f.Zb(a); h && h.Zb(a) } }; a.Kc = r } a.Fe = function () { var a = 0, b = u.$Transitions, d = b.length; if (x) a = y++ % d; else a = c.floor(c.random() * d); b[a] && (b[a].tb = a); return b[a] }; a.Ce = function (x, y, k, l, b, t) { a.ub(); r = b; b = j(b, i, t); var g = l.rd, e = k.rd; g["no-image"] = !l.ic; e["no-image"] = !k.ic; var o = g, q = e, w = b, d = b.$Brother || j({}, i, t); if (!b.$SlideOut) { o = e; q = g } var u = d.$Shift || 0; h = new n(m, q, d, c.max(u - d.$Interval, 0), s, p); f = new n(m, o, w, c.max(d.$Interval - u, 0), s, p); h.Zb(0); f.Zb(0); v = c.max(h.fd, f.fd); a.tb = x }; a.ub = function () { m.ub(); h = g; f = g }; a.Ke = function () { var a = g; if (f) a = new w; return a }; if (z && b.$WebKitVersion() < 537) i = 16; o.call(a); l.call(a, -1e7, 1e7) }; var p = { kc: 1 }; j.$JssorBulletNavigator$ = function (a, E) { var f = this; o.call(f); a = b.$GetElement(a); var u, C, B, t, l = 0, e, q, j, y, z, i, h, s, r, D = [], A = []; function x(a) { a != -1 && A[a].id(a == l) } function v(a) { f.k(p.kc, a * q) } f.$Elmt = a; f.pc = function (a) { if (a != t) { var d = l, b = c.floor(a / q); l = b; t = a; x(d); x(b) } }; f.qc = function (c) { b.D(a, c) }; var w; f.Mc = function (x) { if (!w) { u = c.ceil(x / q); l = 0; var n = s + y, o = r + z, m = c.ceil(u / j) - 1; C = s + n * (!i ? m : j - 1); B = r + o * (i ? m : j - 1); b.$CssWidth(a, C); b.$CssHeight(a, B); for (var f = 0; f < u; f++) { var t = b.Of(); b.$InnerText(t, f + 1); var k = b.md(h, "numbertemplate", t, d); b.K(k, "absolute"); var p = f % (m + 1); b.z(k, !i ? n * p : f % j * n); b.C(k, i ? o * p : c.floor(f / (m + 1)) * o); b.$AppendChild(a, k); D[f] = k; e.$ActionMode & 1 && b.$AddEvent(k, "click", b.$CreateCallback(g, v, f)); e.$ActionMode & 2 && b.$AddEvent(k, "mouseenter", b.$CreateCallback(g, v, f)); A[f] = b.Rb(k) } w = d } }; f.Vb = e = b.s({ $SpacingX: 10, $SpacingY: 10, $Orientation: 1, $ActionMode: 1 }, E); h = b.$FindChild(a, "prototype"); s = b.$CssWidth(h); r = b.$CssHeight(h); b.Qb(h, a); q = e.$Steps || 1; j = e.$Rows || 1; y = e.$SpacingX; z = e.$SpacingY; i = e.$Orientation - 1; e.$Scale == k && n.R(a, m.Mb, 1); e.$AutoCenter && n.R(a, m.rb, e.$AutoCenter); n.Xb(a) }; j.$JssorArrowNavigator$ = function (a, f, i) { var c = this; o.call(c); var t, e, h, j; b.$CssWidth(a); b.$CssHeight(a); var r, q; function l(a) { c.k(p.kc, a, d) } function v(c) { b.D(a, c); b.D(f, c) } function u() { r.$Enable(i.$Loop || e > 0); q.$Enable(i.$Loop || e < t - i.$Cols) } c.pc = function (b, a, c) { if (c) e = a; else { e = b; u() } }; c.qc = v; var s; c.Mc = function (c) { t = c; e = 0; if (!s) { b.$AddEvent(a, "click", b.$CreateCallback(g, l, -j)); b.$AddEvent(f, "click", b.$CreateCallback(g, l, j)); r = b.Rb(a); q = b.Rb(f); s = d } }; c.Vb = h = b.s({ $Steps: 1 }, i); j = h.$Steps; if (h.$Scale == k) { n.R(a, m.Mb, 1); n.R(f, m.Mb, 1) } if (h.$AutoCenter) { n.R(a, m.rb, h.$AutoCenter); n.R(f, m.rb, h.$AutoCenter) } n.Xb(a); n.Xb(f) }; j.$JssorThumbnailNavigator$ = function (h, D) { var j = this, A, s, a, x = [], B, z, e, t, u, w, v, r, l, f, q; o.call(j); h = b.$GetElement(h); function C(o, f) { var h = this, c, n, m; function r() { n.id(s == f) } function i(g) { if (g || !l.re()) { var a = e - f % e, b = l.bd((f + a) / e - 1), c = b * e + e - a; j.k(p.kc, c, k, d) } } h.tb = f; h.dd = r; m = o.oe || o.ic || b.$CreateDiv(); h.mc = c = b.md(q, "thumbnailtemplate", m, d); n = b.Rb(c); a.$ActionMode & 1 && b.$AddEvent(c, "click", b.$CreateCallback(g, i, 0)); a.$ActionMode & 2 && b.$AddEvent(c, "mouseenter", b.$CreateCallback(g, i, 1)) } j.pc = function (b, d, f) { var a = s; s = b; a != -1 && x[a].dd(); x[b].dd(); !f && l.$PlayTo(l.bd(c.floor(d / e))) }; j.qc = function (a) { b.D(h, a) }; var y; j.Mc = function (G, D) { if (!y) { A = G; c.ceil(A / e); s = -1; r = c.min(r, D.length); var g = a.$Orientation & 1, o = w + (w + t) * (e - 1) * (1 - g), n = v + (v + u) * (e - 1) * g, q = o + (o + t) * (r - 1) * g, p = n + (n + u) * (r - 1) * (1 - g); b.K(f, "absolute"); b.xb(f, "hidden"); b.z(f, (B - q) / 2); b.C(f, (z - p) / 2); b.$CssWidth(f, q); b.$CssHeight(f, p); var m = []; b.$Each(D, function (k, h) { var i = new C(k, h), d = i.mc, a = c.floor(h / e), j = h % e; b.z(d, (w + t) * j * (1 - g)); b.C(d, (v + u) * j * g); if (!m[a]) { m[a] = b.$CreateDiv(); b.$AppendChild(f, m[a]) } b.$AppendChild(m[a], d); x.push(i) }); var F = b.s({ $AutoPlay: 0, $NaviQuitDrag: k, $SlideWidth: o, $SlideHeight: n, $SlideSpacing: t * g + u * (1 - g), $MinDragOffsetToSlide: 12, $SlideDuration: 200, $PauseOnHover: 1, $PlayOrientation: a.$Orientation, $DragOrientation: a.$NoDrag || a.$DisableDrag ? 0 : a.$Orientation }, a); l = new i(h, F); j.Jf = l.Jf; y = d } }; j.Vb = a = b.s({ $SpacingX: 0, $SpacingY: 0, $Cols: 1, $Orientation: 1, $ActionMode: 1 }, D); B = b.$CssWidth(h); z = b.$CssHeight(h); f = b.$FindChild(h, "slides", d); q = b.$FindChild(f, "prototype"); w = b.$CssWidth(q); v = b.$CssHeight(q); b.Qb(q, f); e = a.$Rows || 1; t = a.$SpacingX; u = a.$SpacingY; r = a.$Cols; a.$Scale == k && n.R(h, m.Mb, 1); a.$AutoCenter &= a.$Orientation; a.$AutoCenter && n.R(h, m.rb, a.$AutoCenter); n.Xb(h) }; function r(e, d, c) { var a = this; l.call(a, 0, c); a.cd = b.Cd; a.Wc = 0; a.Vc = c } j.$JssorCaptionSlideo$ = function (v, j, u, E) { var a = this, w, o = {}, p = j.$Transitions, s = j.$Controls, m = new l(0, 0), q = [], h = [], D = E, f = D ? 1e8 : 0; l.call(a, 0, 0); function r(d, c) { var a = {}; b.$Each(d, function (d, f) { var e = o[f]; if (e) { if (b.Yd(d)) d = r(d, c || f == "e"); else if (c) if (b.cc(d)) d = w[d]; a[e] = d } }); return a } function t(d, e) { var a = [], c = b.$Children(d); b.$Each(c, function (c) { var h = b.$AttributeEx(c, "u") == "caption"; if (h) { var d = b.$AttributeEx(c, "t"), g = p[b.Oc(d)] || p[d], f = { $Elmt: c, Kc: g }; a.push(f) } a = a.concat(t(c, e + 1)) }); return a } function n(c, e) { var a = q[c]; if (a == g) { a = q[c] = { X: c, wc: [], Ud: [] }; var d = 0; !b.$Each(h, function (a, b) { d = b; return a.X > c }) && d++; h.splice(d, 0, a) } return a } function z(t, u, h) { var a, e; if (s) { var o = b.$AttributeEx(t, "c"); if (o) { var m = s[b.Oc(o)]; if (m) { a = n(m.r, 0); a.Mf = m.e || 0 } } } b.$Each(u, function (i) { var g = b.s(d, {}, r(i)), j = b.Hc(g.$Easing); delete g.$Easing; if (g.$Left) { g.B = g.$Left; j.B = j.$Left; delete g.$Left } if (g.$Top) { g.E = g.$Top; j.E = j.$Top; delete g.$Top } var o = { $Easing: j, $OriginalWidth: h.u, $OriginalHeight: h.v }, k = new l(i.b, i.d, o, t, h, g); f = c.max(f, i.b + i.d); if (a) { if (!e) e = new l(i.b, 0); e.P(k) } else { var m = n(i.b, i.b + i.d); m.wc.push(k) } h = b.ae(h, g) }); if (a && e) { e.me(); var i = e, k, j = e.fc(), p = e.lb(), q = c.max(p, a.Mf); if (a.X < p) { if (a.X > j) { i = new l(j, a.X - j); i.P(e, d) } else i = g; k = new l(a.X, q - j, { Lc: q - a.X, cf: d }); k.P(e, d) } i && a.wc.push(i); k && a.Ud.push(k) } return h } function y(a) { b.$Each(a, function (f) { var a = f.$Elmt, e = b.$CssWidth(a), d = b.$CssHeight(a), c = { $Left: b.z(a), $Top: b.C(a), B: 0, E: 0, $Opacity: 1, $ZIndex: b.A(a) || 0, $Rotate: 0, $RotateX: 0, $RotateY: 0, $ScaleX: 1, $ScaleY: 1, $TranslateX: 0, $TranslateY: 0, $TranslateZ: 0, $SkewX: 0, $SkewY: 0, u: e, v: d, $Clip: { $Top: 0, $Right: e, $Bottom: d, $Left: 0 } }; c.wd = c.$Left; c.sd = c.$Top; z(a, f.Kc, c) }) } function B(f, e, g) { var c = f.b - e; if (c) { var b = new l(e, c); b.P(m, d); b.$Shift(g); a.P(b) } a.hd(f.d); return c } function A(e) { var c = m.fc(), d = 0; b.$Each(e, function (e, f) { e = b.s({ d: u }, e); B(e, c, d); c = e.b; d += e.d; if (!f || e.t == 2) { a.Wc = c; a.Vc = c + e.d } }) } function i(k, d, e) { var g = d.length; if (g > 4) for (var m = c.ceil(g / 4), a = 0; a < m; a++) { var h = d.slice(a * 4, c.min(a * 4 + 4, g)), j = new l(h[0].X, 0); i(j, h, e); k.P(j) } else b.$Each(d, function (a) { b.$Each(e ? a.Ud : a.wc, function (a) { e && a.hd(f - a.lb()); k.P(a) }) }) } a.cd = function () { a.F(-1, d) }; w = [e.$Linear, e.$Swing, e.$InQuad, e.$OutQuad, e.$InOutQuad, e.$InCubic, e.$OutCubic, e.$InOutCubic, e.$InQuart, e.$OutQuart, e.$InOutQuart, e.$InQuint, e.$OutQuint, e.$InOutQuint, e.$InSine, e.$OutSine, e.$InOutSine, e.$InExpo, e.$OutExpo, e.$InOutExpo, e.$InCirc, e.$OutCirc, e.$InOutCirc, e.$InElastic, e.$OutElastic, e.$InOutElastic, e.$InBack, e.$OutBack, e.$InOutBack, e.$InBounce, e.$OutBounce, e.$InOutBounce, e.$Early, e.$Late]; var C = { $Top: "y", $Left: "x", $Bottom: "m", $Right: "t", $Rotate: "r", $RotateX: "rX", $RotateY: "rY", $ScaleX: "sX", $ScaleY: "sY", $TranslateX: "tX", $TranslateY: "tY", $TranslateZ: "tZ", $SkewX: "kX", $SkewY: "kY", $Opacity: "o", $Easing: "e", $ZIndex: "i", $Clip: "c" }; b.$Each(C, function (b, a) { o[b] = a }); y(t(v, 1)); i(m, h); var x = j.$Breaks || [], k = [].concat(x[b.Oc(b.$AttributeEx(v, "b"))] || []); k.push({ b: f, d: k.length ? 0 : u }); A(k); f = c.max(f, a.lb()); i(a, h, d); a.F(-1) }; var i = j.$JssorSlider$ = function () { var a = this; b.Ef(a, o); var ub = "data-jssor-slider", Sb = "data-jssor-thumb", w, n, X, fb, V, jb, U, eb, H, G, Kb, fc, jc = 1, ec = 1, Tb = 1, Xb = {}, z, R, sb, Mb, Jb, ib, wb, vb, db, s = -1, N, yb, q, K, I, Gb, ob, pb, qb, t, S, x, P, Ib, Z = [], bc, cc, Yb, kc, Fc, v, gb, F, ac, nb, xb, zb, mb, Ab, L, hb, Q, J = 1, T, D, Y, Bb = 0, Cb = 0, M, kb, lb, Nb, y, bb, A, Db, ab = [], Ob = b.$Device(), Fb = Ob.qg, B = [], C, O, E, tb, Rb, W; function sc(e, n, o) { var k = this, h = { $Top: 2, $Right: 1, $Bottom: 2, $Left: 1 }, l = { $Top: "top", $Right: "right", $Bottom: "bottom", $Left: "left" }, g, a, f, i, j = {}; k.$Elmt = e; k.$ScaleSize = function (q, k) { var p, s = q, r = k; if (!f) { f = b.sf(e); g = e.parentNode; i = { $Scale: b.ac(e, m.Mb, 1), $AutoCenter: b.ac(e, m.rb) }; b.$Each(l, function (c, a) { j[a] = b.ac(e, "data-scale-" + c, 1) }); a = e; if (n) { a = b.$CloneNode(g, d); b.G(a, { $Top: 0, $Left: 0 }); b.$AppendChild(a, e); b.$AppendChild(g, a) } } if (o) p = q > k ? q : k; else s = r = p = c.pow(H < G ? k : q, i.$Scale); b.Vf(a, p); b.$Attribute(a, m.vc, p); b.$CssWidth(g, f.u * s); b.$CssHeight(g, f.v * r); var t = b.$IsBrowserIE() && b.$BrowserEngineVersion() < 9 || b.$BrowserEngineVersion() < 10 && b.$IsBrowserIeQuirks() ? p : 1, u = (s - t) * f.u / 2, v = (r - t) * f.v / 2; b.z(a, u); b.C(a, v); b.$Each(f, function (d, a) { if (h[a] && d) { var e = (h[a] & 1) * c.pow(q, j[a]) * d + (h[a] & 2) * c.pow(k, j[a]) * d / 2; b.xg[a](g, e) } }); b.qd(g, i.$AutoCenter) } } function Ec() { var b = this; l.call(b, -1e8, 2e8); b.Wf = function () { var a = b.Eb(), d = c.floor(a), f = u(d), e = a - c.floor(a); return { tb: f, Yf: d, mb: e } }; b.dc = function (e, b) { var f = c.floor(b); if (f != b && b > e) f++; dc(f, d); a.k(i.$EVT_POSITION_CHANGE, u(b), u(e), b, e) } } function Dc() { var a = this; l.call(a, 0, 0, { Lc: q }); b.$Each(B, function (b) { L & 1 && b.fe(q); a.yc(b); b.$Shift(mb / qb) }) } function Cc() { var a = this, b = Db.$Elmt; l.call(a, -1, 2, { $Easing: e.$Linear, Ze: { mb: ic }, Lc: q }, b, { mb: 1 }, { mb: -2 }); a.mc = b } function uc(o, m) { var b = this, e, f, h, j, c; l.call(b, -1e8, 2e8, { gd: 100 }); b.Yc = function () { T = d; Y = g; a.k(i.$EVT_SWIPE_START, u(y.bb()), y.bb()) }; b.ed = function () { T = k; j = k; var b = y.Wf(); a.k(i.$EVT_SWIPE_END, u(y.bb()), y.bb()); !b.mb && Gc(b.Yf, s) }; b.dc = function (g, d) { var a; if (j) a = c; else { a = f; if (h) { var b = d / h; a = n.$SlideEasing(b) * (f - e) + e } } y.F(a) }; b.jc = function (a, d, c, g) { e = a; f = d; h = c; y.F(a); b.F(0); b.Pc(c, g) }; b.pf = function (a) { j = d; c = a; b.$Play(a, g, d) }; b.of = function (a) { c = a }; y = new Ec; y.P(o); y.P(m) } function vc() { var c = this, a = gc(); b.A(a, 0); b.$Css(a, "pointerEvents", "none"); c.$Elmt = a; c.ge = function (c) { b.$AppendChild(a, c); b.D(a) }; c.ub = function () { b.U(a); b.sc(a) } } function Bc(m, f) { var e = this, r, L, y, j, z = [], x, D, T, H, P, F, J, h, w, p; l.call(e, -t, t + 1, {}); function E(a) { r && r.cd(); S(m, a, 0); F = d; r = new V.$Class(m, V, b.Zc(b.$AttributeEx(m, "idle")) || ac, !v); r.F(0) } function W() { r.Jc < V.Jc && E() } function N(p, r, o) { if (!H) { H = d; if (j && o) { var g = o.width, c = o.height, m = g, l = c; if (g && c && n.$FillMode) { if (n.$FillMode & 3 && (!(n.$FillMode & 4) || g > K || c > I)) { var h = k, q = K / I * c / g; if (n.$FillMode & 1) h = q > 1; else if (n.$FillMode & 2) h = q < 1; m = h ? g * I / c : K; l = h ? I : c * K / g } b.$CssWidth(j, m); b.$CssHeight(j, l); b.C(j, (I - l) / 2); b.z(j, (K - m) / 2) } b.K(j, "absolute"); a.k(i.$EVT_LOAD_END, f) } } b.U(r); p && p(e) } function U(g, b, c, d) { if (d == Y && s == f && v) if (!Fc) { var a = u(g); C.Ce(a, f, b, e, c, I / K); b.zf(); bb.$Shift(a - bb.fc() - 1); bb.F(a); A.jc(a, a, 0) } } function Z(b) { if (b == Y && s == f) { if (!h) { var a = g; if (C) if (C.tb == f) a = C.Ke(); else C.ub(); W(); h = new Ac(m, f, a, r); h.Md(p) } !h.$IsPlaying() && h.Ac() } } function G(a, d, k) { if (a == f) { if (a != d) B[d] && B[d].Qd(); else !k && h && h.tg(); p && p.$Enable(); var l = Y = b.W(); e.Ib(b.$CreateCallback(g, Z, l)) } else { var j = c.min(f, a), i = c.max(f, a), o = c.min(i - j, j + q - i), m = t + n.$LazyLoading - 1; (!P || o <= m) && e.Ib() } } function ab() { if (s == f && h) { h.sb(); p && p.$Quit(); p && p.$Disable(); h.Jd() } } function cb() { s == f && h && h.sb() } function X(b) { !Q && a.k(i.$EVT_CLICK, f, b) } function O() { p = w.pInstance; h && h.Md(p) } e.Ib = function (e, c) { c = c || y; if (z.length && !H) { b.D(c); if (!T) { T = d; a.k(i.$EVT_LOAD_START, f); b.$Each(z, function (a) { if (!b.$Attribute(a, "src")) { a.src = b.$AttributeEx(a, "src2") || ""; b.nb(a, a["display-origin"]) } }) } b.Gf(z, j, b.$CreateCallback(g, N, e, c)) } else N(e, c) }; e.og = function () { if (q == 1) { e.Qd(); G(f, f) } else if (C) { var a = C.Fe(q); if (a) { var h = Y = b.W(), c = f + gb, d = B[u(c)]; return d.Ib(b.$CreateCallback(g, U, c, d, a, h), y) } } else Hb(gb) }; e.Bc = function () { G(f, f, d) }; e.Qd = function () { p && p.$Quit(); p && p.$Disable(); e.Zd(); h && h.kg(); h = g; E() }; e.zf = function () { b.U(m) }; e.Zd = function () { b.D(m) }; e.hg = function () { p && p.$Enable() }; function S(a, f, c, h) { if (b.$Attribute(a, ub)) return; if (!F) { if (a.tagName == "IMG") { z.push(a); if (!b.$Attribute(a, "src")) { P = d; a["display-origin"] = b.nb(a); b.U(a) } } var e = b.ug(a); if (e) { var g = new Image; b.$AttributeEx(g, "src2", e); z.push(g) } c && b.A(a, (b.A(a) || 0) + 1) } var i = b.$Children(a); b.$Each(i, function (a) { var e = a.tagName, g = b.$AttributeEx(a, "u"); if (g == "player" && !w) { w = a; if (w.pInstance) O(); else b.$AddEvent(w, "dataavailable", O) } if (g == "caption") { if (f) { b.xf(a, b.$AttributeEx(a, "to")); b.vf(a, b.$AttributeEx(a, "bf")); J && b.$AttributeEx(a, "3d") && b.tf(a, "preserve-3d") } } else if (!F && !c && !j) { if (e == "A") { if (b.$AttributeEx(a, "u") == "image") j = b.If(a, "IMG"); else j = b.$FindChild(a, "image", d); if (j) { x = a; b.nb(x, "block"); b.G(x, db); D = b.$CloneNode(x, d); b.K(x, "relative"); b.Ic(D, 0); b.$Css(D, "backgroundColor", "#000") } } else if (e == "IMG" && b.$AttributeEx(a, "u") == "image") j = a; if (j) { j.border = 0; b.G(j, db) } } S(a, f, c + 1, h) }) } e.Nc = function (c, b) { var a = t - b; ic(L, a) }; e.tb = f; o.call(e); J = b.$AttributeEx(m, "p"); b.uf(m, J); b.Uf(m, b.$AttributeEx(m, "po")); var M = b.$FindChild(m, "thumb", d); if (M) { e.oe = b.$CloneNode(M); b.U(M) } b.D(m); y = b.$CloneNode(R); b.A(y, 1e3); b.$AddEvent(m, "click", X); E(d); e.ic = j; e.Vd = D; e.rd = m; e.mc = L = m; b.$AppendChild(L, y); a.$On(203, G); a.$On(28, cb); a.$On(24, ab) } function Ac(z, g, p, q) { var c = this, n = 0, u = 0, h, j, f, e, m, t, r, o = B[g]; l.call(c, 0, 0); function w() { b.sc(O); kc && m && o.Vd && b.$AppendChild(O, o.Vd); b.D(O, !m && o.ic) } function x() { c.Ac() } function y(a) { r = a; c.sb(); c.Ac() } c.Ac = function () { var b = c.Eb(); if (!D && !T && !r && s == g) { if (!b) { if (h && !m) { m = d; c.Jd(d); a.k(i.$EVT_SLIDESHOW_START, g, n, u, h, e) } w() } var k, p = i.$EVT_STATE_CHANGE; if (b != e) if (b == f) k = e; else if (b == j) k = f; else if (!b) k = j; else k = c.Bd(); a.k(p, g, b, n, j, f, e); var l = v && (!F || J); if (b == e) (f != e && !(F & 12) || l) && o.og(); else (l || b != f) && c.Pc(k, x) } }; c.tg = function () { f == e && f == c.Eb() && c.F(j) }; c.kg = function () { C && C.tb == g && C.ub(); var b = c.Eb(); b < e && a.k(i.$EVT_STATE_CHANGE, g, -b - 1, n, j, f, e) }; c.Jd = function (a) { p && b.xb(S, a && p.Kc.$Outside ? "" : "hidden") }; c.Nc = function (c, b) { if (m && b >= h) { m = k; w(); o.Zd(); C.ub(); a.k(i.$EVT_SLIDESHOW_END, g, n, u, h, e) } a.k(i.$EVT_PROGRESS_CHANGE, g, b, n, j, f, e) }; c.Md = function (a) { if (a && !t) { t = a; a.$On($JssorPlayer$.kf, y) } }; p && c.yc(p); h = c.lb(); c.yc(q); j = h + q.Wc; e = c.lb(); f = v ? h + q.Vc : e } function Ub(a, c, d) { b.z(a, c); b.C(a, d) } function ic(c, b) { var a = x > 0 ? x : X, d = ob * b * (a & 1), e = pb * b * (a >> 1 & 1); Ub(c, d, e) } function Zb() { tb = T; Rb = A.Bd(); E = y.bb() } function mc() { Zb(); if (D || !J && F & 12) { A.sb(); a.k(i.ze) } } function lc(f) { if (!D && (J || !(F & 12)) && !A.$IsPlaying()) { var b = y.bb(), a = c.ceil(E); if (f && c.abs(M) >= n.$MinDragOffsetToSlide) { a = c.ceil(b); a += lb } if (!(L & 1)) a = c.min(q - t, c.max(a, 0)); var d = c.abs(a - b); if (d < 1 && n.$SlideEasing != e.$Linear) d = 1 - c.pow(1 - d, 5); if (!Q && tb) A.Be(Rb); else if (b == a) { yb.hg(); yb.Bc() } else A.jc(b, a, d * nb) } } function Qb(a) { !b.Gb(b.$EvtSrc(a), "nodrag") && b.$CancelEvent(a) } function yc(a) { hc(a, 1) } function hc(c, j) { c = b.Sd(c); var e = b.$EvtSrc(c); Ib = k; var l = b.Gb(e, "1", Sb); if ((!l || l === w) && !P && (!j || c.touches.length == 1) && !b.Gb(e, "nodrag") && zc()) { var n = b.Gb(e, f, m.vc); if (n) Tb = b.$Attribute(n, m.vc); if (j) { var p = c.touches[0]; Bb = p.clientX; Cb = p.clientY } else { var o = b.Rd(c); Bb = o.x; Cb = o.y } D = d; Y = g; b.$AddEvent(h, j ? "touchmove" : "mousemove", Lb); b.W(); Q = 0; mc(); if (!tb) x = 0; M = 0; kb = 0; lb = 0; a.k(i.$EVT_DRAG_START, u(E), E, c) } } function Lb(a) { if (D) { a = b.Sd(a); var e; if (a.type != "mousemove") if (a.touches.length == 1) { var m = a.touches[0]; e = { x: m.clientX, y: m.clientY } } else cb(); else e = b.Rd(a); if (e) { var f = e.x - Bb, g = e.y - Cb; if (x || c.abs(f) > 1.5 || c.abs(g) > 1.5) { if (c.floor(E) != E) x = x || X & P; if ((f || g) && !x) if (P == 3) if (c.abs(g) > c.abs(f)) x = 2; else x = 1; else { x = P; var n = [0, c.abs(f), c.abs(g)], p = n[x], o = n[~x & 3]; if (o > p) Ib = d } if (x && !Ib) { var l = g, h = pb; if (x == 1) { l = f; h = ob } if (M - kb < -1.5) lb = 0; else if (M - kb > 1.5) lb = -1; kb = M; M = l; W = E - M / h / Tb; if (!(L & 1)) { var j = 0, i = [-E, 0, E - q + t]; b.$Each(i, function (b, d) { if (b > 0) { var a = c.pow(b, 1 / 1.6); a = c.tan(a * c.PI / 2); j = (a - b) * (d - 1) } }); var k = j + W; i = [-k, 0, k - q + t]; b.$Each(i, function (a, b) { if (a > 0) { a = c.min(a, h); a = c.atan(a) * 2 / c.PI; a = c.pow(a, 1.6); W = a * (b - 1); if (b) W += q - t } }) } b.$CancelEvent(a); if (!T) A.pf(W); else A.of(W) } } } } } function cb() { wc(); if (D) { D = k; Q = M; b.W(); b.T(h, "mousemove", Lb); b.T(h, "touchmove", Lb); Q && v & 8 && (v = 0); A.sb(); var c = y.bb(); a.k(i.$EVT_DRAG_END, u(c), c, u(E), E); F & 12 && Zb(); lc(d) } } function rc(c) { var a = b.$EvtSrc(c), d = b.Gb(a, "1", ub); if (w === d) if (Q) { b.$StopEvent(c); while (a && w !== a) { (a.tagName == "A" || b.$Attribute(a, "data-jssor-button")) && b.$CancelEvent(c); a = a.parentNode } } else v & 4 && (v = 0) } function nc(a) { B[s]; s = u(a); yb = B[s]; y.F(s); dc(s); return s } function Gc(b, c) { x = 0; nc(b); if (v & 2 && (gb > 0 && s == q - 1 || gb < 0 && !s)) v = 0; a.k(i.$EVT_PARK, s, c) } function dc(a, c) { N = a; b.$Each(Z, function (b) { b.pc(u(a), a, c) }) } function zc() { var b = i.Hd || 0, a = hb; if (Fb) a & 1 && (a &= 1); i.Hd |= a; return P = a & ~b } function wc() { if (P) { i.Hd &= ~hb; P = 0 } } function gc() { var a = b.$CreateDiv(); b.G(a, db); b.K(a, "absolute"); return a } function u(b, a) { a = a || q || 1; return (b % a + a) % a } function rb(c, a, b) { v & 8 && (v = 0); Pb(c, nb, a, b) } function Eb() { b.$Each(Z, function (a) { a.qc(a.Vb.$ChanceToShow <= J) }) } function pc() { if (!J) { J = 1; Eb(); if (!D) { F & 12 && lc(); F & 3 && B[s] && B[s].Bc() } } a.k(i.$EVT_MOUSE_LEAVE) } function oc() { if (J) { J = 0; Eb(); D || !(F & 12) || mc() } a.k(i.$EVT_MOUSE_ENTER) } function qc() { b.$Each(ab, function (a) { b.G(a, db); b.K(a, "absolute"); b.xb(a, "hidden"); b.U(a) }); b.G(R, db) } function Hb(b, a) { Pb(b, a, d) } function Pb(h, g, m, o) { if (Ab && (!D && (J || !(F & 12)) || n.$NaviQuitDrag)) { T = d; D = k; A.sb(); if (g == f) g = nb; var e = Nb.Eb(), b = h; if (m) { b = N + h; if (h > 0) b = c.ceil(b); else b = c.floor(b) } var a = b; if (!(L & 1)) if (o) a = u(a); else if (L & 2 && (a < 0 && !N || a > q - t && N >= q - t)) a = a < 0 ? q - t : 0; else a = c.max(0, c.min(a, q - t)); var l = (a - e) % q; a = e + l; var i = e == a ? 0 : g * c.abs(l), j = 1; if (t > 1) j = (X & 1 ? wb : vb) / qb; i = c.min(i, g * j * 1.5); A.jc(e, a, i || 1) } } a.$SlidesCount = function () { return ab.length }; a.$CurrentIndex = function () { return s }; a.$AutoPlay = function (a) { if (a == f) return a; if (a != v) { v = a; v && B[s] && B[s].Bc() } }; a.$IsDragging = function () { return D }; a.$IsSliding = function () { return T }; a.$IsMouseOver = function () { return !J }; a.re = function () { return Q }; a.$OriginalWidth = function () { return H }; a.$OriginalHeight = function () { return G }; a.$ScaleHeight = function (b) { if (b == f) return fc || G; a.$ScaleSize(b / G * H, b) }; a.$ScaleWidth = function (b) { if (b == f) return Kb || H; a.$ScaleSize(b, G) }; a.$ScaleSize = function (c, a) { b.$CssWidth(w, c); b.$CssHeight(w, a); jc = c / H; ec = a / G; b.$Each(Xb, function (a) { a.$ScaleSize(jc, ec) }); if (!Kb) { b.Bb(S, z); b.C(S, 0); b.z(S, 0) } Kb = c; fc = a }; a.$PlayTo = Pb; a.$GoTo = function (a) { nc(a) }; a.$Next = function () { Hb(1) }; a.$Prev = function () { Hb(-1) }; a.$Pause = function () { v = 0 }; a.$Play = function () { a.$AutoPlay(v || 1) }; a.$SetSlideshowTransitions = function (a) { n.$SlideshowOptions.$Transitions = a }; a.$SetCaptionTransitions = function (a) { V.$Transitions = a; V.Jc = b.W() }; a.bd = function (a) { var d = c.ceil(u(mb / qb)), b = u(a - N + d); if (b > t) { if (a - N > q / 2) a -= q; else if (a - N <= -q / 2) a += q } else a = N + b - d; if (!(L & 1)) a = u(a); return a }; a.gc = function (y, l) { a.$Elmt = w = b.$GetElement(y); H = b.$CssWidth(w); G = b.$CssHeight(w); n = b.s({ $FillMode: 0, $LazyLoading: 1, $ArrowKeyNavigation: 1, $StartIndex: 0, $AutoPlay: 0, $Loop: 1, $HWA: d, $NaviQuitDrag: d, $AutoPlaySteps: 1, $AutoPlayInterval: 3e3, $PauseOnHover: 1, $SlideDuration: 500, $SlideEasing: e.$OutQuad, $MinDragOffsetToSlide: 20, $SlideSpacing: 0, $Cols: 1, $Align: 0, $UISearchMode: 1, $PlayOrientation: 1, $DragOrientation: 1 }, l); n.$HWA = n.$HWA && b.Ff(); if (n.$Idle != f) n.$AutoPlayInterval = n.$Idle; if (n.$ParkingPosition != f) n.$Align = n.$ParkingPosition; X = n.$PlayOrientation & 3; fb = n.$SlideshowOptions; V = b.s({ $Class: r }, n.$CaptionSliderOptions); jb = n.$BulletNavigatorOptions; U = n.$ArrowNavigatorOptions; eb = n.$ThumbnailNavigatorOptions; !n.$UISearchMode; var m = b.$Children(w); b.$Each(m, function (a, d) { var c = b.$AttributeEx(a, "u"); if (c == "loading") R = a; else { if (c == "slides") z = a; if (c == "navigator") sb = a; if (c == "arrowleft") Mb = a; if (c == "arrowright") Jb = a; if (c == "thumbnavigator") ib = a; if (a.tagName == "DIV" || a.tagName == "SPAN") Xb[c || d] = new sc(a, c == "slides", b.Nf(["slides", "thumbnavigator"])[c]) } }); R = R || b.$CreateDiv(h); wb = b.$CssWidth(z); vb = b.$CssHeight(z); K = n.$SlideWidth || wb; I = n.$SlideHeight || vb; db = { u: K, v: I, $Top: 0, $Left: 0 }; Gb = n.$SlideSpacing; ob = K + Gb; pb = I + Gb; qb = X & 1 ? ob : pb; gb = n.$AutoPlaySteps; F = n.$PauseOnHover; ac = n.$AutoPlayInterval; nb = n.$SlideDuration; Db = new vc; v = n.$AutoPlay & 63; a.Vb = l; b.$Attribute(w, ub, "1"); b.A(z, b.A(z) || 0); b.K(z, "absolute"); S = b.$CloneNode(z, d); b.Bb(S, z); bb = new Cc; b.$AppendChild(S, bb.mc); b.xb(z, "hidden"); F &= Fb ? 10 : 5; var o = b.$Children(z); b.$Each(o, function (a) { a.tagName == "DIV" && !b.$AttributeEx(a, "u") && ab.push(a); b.A(a, (b.A(a) || 0) + 1) }); O = gc(); b.$Css(O, "backgroundColor", "#000"); b.Ic(O, 0); b.A(O, 0); b.Bb(O, z.firstChild, z); q = ab.length; t = c.min(n.$Cols, q); Ab = t < q; L = Ab ? n.$Loop : 0; if (q) { qc(); if (fb) { kc = fb.$ShowLink; xb = fb.$Class; zb = t == 1 && q > 1 && xb && (!b.$IsBrowserIE() || b.$BrowserVersion() >= 9) } mb = zb || t >= q || !(L & 1) ? 0 : n.$Align; hb = (t > 1 || mb ? X : -1) & n.$DragOrientation; Ob.Fd && b.$Css(z, Ob.Fd, ([g, "pan-y", "pan-x", "none"])[hb] || ""); if (zb) C = new xb(Db, K, I, fb, Fb, Ub); for (var k = 0; k < ab.length; k++) { var s = ab[k], x = new Bc(s, k); B.push(x) } b.U(R); Nb = new Dc; A = new uc(Nb, bb); b.$AddEvent(w, "click", rc, d); b.$AddEvent(w, "mouseleave", pc); b.$AddEvent(w, "mouseenter", oc); if (hb) { b.$AddEvent(w, "mousedown", hc); b.$AddEvent(w, "touchstart", yc); b.$AddEvent(w, "dragstart", Qb); b.$AddEvent(w, "selectstart", Qb); b.$AddEvent(j, "mouseup", cb); b.$AddEvent(h, "mouseup", cb); b.$AddEvent(h, "touchend", cb); b.$AddEvent(h, "touchcancel", cb); b.$AddEvent(j, "blur", cb) } if (sb && jb) { bc = new jb.$Class(sb, jb, H, G); Z.push(bc) } if (U && Mb && Jb) { U.$Loop = L; U.$Cols = t; cc = new U.$Class(Mb, Jb, U, H, G); Z.push(cc) } if (ib && eb) { eb.$StartIndex = n.$StartIndex; Yb = new eb.$Class(ib, eb); b.$Attribute(ib, Sb, "1"); Z.push(Yb) } b.$Each(Z, function (a) { a.Mc(q, B, R); a.$On(p.kc, rb) }); b.$Css(w, "visibility", "visible"); a.$ScaleSize(H, G); Eb(); n.$ArrowKeyNavigation && b.$AddEvent(h, "keydown", function (a) { if (a.keyCode == 37) rb(-n.$ArrowKeyNavigation, d); else a.keyCode == 39 && rb(n.$ArrowKeyNavigation, d) }); var i = n.$StartIndex; i = u(i); A.jc(i, i, 0) } }; b.gc(a) }; i.$EVT_CLICK = 21; i.$EVT_DRAG_START = 22; i.$EVT_DRAG_END = 23; i.$EVT_SWIPE_START = 24; i.$EVT_SWIPE_END = 25; i.$EVT_LOAD_START = 26; i.$EVT_LOAD_END = 27; i.ze = 28; i.$EVT_MOUSE_ENTER = 31; i.$EVT_MOUSE_LEAVE = 32; i.$EVT_POSITION_CHANGE = 202; i.$EVT_PARK = 203; i.$EVT_SLIDESHOW_START = 206; i.$EVT_SLIDESHOW_END = 207; i.$EVT_PROGRESS_CHANGE = 208; i.$EVT_STATE_CHANGE = 209 +})(window, document, Math, null, true, false) \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/mobileAdapter.min.js b/jpress-template/src/main/webapp/templates/daotian/js/mobileAdapter.min.js new file mode 100644 index 0000000000000000000000000000000000000000..ea6bea1ce8003f05804301f22fa426aec104969d --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/mobileAdapter.min.js @@ -0,0 +1 @@ +window.mobileUtil = (function (f, e) { var d = navigator.userAgent, c = /android|adr/gi.test(d), b = /iphone|ipod|ipad/gi.test(d) && !c, a = c || b; return { isAndroid: c, isIos: b, isMobile: a, isNewsApp: /NewsApp\/[\d\.]+/gi.test(d), isWeixin: /MicroMessenger/gi.test(d), isQQ: /QQ\/\d/gi.test(d), isYixin: /YiXin/gi.test(d), isWeibo: /Weibo/gi.test(d), isTXWeibo: /T(?:X|encent)MicroBlog/gi.test(d), tapEvent: a ? "tap" : "click", fixScreen: function (i) { var A = e.querySelector('meta[name="viewport"]'), B = A ? A.content : "", y = B.match(/initial\-scale=([\d\.]+)/), o = B.match(/width=([^,\s]+)/); if (typeof i === "undefined") { console.log(false); i = false } console.log(e); console.log(A); if (!A) { var k = e.documentElement, u = k.dataset.mw || 750, h = b ? Math.min(f.devicePixelRatio, 3) : 1, C = 1 / h, z; k.removeAttribute("data-mw"); k.dataset.dpr = h; A = e.createElement("meta"); A.name = "viewport"; A.content = q(C); k.firstElementChild.appendChild(A); var s = function () { var w = k.getBoundingClientRect().width; if (w / h > u) { w = u * h } var D = w / 16; k.style.fontSize = D + "px" }; f.addEventListener("resize", function () { clearTimeout(z); z = setTimeout(s, 300) }, false); f.addEventListener("pageshow", function (w) { if (w.persisted) { clearTimeout(z); z = setTimeout(s, 300) } }, false); s() } else { if ((a && !y && (o && o[1] != "device-width")) || i) { var x = parseInt(o[1]), l = f.innerWidth || x, m = f.outerWidth || l, v = f.screen.width || l, j = f.screen.availWidth || l, r = f.innerHeight || x, t = f.outerHeight || r, g = f.screen.height || r, n = f.screen.availHeight || r, p = Math.min(l, m, v, j), C = Math.max(l, m, v, j) / x; A.content = o[0] + "," + q(C) } } function q(w) { return "initial-scale=" + w + ",maximum-scale=" + w + ",minimum-scale=" + w + ",user-scalable=no,viewport-fit=cover" } }, getSearch: function (g) { g = g || f.location.search; var i = {}, h = new RegExp("([^?=&]+)(=([^&]*))?", "g"); g && g.replace(h, function (k, j, m, l) { i[j] = l }); return i }, formatUcBrowser: function () { var g = navigator.userAgent, h = /UC/gi.test(g); if (h) { $(".smartFixed").each(function () { var n = $(this); var m = parseInt(n.css("top"), 10); var l = parseInt(n.css("left"), 10); var k = parseInt(n.css("right"), 10); var j = parseInt(n.css("bottom"), 10); if (m <= 150 && j === 0 && (l <= 150 || k <= 150)) { var i = parseInt(n.css("height"), 10) / 2 * -1; i = i + m; n.css({ "top": "50%", "margin-top": i + "px" }) } }) } } } })(window, document); \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/upload.js b/jpress-template/src/main/webapp/templates/daotian/js/upload.js new file mode 100644 index 0000000000000000000000000000000000000000..9414b222415d7de209b545c1980c1625d5c6ded7 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/upload.js @@ -0,0 +1,47 @@ +(function(){ + + var description = $('#description'); + var cfile = $('#cfile'); + cfile.change(function(){ + if (!description.val()) { + toastr.error('请填写' + description.attr('placeholder')); + return; + } + $('#form').ajaxSubmit({ + type: "post", + success: function (result) { + if(result.state == "ok"){ + toastr.success("文件上传成功..."); + var tmpl = $.templates("#audioTmpl"); + var html = tmpl.render(result.attachment); + $("#dataList").prepend(html); + description.val(''); + cfile.val(''); + } else { + toastr.error(result.message); + } + }, + error: function () { + toastr.error('系统错误,请稍后重试。', '操作失败'); + } + }); + }); + + $(document.body).on('click', '.file-delete', function () { + var btn = $(this); + var file = btn.attr('data-file'); + if (!file) { + return; + } + if (confirm('确实要删除文件吗?删除后不可恢复')) { + $.get('/admin/attachment/doDel/' + file, function (result) { + if (result.state == "ok") { + toastr.success("文件删除成功..."); + btn.closest('tr').remove(); + } else { + toastr.error(result.message); + } + }); + } + }) +})(); \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/js/vue.min.js b/jpress-template/src/main/webapp/templates/daotian/js/vue.min.js new file mode 100644 index 0000000000000000000000000000000000000000..087ee42cd1021d9f0315fd0f8779eceb3ba1f96b --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/js/vue.min.js @@ -0,0 +1,6 @@ +/*! + * Vue.js v2.6.10 + * (c) 2014-2019 Evan You + * Released under the MIT License. + */ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).Vue=t()}(this,function(){"use strict";var e=Object.freeze({});function t(e){return null==e}function n(e){return null!=e}function r(e){return!0===e}function i(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function o(e){return null!==e&&"object"==typeof e}var a=Object.prototype.toString;function s(e){return"[object Object]"===a.call(e)}function c(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function u(e){return n(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function l(e){return null==e?"":Array.isArray(e)||s(e)&&e.toString===a?JSON.stringify(e,null,2):String(e)}function f(e){var t=parseFloat(e);return isNaN(t)?e:t}function p(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i-1)return e.splice(n,1)}}var m=Object.prototype.hasOwnProperty;function y(e,t){return m.call(e,t)}function g(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var _=/-(\w)/g,b=g(function(e){return e.replace(_,function(e,t){return t?t.toUpperCase():""})}),$=g(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),w=/\B([A-Z])/g,C=g(function(e){return e.replace(w,"-$1").toLowerCase()});var x=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function k(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function A(e,t){for(var n in t)e[n]=t[n];return e}function O(e){for(var t={},n=0;n0,Z=J&&J.indexOf("edge/")>0,G=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===K),X=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),Y={}.watch,Q=!1;if(z)try{var ee={};Object.defineProperty(ee,"passive",{get:function(){Q=!0}}),window.addEventListener("test-passive",null,ee)}catch(e){}var te=function(){return void 0===B&&(B=!z&&!V&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),B},ne=z&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function re(e){return"function"==typeof e&&/native code/.test(e.toString())}var ie,oe="undefined"!=typeof Symbol&&re(Symbol)&&"undefined"!=typeof Reflect&&re(Reflect.ownKeys);ie="undefined"!=typeof Set&&re(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ae=S,se=0,ce=function(){this.id=se++,this.subs=[]};ce.prototype.addSub=function(e){this.subs.push(e)},ce.prototype.removeSub=function(e){h(this.subs,e)},ce.prototype.depend=function(){ce.target&&ce.target.addDep(this)},ce.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;t-1)if(o&&!y(i,"default"))a=!1;else if(""===a||a===C(e)){var c=Pe(String,i.type);(c<0||s0&&(st((u=e(u,(a||"")+"_"+c))[0])&&st(f)&&(s[l]=he(f.text+u[0].text),u.shift()),s.push.apply(s,u)):i(u)?st(f)?s[l]=he(f.text+u):""!==u&&s.push(he(u)):st(u)&&st(f)?s[l]=he(f.text+u.text):(r(o._isVList)&&n(u.tag)&&t(u.key)&&n(a)&&(u.key="__vlist"+a+"_"+c+"__"),s.push(u)));return s}(e):void 0}function st(e){return n(e)&&n(e.text)&&!1===e.isComment}function ct(e,t){if(e){for(var n=Object.create(null),r=oe?Reflect.ownKeys(e):Object.keys(e),i=0;i0,a=t?!!t.$stable:!o,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&r&&r!==e&&s===r.$key&&!o&&!r.$hasNormal)return r;for(var c in i={},t)t[c]&&"$"!==c[0]&&(i[c]=pt(n,c,t[c]))}else i={};for(var u in n)u in i||(i[u]=dt(n,u));return t&&Object.isExtensible(t)&&(t._normalized=i),R(i,"$stable",a),R(i,"$key",s),R(i,"$hasNormal",o),i}function pt(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return(e=e&&"object"==typeof e&&!Array.isArray(e)?[e]:at(e))&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function dt(e,t){return function(){return e[t]}}function vt(e,t){var r,i,a,s,c;if(Array.isArray(e)||"string"==typeof e)for(r=new Array(e.length),i=0,a=e.length;idocument.createEvent("Event").timeStamp&&(sn=function(){return cn.now()})}function un(){var e,t;for(an=sn(),rn=!0,Qt.sort(function(e,t){return e.id-t.id}),on=0;onon&&Qt[n].id>e.id;)n--;Qt.splice(n+1,0,e)}else Qt.push(e);nn||(nn=!0,Ye(un))}}(this)},fn.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||o(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){Re(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},fn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},fn.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},fn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||h(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var pn={enumerable:!0,configurable:!0,get:S,set:S};function dn(e,t,n){pn.get=function(){return this[t][n]},pn.set=function(e){this[t][n]=e},Object.defineProperty(e,n,pn)}function vn(e){e._watchers=[];var t=e.$options;t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[];e.$parent&&$e(!1);var o=function(o){i.push(o);var a=Me(o,t,n,e);xe(r,o,a),o in e||dn(e,"_props",o)};for(var a in t)o(a);$e(!0)}(e,t.props),t.methods&&function(e,t){e.$options.props;for(var n in t)e[n]="function"!=typeof t[n]?S:x(t[n],e)}(e,t.methods),t.data?function(e){var t=e.$options.data;s(t=e._data="function"==typeof t?function(e,t){le();try{return e.call(t,t)}catch(e){return Re(e,t,"data()"),{}}finally{fe()}}(t,e):t||{})||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);for(;i--;){var o=n[i];r&&y(r,o)||(a=void 0,36!==(a=(o+"").charCodeAt(0))&&95!==a&&dn(e,"_data",o))}var a;Ce(t,!0)}(e):Ce(e._data={},!0),t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=te();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;r||(n[i]=new fn(e,a||S,S,hn)),i in e||mn(e,i,o)}}(e,t.computed),t.watch&&t.watch!==Y&&function(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,"[object RegExp]"===a.call(n)&&e.test(t));var n}function An(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=xn(a.componentOptions);s&&!t(s)&&On(n,o,r,i)}}}function On(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,h(n,t)}!function(t){t.prototype._init=function(t){var n=this;n._uid=bn++,n._isVue=!0,t&&t._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(n,t):n.$options=De($n(n.constructor),t||{},n),n._renderProxy=n,n._self=n,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(n),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&qt(e,t)}(n),function(t){t._vnode=null,t._staticTrees=null;var n=t.$options,r=t.$vnode=n._parentVnode,i=r&&r.context;t.$slots=ut(n._renderChildren,i),t.$scopedSlots=e,t._c=function(e,n,r,i){return Pt(t,e,n,r,i,!1)},t.$createElement=function(e,n,r,i){return Pt(t,e,n,r,i,!0)};var o=r&&r.data;xe(t,"$attrs",o&&o.attrs||e,null,!0),xe(t,"$listeners",n._parentListeners||e,null,!0)}(n),Yt(n,"beforeCreate"),function(e){var t=ct(e.$options.inject,e);t&&($e(!1),Object.keys(t).forEach(function(n){xe(e,n,t[n])}),$e(!0))}(n),vn(n),function(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}(n),Yt(n,"created"),n.$options.el&&n.$mount(n.$options.el)}}(wn),function(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=ke,e.prototype.$delete=Ae,e.prototype.$watch=function(e,t,n){if(s(t))return _n(this,e,t,n);(n=n||{}).user=!0;var r=new fn(this,e,t,n);if(n.immediate)try{t.call(this,r.value)}catch(e){Re(e,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}(wn),function(e){var t=/^hook:/;e.prototype.$on=function(e,n){var r=this;if(Array.isArray(e))for(var i=0,o=e.length;i1?k(t):t;for(var n=k(arguments,1),r='event handler for "'+e+'"',i=0,o=t.length;iparseInt(this.max)&&On(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return F}};Object.defineProperty(e,"config",t),e.util={warn:ae,extend:A,mergeOptions:De,defineReactive:xe},e.set=ke,e.delete=Ae,e.nextTick=Ye,e.observable=function(e){return Ce(e),e},e.options=Object.create(null),M.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,A(e.options.components,Tn),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=k(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=De(this.options,e),this}}(e),Cn(e),function(e){M.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&s(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}(e)}(wn),Object.defineProperty(wn.prototype,"$isServer",{get:te}),Object.defineProperty(wn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(wn,"FunctionalRenderContext",{value:Tt}),wn.version="2.6.10";var En=p("style,class"),Nn=p("input,textarea,option,select,progress"),jn=function(e,t,n){return"value"===n&&Nn(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Dn=p("contenteditable,draggable,spellcheck"),Ln=p("events,caret,typing,plaintext-only"),Mn=function(e,t){return Hn(t)||"false"===t?"false":"contenteditable"===e&&Ln(t)?t:"true"},In=p("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Fn="http://www.w3.org/1999/xlink",Pn=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Rn=function(e){return Pn(e)?e.slice(6,e.length):""},Hn=function(e){return null==e||!1===e};function Bn(e){for(var t=e.data,r=e,i=e;n(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(t=Un(i.data,t));for(;n(r=r.parent);)r&&r.data&&(t=Un(t,r.data));return function(e,t){if(n(e)||n(t))return zn(e,Vn(t));return""}(t.staticClass,t.class)}function Un(e,t){return{staticClass:zn(e.staticClass,t.staticClass),class:n(e.class)?[e.class,t.class]:t.class}}function zn(e,t){return e?t?e+" "+t:e:t||""}function Vn(e){return Array.isArray(e)?function(e){for(var t,r="",i=0,o=e.length;i-1?hr(e,t,n):In(t)?Hn(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):Dn(t)?e.setAttribute(t,Mn(t,n)):Pn(t)?Hn(n)?e.removeAttributeNS(Fn,Rn(t)):e.setAttributeNS(Fn,t,n):hr(e,t,n)}function hr(e,t,n){if(Hn(n))e.removeAttribute(t);else{if(q&&!W&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var mr={create:dr,update:dr};function yr(e,r){var i=r.elm,o=r.data,a=e.data;if(!(t(o.staticClass)&&t(o.class)&&(t(a)||t(a.staticClass)&&t(a.class)))){var s=Bn(r),c=i._transitionClasses;n(c)&&(s=zn(s,Vn(c))),s!==i._prevClass&&(i.setAttribute("class",s),i._prevClass=s)}}var gr,_r,br,$r,wr,Cr,xr={create:yr,update:yr},kr=/[\w).+\-_$\]]/;function Ar(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r=0&&" "===(h=e.charAt(v));v--);h&&kr.test(h)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r-1?{exp:e.slice(0,$r),key:'"'+e.slice($r+1)+'"'}:{exp:e,key:null};_r=e,$r=wr=Cr=0;for(;!zr();)Vr(br=Ur())?Jr(br):91===br&&Kr(br);return{exp:e.slice(0,wr),key:e.slice(wr+1,Cr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function Ur(){return _r.charCodeAt(++$r)}function zr(){return $r>=gr}function Vr(e){return 34===e||39===e}function Kr(e){var t=1;for(wr=$r;!zr();)if(Vr(e=Ur()))Jr(e);else if(91===e&&t++,93===e&&t--,0===t){Cr=$r;break}}function Jr(e){for(var t=e;!zr()&&(e=Ur())!==t;);}var qr,Wr="__r",Zr="__c";function Gr(e,t,n){var r=qr;return function i(){null!==t.apply(null,arguments)&&Qr(e,i,n,r)}}var Xr=Ve&&!(X&&Number(X[1])<=53);function Yr(e,t,n,r){if(Xr){var i=an,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}qr.addEventListener(e,t,Q?{capture:n,passive:r}:n)}function Qr(e,t,n,r){(r||qr).removeEventListener(e,t._wrapper||t,n)}function ei(e,r){if(!t(e.data.on)||!t(r.data.on)){var i=r.data.on||{},o=e.data.on||{};qr=r.elm,function(e){if(n(e[Wr])){var t=q?"change":"input";e[t]=[].concat(e[Wr],e[t]||[]),delete e[Wr]}n(e[Zr])&&(e.change=[].concat(e[Zr],e.change||[]),delete e[Zr])}(i),rt(i,o,Yr,Qr,Gr,r.context),qr=void 0}}var ti,ni={create:ei,update:ei};function ri(e,r){if(!t(e.data.domProps)||!t(r.data.domProps)){var i,o,a=r.elm,s=e.data.domProps||{},c=r.data.domProps||{};for(i in n(c.__ob__)&&(c=r.data.domProps=A({},c)),s)i in c||(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(r.children&&(r.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i&&"PROGRESS"!==a.tagName){a._value=o;var u=t(o)?"":String(o);ii(a,u)&&(a.value=u)}else if("innerHTML"===i&&qn(a.tagName)&&t(a.innerHTML)){(ti=ti||document.createElement("div")).innerHTML=""+o+"";for(var l=ti.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(o!==s[i])try{a[i]=o}catch(e){}}}}function ii(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var r=e.value,i=e._vModifiers;if(n(i)){if(i.number)return f(r)!==f(t);if(i.trim)return r.trim()!==t.trim()}return r!==t}(e,t))}var oi={create:ri,update:ri},ai=g(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function si(e){var t=ci(e.style);return e.staticStyle?A(e.staticStyle,t):t}function ci(e){return Array.isArray(e)?O(e):"string"==typeof e?ai(e):e}var ui,li=/^--/,fi=/\s*!important$/,pi=function(e,t,n){if(li.test(t))e.style.setProperty(t,n);else if(fi.test(n))e.style.setProperty(C(t),n.replace(fi,""),"important");else{var r=vi(t);if(Array.isArray(n))for(var i=0,o=n.length;i-1?t.split(yi).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function _i(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function bi(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&A(t,$i(e.name||"v")),A(t,e),t}return"string"==typeof e?$i(e):void 0}}var $i=g(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),wi=z&&!W,Ci="transition",xi="animation",ki="transition",Ai="transitionend",Oi="animation",Si="animationend";wi&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ki="WebkitTransition",Ai="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Oi="WebkitAnimation",Si="webkitAnimationEnd"));var Ti=z?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Ei(e){Ti(function(){Ti(e)})}function Ni(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),gi(e,t))}function ji(e,t){e._transitionClasses&&h(e._transitionClasses,t),_i(e,t)}function Di(e,t,n){var r=Mi(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ci?Ai:Si,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c0&&(n=Ci,l=a,f=o.length):t===xi?u>0&&(n=xi,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Ci:xi:null)?n===Ci?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Ci&&Li.test(r[ki+"Property"])}}function Ii(e,t){for(;e.length1}function Ui(e,t){!0!==t.data.show&&Pi(t)}var zi=function(e){var o,a,s={},c=e.modules,u=e.nodeOps;for(o=0;ov?_(e,t(i[y+1])?null:i[y+1].elm,i,d,y,o):d>y&&$(0,r,p,v)}(p,h,y,o,l):n(y)?(n(e.text)&&u.setTextContent(p,""),_(p,null,y,0,y.length-1,o)):n(h)?$(0,h,0,h.length-1):n(e.text)&&u.setTextContent(p,""):e.text!==i.text&&u.setTextContent(p,i.text),n(v)&&n(d=v.hook)&&n(d=d.postpatch)&&d(e,i)}}}function k(e,t,i){if(r(i)&&n(e.parent))e.parent.data.pendingInsert=t;else for(var o=0;o-1,a.selected!==o&&(a.selected=o);else if(N(Wi(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function qi(e,t){return t.every(function(t){return!N(t,e)})}function Wi(e){return"_value"in e?e._value:e.value}function Zi(e){e.target.composing=!0}function Gi(e){e.target.composing&&(e.target.composing=!1,Xi(e.target,"input"))}function Xi(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Yi(e){return!e.componentInstance||e.data&&e.data.transition?e:Yi(e.componentInstance._vnode)}var Qi={model:Vi,show:{bind:function(e,t,n){var r=t.value,i=(n=Yi(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Pi(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Yi(n)).data&&n.data.transition?(n.data.show=!0,r?Pi(n,function(){e.style.display=e.__vOriginalDisplay}):Ri(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}}},eo={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function to(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?to(zt(t.children)):e}function no(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[b(o)]=i[o];return t}function ro(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var io=function(e){return e.tag||Ut(e)},oo=function(e){return"show"===e.name},ao={name:"transition",props:eo,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(io)).length){var r=this.mode,o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var a=to(o);if(!a)return o;if(this._leaving)return ro(e,o);var s="__transition-"+this._uid+"-";a.key=null==a.key?a.isComment?s+"comment":s+a.tag:i(a.key)?0===String(a.key).indexOf(s)?a.key:s+a.key:a.key;var c=(a.data||(a.data={})).transition=no(this),u=this._vnode,l=to(u);if(a.data.directives&&a.data.directives.some(oo)&&(a.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(a,l)&&!Ut(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=A({},c);if("out-in"===r)return this._leaving=!0,it(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),ro(e,o);if("in-out"===r){if(Ut(a))return u;var p,d=function(){p()};it(c,"afterEnter",d),it(c,"enterCancelled",d),it(f,"delayLeave",function(e){p=e})}}return o}}},so=A({tag:String,moveClass:String},eo);function co(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function uo(e){e.data.newPos=e.elm.getBoundingClientRect()}function lo(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}delete so.mode;var fo={Transition:ao,TransitionGroup:{props:so,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=Zt(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=no(this),s=0;s-1?Gn[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Gn[e]=/HTMLUnknownElement/.test(t.toString())},A(wn.options.directives,Qi),A(wn.options.components,fo),wn.prototype.__patch__=z?zi:S,wn.prototype.$mount=function(e,t){return function(e,t,n){var r;return e.$el=t,e.$options.render||(e.$options.render=ve),Yt(e,"beforeMount"),r=function(){e._update(e._render(),n)},new fn(e,r,S,{before:function(){e._isMounted&&!e._isDestroyed&&Yt(e,"beforeUpdate")}},!0),n=!1,null==e.$vnode&&(e._isMounted=!0,Yt(e,"mounted")),e}(this,e=e&&z?Yn(e):void 0,t)},z&&setTimeout(function(){F.devtools&&ne&&ne.emit("init",wn)},0);var po=/\{\{((?:.|\r?\n)+?)\}\}/g,vo=/[-.*+?^${}()|[\]\/\\]/g,ho=g(function(e){var t=e[0].replace(vo,"\\$&"),n=e[1].replace(vo,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});var mo={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=Fr(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Ir(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}};var yo,go={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=Fr(e,"style");n&&(e.staticStyle=JSON.stringify(ai(n)));var r=Ir(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},_o=function(e){return(yo=yo||document.createElement("div")).innerHTML=e,yo.textContent},bo=p("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),$o=p("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),wo=p("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Co=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,xo=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ko="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+P.source+"]*",Ao="((?:"+ko+"\\:)?"+ko+")",Oo=new RegExp("^<"+Ao),So=/^\s*(\/?)>/,To=new RegExp("^<\\/"+Ao+"[^>]*>"),Eo=/^]+>/i,No=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},Io=/&(?:lt|gt|quot|amp|#39);/g,Fo=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Po=p("pre,textarea",!0),Ro=function(e,t){return e&&Po(e)&&"\n"===t[0]};function Ho(e,t){var n=t?Fo:Io;return e.replace(n,function(e){return Mo[e]})}var Bo,Uo,zo,Vo,Ko,Jo,qo,Wo,Zo=/^@|^v-on:/,Go=/^v-|^@|^:/,Xo=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Yo=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Qo=/^\(|\)$/g,ea=/^\[.*\]$/,ta=/:(.*)$/,na=/^:|^\.|^v-bind:/,ra=/\.[^.\]]+(?=[^\]]*$)/g,ia=/^v-slot(:|$)|^#/,oa=/[\r\n]/,aa=/\s+/g,sa=g(_o),ca="_empty_";function ua(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:ma(t),rawAttrsMap:{},parent:n,children:[]}}function la(e,t){Bo=t.warn||Sr,Jo=t.isPreTag||T,qo=t.mustUseProp||T,Wo=t.getTagNamespace||T;t.isReservedTag;zo=Tr(t.modules,"transformNode"),Vo=Tr(t.modules,"preTransformNode"),Ko=Tr(t.modules,"postTransformNode"),Uo=t.delimiters;var n,r,i=[],o=!1!==t.preserveWhitespace,a=t.whitespace,s=!1,c=!1;function u(e){if(l(e),s||e.processed||(e=fa(e,t)),i.length||e===n||n.if&&(e.elseif||e.else)&&da(n,{exp:e.elseif,block:e}),r&&!e.forbidden)if(e.elseif||e.else)a=e,(u=function(e){var t=e.length;for(;t--;){if(1===e[t].type)return e[t];e.pop()}}(r.children))&&u.if&&da(u,{exp:a.elseif,block:a});else{if(e.slotScope){var o=e.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[o]=e}r.children.push(e),e.parent=r}var a,u;e.children=e.children.filter(function(e){return!e.slotScope}),l(e),e.pre&&(s=!1),Jo(e.tag)&&(c=!1);for(var f=0;f]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,Do(l)||"noscript"===l||(n=n.replace(//g,"$1").replace(//g,"$1")),Ro(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,A(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(No.test(e)){var v=e.indexOf("--\x3e");if(v>=0){t.shouldKeepComment&&t.comment(e.substring(4,v),c,c+v+3),C(v+3);continue}}if(jo.test(e)){var h=e.indexOf("]>");if(h>=0){C(h+2);continue}}var m=e.match(Eo);if(m){C(m[0].length);continue}var y=e.match(To);if(y){var g=c;C(y[0].length),A(y[1],g,c);continue}var _=x();if(_){k(_),Ro(_.tagName,e)&&C(1);continue}}var b=void 0,$=void 0,w=void 0;if(d>=0){for($=e.slice(d);!(To.test($)||Oo.test($)||No.test($)||jo.test($)||(w=$.indexOf("<",1))<0);)d+=w,$=e.slice(d);b=e.substring(0,d)}d<0&&(b=e),b&&C(b.length),t.chars&&b&&t.chars(b,c-b.length,c)}if(e===n){t.chars&&t.chars(e);break}}function C(t){c+=t,e=e.substring(t)}function x(){var t=e.match(Oo);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(C(t[0].length);!(n=e.match(So))&&(r=e.match(xo)||e.match(Co));)r.start=c,C(r[0].length),r.end=c,i.attrs.push(r);if(n)return i.unarySlash=n[1],C(n[0].length),i.end=c,i}}function k(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&wo(n)&&A(r),s(n)&&r===n&&A(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}A()}(e,{warn:Bo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,o,a,l,f){var p=r&&r.ns||Wo(e);q&&"svg"===p&&(o=function(e){for(var t=[],n=0;nc&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Ar(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),Mr(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Br(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Br(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Br(t,"$$c")+"}",null,!0)}(e,r,i);else if("input"===o&&"radio"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null";Er(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),Mr(e,"change",Br(t,i),null,!0)}(e,r,i);else if("input"===o||"textarea"===o)!function(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?Wr:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=Br(t,l);c&&(f="if($event.target.composing)return;"+f),Er(e,"value","("+t+")"),Mr(e,u,f,null,!0),(s||a)&&Mr(e,"blur","$forceUpdate()")}(e,r,i);else if(!F.isReservedTag(o))return Hr(e,r,i),!1;return!0},text:function(e,t){t.value&&Er(e,"textContent","_s("+t.value+")",t)},html:function(e,t){t.value&&Er(e,"innerHTML","_s("+t.value+")",t)}},isPreTag:function(e){return"pre"===e},isUnaryTag:bo,mustUseProp:jn,canBeLeftOpenTag:$o,isReservedTag:Wn,getTagNamespace:Zn,staticKeys:function(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}(ba)},xa=g(function(e){return p("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))});function ka(e,t){e&&($a=xa(t.staticKeys||""),wa=t.isReservedTag||T,function e(t){t.static=function(e){if(2===e.type)return!1;if(3===e.type)return!0;return!(!e.pre&&(e.hasBindings||e.if||e.for||d(e.tag)||!wa(e.tag)||function(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}(e)||!Object.keys(e).every($a)))}(t);if(1===t.type){if(!wa(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var n=0,r=t.children.length;n|^function\s*(?:[\w$]+)?\s*\(/,Oa=/\([^)]*?\);*$/,Sa=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Ta={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Ea={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Na=function(e){return"if("+e+")return null;"},ja={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Na("$event.target !== $event.currentTarget"),ctrl:Na("!$event.ctrlKey"),shift:Na("!$event.shiftKey"),alt:Na("!$event.altKey"),meta:Na("!$event.metaKey"),left:Na("'button' in $event && $event.button !== 0"),middle:Na("'button' in $event && $event.button !== 1"),right:Na("'button' in $event && $event.button !== 2")};function Da(e,t){var n=t?"nativeOn:":"on:",r="",i="";for(var o in e){var a=La(e[o]);e[o]&&e[o].dynamic?i+=o+","+a+",":r+='"'+o+'":'+a+","}return r="{"+r.slice(0,-1)+"}",i?n+"_d("+r+",["+i.slice(0,-1)+"])":n+r}function La(e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return La(e)}).join(",")+"]";var t=Sa.test(e.value),n=Aa.test(e.value),r=Sa.test(e.value.replace(Oa,""));if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(ja[s])o+=ja[s],Ta[s]&&a.push(s);else if("exact"===s){var c=e.modifiers;o+=Na(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=function(e){return"if(!$event.type.indexOf('key')&&"+e.map(Ma).join("&&")+")return null;"}(a)),o&&(i+=o),"function($event){"+i+(t?"return "+e.value+"($event)":n?"return ("+e.value+")($event)":r?"return "+e.value:e.value)+"}"}return t||n?e.value:"function($event){"+(r?"return "+e.value:e.value)+"}"}function Ma(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=Ta[e],r=Ea[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var Ia={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:S},Fa=function(e){this.options=e,this.warn=e.warn||Sr,this.transforms=Tr(e.modules,"transformCode"),this.dataGenFns=Tr(e.modules,"genData"),this.directives=A(A({},Ia),e.directives);var t=e.isReservedTag||T;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Pa(e,t){var n=new Fa(t);return{render:"with(this){return "+(e?Ra(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function Ra(e,t){if(e.parent&&(e.pre=e.pre||e.parent.pre),e.staticRoot&&!e.staticProcessed)return Ha(e,t);if(e.once&&!e.onceProcessed)return Ba(e,t);if(e.for&&!e.forProcessed)return za(e,t);if(e.if&&!e.ifProcessed)return Ua(e,t);if("template"!==e.tag||e.slotTarget||t.pre){if("slot"===e.tag)return function(e,t){var n=e.slotName||'"default"',r=qa(e,t),i="_t("+n+(r?","+r:""),o=e.attrs||e.dynamicAttrs?Ga((e.attrs||[]).concat(e.dynamicAttrs||[]).map(function(e){return{name:b(e.name),value:e.value,dynamic:e.dynamic}})):null,a=e.attrsMap["v-bind"];!o&&!a||r||(i+=",null");o&&(i+=","+o);a&&(i+=(o?"":",null")+","+a);return i+")"}(e,t);var n;if(e.component)n=function(e,t,n){var r=t.inlineTemplate?null:qa(t,n,!0);return"_c("+e+","+Va(t,n)+(r?","+r:"")+")"}(e.component,e,t);else{var r;(!e.plain||e.pre&&t.maybeComponent(e))&&(r=Va(e,t));var i=e.inlineTemplate?null:qa(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o>>0}(a):"")+")"}(e,e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=function(e,t){var n=e.children[0];if(n&&1===n.type){var r=Pa(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.dynamicAttrs&&(n="_b("+n+',"'+e.tag+'",'+Ga(e.dynamicAttrs)+")"),e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function Ka(e){return 1===e.type&&("slot"===e.tag||e.children.some(Ka))}function Ja(e,t){var n=e.attrsMap["slot-scope"];if(e.if&&!e.ifProcessed&&!n)return Ua(e,t,Ja,"null");if(e.for&&!e.forProcessed)return za(e,t,Ja);var r=e.slotScope===ca?"":String(e.slotScope),i="function("+r+"){return "+("template"===e.tag?e.if&&n?"("+e.if+")?"+(qa(e,t)||"undefined")+":undefined":qa(e,t)||"undefined":Ra(e,t))+"}",o=r?"":",proxy:true";return"{key:"+(e.slotTarget||'"default"')+",fn:"+i+o+"}"}function qa(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?t.maybeComponent(a)?",1":",0":"";return""+(r||Ra)(a,t)+s}var c=n?function(e,t){for(var n=0,r=0;r':'
',ts.innerHTML.indexOf(" ")>0}var os=!!z&&is(!1),as=!!z&&is(!0),ss=g(function(e){var t=Yn(e);return t&&t.innerHTML}),cs=wn.prototype.$mount;return wn.prototype.$mount=function(e,t){if((e=e&&Yn(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=ss(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));if(r){var i=rs(r,{outputSourceRange:!1,shouldDecodeNewlines:os,shouldDecodeNewlinesForHref:as,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return cs.call(this,e,t)},wn.compile=rs,wn}); \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/page.html b/jpress-template/src/main/webapp/templates/daotian/page.html new file mode 100755 index 0000000000000000000000000000000000000000..d8e611f7732884335fdffc9409580696c104096a --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/page.html @@ -0,0 +1,13 @@ +#include("_layout.html") +#@layout() +#define content() +
+
+

#(page.title ??)

+
#(page.content ??)
+
+
+ +#include("_footer.html") + +#end \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/screenshot.png b/jpress-template/src/main/webapp/templates/daotian/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..6f23b06e5274764bcd0c17c5fa5674715d77ce8d Binary files /dev/null and b/jpress-template/src/main/webapp/templates/daotian/screenshot.png differ diff --git a/jpress-template/src/main/webapp/templates/daotian/setting.html b/jpress-template/src/main/webapp/templates/daotian/setting.html new file mode 100755 index 0000000000000000000000000000000000000000..2d17eb3f6e116355f5bcff257a907a6bfe254806 --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/setting.html @@ -0,0 +1,119 @@ +#@layout() + +#define content() + +
+
+

模板设置 + Template Setting +

+
+ +
+
+
+
+
+

+
+ +
+
+ +
+ + +
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+ + + +
+ +
+
+ +
+ +
+ + + +
+
+ +
+ +
+ + + +
+
+ +
+ +
+ + + +
+
+ +
+ + +
+
+
+
+
+
+#end + +#define script() + + + +#end diff --git a/jpress-template/src/main/webapp/templates/daotian/template.properties b/jpress-template/src/main/webapp/templates/daotian/template.properties new file mode 100755 index 0000000000000000000000000000000000000000..d13d1cbff9fdf57467f30b23ffa6512c6663b7db --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/template.properties @@ -0,0 +1,9 @@ +id=cn.pauli.daotian +title=daotian +description=Daotianlove官网模板 +anthor=pauli +authorWebsite=http://pauli.cn +version=1.0 +versionCode= +updateUrl= +screenshot= \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/daotian/volunteer.html b/jpress-template/src/main/webapp/templates/daotian/volunteer.html new file mode 100644 index 0000000000000000000000000000000000000000..c505850e69dd2b32d31c22af20df94315371a4af --- /dev/null +++ b/jpress-template/src/main/webapp/templates/daotian/volunteer.html @@ -0,0 +1,25 @@ +#include("_layout.html") +#@layout() +#define content() +
+

志愿者排行

+ +
+
+
+ #for(user : page.list ) +
+ #(user.nickname ?? '无登录名') +
#(user.nickname ?? '志愿者')
+
#(user.company ?? user.graduateschool ?? '自由职业')
+ +
+ #end +
+ #include("_footer.html") +#end +#define script() + + + +#end \ No newline at end of file diff --git a/jpress-template/src/main/webapp/templates/lightlog/article.html b/jpress-template/src/main/webapp/templates/lightlog/article.html index ff6fc6f32f00ace68203d36d29bf1e213bd04c28..e387910f8cb8e840a9118f307a8c085d0348f605 100755 --- a/jpress-template/src/main/webapp/templates/lightlog/article.html +++ b/jpress-template/src/main/webapp/templates/lightlog/article.html @@ -145,8 +145,7 @@ #if(comment.parent)
- #(comment.parent.author ??) + #(comment.parent.author ??)
@@ -156,7 +155,7 @@
#(comment.parent.content ??)
- #(comment.author ??)
@@ -180,7 +179,7 @@ #else
- #(comment.author ??)
diff --git a/jpress-web/src/main/java/io/jpress/web/commons/controller/AttachmentController.java b/jpress-web/src/main/java/io/jpress/web/commons/controller/AttachmentController.java index d50032a55fdc2f01c233582a0b1233ee541bcb05..90d4fa7c613957deacf3ba5829f13d6718bcbac0 100644 --- a/jpress-web/src/main/java/io/jpress/web/commons/controller/AttachmentController.java +++ b/jpress-web/src/main/java/io/jpress/web/commons/controller/AttachmentController.java @@ -26,6 +26,7 @@ import io.jpress.commons.utils.AttachmentUtils; import io.jpress.model.Attachment; import io.jpress.service.AttachmentService; import io.jpress.web.base.UserControllerBase; +import org.apache.commons.lang.StringUtils; import java.io.File; @@ -77,16 +78,27 @@ public class AttachmentController extends UserControllerBase { String path = AttachmentUtils.moveFile(uploadFile); AliyunOssUtils.upload(path, AttachmentUtils.file(path)); + String title = getPara("title"); + if (StringUtils.isBlank(title)) { + title = uploadFile.getOriginalFileName(); + } + Attachment attachment = new Attachment(); attachment.setUserId(getLoginedUser().getId()); - attachment.setTitle(uploadFile.getOriginalFileName()); + attachment.setTitle(title); attachment.setPath(path.replace("\\", "/")); attachment.setSuffix(FileUtil.getSuffix(uploadFile.getFileName())); attachment.setMimeType(uploadFile.getContentType()); - service.save(attachment); + String description = getPara("description"); + if (StringUtils.isNotBlank(description)) { + attachment.setDescription(description); + } + + // 上传附件后,返回附件的信息 + attachment.setId((Long)service.save(attachment)); - renderJson(Ret.ok().set("success", true).set("src", attachment.getPath())); + renderJson(Ret.ok().set("success", true).set("attachment", attachment).set("src", attachment.getPath())); } diff --git a/jpress-web/src/main/webapp/WEB-INF/views/admin/_layout/_header.html b/jpress-web/src/main/webapp/WEB-INF/views/admin/_layout/_header.html index 86e6496799f1a080bf354577fb15da657ae68d0c..0e66f1fd3173323bba8acb1576fd197e655343b7 100755 --- a/jpress-web/src/main/webapp/WEB-INF/views/admin/_layout/_header.html +++ b/jpress-web/src/main/webapp/WEB-INF/views/admin/_layout/_header.html @@ -1,8 +1,8 @@
-