Commit e6ff7899 authored by Liang Ding's avatar Liang Ding

解决冲突

parent c79fbf5d
......@@ -14,6 +14,8 @@
<li><a href="https://github.com/b3log/b3log-solo/issues/23">23 偏好设定关键参数校验</a></li>
<li><a href="https://github.com/b3log/b3log-solo/issues/27">27 自定义导航后台链接问题</a></li>
<li><a href="https://github.com/b3log/b3log-solo/issues/32">32 升级 FreeMarker 到 2.3.19</a></li>
<li><a href="https://github.com/b3log/b3log-solo/issues/34">34 升级 GAE SDK 到 1.7.0</a></li>
<li><a href="https://github.com/b3log/b3log-solo/issues/36">36 加入博客关键信息获取接口</a></li>
</ul>
<h2>Release 0.4.5 - Jun 1, 2012</h2>
<ul>
......
......@@ -102,7 +102,6 @@ public final class TagQueryService {
}
/**
>>>>>>> origin/0.4.6
* Gets all tags.
*
* @return for example,
......
......@@ -131,7 +131,7 @@ public final class Articles {
return true;
}
/*
/**
* Gets time of the recent updated article.
*
* @return time of the recent updated article, returns {@code 0} if not found
......
<<<<<<< HEAD
<<<<<<< HEAD
<!DOCTYPE html>
<html>
<head>
<title>B3log Solo Change Logs</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<h2>Release 0.4.5 - Jun 1, 2012</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=302">302 文章加密</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=392">392 支持应用路径部署</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=393">393 支持多编辑器</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=394">394 支持 Markdown</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=395">395 发布包中加入项目说明</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=396">396 新皮肤——ease</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=399">399 i-nove 皮肤问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=400">400 GAE 版 sitemap.xml 问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=401">401 升级 GAE SDK 1.6.5</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=402">402 本地版用户退出问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=404">404 TinyMCE 升级到 3.5</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=405">405 添加 KindEditor </a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=406">406 Fancybox 鼠标滚轮事件</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=407">407 表情修改</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=408">408 在线人数计数问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=409">409 允许用户添加 ftl 模版</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=410">410 模版缓存问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=411">411 错误页面改造</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=412">412 评论默认头像变更</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=413">413 链接上添加 rel</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=416">416 项目迁到 GitHub</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=417">417 移除 sleepycat 版本</a></li>
</ul>
<h2>Release 0.4.1 - Apr 25, 2012</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=303">303 开启/关闭允许评论</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=333">333 优化签名档存储</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=338">338 具体化版本号</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=351">351 导航可以选择为内容页面或链接</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=365">365 Admin Action 改造</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=367">367 移除文件管理功能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=370">370 禁用异步 Sessions 持久化</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=373">373 Feed 可设置成全文输出/摘要输出</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=374">374 升级 GAE SDK 1.6.4.1</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=378">378 本地版(MySQL)发布</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=381">381 数据备份</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=383">383 topbar 展现方式调整</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=387">387 上一篇,下一篇的问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=388">388 jQuery Fancybox 插件</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=389">389 编辑器加入“字体”、“字号”配置</a></li>
</ul>
<h2>Release 0.4.0 - Feb 19, 2012</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=281">281 写文章标签处支持鼠标点击选择</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=282">282 评论回复邮件提醒模版</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=287">287 去除 Jabsorb</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=293">293 Not Found 问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=296">296 标签-文章 Atom 异常</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=297">297 文件管理分页问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=298">298 自定义页面/链接排序问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=299">299 增加友情链接描述</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=301">301 移除同步腾讯微博</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=304">304 删除自定义页面,博客总评论数未减</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=306">306 MetaWeblog API 支持</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=307">307 移动设备前台皮肤</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=308">308 优化配额使用</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=309">309 加入超配额时的默认页面</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=313">313 升级 GAE SDK 1.6.2.1</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=314">314 评论跨站安全问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=315">315 jQuery upgrade</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=316">316 改进代码高亮 JS 加载</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=317">317 JS、CSS 版本号</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=319">319 Atom/RSS 请求方法加入 HEAD 方法</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=320">320 RSS 输出问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=322">322 从本地加载 jQuery</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=323">323 移除文件上传功能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=325">325 使用本地缓存替换 Memcache</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=330">330 0.4.0 beta1 统计丢失问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=332">332 HTML 编辑器支持 style 标签</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=334">334 文章操作防重复提交</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=339">339 /upgrade/checker.do 返回渲染</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=340">340 更改文章/页面链接后,评论的链接不更新</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=341">341 WLW 配置出错</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=342">342 在线访客计数</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=343">343 皮肤乱码问题【Tree house】</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=344">344 移除皮肤 Zoltan</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=347">347 优化初始化</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=348">348 修改数据索引</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=349">349 后台文章列表分页问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=350">350 增加对自定义链接的空格替换</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=353">353 编辑器支持样式</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=354">354 支持 SyntaxHighlighter 和 google-code-prettify</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=355">355 不统计爬虫带来的访问量</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=356">356 取消摘要必填</a></li>
</ul>
<h2>Release 0.3.5 - Oct 22, 2011</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=231">231 社区同步过来的评论没有转义</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=270">270 文章列表显示方式</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=272">272 标签墙改造</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=273">273 登录状态检查</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=275">275 登录 Cookie 失效过快</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=277">277 目录不能被访问</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=278">278 存档页面报错</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=279">279 优化实例启动速度</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=284">284 升级 GAE SDK 1.5.5</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=285">285 签名档默认第一个</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=286">286 站内相关文章优化</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=288">288 调整数据索引</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=289">289 修复移除无用标签报错</a></li>
</ul>
<h2>Release 0.3.1 - Oct 1, 2011</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=226">226 皮肤语言配置</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=237">237 改进 admin-cache 插件</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=243">243 验证码不能刷新</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=246">246 后台 js 合并压缩</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=250">250 友情链接改进</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=251">251 已压缩的 CSS、JS 文件编码问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=253">253 点击任何一个菜单都会弹出一错误提示窗口</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=254">254 CSS编码错误</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=255">255 改进评论数据结构</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=257">257 部署后自动升级</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=258">258 新皮肤——NeoEase</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=259">259 支持 RSS 2.0</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=260">260 升级到 GAE 1.5.4</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=261">261 重构 Web 请求分发,使用 Latke 新的分发器</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=262">262 编辑器插入 html 代码不可进行高亮</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=264">264 文章中的代码总是出现竖向滚动条</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=266">266 编辑器自动替换 &lt;a&gt; 问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=267">267 sitemap 输出</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=268">268 用户验证改造</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=269">269 About 页面</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=271">271 标签分隔符提示</a></li>
</ul>
<h2>Release 0.3.0 - Aug 20, 2011</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=9">9 更换标签墙</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=42">42 对标签提示进一步完善</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=73">73 B3log 新闻获取插件</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=111">111 插件机制</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=120">120 优化链接 URL</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=134">134 缓存页面管理</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=149">149 表情图片合并</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=187">187 “主题”->“皮肤”</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=188">188 Elegant-Box-C友情链接BUG</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=189">189 ErrorAction(/error.do)加入模版数据</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=190">190 改进“博客地址”配置</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=194">194 初始化失败</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=197">197 b3log.org 域名发放</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=198">198 TinyMCE HTML Editor不能插入 iframe</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=199">199 标题使用 HTML 代码问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=201">201 Community 皮肤正文中链接和内容区别不明显</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=203">203 升级到 FreeMarker for GAE 2.3.18</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=204">204 升级到 GAE 1.5.2</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=205">205 皮肤文件结构的重新设计</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=206">206 单独的评论管理功能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=207">207 后台改版</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=208">208 页面缓存启用/禁用</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=209">209 升级版本后找不到皮肤</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=211">211 初始化页面(/init.do)判断 IE6</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=216">216 新皮肤 for 0.3.0</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=219">219 优化前台性能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=220">220 存档时区问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=221">221 0.2.6-0.3.0 升级程序</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=222">222 项目加入 Change log</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=223">223 修复不能在 maven3.0+ 下使用的 bug</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=224">224 改进错误页面</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=225">225 移除博客同步功能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=227">227 升级 TinyMCE 到 3.4.3.2</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=228">228 评论/回复折行</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=229">229 移除情侣皮肤(valentine,向左走向右走)</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=230">230 最新评论转义问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=232">232 通过链接(Permalink)访问草稿</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=234">234 代码渲染</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=236">236 标签-文章计数修复程序</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=240">240 Kill IE功能异常</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=247">247 新一篇问题</a></li>
</ul>
<h2>Release 0.2.5 - Apr 30, 2011</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=153">153 增加“发布到社区”选项</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=154">154 TinyMCE 使用绝对地址</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=155">155 添加一个页面后,就开始404了。连主页都404</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=157">157 Andrea 皮肤图片压缩</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=158">158 评论提交过程中禁用提交按钮</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=160">160 删除已发表文章的非管理员用户后浏览报错</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=163">163 移除不必要的过滤器,优化性能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=165">165 加入 Symphony 到 Solo 的评论同步</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=166">166 从中文切换英文后后台 Preference 报错</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=167">167 文章随机值生成报错</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=168">168 恢复签名档为默认值</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=170">170 屏蔽载入站外相关文章错误弹出</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=171">171 更新文章事务问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=179">179 robots.txt 问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=180">180 新皮肤——Elegant-Box-C</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=181">181 升级到 GAE SDK 1.4.3</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=183">183 先存草稿再发布不能同步微博、社区</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=184">184 删除文章存档数反而增加</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=185">185 “博客同步”管理界面微调</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=186">186 新皮肤——owmx-3.0</a></li>
</ul>
<h2>Release 0.2.5 - Feb 13, 2011</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=33">33 加入文章发布/取消发布/保存功能(草稿夹)</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=43">43 修改评论中的 URL 填写方式</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=60">60 评论时信息的自动填充</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=89">89 新皮肤</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=90">90 新皮肤</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=91">91 页面管理中的顺序</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=92">92 皮肤 favourite 对 IE 7,8 的支持 </a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=93">93 文章访问次数统计失效</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=94">94 加入多人写作</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=95">95 Atom 不使用第三方库</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=96">96 移除“偏好设定”中管理员邮件的配置</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=97">97 删除通过 Google Profiles 获取用户信息</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=98">98 改进 403 错误页面</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=99">99 上传空文件</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=100">100 链接、页面排序</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=101">101 改进初始化</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=103">103 整理界面中已定义的元素 ID</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=105">105 加入对“有更新”提示的配置</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=107">107 新皮肤</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=108">108 IE 8 下 Feed 不能显示</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=110">110 Feed Entry 中加入文章分类、作者</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=112">112 评论提交改为 jQuery AJAX</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=113">113 判断是否登录使用 jQuery AJAX</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=114">114 更友好的评论评论邮件提醒</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=116">116 初始化时发布一篇默认文章</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=118">118 优化缓存</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=119">119 评论输入框</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=121">121 占无评论</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=122">122 签名档</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=126">126 调整“经典淡蓝”皮肤</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=128">128 对后台的皮肤选择添加验证,避免出现异常和空白页</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=129">129 取消默认链接</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=131">131 存档边界时间的判断</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=132">132 加入时区配置</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=133">133 访问统计问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=135">135 改进获取随机文章性能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=137">137 发布/更新文章时 Ping Google Blog Search Engine</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=138">138 移除 Guice、Guice Servlet</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=139">139 后台报错</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=141">141 将文章浏览计数修改为异步方式</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=142">142 博客地址配置更新检查</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=144">144 删除所有数据</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=145">145 文章发布同步到腾讯微博</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=146">146 TinyMCE 使用相对地址</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=147">147 换肤问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=148">148 移除 AddThis</a></li>
</ul>
<h2>Release 0.2.1 - Dec 1, 2010</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=46">46 偏好设定与统计丢失</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=47">47 升级 0.2.0 后皮肤首次显示错乱</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=48">48 完善初始化界面</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=49">49 按标签查看文章时排序有错</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=50">50 前台统计显示使用模板</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=51">51 前台最新评论使用模板</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=52">52 向 Rhythm 发送发文数据时加入版本</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=53">53 评论加入表情</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=54">54 TinyMCE 加入中文</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=56">56 加入文章自定义链接</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=57">57 加入页面自定义链接</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=58">58 评论偶尔出现重复提交</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=61">61 修改“上一篇”、“下一篇”链接为结构化链接</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=62">62 后台查看评论应该附带邮件</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=63">63 标签链接</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=64">64 查看存档文章列表时排序有错 </a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=65">65 优化更新数据性能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=66">66 整理无用的 jar,减小 Solo 体积</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=67">67 切换皮肤后按标签访问文章页面错乱</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=68">68 移除所有页面缓存时异常</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=72">72 文章同步更新失败</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=74">74 后台查看页面评论应该附带邮件</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=75">75 初始化功能需要加入“确定”对话框</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=76">76 上传文件不应刷新整个页面</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=77">77 IE 7 下:前台头部登录与 logo 对不齐</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=78">78 FF 下 多媒体无法显示</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=79">79 新皮肤</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=80">80 侧边栏文字内容太长则数字统计看不到</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=81">81 侧边栏“访问最多的文章”在“偏好设定”中不能进行自定义</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=82">82 修改“标签墙”链接为 /tags.html</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=83">83 meta 修改</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=84">84 修改自定义页面默认链接为 /pages/${oId}.html</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=86">86 提交评论/回复后只刷新局部</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=87">87 IE 7 下后台展现 bug</a></li>
</ul>
<h2>Release 0.2.0 - Nov 12, 2010</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=4">4 标签管理</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=5">5 缓存状态查看</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=6">6 自定义页面关键字、描述</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=7">7 皮肤 iNove</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=10">10 文章内容样式问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=11">11 TinyMCE 代码高亮</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=12">12 前台添加“回到顶部”</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=13">13 500 Server Error</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=14">14 站外相关阅读</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=15">15 取消从 0.1.0 到 0.1.1 自动升级后台任务</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=16">16 有时博客配置会被重新初始化</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=17">17 自定义页面评论</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=18">18 分页加载顺序</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=19">19 文章页面缓存重复问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=20">20 不能清除本页缓存</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=21">21 文章页面看不到“回到顶部箭头”</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=22">22 文章列表标签列字体太大</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=23">23 页面管理添加链接</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=24">24 同步 Buzz 失败时文章发布失败</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=25">25 自定义页面内容样式有问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=26">26 刷新文章页面,浏览数加2</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=28">28 链接管理 URL 列应该可以点击</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=29">29 弹出查看评论 div 后下面的界面应该不可操作</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=30">30 每次弹出评论 div 时数据应该重新获取</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=31">31 文件管理</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=32">32 评论预览只能显示一次?</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=34">34 NPE</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=35">35 IE 8 下 侧边栏长度过长会向下溢出</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=36">36 博客同步操作异常反馈应该更具体</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=37">37 加强博客地址配置的容错性</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=38">38 考虑关闭 Google Buzz 同步功能</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=39">39 后台查看评论显示问题</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=40">40 回复预览</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=41">41 “经典淡蓝”皮肤公告栏内容自动换行</a></li>
</ul>
<h2>Release 0.1.1 - Oct 26, 2010</h2>
<ul>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=1">1 前台文章列表中的文章统计数据与文章细节页面统计数据不一致</a></li>
<li><a href="http://code.google.com/p/b3log-solo/issues/detail?id=2">2 Tree-House 皮肤评论预览有问题</a></li>
</ul>
</body>
</html>
=======
=======
>>>>>>> origin/0.4.6
<!DOCTYPE html>
<html>
<head>
......@@ -356,6 +14,8 @@
<li><a href="https://github.com/b3log/b3log-solo/issues/23">23 偏好设定关键参数校验</a></li>
<li><a href="https://github.com/b3log/b3log-solo/issues/27">27 自定义导航后台链接问题</a></li>
<li><a href="https://github.com/b3log/b3log-solo/issues/32">32 升级 FreeMarker 到 2.3.19</a></li>
<li><a href="https://github.com/b3log/b3log-solo/issues/34">34 升级 GAE SDK 到 1.7.0</a></li>
<li><a href="https://github.com/b3log/b3log-solo/issues/36">36 加入博客关键信息获取接口</a></li>
</ul>
<h2>Release 0.4.5 - Jun 1, 2012</h2>
<ul>
......@@ -687,7 +347,3 @@
</ul>
</body>
</html>
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
<<<<<<< HEAD
<<<<<<< HEAD
/**
* admin style
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @version 1.0.3.7, May 23, 2012
*/
/* start resset */
body, input, textarea {
font-family: sans-serif,\5fae\8f6f\96c5\9ed1;
}
html, body {
height: 100%;
min-width: 1024px;
background-color: #FAFAFA;
}
a:link {
color: #21759B;
}
a:visited {
color: #551A8B;
}
a:active {
color: #D54121;
}
a:hover {
color: #D54121;
}
button.selected {
background: url("../images/bowknot/completed.png") no-repeat scroll right bottom transparent;
color: #D54121;
}
/* end reset */
/* start ico */
.ico-arrow-down, .ico-arrow-up {
background: url("../images/arrows.png") repeat scroll 0 4px transparent;
float: right;
height: 20px;
margin: 2px 3px 0 0;
width: 18px;
}
.ico-arrow-up {
background-position: 0 -30px;
}
.aboutIcon {
background-position: -16px -48px;
}
/* end ico */
/* start frame */
#allPanel {
height: auto;
min-height: 100%;
position: relative;
}
#tabsPanel {
margin: 30px 0 0 162px;
padding: 0 12px;
}
#tabsPanel>div {
padding-bottom: 36px;
}
#tipMsg, #loadMsg {
background-color: #E5E7EB;
border-radius: 3px;
font-weight: bold;
left: 48%;
margin: 0 auto;
overflow: hidden;
padding: 2px 0;
position: fixed;
text-align: center;
top: 3px;
z-index: 2;
}
#tipMsg {
top: 33px;
}
.footer {
bottom: 12px;
position: absolute;
text-align: center;
width: 100%;
}
/* end frame */
/* start top-nav */
#top {
background-image: linear-gradient(top,#666666,#7F7F7F);
background-image: -moz-linear-gradient(top,#666666,#7F7F7F);
background-image: -ms-linear-gradient(top,#666666,#7F7F7F);
background-image: -o-linear-gradient(top,#666666,#7F7F7F);
background-image: -webkit-gradient(linear,left top,left bottom,from(#666666),to(#7F7F7F));
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#666666', endColorstr='#7F7F7F');
}
#top a, #top span span {
float: left;
line-height: 18px;
margin: 6px 0;
padding: 0 6px;
text-decoration: none;
text-shadow: 0 -1px 0 #FFFFFF;
font-weight: normal;
border-right: 1px solid #686868;
color: #CCCCCC;
text-shadow: 0 -1px 0 #555555;
}
#top>a {
color: #FFFFFF;
}
#top a:hover, #top a.hover {
border-radius: 0 13px 13px 0;
margin: 0px;
line-height: 30px;
background-color: #4C4C4C;
border-left-color: #707070;
}
/* end top-nav */
/* start first tab */
#tabs {
background-color: #ECECEC;
border-radius: 0 5px 5px 0;
border-right: 1px solid #CCC;
border-top: 1px solid #DDD;
bottom: 0;
box-shadow: 6px 0 6px #ECECEC;
min-height: 468px;
padding: 15px 0;
position: absolute;
top: 58px;
width: 145px;
}
#tabs ul {
list-style: none;
}
#tabs li {
margin-left: 0px;
}
#tabs a, #tabs>ul>li>div {
color: #21759B;
display: block;
text-decoration: none;
cursor: pointer;
letter-spacing: 1px;
}
#tabs a:hover, #tabs>ul>li>div:hover {
color: #D54121;
}
#tabs>ul>li>div {
border-bottom: 1px solid #DFDFDF;
border-top: 1px solid #F9F9F9;
font-weight: bold;
padding-left: 12px;
line-height: 30px;
height: 30px;
}
#tabs>ul>li>div>a.tab-current{
background-color: #777777;
border-bottom: 1px solid #6D6D6D;
border-top: 1px solid #808080;
color: #FFFFFF;
margin-left: -12px;
padding-left: 12px;
text-shadow: 0 -1px 0 #333333;
}
#tabs li li a {
background-color: #FFFFFF;
padding-left: 36px;
line-height: 28px;
height: 28px;
}
#tabs .tab-current {
background-color: #EAF2FA;
color: #333333;
font-weight: bold;
}
#tabs li li a:hover {
background-color: #EAF2FA;
color: #333333;
}
#tabs .commentIcon, #tabs .postIcon, #tabs .preferenceIcon, #tabs .usersIcon,
#tabs .aboutIcon {
margin: 6px 9px 0 0;
}
/* end first tabs */
/* start sub tabs */
.sub-tabs {
height: 30px;
}
.sub-tabs ul {
float: right;
list-style: none outside none;
margin-right: 24px;
}
.sub-tabs li {
float: left;
}
.sub-tabs li a {
background-color: #ECECEC;
border: 1px solid #DFDFDF;
border-bottom: 0px;
border-radius: 5px 5px 0 0;
color: #333333;
display: block;
line-height: 29px;
padding: 0 12px;
text-decoration: none;
}
.sub-tabs .tab-current, .sub-tabs .tab-current:hover {
background-color: #FFFFFF;
font-weight: bold;
line-height: 30px;
}
.sub-tabs a:hover {
background-color: #F5F5F5;
}
.sub-tabs-main {
background-color: #FFFFFF;
border: 1px solid #DFDFDF;
padding: 12px;
border-radius: 6px;
}
/* end preference tabs*/
/* start form */
.form>div {
margin: 12px 0;
}
.form>div label {
font-weight: bold;
line-height: 28px;
margin-right: 12px;
}
/* end form */
/* start module */
.module-panel {
border: 1px solid #DFDFDF;
border-radius: 3px 3px 3px 3px;
box-shadow: 0 1px 0 #FFFFFF inset;
background-color: #F5F5F5;
margin-bottom: 36px;
min-height: 160px;
}
.module-header {
background-color: #f1f1f1;
background-image: linear-gradient(top,#f9f9f9,#ececec);
background-image: -moz-linear-gradient(top,#f9f9f9,#ececec);
background-image: -ms-linear-gradient(top,#f9f9f9,#ececec);
background-image: -o-linear-gradient(top,#f9f9f9,#ececec);
background-image: -webkit-gradient(linear,left top,left bottom,from(#f9f9f9),to(#ececec));
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#ececec');
border-bottom-color: #DFDFDF;
box-shadow: 0 1px 0 #FFFFFF;
text-shadow: 0 1px 0 #FFFFFF;
padding: 5px 10px;
}
.module-header h2 {
color: #464646;
font-size: 16px;
}
.module-header a {
text-decoration: none;
}
/* end module */
/* start comments */
.comment-title {
background-color: #ECECEC;
border-bottom: 1px solid #DFDFDF;
border-top: 1px solid #F9F9F9;
padding: 3px 6px 3px 12px;
}
#comments {
height: 462px;
overflow: auto;
}
/* end comments */
/* start article */
.markdown-preivew {
background-image: -moz-linear-gradient(top,#FFFFFF,#F3F3F3);
background-image: -ms-linear-gradient(top,#FFFFFF,#F3F3F3);
background-image: -o-linear-gradient(top,#FFFFFF,#F3F3F3);
background-image: -webkit-gradient(linear,left top,left bottom,from(#FFFFFF),to(#F3F3F3));
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFF', endColorstr='#F3F3F3');
border-color: #C0C0C0 #D9D9D9 #D9D9D9;
border-style: solid;
border-width: 1px;
float: left;
height: 500px;
margin-left: 20px;
overflow: auto;
width: 47%;
word-wrap: break-word;
}
.markdown-help.ico-help, .markdown-help.ico-close {
background-image: url("../images/icon.png");
background-position: -16px -47px;
cursor: pointer;
float: right;
height: 17px;
width: 17px;
}
.markdown-help.ico-close {
height: 16px;
background-position: -48px -16px;
}
.markdown-help-main, .markdown-preview-main {
color: #21759B;
padding: 0 12px
}
.markdown-help-main dt {
font-size: 14px;
font-weight: bold;
margin: 12px 0 6px 0;
}
.markdown-help-main dd {
margin-left: 12px;
}
button#submitArticle {
background: none repeat scroll 0 0 #D54121;
box-shadow: 0 0 0 1px #FFFFFF inset, 0 1px 1px rgba(0, 0, 0, 0.1);
text-shadow: 0 1px rgba(0, 0, 0, 0.1);
color: #FFF;
}
/* end article */
/* start preference */
#skinsPanel {
min-width: 328px;
width: 99%;
}
.skinPreview {
cursor: pointer;
height: 160px;
margin: 6px;
width: 280px;
}
.skinItem {
background-color: #FAFAFA;
border-radius: 3px;
box-shadow: 1px 1px 3px #333333;
line-height: 16px;
margin: 24px 12px;
padding: 5px;
text-align: center;
}
#skinMain .skinItem.selected {
background-color: #D54121;
}
.skinItem:hover {
background-color: #EEE;
}
.f-blue, .error-msg {
color: #3366CC;
}
.signs button {
margin: 0 12px;
}
/* end preference */
/* start common list */
.small-head {
float: left;
height: 35px;
margin: 3px 9px 0 3px;
width: 35px;
}
#commentTable .table-main td {
vertical-align: top;
}
/* end common list */
/* start about */
.about-logo {
float: left;
margin: 62px 36px 62px 24px;
}
.about-margin {
font-size: 20px;
margin: 20px 0;
}
.ico-alipay-me {
background-image: url("../images/alipay-me.png");
font-size: 20px;
height: 24px;
margin: 20px 0;
width: 126px;
}
/* end about */
/*
* jQuly plugin: bowknot style
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @version 1.0.0.7, Oct 29, 2011
*/
.completed-input {
margin: 2px 12px 0 0;
}
.completed-panel {
background-color: #ECECEC;
border: 1px solid #CCCCCC;
color: #0000CC;
display: none;
overflow: auto;
padding: 2px;
position: absolute;
z-index: 10;
}
.completed-panel a {
display: block;
text-decoration: none;
}
.completed-panel a.selected {
background-color: #FFFFFF;
color: #D54121;
}
.completed-ck {
margin-top: 9px;
}
.completed-ck span {
background: url(../images/icon.png) repeat center bottom;
border: 1px solid;
border-color: #CCC #BBBBBB #A0A0A0;
border-radius: 4px;
color: #21759B;
cursor: pointer;
float: left;
height: 28px;
line-height: 26px;
margin: 3px 6px;
padding: 0 6px;
vertical-align: top;
}
.completed-ck span:hover {
border-color: #BBB;
}
.completed-ck span.selected {
color: #D54121;
background: url(../images/bowknot/completed.png) no-repeat right bottom;
}
.dialog-background {
background-color: #000000;
display: none;
filter: alpha(opacity=30);
height: 100%;
left: 0;
opacity: .3;
position: absolute;
top: 0;
width: 100%;
z-index: 90;
}
.dialog-panel {
display: none;
moz-user-select: none;
position: absolute;
z-index: 100;
}
.dialog-title {
color: #FFFFFF;
float: left;
font-size: 12px;
line-height: 27px;
margin-left: 3px;
}
.dialog-header-bg {
background: url("../images/icon.png") repeat scroll center bottom #F1F1F1;
border-color: #C0C0C0 #D9D9D9 #D9D9D9;
border-radius: 6px 6px 0 0;
border-style: solid;
border-width: 1px 1px 0;
cursor: move;
height: 34px;
}
.dialog-header-middle {
float: left;
}
.dialog-close-icon {
background: url("../images/bowknot/dialog-close.png") no-repeat scroll 0 0 transparent;
cursor: pointer;
float: right;
height: 18px;
margin-top: 6px;
padding: 3px;
width: 22px;
}
.dialog-close-icon:hover {
background-image: url("../images/bowknot/dialog-close-hover.png");
}
.dialog-main {
background-color: #FFFFFF;
border: 2px solid #666666;
border-color: #C0C0C0 #D9D9D9 #D9D9D9;
border-top-width: 0;
padding: 12px;
}
.paginate-paginate div, .paginate-paginate a, .paginate-pageCount{
float: left;
height: 20px;
line-height: 20px;
margin: 0 5px;
text-decoration: none;
}
.pagination-pages {
background: url(../images/icon.png) repeat center bottom;
border: 1px solid;
border-color: #CCC #BBBBBB #A0A0A0;
border-radius: 4px;
padding: 0 6px;
cursor: pointer;
float: left;
height: 20px;
line-height: 20px;
margin: 0 5px;
}
.pagination-current-page {
cursor: auto;
font-weight: bold;
border-color: #BBB;
}
.paginate-inputPage {
height: 14px;
width: 24px;
}
.table-main {
margin: 0;
padding: 0;
position: relative;
}
.table-main table {
word-break: break-all;
word-wrap: break-word;
}
.table-header {
border: 1px solid #D0D0D0;
border-bottom: 0px;
border-radius: 6px 6px 0 0;
}
.table-header th {
height: 34px;
line-height: 34px;
text-align: left;
text-indent: 6px;
font-size: 14px;
font-weight: normal;
background: url("../images/icon.png") repeat scroll center bottom #F1F1F1;
}
.table-main td {
border-bottom: 1px solid #D0D0D0;
color: #333;
padding: 3px 0;
}
.table-lineHover .table-hasExpend td {
border-bottom: 0px;
}
.table-heiglight td, .table-lineHover td {
background-color: #F3F3F3;
border-right-color: #F3F3F3;
}
.table-expendRow td {
padding: 0 0 5px 36px;
}
.table-expendRow td span {
margin-left: 60px;
}
.table-expendRow td a {
background-color: #999;
border-radius: 3px;
color: #FFF;
font-size: 12px;
margin-right: 5px;
padding: 1px 6px;
text-decoration: none;
}
.table-expendRow td a:hover {
background-color: #BBB;
}
.table-center {
margin: 0 auto;
}
.table-upIcon,.table-downIcon {
background-image: url("../images/icon.png");
cursor: pointer;
float: left;
height: 16px;
width: 16px;
background-position: -79px -32px;
}
.table-upIcon {
background-position: -64px -32px;
margin-right: 6px;
}
.table-tag {
color: #D54121;
font-size: 12px;
font-style: italic;
margin-left: 10px;
}
.tip-panel {
background-color: #FFF;
box-shadow: 0 3px 10px #8B8B8B;
display: none;
max-height: 500px;
max-width: 500px;
overflow: hidden;
padding: 3px;
position: absolute;
z-index: 1;
}
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -1333,7 +673,3 @@ button#submitArticle {
position: absolute;
z-index: 1;
}
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
<<<<<<< HEAD
<<<<<<< HEAD
/**
* base style
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @version 1.0.2.1, Mar 28, 2012
*/
html, body, div, ul, li, h1, h2, h3, h4, h5, h6, p, dd, dl, ol {
margin: 0;
padding: 0;
}
body {
background-color: #FFF;
color: #000;
font-family: Helvetica,Arial,sans-serif,\5fae\8f6f\96c5\9ed1;
font-size: small;
}
img {
border: medium none;
margin: 0;
padding: 0;
vertical-align: middle;
}
h1 {
font-size: 160%;
}
h2 {
font-size: 140%;
}
h3 {
font-size: 120%;
}
h4 {
font-size: 110%;
}
textarea {
overflow: auto;
}
li {
margin-left: 12px;
}
button, .button {
background: url(../images/icon.png) repeat center bottom;
border: 1px solid;
border-color: #CCC #BBBBBB #A0A0A0;
border-radius: 4px;
height: 28px;
margin: 0;
padding: 0 6px;
vertical-align: top;
}
button:hover,.button:hover {
border-color: #BBB;
}
.padding12 {
padding: 12px;
}
.paddingBottom12 {
padding-bottom: 12px !important;
}
.paddingTop12 {
padding-top: 12px !important;
}
.margin12 {
margin: 12px;
}
.marginTop12 {
margin-top: 12px !important;
}
.marginBottom12 {
margin-bottom: 12px !important;
}
.marginLeft12 {
margin-left: 12px !important;;
}
.marginLeft6 {
margin-left: 6px !important;;
}
.marginRight12 {
margin-right: 12px !important;;
}
.f-bold {
font-weight: bold !important;
}
.nowrap {
white-space: nowrap;
}
.left {
float: left;
}
.right {
float: right;
}
.clear {
background-color: transparent;
border: 0;
clear: both;
display: block;
font-size: 0;
height: 0;
line-height: 0;
overflow: hidden;
}
.none {
display: none;
}
.pointer {
cursor: pointer;
}
.no-underline {
text-decoration: none !important;
}
.red {
color: red;
}
.contentBody {
margin-bottom: 12px;
padding: 3px 12px;
}
/* start form */
.form th {
text-align: right;
white-space: nowrap;
}
.form input[type='text'], .form input[type='password'], .form textarea {
border-color: #C0C0C0 #D9D9D9 #D9D9D9;
border-right: 1px solid #D9D9D9;
border-style: solid;
border-width: 1px;
font-family: Helvetica,Arial,sans-serif;
font-size: 12px;
outline: medium none;
width: 99%;
padding: 0 3px;
}
.form input {
height: 24px;
}
.form input[type='checkbox'] {
border: 0px;
vertical-align: middle;
}
.form input.normalInput {
width: auto;
}
.form input[type='checkbox']:focus {
border: 0px;
}
.form input:focus, .form textarea:focus {
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) inset;
}
.form textarea {
padding: 3px;
overflow: auto;
resize: vertical;
}
/* end form */
.logo {
padding: 0 5px;
text-decoration: none;
text-shadow: 0 0 1px #EEEEEE;
}
/* start icon */
.putTopIcon,.notPutTopIcon,.deleteIcon,.updateIcon,.commentIcon,
.homeIcon,.adminIcon,.loginIcon,.logoutIcon,.calendarIcon,.browserIcon,
.postIcon,.articlesIcon,.draftsIcon,.usersIcon,.linkIcon,
.preferenceIcon, .pageIcon, .trueIcon,.falseIcon,
.fileIcon, .othersIcon, .goTopIcon, .goBottomIcon, .cacheIcon, .aboutIcon {
background-image: url("../images/icon.png");
cursor: pointer;
height: 16px;
width: 16px;
}
.adminIcon,.loginIcon,.logoutIcon,.homeIcon {
margin-top: 3px;
}
.pageIcon {
background-position: -144px 0px;
}
.postIcon {
background-position: -16px 0;
}
.linkIcon {
background-position: -32px 0;
}
.preferenceIcon {
background-position: -48px 0;
}
.articlesIcon {
background-position: -64px 0;
}
.trueIcon {
background-position: -80px 0;
cursor: auto;
}
.falseIcon {
background-position: -96px 0;
cursor: auto;
}
.fileIcon {
background-position: -112px 0;
}
.deleteIcon {
background-position: 0 -16px;
}
.updateIcon {
background-position: -16px -16px;
}
.commentIcon {
background-position: -32px -16px;
}
.homeIcon {
background-position: -64px -16px;
}
.adminIcon {
background-position: -80px -16px;
}
.logoutIcon {
background-position: -96px -16px;
}
.loginIcon {
background-position: -112px -16px;
}
.browserIcon {
background-position: -128px -16px;
}
.calendarIcon {
background-position: -144px -16px;
}
.putTopIcon {
background-position: -16px -32px;
float: left;
}
.notPutTopIcon {
background-position: -32px -32px;
float: left;
}
.othersIcon {
background-position: -48px -32px;
}
.cacheIcon {
background-position: -96px -32px;
}
.draftsIcon {
background-position: -96px -32px;
}
.usersIcon {
background-position: -112px -32px;
}
.goTopIcon {
background-position: -64px -32px;
position: fixed;
right: 20px;
top: 45%;
}
.goBottomIcon {
background-position: -80px -32px;
bottom: 40%;
position: fixed;
right: 20px;
}
.article-body {
overflow: hidden;
line-height: 145%;
word-wrap: break-word;
}
.article-body blockquote {
border: 1px dotted #98A47F;
font-style: italic;
margin: 12px;
padding: 12px;
}
.article-body h1 {
font-size: 2em;
margin: .67em 0;
}
.article-body h2 {
font-size: 1.5em;
margin: .75em 0;
}
.article-body h3 {
font-size: 1.17em;
margin: .83em 0;
}
.article-body h4, .article-body p, .article-body blockquote,
.article-body ul, .article-body fieldset, .article-body form, .article-body ol,
.article-body dl, .article-body dir, .article-body menu {
margin: 1.12em 0;
}
.article-body h5 {
font-size: .83em;
margin: 1.5em 0;
}
.article-body h6 {
font-size: .75em;
margin: 1.67em 0;
}
.article-body blockquote {
margin-left: 40px;
margin-right: 40px;
}
.article-body ol, .article-body ul, .article-body dir,
.article-body menu, .article-body dd {
margin-left: 40px;
}
/* start icon */
/* start emotions */
.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09,
.em10, .em11, .em12, .em13, .em14 {
background-image: url("../images/emotions/classic/emotions-classic.png");
float: left;
height: 24px;
margin-right: 5px;
width: 24px;
}
#emotions span {
cursor: pointer;
}
.em01 {
background-position: -24px 0;
}
.em02 {
background-position: -48px 0;
}
.em03 {
background-position: -72px 0;
}
.em04 {
background-position: -96px 0;
}
.em05 {
background-position: 0px -24px;
}
.em06 {
background-position: -24px -24px;
}
.em07 {
background-position: -48px -24px;
}
.em08 {
background-position: -72px -24px;
}
.em09 {
background-position: -96px -24px;
}
.em10 {
background-position: 0 -48px;
}
.em11 {
background-position: -24px -48px ;
}
.em12 {
background-position: -48px -48px;
}
.em13 {
background-position: -72px -48px;
}
.em14 {
background-position: -96px -48px;
}
/* end emotions */
/* start tags */
#tags {
list-style: none;
}
#tags li {
float: left;
list-style: none;
height: 38px;
}
#tags a:hover {
text-shadow: 0 0 2px #555555;
}
#tags a {
border-radius: 3px 3px 3px 3px;
box-shadow: 1px 1px 3px #555555;
float: left;
margin: 3px 6px;
padding: 3px 12px;
text-decoration: none;
}
#tags .tags1 {
font-size: 12px;
font-weight: normal;
}
#tags .tags2 {
font-size: 14px;
font-weight: normal;
}
#tags .tags3 {
font-size: 16px;
font-weight: normal;
}
#tags .tags4 {
font-size: 18px;
font-weight: bold;
}
#tags .tags5 {
font-size: 20px;
font-weight: bold;
}
/* end tags */
/* start comment */
#captcha, #captchaReply {
cursor: pointer;
}
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -1023,8 +516,4 @@ button:hover,.button:hover {
#captcha, #captchaReply {
cursor: pointer;
}
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
/* end comment */
\ No newline at end of file
<<<<<<< HEAD
<<<<<<< HEAD
/**
* 403, 500, article-pwd, init, login and kill-browser page style.
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @version 1.0.1.0, May 11, 2012
*/
html {
height: 100%;
overflow: hidden;
}
*,html,body {
margin: 0;
padding: 0;
}
body {
background-color: #F3F1E5;
color: #4D505D;
font-family: \5fae\8f6f\96c5\9ed1;
font-size: small;
height: 100%;
}
button {
background: url(../images/icon.png) repeat center bottom;
border: 1px solid;
border-color: #CCC #BBBBBB #A0A0A0;
border-radius: 4px;
height: 28px;
margin: 0;
padding: 0 6px;
vertical-align: top;
float: right;
margin: 12px 0 0 24px;
outline: none;
}
input {
background: none repeat scroll 0 0 #FBFBFB;
border: 1px solid #E5E5E5;
box-shadow: 1px 1px 2px rgba(200, 200, 200, 0.2) inset;
color: #4D505D;
font-family: Helvetica,Arial,sans-serif,\5fae\8f6f\96c5\9ed1;
font-size: 20px;
font-weight: 200;
height: 28px;
margin-top: 10px;
outline: medium none;
padding: 3px;
width: 280px;
}
input:focus {
box-shadow: 0px 0px 5px rgba(200, 200, 200, 0.9);
}
.clear {
background-color: transparent;
border: 0px;
clear: both;
display: block;
font-size: 0px;
height: 0px;
line-height: 0px;
overflow: hidden;
}
.none {
display: none;
}
.icon {
position: absolute;
right: 0px;
top: 0px;
width:16px;
height:16px;
}
.solo {
color: orangered;
font-weight: bold;
}
.logo {
float: left;
padding: 162px 12px 0;
width: 153px;
}
.wrapper {
height: auto;
min-height: 100%;
position: relative;
}
.wrap {
border-top: 5px solid #E6E5D9;
min-height: 400px;
}
.content {
background: url("../images/zz.jpg") repeat-x scroll center bottom white;
border-color: #E6E5D9;
border-style: solid solid none;
border-width: 1px;
margin: 0 auto;
position: relative;
width: 700px;
top: 60px;
}
.main {
border-left: 1px solid #E6E5D9;
float: right;
font-size: 15px;
margin: 24px 0;
padding: 12px 24px;
width: 470px;
height: 338px;
}
.main a {
text-decoration: none;
}
.main ul {
margin-bottom: 73px;
}
.main li {
margin: 6px 0 6px 16px;
}
.main p {
margin: 12px 0;
}
.mian tr {
height: 54px;
}
.footerWrapper {
background-color: #FFFFFF;
border-top: 1px solid #E6E5D9;
bottom: 0;
padding: 12px 0;
position: absolute;
text-align: center;
width: 100%;
}
.footerWrapper a {
text-decoration: none;
}
/* start article-pwd */
.article-pwd > div {
margin-bottom: 10px;
max-height: 264px;
overflow: auto;
word-wrap: break-word;
}
.article-pwd #confirm {
margin-top: 6px;
}
/* end article-pwd */
/* start error */
.error {
height: auto;
margin: 60px 0pt;
}
.error ul {
width: 50%;
margin: 12px 0 0 12px;
float: left;
}
.error .img-forbidden {
margin: 38px 10px 0 0;
width: 96px;
height: 96px;
float: right;
}
/* end 500 */
/* start login */
.login table {
margin: 66px auto;
}
/* end login */
/* start kill */
.kill {
position: absolute;
right: 40px;
top: 230px;
}
/* end kill */
/* start init and login */
#init {
position: absolute;
top: 102px;
width: 470px;
}
#sys p {
height: 166px;
}
#initButton {
margin-right: 10px;
}
#tip {
color: #21759B;
float: right;
font-weight: bold;
margin-top: 18px;
}
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -479,8 +248,4 @@ input:focus {
font-weight: bold;
margin-top: 18px;
}
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
/* end init and login */
<<<<<<< HEAD
<<<<<<< HEAD
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* index for admin
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @version 1.0.1.8, May 4, 2012
*/
var Admin = function () {
this.register = {};
// 工具栏下的工具
this.tools = ['#page-list', '#file-list', '#link-list', '#preference',
'#user-list', '#plugin-list', '#others'];
// 多用户时,一般用户不能使用的功能
this.adTools = ['link-list', 'preference', 'file-list', 'page-list',
'user-list', 'plugin-list'];
};
$.extend(Admin.prototype, {
/*
* 登出
*/
logout: function () {
window.location.href = latkeConfig.servePath + "/logout?goto=" + latkeConfig.servePath;
},
/*
* 根据当前页数设置 hash
* @currentPage {string} 当前页
*/
setHashByPage: function (currentPage) {
var hash = window.location.hash,
hashList = hash.split("/");
if (/^\d*$/.test(hashList[hashList.length - 1])) {
hashList[hashList.length - 1] = currentPage;
} else {
hashList.push(currentPage);
}
window.location.hash = hashList.join("/");
},
/*
* 设置某个 tab 被选择
* @id tab id
*/
selectTab: function (id) {
window.location.hash = "#" + id;
},
/*
* 根据当前 hash 解析出当前页数及 hash 数组。
*/
analyseHash: function () {
var hash = window.location.hash;
var tag = hash.substr(1, hash.length - 1);
var tagList = tag.split("/");
var tags = {};
tags.page = 1,
tags.hashList = [];
for (var i = 0; i < tagList.length; i++) {
if (i === tagList.length - 1 && (/^\d+$/.test(tagList[i]))) {
tags.page = tagList[i];
} else {
tags.hashList.push(tagList[i]);
}
}
return tags;
},
/*
* 根据当前 hash 设置当前 tab
*/
setCurByHash: function () {
var tags = this.analyseHash();
var tab = tags.hashList[1],
subTab = tags.hashList[2];
if (tags.hashList.length === 1) {
tab = tags.hashList[0];
}
if (tab === "") {
return;
}
// 离开编辑器时进行提示
try {
// 除更新、发布、取消发布文章,编辑器中无内容外,离开编辑器需进行提示。
if (tab !== "article" && admin.article.isConfirm &&
admin.editorArticle.getContent().replace(/\s/g, '') !== "") {
if (!confirm(Label.editorLeaveLabel)) {
window.location.hash = "#article/article";
return;
}
}
// 不离开编辑器,hash 需变为 "#article/article",此时不需要做任何处理。
if (tab === "article" && admin.article.isConfirm &&
admin.editorArticle.getContent().replace(/\s/g, '') !== "") {
return;
}
} catch (e) {
var $articleContent = $('#articleContent');
if ($articleContent.length > 0) {
if (tab !== "article" && admin.article.isConfirm &&
$articleContent.val().replace(/\s/g, '') !== "") {
if (!confirm(Label.editorLeaveLabel)) {
window.location.hash = "#article/article";
return;
}
}
// 不离开编辑器,hash 需变为 "#article/article",此时不需要做任何处理。
if (tab === "article" && admin.article.isConfirm &&
$articleContent.val().replace(/\s/g, '') !== "") {
return;
}
}
}
// clear article
if (tab !== "article" && admin.editorArticle.setContent) {
admin.article.clear();
}
admin.article.isConfirm = true;
$("#tabs").tabs("setCurrent", tab);
$("#loadMsg").text(Label.loadingLabel);
if ($("#tabsPanel_" + tab).length === 1) {
if ($("#tabsPanel_" + tab).html().replace(/\s/g, "") === "") {
// 还未加载 HTML
$("#tabsPanel_" + tab).load("admin-" + tab + ".do", function () {
// 页面加载完后,回调初始函数
if (tab === "article" && admin.article.status.id) {
// 当文章页面编辑器未初始化时,调用更新文章需先初始化编辑器
admin.register[tab].init.call(admin.register[tab].obj, admin.article.getAndSet);
} else {
admin.register[tab].init.call(admin.register[tab].obj, tags.page);
}
// 页面包含子 tab,需根据 hash 定位到相应的 tab
if (subTab) {
$("#tab" + tab.substring(0, 1).toUpperCase() + tab.substring(1)).
tabs("setCurrent", subTab);
}
// 根据 hash 调用现有的插件函数
admin.plugin.setCurByHash(tags);
});
} else {
if (tab === "article" && admin.article.status.id) {
admin.article.getAndSet();
}
// 已加载过 HTML,只需调用刷新函数
if (admin.register[tab] && admin.register[tab].refresh) {
admin.register[tab].refresh.call(admin.register[tab].obj, tags.page);
}
// 页面包含子 tab,需根据 hash 定位到相应的 tab
if (subTab) {
$("#tab" + tab.substring(0, 1).toUpperCase() + tab.substring(1)).
tabs("setCurrent", subTab);
}
// 根据 hash 调用现有的插件函数
admin.plugin.setCurByHash(tags);
}
} else {
$("#tipMsg").text("Error: No tab! " + Label.reportIssueLabel);
$("#loadMsg").text("");
}
},
/*
* 初始化整个后台
*/
init: function () {
//window.onerror = Util.error;
Util.killIE();
$("#loadMsg").text(Label.loadingLabel);
// 构建 tabs
$("#tabs").tabs();
// tipMsg
setInterval(function () {
if($("#tipMsg").text() !== "") {
setTimeout(function () {
$("#tipMsg").text("");
}, 7000);
}
}, 6000);
$("#loadMsg").text("");
},
/*
* @description tools and article collapse
* @param {bom} it 触发事件对象
*/
collapseNav: function (it) {
var subNav = $(it).next();
subNav.slideToggle("normal", function () {
if (this.style.display !== "none") {
$(it).find(".ico-arrow-down")[0].className = "ico-arrow-up";
} else {
$(it).find(".ico-arrow-up")[0].className = "ico-arrow-down";
}
});
/*if (subNav.className === "none") {
$(it).find(".ico-arrow-down")[0].className = "ico-arrow-up";
subNav.className = "collapsed";
} else {
$(it).find(".ico-arrow-up")[0].className = "ico-arrow-down";
subNav.className = "none";
}*/
},
/*
* 后台及当前页面所需插件初始化完后,对权限进行控制及当前页面属于 tools 时,tools 选项需展开。
*/
inited: function () {
// Removes functions with the current user role
if (Label.userRole !== "adminRole") {
for (var i = 0; i < this.adTools.length; i++) {
$("#tabs").tabs("remove", this.adTools[i]);
}
$("#tabs>ul>li").last().remove();
} else {
// 当前 tab 属于 Tools 时,设其展开
for (var j = 0; j < this.tools.length; j++) {
if ("#" + window.location.hash.split("/")[1] === this.tools[j]) {
$("#tabToolsTitle").click();
break;
}
}
}
this.setCurByHash();
}
});
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -511,8 +252,5 @@ $.extend(Admin.prototype, {
this.setCurByHash();
}
});
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
var admin = new Admin();
\ No newline at end of file
<<<<<<< HEAD
<<<<<<< HEAD
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview KindEditor
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @version 1.0.0.1, May 2, 2012
*/
admin.editors.KindEditor = {
/*
* @description 初始化编辑器
* @param conf 编辑器初始化参数
* @param conf.kind 编辑器类型
* @param conf.id 编辑器渲染元素 id
* @param conf.fun 编辑器首次加载完成后回调函数
*/
init: function (conf) {
var language = "zh_CN";
if ("en_US" === Label.localeString) {
language = "en"
}
if (conf.kind && conf.kind === "simple") {
try {
this[conf.id] = KindEditor.create('#' + conf.id, {
langType : language,
resizeType: 0,
items: ["bold", "italic", "underline", "strikethrough", "|", "undo", "redo", "|",
"insertunorderedlist", "insertorderedlist",
]
});
} catch (e) {
$("#tipMsg").text("KindEditor load fail");
}
} else {
try {
this[conf.id] = KindEditor.create('#' + conf.id, {
langType : language,
items: ["formatblock", "fontname", "fontsize", "|", "bold", "italic", "underline", "strikethrough", "forecolor", "|",
"link", "unlink", "image", "media", "|", "pagebreak", "emoticons", "code", "/",
"undo", "redo", "|", "insertunorderedlist", "insertorderedlist", "indent", "outdent", "|",
"justifyleft", "justifycenter", "justifyright", "justifyfull", "|", "plainpaste", "wordpaste", "|",
"clearhtml", "source", "preview"
],
afterCreate: function () {
if (typeof(conf.fun) === "function") {
conf.fun();
}
}
});
} catch (e) {
$("#tipMsg").text("KindEditor load fail");
}
}
},
/*
* @description 获取编辑器值
* @param {string} id 编辑器id
* @returns {string} 编辑器值
*/
getContent: function (id) {
var content = "";
try {
content = this[id].html();
} catch (e) {
content = $("#" + id).val();
}
return content;
},
/*
* @description 设置编辑器值
* @param {string} id 编辑器 id
* @param {string} content 设置编辑器值
*/
setContent: function (id, content) {
try {
this[id].html(content);
} catch (e) {
$("#" + id).val(content);
}
}
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -197,8 +96,4 @@ admin.editors.KindEditor = {
$("#" + id).val(content);
}
}
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
};
<<<<<<< HEAD
<<<<<<< HEAD
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview tinyMCE editor
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @version 1.0.0.4, May 9, 2012
*/
admin.editors.tinyMCE = {
/*
* @description 初始化编辑器
* @param conf 编辑器初始化参数
* @param conf.kind 编辑器类型
* @param conf.id 编辑器渲染元素 id
* @param conf.fun 编辑器首次加载完成后回调函数
*/
init: function (conf) {
var language = Label.localeString.substring(0, 2);
if (language === "zh") {
language = "zh-cn";
}
if (conf.kind && conf.kind === "simple") {
try {
tinyMCE.init({
// General options
language: language,
mode : "exact",
elements : conf.id,
theme : "advanced",
// Theme options
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,undo,redo,|,bullist,numlist",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
valid_children : "+body[style]"
});
} catch (e) {
$("#tipMsg").text("TinyMCE load fail");
}
} else {
try {
tinyMCE.init({
// General options
language: language,
mode : "exact",
elements : conf.id,
theme : "advanced",
plugins : "autosave,style,advhr,advimage,advlink,preview,inlinepopups,media,paste,syntaxhl,wordcount",
// Theme options
theme_advanced_buttons1 : "formatselect,fontselect,fontsizeselect,|,bold,italic,underline,strikethrough,forecolor,|,advhr,blockquote,syntaxhl,",
theme_advanced_buttons2 : "undo,redo,|,bullist,numlist,outdent,indent,|,justifyleft,justifycenter,justifyright,justifyfull,|,pastetext,pasteword,|,link,unlink,image,iespell,media,|,cleanup,code,preview,",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_resizing : true,
theme_advanced_statusbar_location : "bottom",
extended_valid_elements: "link[type|rel|href|charset],pre[name|class],iframe[src|width|height|name|align],+a[*]",
valid_children : "+body[style]",
relative_urls: false,
remove_script_host: false,
oninit : function () {
if (typeof(conf.fun) === "function") {
conf.fun();
}
}
});
} catch (e) {
$("#tipMsg").text("TinyMCE load fail");
}
}
},
/*
* @description 获取编辑器值
* @param {string} id 编辑器id
* @returns {string} 编辑器值
*/
getContent: function (id) {
var content = "";
try {
content = tinyMCE.get(id).getContent();
} catch (e) {
content = $("#" + id).val();
}
return content;
},
/*
* @description 设置编辑器值
* @param {string} id 编辑器 id
* @param {string} content 设置编辑器值
*/
setContent: function (id, content) {
try {
if (tinyMCE.get(id)) {
tinyMCE.get(id).setContent(content);
} else {
$("#" + id).val(content);
}
} catch (e) {
$("#" + id).val(content);
}
}
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -251,8 +123,4 @@ admin.editors.tinyMCE = {
$("#" + id).val(content);
}
}
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
};
<<<<<<< HEAD
<<<<<<< HEAD
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* page list for admin
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.1.9, May 4, 2012
*/
/* page-list 相关操作 */
admin.pageList = {
tablePagination: new TablePaginate("page"),
pageInfo: {
currentCount: 1,
pageCount: 1,
currentPage: 1
},
id: "",
type: "link",
/*
* 初始化 table, pagination, comments dialog
*/
init: function (page) {
this.tablePagination.buildTable([{
text: "",
index: "pageOrder",
width: 60,
style: "padding-left: 12px;font-size:14px;"
}, {
style: "padding-left: 12px;",
text: Label.titleLabel,
index: "pageTitle",
width: 300
}, {
style: "padding-left: 12px;",
text: Label.permalinkLabel,
index: "pagePermalink",
minWidth: 300
}, {
style: "padding-left: 12px;",
text: Label.openMethodLabel,
index: "pageTarget",
width: 120
}, {
style: "padding-left: 12px;",
text: Label.typeLabel,
index: "pageType",
width: 80
}, {
text: Label.commentLabel,
index: "comments",
width: 80,
style: "padding-left: 12px;"
}]);
this.tablePagination.initPagination();
this.tablePagination.initCommentsDialog();
this.getList(page);
var language = Label.localeString.substring(0, 2);
if (language === "zh") {
language = "zh-cn";
}
admin.editorPage = new Editor({
language: language,
kind: "all",
id: "pageContent"
});
// select type
$(".fn-type").click(function () {
var $it = $(this);
if ($it.hasClass("selected")) {
return;
}
$(".fn-type").removeClass("selected");
$it.addClass("selected");
admin.pageList.type = $it.data("type");
if (admin.pageList.type === "page") {
$("#pagePagePanel").slideDown();
// 使用 CodeMirror 编辑器时,当编辑器初识之前,元素为 display:none 时,行号显示不正常
if (Label.editorType === "CodeMirror-Markdown" && admin.editorPage.getContent() === "") {
admin.editorPage.setContent("");
}
} else {
$("#pagePagePanel").slideUp();
}
});
},
/*
* 根据当前页码获取列表
* @pagNum 当前页码
*/
getList: function (pageNum) {
$("#loadMsg").text(Label.loadingLabel);
var that = this;
$.ajax({
url: latkeConfig.servePath + "/console/pages/" + pageNum + "/" + Label.PAGE_SIZE + "/" + Label.WINDOW_SIZE,
type: "GET",
cache: false,
success: function(result, textStatus){
$("#tipMsg").text(result.msg);
if (!result.sc) {
$("#loadMsg").text("");
return;
}
var pages = result.pages;
var pageData = [];
admin.pageList.pageInfo.currentCount = pages.length;
admin.pageList.pageInfo.pageCount = result.pagination.paginationPageCount === 0 ? 1 : result.pagination.paginationPageCount;
for (var i = 0; i < pages.length; i++) {
pageData[i] = {};
if (i === 0) {
if (pages.length === 1) {
pageData[i].pageOrder = "";
} else {
pageData[i].pageOrder = '<div class="table-center" style="width:14px">\
<span onclick="admin.pageList.changeOrder(' + pages[i].oId + ', ' + i + ', \'down\');" \
class="table-downIcon"></span></div>';
}
} else if (i === pages.length - 1) {
pageData[i].pageOrder = '<div class="table-center" style="width:14px">\
<span onclick="admin.pageList.changeOrder(' + pages[i].oId + ', ' + i + ', \'up\');" class="table-upIcon"></span>\
</div>';
} else {
pageData[i].pageOrder = '<div class="table-center" style="width:38px">\
<span onclick="admin.pageList.changeOrder(' + pages[i].oId + ', ' + i + ', \'up\');" class="table-upIcon"></span>\
<span onclick="admin.pageList.changeOrder(' + pages[i].oId + ', ' + i + ', \'down\');" class="table-downIcon"></span>\
</div>';
}
pageData[i].pageTitle = "<a class='no-underline' href='" + latkeConfig.servePath + pages[i].pagePermalink + "' target='_blank'>" +
pages[i].pageTitle + "</a>";
pageData[i].pagePermalink = "<a class='no-underline' href='" + latkeConfig.servePath + pages[i].pagePermalink + "' target='_blank'>"
+ pages[i].pagePermalink + "</a>";
pageData[i].pageTarget = pages[i].pageOpenTarget;
pageData[i].pageType = pages[i].pageType ;
pageData[i].comments = pages[i].pageCommentCount;
pageData[i].expendRow = "<span><a href='" + latkeConfig.servePath + pages[i].pagePermalink + "' target='_blank'>" + Label.viewLabel + "</a> \
<a href='javascript:void(0)' onclick=\"admin.pageList.get('" + pages[i].oId + "')\">" + Label.updateLabel + "</a>\
<a href='javascript:void(0)' onclick=\"admin.pageList.del('" + pages[i].oId + "')\">" + Label.removeLabel + "</a>\
<a href='javascript:void(0)' onclick=\"admin.comment.open('" + pages[i].oId + "', 'page')\">" + Label.commentLabel + "</a></span>";
}
that.tablePagination.updateTablePagination(pageData, pageNum, result.pagination);
$("#loadMsg").text("");
}
});
},
/*
* 获取自定义页面
* @id 自定义页面 id
*/
get: function (id) {
$("#loadMsg").text(Label.loadingLabel);
$("#tipMsg").text("");
$.ajax({
url: latkeConfig.servePath + "/console/page/" + id,
type: "GET",
cache: false,
success: function(result, textStatus){
$("#tipMsg").text(result.msg);
if (!result.sc) {
$("#loadMsg").text("");
return;
}
admin.pageList.id = id;
$("#pageTitle").val(result.page.pageTitle);
$("#pagePermalink").val(result.page.pagePermalink);
$("#pageTarget").val(result.page.pageOpenTarget);
if (result.page.pageType === "page") {
$($(".fn-type").get(1)).click();
} else {
$($(".fn-type").get(0)).click();
}
$("#pageCommentable").prop("checked", result.page.pageCommentable);
admin.editorPage.setContent(result.page.pageContent);
$("#loadMsg").text("");
}
});
},
/*
* 删除自定义页面
* @id 自定义页面 id
*/
del: function (id) {
var isDelete = confirm(Label.confirmRemoveLabel);
if (isDelete) {
$("#loadMsg").text(Label.loadingLabel);
$("#tipMsg").text("");
$.ajax({
url: latkeConfig.servePath + "/console/page/" + id,
type: "DELETE",
cache: false,
success: function(result, textStatus){
$("#tipMsg").text(result.msg);
if (!result.sc) {
$("#loadMsg").text("");
return;
}
var pageNum = admin.pageList.pageInfo.currentPage;
if (admin.pageList.pageInfo.currentCount === 1 && admin.pageList.pageInfo.pageCount !== 1 &&
admin.pageList.pageInfo.currentPage === admin.pageList.pageInfo.pageCount) {
admin.pageList.pageInfo.pageCount--;
pageNum = admin.pageList.pageInfo.pageCount;
}
var hashList = window.location.hash.split("/");
if (pageNum == hashList[hashList.length - 1]) {
admin.pageList.getList(pageNum);
} else {
admin.setHashByPage(pageNum);
}
$("#loadMsg").text("");
}
});
}
},
/*
* 添加自定义页面
*/
add: function () {
if (this.validate()) {
$("#loadMsg").text(Label.loadingLabel);
$("#tipMsg").text("");
var pageContent = admin.editorPage.getContent();
var pagePermalink = $("#pagePermalink").val().replace(/(^\s*)|(\s*$)/g, "");
if (admin.pageList.type === "link") {
pagePermalink = Util.proessURL(pagePermalink);
}
var requestJSONObject = {
"page": {
"pageTitle": $("#pageTitle").val(),
"pageContent": pageContent,
"pagePermalink": pagePermalink,
"pageCommentable": $("#pageCommentable").prop("checked"),
"pageType": admin.pageList.type,
"pageOpenTarget": $("#pageTarget").val()
}
};
$.ajax({
url: latkeConfig.servePath + "/console/page/",
type: "POST",
cache: false,
data: JSON.stringify(requestJSONObject),
success: function(result, textStatus){
$("#tipMsg").text(result.msg);
if (!result.sc) {
$("#loadMsg").text("");
return;
}
admin.pageList.id = "";
$("#pagePermalink").val("");
$("#pageTitle").val("");
$("#pageCommentable").prop("cheked", false);
$("#pageTarget").val("_self");
$($(".fn-type").get(0)).click();
admin.editorPage.setContent("");
if (admin.pageList.pageInfo.currentCount === Label.PAGE_SIZE &&
admin.pageList.pageInfo.currentPage === admin.pageList.pageInfo.pageCount) {
admin.pageList.pageInfo.pageCount++;
}
var hashList = window.location.hash.split("/");
if (admin.pageList.pageInfo.pageCount == hashList[hashList.length - 1]) {
admin.pageList.getList(admin.pageList.pageInfo.pageCount);
} else {
admin.setHashByPage(admin.pageList.pageInfo.pageCount);
}
$("#loadMsg").text("");
}
});
}
},
/*
* 更新自定义页面
*/
update: function () {
if (this.validate()) {
$("#loadMsg").text(Label.loadingLabel);
$("#tipMsg").text("");
var pageContent = admin.editorPage.getContent();
var pagePermalink = $("#pagePermalink").val().replace(/(^\s*)|(\s*$)/g, "");
if (admin.pageList.type === "link") {
pagePermalink = Util.proessURL(pagePermalink);
}
var requestJSONObject = {
"page": {
"pageTitle": $("#pageTitle").val(),
"oId": this.id,
"pageContent": pageContent,
"pagePermalink": pagePermalink,
"pageCommentable": $("#pageCommentable").prop("checked"),
"pageType": admin.pageList.type,
"pageOpenTarget": $("#pageTarget").val()
}
};
$.ajax({
url: latkeConfig.servePath + "/console/page/",
type: "PUT",
cache: false,
data: JSON.stringify(requestJSONObject),
success: function(result, textStatus){
$("#tipMsg").text(result.msg);
if (!result.sc) {
$("#loadMsg").text("");
return;
}
admin.pageList.id = "";
admin.pageList.getList(admin.pageList.pageInfo.currentPage);
$("#pageTitle").val("");
$("#pagePermalink").val("");
$("#pageCommentable").prop("cheked", false);
$("#pageTarget").val("_self");
$($(".fn-type").get(0)).click();
admin.editorPage.setContent("");
$("#loadMsg").text("");
}
});
}
},
/*
* 验证字段
*/
validate: function () {
if ($("#pageTitle").val().replace(/\s/g, "") === "") {
$("#tipMsg").text(Label.titleEmptyLabel);
$("#pageTitle").focus();
} else if (admin.pageList.type === "link" &&
$("#pagePermalink").val().replace(/\s/g, "") === "") {
$("#tipMsg").text(Label.linkEmptyLabel);
} else {
return true;
}
return false;
},
/*
* 提交自定义页面
*/
submit: function () {
if (this.id !== "") {
this.update();
} else {
this.add();
}
},
/*
* 调换顺序
*/
changeOrder: function (id, order, status) {
$("#loadMsg").text(Label.loadingLabel);
$("#tipMsg").text("");
var requestJSONObject = {
"oId": id.toString(),
"direction": status
};
$.ajax({
url: latkeConfig.servePath + "/console/page/order/",
type: "PUT",
cache: false,
data: JSON.stringify(requestJSONObject),
success: function(result, textStatus){
$("#tipMsg").text(result.msg);
// Refershes the page list
admin.pageList.getList(admin.pageList.pageInfo.currentPage);
$("#loadMsg").text("");
}
});
}
};
/*
* 注册到 admin 进行管理
*/
admin.register["page-list"] = {
"obj": admin.pageList,
"init": admin.pageList.init,
"refresh": admin.pageList.getList
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -873,8 +433,4 @@ admin.register["page-list"] = {
"obj": admin.pageList,
"init": admin.pageList.init,
"refresh": admin.pageList.getList
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
}
<<<<<<< HEAD
<<<<<<< HEAD
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* preference for admin.
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.1.4, May 3, 2012
*/
/* preference 相关操作 */
admin.preference = {
locale: "",
editorType: "",
/*
* 初始化
*/
init: function () {
$("#tabPreference").tabs();
$.ajax({
url: latkeConfig.servePath + "/console/preference/",
type: "GET",
cache: false,
success: function(result, textStatus){
$("#tipMsg").text(result.msg);
if (!result.sc) {
$("#loadMsg").text("");
return;
}
var preference = result.preference;
// 线上环境严禁使用 localhost, 默认将其设为 host
if (preference.blogHost.indexOf("localhost") > -1 && Label.miniPostfix === ".min") {
preference.blogHost = window.location.host;
$("#tipMsg").text(Label.resetBlogHostLabel);
}
$("#metaKeywords").val(preference.metaKeywords),
$("#metaDescription").val(preference.metaDescription),
$("#blogTitle").val(preference.blogTitle),
$("#blogSubtitle").val(preference.blogSubtitle),
$("#mostCommentArticleDisplayCount").val(preference.mostCommentArticleDisplayCount);
$("#mostViewArticleDisplayCount").val(preference.mostViewArticleDisplayCount),
$("#recentCommentDisplayCount").val(preference.recentCommentDisplayCount);
$("#mostUsedTagDisplayCount").val(preference.mostUsedTagDisplayCount);
$("#articleListDisplayCount").val(preference.articleListDisplayCount);
$("#articleListPaginationWindowSize").val(preference.articleListPaginationWindowSize);
$("#blogHost").val(preference.blogHost);
$("#localeString").val(preference.localeString);
$("#timeZoneId").val(preference.timeZoneId);
$("#noticeBoard").val(preference.noticeBoard);
$("#htmlHead").val(preference.htmlHead);
$("#externalRelevantArticlesDisplayCount").val(preference.externalRelevantArticlesDisplayCount);
$("#relevantArticlesDisplayCount").val(preference.relevantArticlesDisplayCount);
$("#randomArticlesDisplayCount").val(preference.randomArticlesDisplayCount);
$("#keyOfSolo").val(preference.keyOfSolo);
preference.enableArticleUpdateHint ? $("#enableArticleUpdateHint").attr("checked", "checked") : $("#enableArticleUpdateHint").removeAttr("checked");
preference.allowVisitDraftViaPermalink ? $("#allowVisitDraftViaPermalink").attr("checked", "checked") : $("allowVisitDraftViaPermalink").removeAttr("checked");
admin.preference.locale = preference.localeString;
admin.preference.editorType = preference.editorType;
// skin
$("#skinMain").data("skinDirName", preference.skinDirName);
var skins = eval('(' + preference.skins + ')');
var skinsHTML = "";
for (var i = 0; i < skins.length; i++) {
if (skins[i].skinName === preference.skinName
&& skins[i].skinDirName === preference.skinDirName ) {
skinsHTML += "<div title='" + skins[i].skinDirName
+ "' class='left skinItem selected'><img class='skinPreview' src='skins/"
+ skins[i].skinDirName + "/preview.png'/><div>" + skins[i].skinName + "</div></div>"
} else {
skinsHTML += "<div title='" + skins[i].skinDirName
+ "' class='left skinItem'><img class='skinPreview' src='skins/"
+ skins[i].skinDirName + "/preview.png'/><div>" + skins[i].skinName + "</div></div>"
}
}
$("#skinMain").append(skinsHTML + "<div class='clear'></div>");
$(".skinItem").click(function () {
$(".skinItem").removeClass("selected");
$(this).addClass("selected");
$("#skinMain").data("skinDirName", this.title);
});
// sign
var signs = eval('(' + preference.signs + ')');
for (var j = 1; j < signs.length; j++) {
$("#preferenceSign" + j).val(signs[j].signHTML);
$("#preferenceSignButton" + j).tip({
content: signs[j].signHTML === "" ? Label.signIsNullLabel : signs[j].signHTML.replace(/\n/g, "").replace(/<script.*<\/script>/ig, ""),
position: "bottom"
});
}
// Article list style
$("#articleListDisplay").val(preference.articleListStyle);
// Editor Type
$("#editorType").val(preference.editorType);
// Feed output mode
$("#feedOutputMode").val(preference.feedOutputMode);
// Commentable
preference.commentable ? $("#commentable").attr("checked", "checked") : $("commentable").removeAttr("checked");
$("#loadMsg").text("");
}
});
},
/*
* 更新
*/
update: function () {
$("#loadMsg").text(Label.loadingLabel);
$("#tipMsg").text("");
var signs = [{
"oId": 0,
"signHTML": ""
}, {
"oId": 1,
"signHTML": $("#preferenceSign1").val()
}, {
"oId": 2,
"signHTML": $("#preferenceSign2").val()
}, {
"oId": 3,
"signHTML": $("#preferenceSign3").val()
}];
var requestJSONObject = {
"preference": {
"metaKeywords": $("#metaKeywords").val(),
"metaDescription": $("#metaDescription").val(),
"blogTitle": $("#blogTitle").val(),
"blogSubtitle": $("#blogSubtitle").val(),
"mostCommentArticleDisplayCount": $("#mostCommentArticleDisplayCount").val(),
"mostViewArticleDisplayCount": $("#mostViewArticleDisplayCount").val(),
"recentCommentDisplayCount": $("#recentCommentDisplayCount").val(),
"mostUsedTagDisplayCount": $("#mostUsedTagDisplayCount").val(),
"articleListDisplayCount": $("#articleListDisplayCount").val(),
"articleListPaginationWindowSize": $("#articleListPaginationWindowSize").val(),
"skinDirName": $("#skinMain").data("skinDirName"),
"blogHost": $("#blogHost").val(),
"localeString": $("#localeString").val(),
"timeZoneId": $("#timeZoneId").val(),
"noticeBoard": $("#noticeBoard").val(),
"htmlHead": $("#htmlHead").val(),
"externalRelevantArticlesDisplayCount": $("#externalRelevantArticlesDisplayCount").val(),
"relevantArticlesDisplayCount": $("#relevantArticlesDisplayCount").val(),
"randomArticlesDisplayCount": $("#randomArticlesDisplayCount").val(),
"enableArticleUpdateHint": $("#enableArticleUpdateHint").prop("checked"),
"signs": signs,
"keyOfSolo": $("#keyOfSolo").val(),
"allowVisitDraftViaPermalink": $("#allowVisitDraftViaPermalink").prop("checked"),
"articleListStyle": $("#articleListDisplay").val(),
"editorType": $("#editorType").val(),
"feedOutputMode": $("#feedOutputMode").val(),
"commentable": $("#commentable").prop("checked")
}
};
$.ajax({
url: latkeConfig.servePath + "/console/preference/",
type: "PUT",
cache: false,
data: JSON.stringify(requestJSONObject),
success: function(result, textStatus){
$("#tipMsg").text(result.msg);
if (!result.sc) {
$("#loadMsg").text("");
return;
}
if ($("#localeString").val() !== admin.preference.locale ||
$("#editorType").val() !== admin.preference.editorType) {
window.location.reload();
}
// update article and preferences signs
for (var i = 1; i < signs.length; i++) {
if ($("#articleSign" + signs[i].oId).length === 1) {
$("#articleSign" + signs[i].oId).tip("option", "content",
signs[i].signHTML === "" ? Label.signIsNullLabel : signs[i].signHTML.replace(/\n/g, "").replace(/<script.*<\/script>/ig, ""));
}
$("#preferenceSignButton" + signs[i].oId).tip("option", "content",
signs[i].signHTML === "" ? Label.signIsNullLabel : signs[i].signHTML.replace(/\n/g, "").replace(/<script.*<\/script>/ig, ""));
}
$("#loadMsg").text("");
}
});
}
};
/*
* 注册到 admin 进行管理
*/
admin.register["preference"] = {
"obj": admin.preference,
"init": admin.preference.init,
"refresh": function () {
$("#loadMsg").text("");
}
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -494,8 +267,4 @@ admin.register["preference"] = {
"refresh": function () {
$("#loadMsg").text("");
}
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
}
<<<<<<< HEAD
<<<<<<< HEAD
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* table and paginate util
*
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
* @version 1.0.0.7, Nov 8, 2011
*/
var TablePaginate = function (id) {
this.id = id;
this.currentPage = 1;
};
$.extend(TablePaginate.prototype, {
/*
* 构建 table 框架
* @colModel table 列宽,标题等数据
*/
buildTable: function (colModel, noExpend) {
var tableData = {
colModel: colModel,
noDataTip: Label.noDataLabel
}
if (!noExpend) {
tableData.expendRow = {
index: "expendRow"
}
}
$("#" + this.id + "Table").table(tableData);
},
/*
* 初始化分页
*/
initPagination: function () {
var id = this.id;
$("#" + id + "Pagination").paginate({
"bind": function(currentPage) {
admin.setHashByPage(currentPage);
return true;
},
"currentPage": 1,
"errorMessage": Label.inputErrorLabel,
"nextPageText": Label.nextPagePabel,
"previousPageText": Label.previousPageLabel,
"goText": Label.gotoLabel,
"type": "custom",
"custom": [1],
"pageCount": 1
});
},
/*
* 初始化评论对话框
*/
initCommentsDialog: function () {
var that = this;
$("#" + this.id + "Comments").dialog({
width: 700,
height:500,
"modal": true,
"hideFooter": true,
"close": function () {
admin[that.id + "List"].getList(that.currentPage);
return true;
}
});
},
/*
* 更新 table & paginateion
*/
updateTablePagination: function (data, currentPage, pageInfo) {
currentPage = parseInt(currentPage);
if (currentPage > pageInfo.paginationPageCount && currentPage > 1) {
$("#tipMsg").text(Label.pageLabel + ":" + currentPage + " " + Label.noDataLable);
$("#loadMsg").text("");
return;
}
$("#" + this.id + "Table").table("update", {
data: [{
groupName: "all",
groupData: data
}]
});
if (pageInfo.paginationPageCount === 0) {
pageInfo.paginationPageCount = 1;
}
$("#" + this.id + "Pagination").paginate("update", {
pageCount: pageInfo.paginationPageCount,
currentPage: currentPage,
custom: pageInfo.paginationPageNums
});
this.currentPage = currentPage;
}
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (c) 2009, 2010, 2011, 2012, B3log Team
*
......@@ -228,8 +111,4 @@ $.extend(TablePaginate.prototype, {
});
this.currentPage = currentPage;
}
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
});
<<<<<<< HEAD
<<<<<<< HEAD
/*
* Copyright (C) 2010,2011, Liyuan Li
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
(function(a){var b=function(){};a.extend(b.prototype,{bowknot:{version:"0.0.0.9",author:"lly219@gmail.com"},getDate:function(a,b){var c=new Date(a);var d=c.getFullYear().toString().substr(2,2),e=c.getMonth()+1,f=c.getDate(),g=c.getHours(),h=c.getSeconds(),i=c.getMinutes();switch(b){case undefined:return e+"/"+f+"/"+d;break;case 1:return e+"/"+f+"/"+d+" "+g+":"+i+":"+h;break;default:return false;break}}});a.bowknot=new b})(jQuery);
(function($){$.fn.extend({paginate:{version:"0.0.0.7",author:"lly219@gmail.com"}});var g=new Date().getTime();var h="paginate";var j=function(){this._defaults={"styleClass":{"pageCountClass":"paginate-pageCount","goPageClass":"paginate-goPage","inputPageClass":"paginate-inputPage","goPageHoverClass":"paginate-goPageHover","prePageClass":"paginate-prePage","nextPageClass":"paginate-nextPage","prePageDisableClass":"paginate-prePageDisable","nextPageDisableClass":"paginate-nextPageDisable","prePageHoverClass":"paginate-prePageHover","nextPageHoverClass":"paginate-nextPageHover","paginateClass":"paginate-paginate"}}};$.extend(j.prototype,{_attach:function(a,b){if(!a.id){this.uuid++;a.id="dp"+this.uuid}var c=this._newInst($(a));c.settings=$.extend({"errorMessage":"input error!"},b||{});$.data(a,h,c);this._init(a)},_newInst:function(a){var b=a[0].id.replace(/([^A-Za-z0-9_])/g,"\\\\$1");return{id:b}},_getInst:function(a){try{return $.data(a,h)}catch(err){throw"Missing instance data for this paginate";}},_init:function(a){var b=this._getInst(a);var c=b.id,settings=b.settings;$("#"+c).html("<div id='"+c+"Paginate' class='"+this._getDefaults($.paginate._defaults,settings,"styleClass").paginateClass+"'></div>");this._build(a)},_build:function(a){var b=this._getInst(a);var c=b.id,settings=b.settings;var d=this._getDefaults(this._defaults,settings,"styleClass"),pageCount=settings.pageCount,currentPage=settings.currentPage;var e="<$tagStart class='button paginate-page'> <span class='button-left'></span> <span class='button-bg'>"+settings.previousPageText+"</span> <span class='button-right'></span> </$tagEnd>",nextPageHTML="<$tagStart class='button paginate-page'> <span class='button-left'></span> <span class='button-bg'>"+settings.nextPageText+"</span> <span class='button-right'></span> </$tagEnd>",pagesHTML="",pageCountHTML="<span class='"+d.pageCountClass+"'>"+currentPage+"/"+pageCount+"</span>",goToPageHTML="<div class='button'> <span class='button-left'></span> <span class='button-bg'> <input class='"+d.inputPageClass+"' id='"+c+"PaginateInput'/> </span> <span class='button-right'></span> </div> <a href='javascript:void(0);' class='button' id='"+c+"PaginateSubmit'> <span class='button-left'></span> <span class='button-bg'>"+settings.goText+"</span> <span class='button-right'></span> </a>";if(currentPage===1||currentPage===0){e=e.replace("$tagStart","div").replace("$tagEnd","div")}else{e=e.replace("$tagStart","a href='javascript:void(0)'").replace("$tagEnd","a")}if(currentPage!==pageCount){nextPageHTML=nextPageHTML.replace("$tagStart","a href='javascript:void(0)'").replace("$tagEnd","a")}else{nextPageHTML=nextPageHTML.replace("$tagStart","div").replace("$tagEnd","div")}switch(settings.type){case"taobao":var f=this._getTaobaoPages(currentPage,pageCount),currentClass="";goToPageHTML="";for(var i=0;i<f.length;i++){if(currentPage===f[i].pageNum){currentClass=" pagination-current-page"}else{currentClass=""}pagesHTML+="<span data-page='"+f[i].pageNum+"' class='pagination-pages"+currentClass+"'>"+f[i].text+"</span>"}break;case"custom":var f=settings.custom,currentClass="";for(var i=0;i<f.length;i++){if(currentPage===f[i]){currentClass=" pagination-current-page"}else{currentClass=""}pagesHTML+="<span data-page='"+f[i]+"' class='pagination-pages"+currentClass+"'>"+f[i]+"</span>"}break;default:break}if(pageCount===1){$("#"+c+"Paginate").html(pageCountHTML)}else{$("#"+c+"Paginate").html(e+pagesHTML+nextPageHTML+pageCountHTML+goToPageHTML)}this._bindEvent(a)},_getTaobaoPages:function(a,b){var c=[],i=2,len=4,begin=3,end=0,maxEnd=0,pre=0;if(a>=len){begin=a-Math.ceil(len/2);maxEnd=a+Math.ceil(len/2)+1;if(maxEnd<b){end=maxEnd}else{end=b}}else if(a<len){maxEnd=a+Math.ceil(len/2)+1;if(maxEnd<b){end=maxEnd}else{end=b}}if(begin<3){begin=3}for(i=begin;i<=end;i++){c.push({"pageNum":i,"text":i})}if(begin>3){pre=2+(begin-2);c.unshift({"pageNum":pre,"text":"..."})}if(b<2){i=(a===0)?0:1}else{i=2}for(;i>=1;i=i-1){c.unshift({"pageNum":i,"text":i})}if(end<b){pre=end+Math.ceil(len/2);if(pre>b){pre=b}c.push({"pageNum":pre,"text":"..."})}return c},_bindEvent:function(b){var c=this._getInst(b);var d=c.id;$("#"+d+"PaginateInput").bind("keypress",{target:b},function(a){if(a.keyCode===13){$.paginate._goToPageAction(a)}});$("#"+d+"Paginate .pagination-pages").bind("click",{target:b,isPage:true},function(a){$.paginate._goToPageAction(a)});$("#"+d+"PaginateSubmit").bind("click",{target:b},this._goToPageAction);$("#"+d+"Paginate a.paginate-page").bind("click",{target:b,isPage:true},function(a){$.paginate._goToPageAction(a)})},_goToPageAction:function(a){var b=a.data.target;var c=$.paginate._getInst(b);var d=c.id,settings=c.settings;var e=$("#"+d+"PaginateInput").val();if(a.data.isPage){e=settings.currentPage;var f=a.target.parentNode.innerText?a.target.parentNode.innerText:a.target.parentNode.text;if($.trim(f)===settings.previousPageText){e--}else if($.trim(f)===settings.nextPageText){e++}else{e=parseInt($(a.target).data("page"))}}if(settings.currentPage===e){return}var r=/^[0-9]*[1-9][0-9]*$/;if(e>0&&e<=settings.pageCount&&r.test(e)){if(settings.bind(e)){settings.currentPage=e;$.paginate._updatePaginate(b)}}else{alert(settings.errorMessage);$("#"+d+"PaginateInput").val("")}},_updatePaginate:function(a,b){if(b){$.extend(this._getInst(a).settings,b)}this._build(a)},_getDefaults:function(a,b,c){if(c==="styleClass"){if(b.theme==="default"||b.theme===undefined){return a.styleClass}b.styleClass={};for(var d in a[c]){b.styleClass[d]=b.theme+"-"+a.styleClass[d]}}else if((c==="height"&&b[c]!=="auto")||c==="width"){if(b[c]===null||b[c]===undefined){return a[c]+"px"}else{return b[c]+"px"}}else{if(b[c]===null||b[c]===undefined){return a[c]}}return b[c]},_destroyPaginate:function(){}});$.fn.paginate=function(a){var b=Array.prototype.slice.call(arguments);if(typeof a==='string'){b.shift();return $.paginate['_'+a+'Paginate'].apply($.paginate,[this[0]].concat(b))}return this.each(function(){$.paginate._attach(this,a)})};$.paginate=new j();window["DP_jQuery_"+g]=$})(jQuery);
(function($){$.fn.extend({table:{version:"0.0.1.0",author:"lly219@gmail.com"}});var n=new Date().getTime();var o="table";var p=function(){this._defaults={"styleClass":{"lineSelectedClass":"table-lineSelected","mainClass":"table-main","bodyClass":"table-body","headerClass":"table-header","lineHoverClass":"table-lineHover","sortClass":"table-sort","sortASCClass":"table-sortASC","sortDESCClass":"table-sortDESC","sortUnASCClass":"table-sortUnactiveASC","sortUnDESCClass":"table-sortUnactiveDESC","oddRowClass":"table-oddRow","evenRowClass":"table-evenRow","subTitleClass":"table-subTitle","subTitleHoverClass":"table-subTitleHover","subTitleShowClass":"table-subTitleShow","subTitleHideClass":"table-subTitleHide","expendRowClass":"table-expendRow","hasExpendClass":"table-hasExpend"}}};$.extend(p.prototype,{_attach:function(a,b){if(!a.id){this.uuid++;a.id="dp"+this.uuid}var c=this._newInst($(a));c.settings=$.extend({length:0,noDataTip:"no data!",selectedRows:[]},b||{});$.data(a,o,c);this._init(a)},_newInst:function(a){var b=a[0].id.replace(/([^A-Za-z0-9_])/g,"\\\\$1");return{id:b}},_getInst:function(a){try{return $.data(a,o)}catch(err){throw"Missing instance data for this table";}},_init:function(a){var b=this._getInst(a),settings=b.settings;$(a).html("<div class='"+this._getDefaults(this._defaults,settings,"styleClass").mainClass+"' id='"+b.id+"Table'></div>");this._build(a)},_build:function(a){var b=this._getInst(a),settings=b.settings;var c=b.id;var d=this._getDefaults(this._defaults,settings,"styleClass");var e="<div id='"+c+"TableHeader' class='"+d.headerClass+"'></div>"+"<div id='"+c+"TableMain' class='"+d.bodyClass+"' style='height:"+(settings.height?settings.height+"px":"auto")+"'></div>";$("#"+c+"Table").html(e);this._buildHeader(a);if(settings.data){this._buildBody(a);this._bindEvent(a)}},_buildHeader:function(a){var b=this._getInst(a).settings;var c=b.colModel,id=this._getInst(a).id,headerHTML="<table cellpadding='0' cellspacing='0' style='width:100%'><tr>";for(var i=0;i<c.length;i++){var d=id+"_"+c[i].index;if(c[i].minWidth){headerHTML+="<th style='min-width:"+c[i].minWidth+"px;'>"}else{headerHTML+="<th style='width:"+c[i].width+"px;'>"}if(c[i].type==="checkbox"){if(c[i].isLabel){headerHTML+=c[i].text}else{headerHTML+="<input id='"+d+"' onclick=\"DP_jQuery_"+n+".table._selectHeaderCheckbox(this);\" type='checkbox'/></th>"}}else{headerHTML+="<span id='"+d+"'>"+c[i].text?c[i].text:""+"</span></th>"}}$("#"+id+"TableHeader").html(headerHTML+"</tr></table>")},_buildBody:function(a){var b=this._getInst(a).id,settings=this._getInst(a).settings,data=settings.data;var c=this._getDefaults(this._defaults,settings,"styleClass"),bodyHTML="";for(var d=0;d<data.length;d++){if(data[d].groupName!=="all"){bodyHTML+="<div id='"+b+"SubTitle"+d+"'class='"+c.subTitleClass+"'><div class='left "+c.subTitleShowClass+"'></div><div class='left'>"+data[d].groupName+"</div><div class='clear'></div></div>"}bodyHTML+="<table id="+b+"SubTable"+d+" style='width:100%;' cellpadding='0' cellspacing='0'>"+this._buildData(a,data[d].groupData,d)+"</table>"}$("#"+b+"TableMain").html(bodyHTML)},_buildData:function(a,b,c){var d=this._getInst(a).id,settings=this._getInst(a).settings;var e=settings.colModel,styleClass=this._getDefaults(this._defaults,settings,"styleClass");var f="";for(var i=0;i<b.length;i++){var g=b[i],tBodyHTML="<tbody class='$CLASS'>",trHTML="<tr>",rowClass=styleClass.oddRowClass;if(i%2===1){rowClass=styleClass.evenRowClass}if(settings.expendRow){trHTML='<tr class="'+styleClass.hasExpendClass+'">'}g.uuuid=settings.length++;for(var j=0;j<e.length;j++){var h=e[j].index;var k=g[h],styleHTML=e[j].align?"text-align:"+e[j].align+";":"";if(k===undefined||k===null||$.trim(k)===""){k="&nbsp;"}if(i===0){if(e[j].minWidth){styleHTML+="min-width:"+e[j].minWidth+"px;"}else{styleHTML+="width:"+e[j].width+"px;"}}trHTML+="<td style='"+styleHTML+"'>";if(e[j].type){var l="",isCheckedHTML="",isDisabledHTML="",inputId=d+"_"+h+"_"+c+"_"+i;if(g[h].value){isCheckedHTML="checked='checked'";tBodyHTML=tBodyHTML.replace("$CLASS",styleClass.lineSelectedClass+" "+rowClass);settings.selectedRows.push(g)}if(g[h].disabled){isDisabledHTML="disabled='disabled'"}l="<input name='"+d+"_"+h+"' id='"+inputId+"' type='"+e[j].type+"' onclick=\"DP_jQuery_"+n+".table._selectCheckbox(this);\" "+isCheckedHTML+" "+isDisabledHTML+"/>";k=l}if(e[j].style){k="<div style='"+e[j].style+"'>"+k+"</div>"}trHTML+=k+"</td>"}f+=tBodyHTML.replace("$CLASS",rowClass)+trHTML+"</tr>";if(settings.expendRow){var m=g[settings.expendRow.index];if(m===undefined){m=""}f+="<tr class='none "+styleClass.expendRowClass+" "+rowClass+"'><td colspan='"+e.length+"'>"+m+"</td></tr>"}f+="</tbody>"}if(b.length===0){f="<tbody><tr><td align='center' colspan='"+e.length+"'>"+settings.noDataTip+"</td></tr></tbody>"}return f},_bindEvent:function(b){var c=this._getInst(b);var d=c.id,settings=c.settings,colModel=c.settings.colModel,styleClass=this._getDefaults(this._defaults,settings,"styleClass"),data=settings.data;for(var e=0;e<data.length;e++){if(data[0].groupName!=="all"){$("#"+d+"SubTitle"+e).click(function(){var a=$(this).find("div")[0];if(a.className.indexOf(styleClass.subTitleShowClass)!=-1){a.className=a.className.replace(styleClass.subTitleShowClass,styleClass.subTitleHideClass);$(this).next().hide()}else{a.className=a.className.replace(styleClass.subTitleHideClass,styleClass.subTitleShowClass);$(this).next().show()}}).mouseover(function(){this.className=styleClass.subTitleHoverClass}).mouseout(function(){this.className=styleClass.subTitleClass})}var f=settings.bind?settings.bind:[],groupData=data[e].groupData;for(var m=0;m<groupData.length;m++){var g=$($("#"+d+"SubTable"+e+" tbody")[m]);for(var l=0;l<f.length;l++){g.bind(f[l].type,{"groupData":groupData[m],"bindNum":l},function(a){f[a.data.bindNum].action(a,a.data.groupData)})}g.mouseover(function(){if(!$(this).hasClass(styleClass.lineHoverClass)){$("#"+d+" tbody").each(function(){$(this).removeClass(styleClass.lineHoverClass);if($(this).find("tr").length===2){$(this).find("tr")[1].style.display="none"}});$(this).addClass(styleClass.lineHoverClass);if($(this).find("tr").length===2){if($.browser.msie){if($.browser.version>7){$(this).find("tr")[1].style.display="block"}}else{$(this).find("tr")[1].style.display="table-row"}}}});for(var j=0;j<colModel.length;j++){if(colModel[j].bind){var h=colModel[j].bind;for(var i=0;i<h.length;i++){$(g.find("td")[j]).bind(h[i].type,{"groupData":groupData[m],"bindNum":i,"colNum":j},function(a){colModel[a.data.colNum].bind[a.data.bindNum].action(a,a.data.groupData)})}}}}}},_selectHeaderCheckbox:function(a){var b=a.id.split("_")[0],index=a.id.split("_")[1];var c=$("#"+b).data(o).settings;var d=c.data,styleClass=this._getDefaults(this._defaults,c,"styleClass");for(var i=0;i<d.length;i++){var e=d[i].groupData;for(var j=0;j<e.length;j++){var f=$("#"+b+"_"+index+"_"+i+"_"+j);if(f.prop("disabled")===false){if(a.checked){c.selectedRows.push(e[j])}else{c.selectedRows.splice(j,1)}f.prop("checked",a.checked)}}}if(a.checked){$("#"+b+"TableMain tbody").addClass(styleClass.lineSelectedClass)}else{$("#"+b+"TableMain tbody").removeClass(styleClass.lineSelectedClass)}$.unique(c.selectedRows)},_selectCheckbox:function(a){var b=a.id.split("_")[0],index=a.id.split("_")[1],groupNum=a.id.split("_")[2],rowNum=a.id.split("_")[3];var c=$("#"+b).data(o).settings;var d=c.data,styleClass=this._getDefaults(this._defaults,c,"styleClass"),$checkbox=$("#"+b+"_"+index),$row=$($("#"+b+"SubTable"+groupNum+" tbody")[rowNum]);if(a.checked){$row.addClass(styleClass.lineSelectedClass);c.selectedRows.push(d[groupNum].groupData[rowNum])}else{$row.removeClass(styleClass.lineSelectedClass);for(var j in c.selectedRows){if(c.selectedRows[j].uuuid===d[groupNum].groupData[rowNum].uuuid){c.selectedRows.splice(j,1)}}}if(c.selectedRows.length===c.length){$checkbox.prop("checked",true)}else{$checkbox.prop("checked",false)}},_getRow:function(a,b,c){var d={};for(var e in b){var f=b[e].groupData;for(var g in f){if(c===f[g].uuuid){d.data=f[g];d.$row=$($("#"+a+"SubTable"+e+" tbody")[g])}}}return d},_getDefaults:function(a,b,c){if(c==="styleClass"){if(b.theme==="default"||b.theme===undefined){return a.styleClass}b.styleClass={};for(var d in a[c]){b.styleClass[d]=b.theme+"-"+a.styleClass[d]}}else{if(b[c]===null||b[c]===undefined){return a[c]}}return b[c]},_strToInt:function(a){if(!a){return false}return parseInt(a.substring(0,a.length-2))},_updateTable:function(a,b,c){var d=this._getInst(a);var e=d.id,settings=d.settings;if(!c){if(b.height){var f=b.height;$("#"+e+"TableMain").height(f);settings.height=f}else{settings.data=b.data;this._build(a)}}else{var g=settings.data,colModel=settings.colModel;var h=this._getRow(e,g,b);$.extend(h.data,c);for(var i=0;i<colModel.length;i++){if(colModel[i].type!=="checkbox"){var j=colModel[i].index;h.$row.find("td")[i].innerHTML=h.data[j]?h.data[j]:"&nbsp;"}}if(settings.expendRow){$(h.$row.find("tr")[1]).find("td").html(c[settings.expendRow.index]?c[settings.expendRow.index]:"&nbsp;")}}},_getRowsTable:function(a,b,c){var d=this._getInst(a);var e=d.settings;if(!b){return e.selectedRows}var f=[];for(var i=0;i<e.data.length;i++){var g=e.data[i].groupData;for(var h in g){if(g[h][b]===c){f.push(g[h])}}}return f},_destroyTable:function(a){var b=this._getInst(a);$.removeData(a,o);$("#"+b.id).remove()},_selectedTable:function(a,b){var c=this._getInst(a);var d=c.id,settings=c.settings;var e=c.settings.data,styleClass=this._getDefaults(this._defaults,settings,"styleClass");for(var f in e){var g=e[f].groupData;for(var h in g){if(b===g[h].uuuid){settings.selectedRows.push(g[h]);$.unique(settings.selectedRows);var i=$($("#"+d+"SubTable"+f+" tbody")[h]);i.addClass(styleClass.lineSelectedClass);i.find("input").prop("checked",true)}}}},_unSelectedTable:function(a,b){var c=this._getInst(a);var d=c.id,settings=c.settings;var e=c.settings.data,styleClass=this._getDefaults(this._defaults,settings,"styleClass");for(var f in e){var g=e[f].groupData;for(var h in g){if(b===g[h].uuuid){var j=settings.selectedRows;for(var i=0;i<j.length;i++){if(j[i].uuuid===b){j.splice(i,1)}}var k=$($("#"+d+"SubTable"+f+" tbody")[h]);k.removeClass(styleClass.lineSelectedClass);k.find("input").prop("checked",false)}}}}});$.fn.table=function(a){var b=Array.prototype.slice.call(arguments);if(typeof a==='string'){b.shift();return $.table['_'+a+'Table'].apply($.table,[this[0]].concat(b))}return this.each(function(){$.table._attach(this,a)})};$.table=new p();window["DP_jQuery_"+n]=$})(jQuery);
(function($){$.fn.extend({dialog:{version:"0.0.1.5",author:"lly219@gmail.com"}});var m=new Date().getTime();var n='dialog';var o=function(){this._defaults={"styleClass":{"background":"dialog-background","panel":"dialog-panel","main":"dialog-main","footer":"dialog-footer","headerLeft":"dialog-header-left","headerRight":"dialog-header-right","headerMiddle":"dialog-header-middle","headerBg":"dialog-header-bg","closeIcon":"dialog-close-icon","closeIconHover":"dialog-close-icon-hover","title":"dialog-title","buttonRight":"dialog-button-right"}}};$.extend(o.prototype,{_attach:function(a,b){if(!a.id){this.uuid++;a.id='dp'+this.uuid}var c=this._newInst($(a));c.settings=$.extend({},b||{});$.data(a,n,c);this._init(a)},_newInst:function(a){var b=a[0].id.replace(/([^A-Za-z0-9_])/g,'\\\\$1');return{id:b}},_getInst:function(a){try{return $.data(a,n)}catch(err){throw'Missing instance data for this dialog';}},_destroyDialog:function(a){var b=$.dialog._getInst(a);var c=b.id;$.removeData(a,n);$(a).prependTo("#"+c+"Wrap").unwrap();$(a).removeAttr("style");var d=this._getDefaults($.dialog._defaults,b.settings,"styleClass");$("."+d.background).remove();$("#"+c+"Dialog").remove()},_init:function(b){var c=this._getInst(b);var d=c.id,settings=c.settings;var e=this._getDefaults($.dialog._defaults,settings,"styleClass"),height=settings.height,width=settings.width;settings.title=settings.title?settings.title:"";settings.okText=settings.okText?settings.okText:"Ok";settings.cancelText=settings.cancelText?settings.cancelText:"Cancel";var f="",headerHTML="<div class='"+e.headerLeft+"'></div><div class='"+e.headerBg+"' style='width: "+(width+24)+"px;'><div class='"+e.title+"'>"+settings.title+"</div><a href='javascript:void(0);' class='"+e.closeIcon+"'></a></div><div class='"+e.headerRight+"'></div><div class='clear'></div>";if(!settings.hideFooter){f="<a href='javascript:void(0);'><span>"+settings.okText+"</span><span class='"+e.buttonRight+"'></span></a><a href='javascript:void(0);'><span>"+settings.cancelText+"</span><span class='"+e.buttonRight+"'></span></a>"}var g="<div id='"+d+"Dialog' class='"+e.panel+"' style='width: "+(width+26)+"px;' onselectstart='return false;'><div>"+headerHTML+"</div><div class='"+e.main+"'><div style='overflow: auto; height: "+height+"px; width: "+width+"px;'></div><div class='"+e.footer+"'>"+f+"</div><div class='clear'></div></div>";var h="";if(settings.modal&&$("."+e.background).length===0){var i=$(window).height()<$("body").height()?$("body").height():$(window).height();h="<div style='height:"+i+"px;' class='"+e.background+"'></div>"}$("#"+d).wrap("<div id='"+d+"Wrap'></div>");var j=$(b).clone(true);$(b).remove();$('body').append(h+g);$($("#"+d+"Dialog ."+e.main+" div").get(0)).append(j);$(j).show();var k="",left="",$dialog=$("#"+d+"Dialog");if(settings.position){k=settings.position.top;left=settings.position.left}else{k=($(window).height()-$dialog.height())/2;left=($(window).width()-$dialog.width())/2}$dialog.css({"top":k+"px","left":left+"px"});$("#"+d+"Dialog ."+e.closeIcon).bind("click",function(){$.dialog._close(d,settings)});var l=$("#"+d+"Dialog ."+e.footer+" a");$(l.get(1)).bind("click",function(){$.dialog._close(d,settings)});$(l.get(0)).bind("click",function(){if(settings.ok===undefined||settings.ok()){$.dialog._close(d,settings)}});this._bindMove(d,e.headerBg,height,width);$(window).resize(function(){var a=$(window).height()<document.documentElement.clientHeight?document.documentElement.clientHeight:$(window).height();$("."+e.background).height(a)});$(window).keyup(function(a){if(a.keyCode===27){$.dialog._close(d,settings)}})},_bindMove:function(f,g){$("#"+f+"Dialog ."+g).mousedown(function(c){var d=document;if(!c){c=window.event}var e=document.getElementById(f+"Dialog");var x=c.clientX-parseInt(e.style.left),y=c.clientY-parseInt(e.style.top);d.ondragstart="return false;";d.onselectstart="return false;";d.onselect="document.selection.empty();";if(this.setCapture){this.setCapture()}else if(window.captureEvents){window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP)}d.onmousemove=function(a){if(!a){a=window.event}var b=a.clientX-x,positionY=a.clientY-y;if(b<0){b=0}if(b>$(window).width()-$(e).width()){b=$(window).width()-$(e).width()}if(positionY<0){positionY=0}if(positionY>$(window).height()-$(e).height()){positionY=$(window).height()-$(e).height()}e.style.left=b+"px";e.style.top=positionY+"px"};d.onmouseup=function(){if(this.releaseCapture){this.releaseCapture()}else if(window.captureEvents){window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP)}d.onmousemove=null;d.onmouseup=null;d.ondragstart=null;d.onselectstart=null;d.onselect=null}})},_close:function(a,b){if(b.close===undefined||b.close()){$("#"+a+"Dialog").hide();if(b.modal){var c=this._getDefaults($.dialog._defaults,b,"styleClass");$("."+c.background).hide()}}},_closeDialog:function(a){var b=this._getInst(a);var c=b.id,settings=b.settings;$.dialog._close(c,settings)},_openDialog:function(a){var b=this._getInst(a);var c=b.id,settings=b.settings;$("#"+c+"Dialog").show();if(settings.modal){var d=this._getDefaults($.dialog._defaults,settings,"styleClass");$("."+d.background).show()}},_updateDialog:function(a,b){var c=this._getInst(a);var d=c.id,settings=c.settings;var e=this._getDefaults($.dialog._defaults,settings,"styleClass");$.extend(settings,b);var f=$("#"+d+"Dialog");if(b.position){f.css({"top":b.position.top,"left":b.position.left})}if(b.width){f.width(b.width+26);f.find("."+e.main+" div")[0].style.width=b.width+"px";f.find("."+e.headerBg).width(b.width+18)}if(b.height){f.find("."+e.main+" div")[0].style.height=b.height+"px"}if(b.title){f.find("."+e.title).html(b.title)}if(b.modal!==undefined){if(b.modal){$("."+e.background).show()}else{$("."+e.background).hide()}}if(b.hideFooter!==undefined){if(b.hideFooter){f.find("."+e.footer).hide()}else{f.find("."+e.footer).show()}}},_getDefaults:function(a,b,c){if(c==="styleClass"){if(b.theme==="default"||b.theme===undefined){return a.styleClass}b.styleClass={};for(var d in a[c]){b.styleClass[d]=b.theme+"-"+a.styleClass[d]}}else if(c==="height"||c==="width"){if(b[c]===null||b[c]===undefined){return"auto"}else{return b[c]+"px"}}else{if(b[c]===null||b[c]===undefined){return a[c]}}return b[c]}});$.fn.dialog=function(a){var b=Array.prototype.slice.call(arguments);if(typeof a==='string'){b.shift();return $.dialog['_'+a+'Dialog'].apply($.dialog,[this[0]].concat(b))}return this.each(function(){$.dialog._attach(this,a)})};$.dialog=new o();window['DP_jQuery_'+m]=$})(jQuery);
(function($){var j=new Date().getTime();var k='completed';var l=function(){this._defaults={"styleClass":{"panelClass":"completed-panel","inputClass":"completed-input","ckClass":"completed-ck"},"separator":","},this._settingsDataFormat={}};$.extend(l.prototype,{_attach:function(a,b){if(!a.id){this.uuid++;a.id='dp'+this.uuid}var c=this._newInst($(a));c.settings=$.extend({"buttonText":"\u9009\u62e9"},b||{});$.data(a,k,c);this._init(a)},_newInst:function(a){var b=a[0].id.replace(/([^A-Za-z0-9_])/g,'\\\\$1');return{"id":b}},_getInst:function(a){try{return $.data(a,k)}catch(err){throw'Missing instance data for this completed';}},_destroyCompleted:function(){},_init:function(b){var c=this._getInst(b);var d=c.id,settings=c.settings;this._buildHTML(d,settings);$(document).click(function(a){if(a.target.id!==d){$("#"+d+"SelectedPanel").hide()}});this._buildCheckboxPanel(d,settings.data)},_buildHTML:function(b,c){var d=c.height+"px",classStyle=this._getDefaults($.completed._defaults,c,"styleClass");var e=$("#"+b);var f="<button onclick=\"$('#"+b+"CheckboxPanel').toggle()\">"+c.buttonText+"</button><div id='"+b+"SelectedPanel' class='"+classStyle.panelClass+"' style='height:"+d+";'></div><div class='none "+classStyle.ckClass+"' id='"+b+"CheckboxPanel'><div>";c.data.sort();e.after(f).bind("keyup",{settings:c},this._keyupAction).bind("keydown",function(a){c.chinese=a.keyCode}).addClass(classStyle.inputClass).width(e.width()-78);var g=$("#"+b+"SelectedPanel");c.tipNum=0;g.width(e.width()+2)},_keyupAction:function(a){var b=a.data.settings,currentWordObj=$.completed._getCurrentWord(this,b);if(currentWordObj.currentWord===""||a.keyCode===27||a.keyCode===16||a.keyCode===16){$("#"+this.id+"SelectedPanel").hide();b.tipNum=0;return}var c=$.completed._getMatchData(b.data,this.value,currentWordObj.currentWord);if(a.keyCode===38){if(b.tipNum>0){b.tipNum--}else{b.tipNum=c.length-1}}if(a.keyCode===40){if(b.tipNum<c.length-1){b.tipNum++}else{b.tipNum=0}}$.completed._buildSelectedPanel(this.id,c,b,currentWordObj.currentWord);if(a.keyCode===13&&c[b.tipNum]&&b.chinese!==229){var d=this.value;this.value=d.substring(0,currentWordObj.startPos)+c[b.tipNum]+d.substring(currentWordObj.endPos,d.length);$("#"+this.id+"SelectedPanel").hide();b.chinese=undefined}if(a.keyCode!==38&&a.keyCode!==40){b.tipNum=0}},_getCurrentWord:function(a,b){var c=$(a).val(),tag=true,endPos=0,startPos=0,separator=$.completed._defaults.separator;if(c===""){return{currentWord:"",startPos:startPos,endPos:endPos}}if(document.selection){try{var d=document.selection.createRange();var f=a.createTextRange();f.collapse(true);f.select();var g=document.selection.createRange();g.setEndPoint("EndToEnd",d);b.curPos=g.text.length;d.select()}catch(e){delete e}}else{b.curPos=a.selectionStart}var h=b.curPos;for(var i=0;i<c.length;i++){if(c.charAt(i)===separator){if(i>=h&&tag){endPos=i;tag=false}}}if(tag===true){tag=false;endPos=c.length}for(var j=endPos;j>-1;j--){if(c.charAt(j)===separator){if(j<h&&!tag){startPos=j+1;tag=true}}}return{currentWord:c.substring(startPos,endPos),startPos:startPos,endPos:endPos}},_getMatchData:function(a,b,c){var d=b.split($.completed._defaults.separator);var e=[];for(var i=0;i<a.length;i++){if(typeof a[i]==="number"){a[i]=a[i].toString()}if(a[i].toLowerCase().indexOf(c.toLowerCase())>-1){var f=true;for(var k=0;k<d.length;k++){if(a[i]===d[k].toString()&&a[i].toLowerCase()!==c.toLowerCase()){f=false}}if(f){e.push(a[i])}}}return e},_mousemoveSelectPanel:function(a,i,b){$(a).parent().find("a").removeClass("selected");a.className='selected';var c=$.completed._getInst(document.getElementById(b));c.settings.tipNum=i},_buildSelectedPanel:function(e,f,g,h){var j=$("#"+e+"SelectedPanel");if(f.length===0){j.html("").hide();return}if(g.tipNum>=f.length){g.tipNum=0}var k="";for(var i=0;i<f.length;i++){var l="",highlightHTML=f[i].replace(h,"<b>"+h+"</b>");if(g.tipNum===i){l="class='selected'"}k+="<a href='javascript:void(0);' onmousemove=\"$.completed._mousemoveSelectPanel(this, "+i+", '"+e+"');\" "+l+">"+highlightHTML+"</a>"}j.html(k).show();var m=$("#"+e+"SelectedPanel a.selected");if(m.position().top+j.scrollTop()>50-m.height()){j.scrollTop(m.position().top+j.scrollTop()+m.height()-50)}if(m.position().top<0){j.scrollTop(j.scrollTop-m.height())}$("#"+e+"SelectedPanel a").click(function(){var a=document.getElementById(e);var b=$.completed._getCurrentWord(document.getElementById(e),g);var c=$.completed._getMatchData(g.data,a.value,b.currentWord);var d=a.value;a.value=d.substring(0,b.startPos)+c[g.tipNum]+d.substring(b.endPos,d.length);g.tipNum=0;$(a).focus()})},_buildCheckboxPanel:function(c,d){var e="",$input=$("#"+c);for(var i=0;i<d.length;i++){e+="<span>"+d[i]+"</span>"}$("#"+c+"CheckboxPanel").html(e+"<div class='clear'></div>");$("#"+c+"CheckboxPanel"+" span").click(function(){var a=$input.val(),currentVal=this.innerHTML;if(this.className==="selected"){this.className="";var b=a.substr(a.indexOf(currentVal)+currentVal.length,1);if(currentVal===a||b!==","){$input.val(a.replace(currentVal,""))}else{$input.val(a.replace(currentVal+",",""))}}else{this.className="selected";if(a.replace(/\s/g,"")===""||a.substr(a.length-1,1)===","){$input.val(a+currentVal)}else{$input.val(a+","+currentVal)}}});this._matchChecked(c);$input.blur(function(){$.completed._matchChecked(c)})},_matchChecked:function(a){var b=$("#"+a).val().split(",");$("#"+a+"CheckboxPanel span").removeClass().each(function(){for(var i=0;i<b.length;i++){if(this.innerHTML===b[i]){this.className="selected"}}})},_getDefaults:function(a,b,c){if(c==="styleClass"){if(b.theme==="default"||b.theme===undefined){return a.styleClass}b.styleClass={};for(var d in a[c]){b.styleClass[d]=b.theme+"-"+a.styleClass[d]}}else if(c==="height"||c==="width"){if(b[c]===null||b[c]===undefined){return"auto"}else{return b[c]+"px"}}else{if(b[c]===null||b[c]===undefined){return a[c]}}return b[c]}});$.fn.completed=function(a){var b=Array.prototype.slice.call(arguments);return this.each(function(){typeof a=='string'?$.completed['_'+a+'Completed'].apply($.completed,[this].concat(b)):$.completed._attach(this,a)})};$.completed=new l();window['DP_jQuery_'+j]=$})(jQuery);
(function($){$.fn.extend({tip:{version:"0.0.0.3",author:"lly219@gmail.com"}});var f=new Date().getTime();var g='tip';var h=function(){this._defaults={"styleClass":{"panel":"tip-panel"}},this._settingsDataFormat={}};$.extend(h.prototype,{_attach:function(a,b){if(!a.id){this.uuid++;a.id='dp'+this.uuid}var c=this._newInst($(a));c.settings=$.extend({},b||{});$.data(a,g,c);this._init(a)},_newInst:function(a){var b=a[0].id.replace(/([^A-Za-z0-9_])/g,'\\\\$1');return{id:b}},_getInst:function(a){try{return $.data(a,g)}catch(err){throw'Missing instance data for this tip.';}},_destroyTip:function(a){$.removeData(a,g);$("#"+a.id+"Panel").remove()},_init:function(a){var b=this._getInst(a);var c=b.id,settings=b.settings;var d='',styleClass=settings.className?settings.className:this._getDefaults($.tip._defaults,settings,"styleClass").panel;d="<div id='"+c+"Panel' class='"+styleClass+"'>"+settings.content+"</div>";$(settings.appendId?"#"+settings.appendId:"body").append(d);$(a).hover(function(){$.tip._parsePosition(settings,a);$("#"+c+"Panel").fadeIn("normal")},function(){$("#"+c+"Panel").fadeOut("normal")})},_optionTip:function(a,b,c){var d=$.tip._getInst(a[0]);var e=d.settings;if(c){e[b]=c;$("#"+a[0].id+"Panel").html(c)}return e[b]},_parsePosition:function(a,b){var c="",$targetPanel=$("#"+b.id+"Panel");if(a.left===undefined&&a.right===undefined&&a.bottom===undefined&&a.top===undefined&&a.position===undefined){a.position="bottom"}if(a.position){var d=$(b);switch(a.position){case"top":c="left: "+parseInt(d.position().left)+"px; top: "+parseInt(d.position().top-$targetPanel.height()-6-parseInt(d.css("padding-top"))-parseInt($targetPanel.css("padding-top")))+"px;";break;case"bottom":c="left: "+parseInt(d.position().left)+"px; top: "+parseInt(d.position().top+d.height())+"px;";break;default:alert("Has no type!");break}$targetPanel.attr("style",c);return}if(a.left!==undefined){c+="left:"+a.left+"px;"}if(a.top!==undefined){c+="top:"+a.top+"px;"}if(a.bottom!==undefined){c+="bottom:"+a.bottom+"px;"}if(a.right!==undefined){c+="right:"+a.right+"px;"}$targetPanel.attr("style",c)},_getDefaults:function(a,b,c){if(c==="styleClass"){if(b.theme==="default"||b.theme===undefined){return a.styleClass}b.styleClass={};for(var d in a[c]){b.styleClass[d]=b.theme+"-"+a.styleClass[d]}}else if(c==="height"||c==="width"){if(b[c]===null||b[c]===undefined){return"auto"}else{return b[c]+"px"}}else{if(b[c]===null||b[c]===undefined){return a[c]}}return b[c]}});$.fn.tip=function(a){var b=Array.prototype.slice.call(arguments);if(a==="option"){b.shift();return $.tip['_'+a+'Tip'].apply($.tip,[this].concat(b))}return this.each(function(){typeof a=='string'?$.tip['_'+a+'Tip'].apply($.tip,[this].concat(b)):$.tip._attach(this,a)})};$.tip=new h();window['DP_jQuery_'+f]=$})(jQuery);
=======
=======
>>>>>>> origin/0.4.6
/*
* Copyright (C) 2010,2011, Liyuan Li
*
......@@ -45,8 +19,4 @@
(function($){$.fn.extend({dialog:{version:"0.0.1.7",author:"lly219@gmail.com"}});var dpuuid=new Date().getTime();var PROP_NAME='dialog';var Dialog=function(){this._defaults={"styleClass":{"background":"dialog-background","panel":"dialog-panel","main":"dialog-main","footer":"dialog-footer","headerMiddle":"dialog-header-middle","headerBg":"dialog-header-bg","closeIcon":"dialog-close-icon","closeIconHover":"dialog-close-icon-hover","title":"dialog-title"}}};$.extend(Dialog.prototype,{_attach:function(target,settings){if(!target.id){this.uuid++;target.id='dp'+this.uuid}var inst=this._newInst($(target));inst.settings=$.extend({},settings||{});$.data(target,PROP_NAME,inst);this._init(target)},_newInst:function(target){var id=target[0].id.replace(/([^A-Za-z0-9_])/g,'\\\\$1');return{id:id}},_getInst:function(target){try{return $.data(target,PROP_NAME)}catch(err){throw'Missing instance data for this dialog';}},_destroyDialog:function(target){var inst=$.dialog._getInst(target);var id=inst.id;$.removeData(target,PROP_NAME);$(target).prependTo("#"+id+"Wrap").unwrap();$(target).removeAttr("style");var styleClass=this._getDefaults($.dialog._defaults,inst.settings,"styleClass");$("."+styleClass.background).remove();$("#"+id+"Dialog").remove()},_init:function(target){var inst=this._getInst(target);var id=inst.id,settings=inst.settings;var windowH=$(window).height(),windowW=$(window).width();var styleClass=this._getDefaults($.dialog._defaults,settings,"styleClass"),dialogH=settings.height?settings.height:parseInt(windowH*0.6),dialogW=settings.width?settings.width:parseInt(windowW*0.6);settings.title=settings.title?settings.title:"";settings.okText=settings.okText?settings.okText:"Ok";settings.cancelText=settings.cancelText?settings.cancelText:"Cancel";var footerHTML="",headerHTML="<div class='"+styleClass.headerBg+"'><div class='"+styleClass.title+"'>"+settings.title+"</div><a href='javascript:void(0);' class='"+styleClass.closeIcon+"'></a></div>";if(!settings.hideFooter){footerHTML="<a href='javascript:void(0);'>"+settings.okText+"</a><a href='javascript:void(0);'>"+settings.cancelText+"</a>"}var dialogHTML="<div id='"+id+"Dialog' class='"+styleClass.panel+"' style='width: "+(dialogW+26)+"px;' onselectstart='return false;'>"+headerHTML+"<div class='"+styleClass.main+"'><div style='overflow: auto; height: "+dialogH+"px;'></div><div class='"+styleClass.footer+"'>"+footerHTML+"</div></div>";var bgHTML="";if(settings.modal&&$("."+styleClass.background).length===0){var bgHeight=windowH<document.documentElement.scrollHeight?document.documentElement.scrollHeight:windowH;bgHTML="<div style='height:"+bgHeight+"px;' class='"+styleClass.background+"'></div>"}$("#"+id).wrap("<div id='"+id+"Wrap'></div>");var cloneObj=$(target).clone(true);$(target).remove();$('body').append(bgHTML+dialogHTML);$($("#"+id+"Dialog ."+styleClass.main+" div").get(0)).append(cloneObj);$(cloneObj).show();var top="",left="",$dialog=$("#"+id+"Dialog");if(settings.position){top=settings.position.top;left=settings.position.left}else{top=parseInt((windowH-dialogH)/2);left=parseInt((windowW-dialogW)/2)}$dialog.css({"top":top+"px","left":left+"px"});$("#"+id+"Dialog ."+styleClass.closeIcon).bind("click",function(){$.dialog._close(id,settings)});var $buttons=$("#"+id+"Dialog ."+styleClass.footer+" a");$($buttons.get(1)).bind("click",function(){$.dialog._close(id,settings)});$($buttons.get(0)).bind("click",function(){if(settings.ok===undefined||settings.ok()){$.dialog._close(id,settings)}});this._bindMove(id,styleClass.headerBg,dialogH,dialogW);$(window).keyup(function(event){if(event.keyCode===27){$.dialog._close(id,settings)}})},_bindMove:function(id,className){$("#"+id+"Dialog ."+className).mousedown(function(event){var _document=document;if(!event){event=window.event}var dialog=document.getElementById(id+"Dialog");var x=event.clientX-parseInt(dialog.style.left),y=event.clientY-parseInt(dialog.style.top);_document.ondragstart="return false;";_document.onselectstart="return false;";_document.onselect="document.selection.empty();";if(this.setCapture){this.setCapture()}else if(window.captureEvents){window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP)}_document.onmousemove=function(event){if(!event){event=window.event}var positionX=event.clientX-x,positionY=event.clientY-y;if(positionX<0){positionX=0}if(positionX>$(window).width()-$(dialog).width()){positionX=$(window).width()-$(dialog).width()}if(positionY<0){positionY=0}if(positionY>$(window).height()-$(dialog).height()){positionY=$(window).height()-$(dialog).height()}dialog.style.left=positionX+"px";dialog.style.top=positionY+"px"};_document.onmouseup=function(){if(this.releaseCapture){this.releaseCapture()}else if(window.captureEvents){window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP)}_document.onmousemove=null;_document.onmouseup=null;_document.ondragstart=null;_document.onselectstart=null;_document.onselect=null}})},_close:function(id,settings){if($("#"+id+"Dialog").css("display")==="none"){return}if(settings.close===undefined||settings.close()){$("#"+id+"Dialog").hide();if(settings.modal){var styleClass=this._getDefaults($.dialog._defaults,settings,"styleClass");$("."+styleClass.background).hide()}}},_closeDialog:function(target){var inst=this._getInst(target);var id=inst.id,settings=inst.settings;$.dialog._close(id,settings)},_openDialog:function(target){var inst=this._getInst(target);var id=inst.id,settings=inst.settings;$("#"+id+"Dialog").show();if(settings.modal){var styleClass=this._getDefaults($.dialog._defaults,settings,"styleClass");$("."+styleClass.background).show()}},_updateDialog:function(target,data){var inst=this._getInst(target);var id=inst.id,settings=inst.settings;var styleClass=this._getDefaults($.dialog._defaults,settings,"styleClass");$.extend(settings,data);var $dialog=$("#"+id+"Dialog");if(data.position){$dialog.css({"top":data.position.top,"left":data.position.left})}if(data.width){$dialog.width(data.width+26);$dialog.find("."+styleClass.main+" div")[0].style.width=data.width+"px";$dialog.find("."+styleClass.headerBg).width(data.width+18)}if(data.height){$dialog.find("."+styleClass.main+" div")[0].style.height=data.height+"px"}if(data.title){$dialog.find("."+styleClass.title).html(data.title)}if(data.modal!==undefined){if(data.modal){$("."+styleClass.background).show()}else{$("."+styleClass.background).hide()}}if(data.hideFooter!==undefined){if(data.hideFooter){$dialog.find("."+styleClass.footer).hide()}else{$dialog.find("."+styleClass.footer).show()}}},_getDefaults:function(defaults,settings,key){if(key==="styleClass"){if(settings.theme==="default"||settings.theme===undefined){return defaults.styleClass}settings.styleClass={};for(var styleName in defaults[key]){settings.styleClass[styleName]=settings.theme+"-"+defaults.styleClass[styleName]}}else if(key==="height"||key==="width"){if(settings[key]===null||settings[key]===undefined){return"auto"}else{return settings[key]+"px"}}else{if(settings[key]===null||settings[key]===undefined){return defaults[key]}}return settings[key]}});$.fn.dialog=function(options){var otherArgs=Array.prototype.slice.call(arguments);if(typeof options==='string'){otherArgs.shift();return $.dialog['_'+options+'Dialog'].apply($.dialog,[this[0]].concat(otherArgs))}return this.each(function(){$.dialog._attach(this,options)})};$.dialog=new Dialog();window['DP_jQuery_'+dpuuid]=$})(jQuery);
(function($){var j=new Date().getTime();var k='completed';var l=function(){this._defaults={"styleClass":{"panelClass":"completed-panel","inputClass":"completed-input","ckClass":"completed-ck"},"separator":","},this._settingsDataFormat={}};$.extend(l.prototype,{_attach:function(a,b){if(!a.id){this.uuid++;a.id='dp'+this.uuid}var c=this._newInst($(a));c.settings=$.extend({"buttonText":"\u9009\u62e9"},b||{});$.data(a,k,c);this._init(a)},_newInst:function(a){var b=a[0].id.replace(/([^A-Za-z0-9_])/g,'\\\\$1');return{"id":b}},_getInst:function(a){try{return $.data(a,k)}catch(err){throw'Missing instance data for this completed';}},_destroyCompleted:function(){},_init:function(b){var c=this._getInst(b);var d=c.id,settings=c.settings;this._buildHTML(d,settings);$(document).click(function(a){if(a.target.id!==d){$("#"+d+"SelectedPanel").hide()}});this._buildCheckboxPanel(d,settings.data)},_buildHTML:function(b,c){var d=c.height+"px",classStyle=this._getDefaults($.completed._defaults,c,"styleClass");var e=$("#"+b);var f="<button onclick=\"$('#"+b+"CheckboxPanel').toggle()\">"+c.buttonText+"</button><div id='"+b+"SelectedPanel' class='"+classStyle.panelClass+"' style='height:"+d+";'></div><div class='none "+classStyle.ckClass+"' id='"+b+"CheckboxPanel'><div>";c.data.sort();e.after(f).bind("keyup",{settings:c},this._keyupAction).bind("keydown",function(a){c.chinese=a.keyCode}).addClass(classStyle.inputClass).width(e.width()-78);var g=$("#"+b+"SelectedPanel");c.tipNum=0;g.width(e.width()+2)},_keyupAction:function(a){var b=a.data.settings,currentWordObj=$.completed._getCurrentWord(this,b);if(currentWordObj.currentWord===""||a.keyCode===27||a.keyCode===16||a.keyCode===16){$("#"+this.id+"SelectedPanel").hide();b.tipNum=0;return}var c=$.completed._getMatchData(b.data,this.value,currentWordObj.currentWord);if(a.keyCode===38){if(b.tipNum>0){b.tipNum--}else{b.tipNum=c.length-1}}if(a.keyCode===40){if(b.tipNum<c.length-1){b.tipNum++}else{b.tipNum=0}}$.completed._buildSelectedPanel(this.id,c,b,currentWordObj.currentWord);if(a.keyCode===13&&c[b.tipNum]&&b.chinese!==229){var d=this.value;this.value=d.substring(0,currentWordObj.startPos)+c[b.tipNum]+d.substring(currentWordObj.endPos,d.length);$("#"+this.id+"SelectedPanel").hide();b.chinese=undefined}if(a.keyCode!==38&&a.keyCode!==40){b.tipNum=0}},_getCurrentWord:function(a,b){var c=$(a).val(),tag=true,endPos=0,startPos=0,separator=$.completed._defaults.separator;if(c===""){return{currentWord:"",startPos:startPos,endPos:endPos}}if(document.selection){try{var d=document.selection.createRange();var f=a.createTextRange();f.collapse(true);f.select();var g=document.selection.createRange();g.setEndPoint("EndToEnd",d);b.curPos=g.text.length;d.select()}catch(e){delete e}}else{b.curPos=a.selectionStart}var h=b.curPos;for(var i=0;i<c.length;i++){if(c.charAt(i)===separator){if(i>=h&&tag){endPos=i;tag=false}}}if(tag===true){tag=false;endPos=c.length}for(var j=endPos;j>-1;j--){if(c.charAt(j)===separator){if(j<h&&!tag){startPos=j+1;tag=true}}}return{currentWord:c.substring(startPos,endPos),startPos:startPos,endPos:endPos}},_getMatchData:function(a,b,c){var d=b.split($.completed._defaults.separator);var e=[];for(var i=0;i<a.length;i++){if(typeof a[i]==="number"){a[i]=a[i].toString()}if(a[i].toLowerCase().indexOf(c.toLowerCase())>-1){var f=true;for(var k=0;k<d.length;k++){if(a[i]===d[k].toString()&&a[i].toLowerCase()!==c.toLowerCase()){f=false}}if(f){e.push(a[i])}}}return e},_mousemoveSelectPanel:function(a,i,b){$(a).parent().find("a").removeClass("selected");a.className='selected';var c=$.completed._getInst(document.getElementById(b));c.settings.tipNum=i},_buildSelectedPanel:function(e,f,g,h){var j=$("#"+e+"SelectedPanel");if(f.length===0){j.html("").hide();return}if(g.tipNum>=f.length){g.tipNum=0}var k="";for(var i=0;i<f.length;i++){var l="",highlightHTML=f[i].replace(h,"<b>"+h+"</b>");if(g.tipNum===i){l="class='selected'"}k+="<a href='javascript:void(0);' onmousemove=\"$.completed._mousemoveSelectPanel(this, "+i+", '"+e+"');\" "+l+">"+highlightHTML+"</a>"}j.html(k).show();var m=$("#"+e+"SelectedPanel a.selected");if(m.position().top+j.scrollTop()>50-m.height()){j.scrollTop(m.position().top+j.scrollTop()+m.height()-50)}if(m.position().top<0){j.scrollTop(j.scrollTop-m.height())}$("#"+e+"SelectedPanel a").click(function(){var a=document.getElementById(e);var b=$.completed._getCurrentWord(document.getElementById(e),g);var c=$.completed._getMatchData(g.data,a.value,b.currentWord);var d=a.value;a.value=d.substring(0,b.startPos)+c[g.tipNum]+d.substring(b.endPos,d.length);g.tipNum=0;$(a).focus()})},_buildCheckboxPanel:function(c,d){var e="",$input=$("#"+c);for(var i=0;i<d.length;i++){e+="<span>"+d[i]+"</span>"}$("#"+c+"CheckboxPanel").html(e+"<div class='clear'></div>");$("#"+c+"CheckboxPanel"+" span").click(function(){var a=$input.val(),currentVal=this.innerHTML;if(this.className==="selected"){this.className="";var b=a.substr(a.indexOf(currentVal)+currentVal.length,1);if(currentVal===a||b!==","){$input.val(a.replace(currentVal,""))}else{$input.val(a.replace(currentVal+",",""))}}else{this.className="selected";if(a.replace(/\s/g,"")===""||a.substr(a.length-1,1)===","){$input.val(a+currentVal)}else{$input.val(a+","+currentVal)}}});this._matchChecked(c);$input.blur(function(){$.completed._matchChecked(c)})},_matchChecked:function(a){var b=$("#"+a).val().split(",");$("#"+a+"CheckboxPanel span").removeClass().each(function(){for(var i=0;i<b.length;i++){if(this.innerHTML===b[i]){this.className="selected"}}})},_getDefaults:function(a,b,c){if(c==="styleClass"){if(b.theme==="default"||b.theme===undefined){return a.styleClass}b.styleClass={};for(var d in a[c]){b.styleClass[d]=b.theme+"-"+a.styleClass[d]}}else if(c==="height"||c==="width"){if(b[c]===null||b[c]===undefined){return"auto"}else{return b[c]+"px"}}else{if(b[c]===null||b[c]===undefined){return a[c]}}return b[c]}});$.fn.completed=function(a){var b=Array.prototype.slice.call(arguments);return this.each(function(){typeof a=='string'?$.completed['_'+a+'Completed'].apply($.completed,[this].concat(b)):$.completed._attach(this,a)})};$.completed=new l();window['DP_jQuery_'+j]=$})(jQuery);
(function($){$.fn.extend({tip:{version:"0.0.0.3",author:"lly219@gmail.com"}});var f=new Date().getTime();var g='tip';var h=function(){this._defaults={"styleClass":{"panel":"tip-panel"}},this._settingsDataFormat={}};$.extend(h.prototype,{_attach:function(a,b){if(!a.id){this.uuid++;a.id='dp'+this.uuid}var c=this._newInst($(a));c.settings=$.extend({},b||{});$.data(a,g,c);this._init(a)},_newInst:function(a){var b=a[0].id.replace(/([^A-Za-z0-9_])/g,'\\\\$1');return{id:b}},_getInst:function(a){try{return $.data(a,g)}catch(err){throw'Missing instance data for this tip.';}},_destroyTip:function(a){$.removeData(a,g);$("#"+a.id+"Panel").remove()},_init:function(a){var b=this._getInst(a);var c=b.id,settings=b.settings;var d='',styleClass=settings.className?settings.className:this._getDefaults($.tip._defaults,settings,"styleClass").panel;d="<div id='"+c+"Panel' class='"+styleClass+"'>"+settings.content+"</div>";$(settings.appendId?"#"+settings.appendId:"body").append(d);$(a).hover(function(){$.tip._parsePosition(settings,a);$("#"+c+"Panel").fadeIn("normal")},function(){$("#"+c+"Panel").fadeOut("normal")})},_optionTip:function(a,b,c){var d=$.tip._getInst(a[0]);var e=d.settings;if(c){e[b]=c;$("#"+a[0].id+"Panel").html(c)}return e[b]},_parsePosition:function(a,b){var c="",$targetPanel=$("#"+b.id+"Panel");if(a.left===undefined&&a.right===undefined&&a.bottom===undefined&&a.top===undefined&&a.position===undefined){a.position="bottom"}if(a.position){var d=$(b);switch(a.position){case"top":c="left: "+parseInt(d.position().left)+"px; top: "+parseInt(d.position().top-$targetPanel.height()-6-parseInt(d.css("padding-top"))-parseInt($targetPanel.css("padding-top")))+"px;";break;case"bottom":c="left: "+parseInt(d.position().left)+"px; top: "+parseInt(d.position().top+d.height())+"px;";break;default:alert("Has no type!");break}$targetPanel.attr("style",c);return}if(a.left!==undefined){c+="left:"+a.left+"px;"}if(a.top!==undefined){c+="top:"+a.top+"px;"}if(a.bottom!==undefined){c+="bottom:"+a.bottom+"px;"}if(a.right!==undefined){c+="right:"+a.right+"px;"}$targetPanel.attr("style",c)},_getDefaults:function(a,b,c){if(c==="styleClass"){if(b.theme==="default"||b.theme===undefined){return a.styleClass}b.styleClass={};for(var d in a[c]){b.styleClass[d]=b.theme+"-"+a.styleClass[d]}}else if(c==="height"||c==="width"){if(b[c]===null||b[c]===undefined){return"auto"}else{return b[c]+"px"}}else{if(b[c]===null||b[c]===undefined){return a[c]}}return b[c]}});$.fn.tip=function(a){var b=Array.prototype.slice.call(arguments);if(a==="option"){b.shift();return $.tip['_'+a+'Tip'].apply($.tip,[this].concat(b))}return this.each(function(){typeof a=='string'?$.tip['_'+a+'Tip'].apply($.tip,[this].concat(b)):$.tip._attach(this,a)})};$.tip=new h();window['DP_jQuery_'+f]=$})(jQuery);
<<<<<<< HEAD
>>>>>>> origin/0.4.6
=======
>>>>>>> origin/0.4.6
(function($){$.fn.extend({tabs:{version:"0.0.1.9",author:"lly219@gmail.com"}});var g=new Date().getTime();var h='tabs';var k=function(){};$.extend(k.prototype,{_attach:function(a,b){if(!a.id){this.uuid++;a.id='dp'+this.uuid}var c=this._newInst($(a));c.settings=$.extend({length:0},b||{});$.data(a,h,c);this._init(a)},_newInst:function(a){var b=a[0].id.replace(/([^A-Za-z0-9_])/g,'\\\\$1');return{id:b}},_getInst:function(a){try{return $.data(a,h)}catch(err){throw'Missing instance data for this tabs';}},_init:function(a){var b=this._getInst(a);var c=b.settings,id=b.id;var d=$(a).find("li");c.data=[];for(var i=0,j=0;i<d.length;i++){if(d[i].children[0].id){c.data[j]=d[i].children[0].id.replace(id+"_","");j++}}},_setCurrentTabs:function(a,b){var c=this._getInst(a);var d=c.settings,id=c.id;if($("#"+id+"_"+b+" a").hasClass("tab-current")){return}var e=d.data;for(var i=0;i<e.length;i++){var f=$("#"+id+"Panel_"+e[i]),$tab=$("#"+id+"_"+e[i]);if(b===e[i]){f.show();$tab.find("a").addClass("tab-current")}else{f.hide();$tab.find("a").removeClass("tab-current")}}},_addTabs:function(a,b){var c=this._getInst(a);var d=c.settings,id=c.id;d.data.push(b.id);var e="";if(b.hash){e="<a href='"+b.hash+"'>"+b.text+"</a>"}else{e="<span>"+b.text+"</span>"}$(b.target).before("<li><div id='"+id+"_"+b.id+"'>"+e+"</div></li>");$("#"+id+"Panel").append("<div id="+id+"Panel_"+b.id+" class='none'>"+b.content+"</div>")},_removeTabs:function(a,b){var c=this._getInst(a);var d=c.settings.data,id=c.id;for(var i=0;i<d.length;i++){if(d[i]===b){d.splice(i,1)}}$("#"+id+"_"+b).remove();$("#"+id+"Pabel_"+b).remove()}});$.fn.tabs=function(a){var b=Array.prototype.slice.call(arguments);if(typeof a==='string'){b.shift();return $.tabs['_'+a+'Tabs'].apply($.tabs,[this[0]].concat(b))}return this.each(function(){$.tabs._attach(this,a)})};$.tabs=new k();window['DP_jQuery_'+g]=$})(jQuery);
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment