From da8d9b0d750f0520edda085a30a31a6abe3783fc Mon Sep 17 00:00:00 2001 From: Zack Yang Date: Thu, 29 Aug 2013 23:00:18 +0800 Subject: [PATCH] Improve user experience. --- .../Task/4.Bundles/BundlesConfig.cs | 2 - .../Content/css/style.css | 12 +- .../Content/css/style.less | 7 +- .../Content/css/style.min.css | 2 +- .../Content/js/app.coffee | 9 +- .../Content/js/app.js | 7 +- .../Content/js/app.min.js | 2 +- .../js/controllers/ArchivesController.coffee | 10 +- .../js/controllers/ArchivesController.js | 12 +- .../js/controllers/ArchivesController.min.js | 2 +- .../js/controllers/GlobalController.coffee | 1 + .../js/controllers/GlobalController.js | 2 +- .../js/controllers/LoginController.coffee | 2 - .../Content/js/controllers/LoginController.js | 2 - .../js/controllers/LoginController.min.js | 2 +- .../js/directives/custom/oDataPager.coffee | 4 +- .../js/directives/custom/oDataPager.js | 66 ++++---- .../js/directives/custom/oDataPager.min.js | 2 +- .../js/directives/custom/upload.coffee | 8 +- .../Content/js/directives/custom/upload.js | 108 ++++++------- .../js/directives/custom/upload.min.js | 2 +- .../js/services/ChannelServices.coffee | 6 + .../Content/js/services/ChannelServices.js | 8 + .../js/services/ChannelServices.min.js | 2 +- .../Views/Shared/layout-header.cshtml | 6 +- .../YangKai.BlogEngine.Web.Mvc.csproj | 1 - .../_todo/Article/calendar.cshtml | 35 ----- .../feed_articles.xml | 146 +++--------------- .../partials/Admin/article/detail.html | 4 +- .../partials/Article/archives.html | 30 +++- 30 files changed, 213 insertions(+), 289 deletions(-) delete mode 100644 src/YangKai.BlogEngine.Web.Mvc/_todo/Article/calendar.cshtml diff --git a/src/YangKai.BlogEngine.Web.Mvc.BootStrapper/Task/4.Bundles/BundlesConfig.cs b/src/YangKai.BlogEngine.Web.Mvc.BootStrapper/Task/4.Bundles/BundlesConfig.cs index fbfe4428..1a1af86f 100644 --- a/src/YangKai.BlogEngine.Web.Mvc.BootStrapper/Task/4.Bundles/BundlesConfig.cs +++ b/src/YangKai.BlogEngine.Web.Mvc.BootStrapper/Task/4.Bundles/BundlesConfig.cs @@ -20,8 +20,6 @@ public void Run() "~/Content/js/buttons.js", "~/Content/js/md5.js", "~/Content/js/uuid.js", - "~/Content/plugin/ckeditor_3.6.1/ckeditor.js", - "~/Content/plugin/ckfinder_aspnet_2.0.1/ckfinder.js", "~/Content/plugin/syntaxhighlighter_3.0.83/scripts/shCore.js", "~/Content/plugin/syntaxhighlighter_3.0.83/scripts/shBrushCSharp.js", "~/Content/plugin/syntaxhighlighter_3.0.83/scripts/shBrushCss.js", diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.css b/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.css index d1741ff2..5ee1ddd0 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.css +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.css @@ -87,6 +87,9 @@ h6, .bg-color-yellow { background-color: #ffc40d !important; } +.bg-color-pink { + background-color: #c3325f !important; +} ::-moz-selection { background: #f2dede; } @@ -329,8 +332,13 @@ article .date div:last-child { color: #FFF; float: left; } -.bg-color-pink { - background-color: #c3325f !important; +#archives .group > a, +.group > a:hover { + color: #333333; +} +#archives ul { + padding: 5px; + margin-left: 10px; } .intro h5 { margin: 10px 0 10px 0; diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.less b/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.less index 053b3e31..16abe1cd 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.less +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.less @@ -25,6 +25,7 @@ line-height:1.4 .bg-color-darken {background-color: #1c1c1c !important;} .bg-color-orange {background-color: #CD4900 !important;} .bg-color-yellow {background-color: #ffc40d !important;} +.bg-color-pink {background-color: #c3325f !important;} //文章选中颜色 ::-moz-selection {background: #f2dede;} @@ -279,11 +280,11 @@ article { float: left; } } -.bg-color-pink { - background-color: #c3325f !important; -} +#archives .group >a,.group >a:hover{color:#333} +#archives ul{ padding: 5px;margin-left: 10px;} + .intro { h5 { margin: 10px 0 10px 0; diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.min.css b/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.min.css index 3a51ea2f..21340b1d 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.min.css +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/css/style.min.css @@ -1 +1 @@ -body{padding-top:60px;padding-bottom:20px;font-family:"Microsoft YaHei","微软雅黑",PMingLiU,Verdana,Arial,Helvetica,sans-serif;background:url(/Content/img/bg.png)}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Microsoft YaHei","微软雅黑",PMingLiU,Verdana,Arial,Helvetica,sans-serif;line-height:1.4}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#ccc;margin-top:5px;margin-right:-10px}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.bg-color-purple{background-color:#603cba!important}.bg-color-greenDark{background-color:#008641!important}.bg-color-blue{background-color:#0072bc!important}.bg-color-red{background-color:#bc1c48!important}.bg-color-green{background-color:#01a31c!important}.bg-color-blueDark{background-color:#662d91!important}.bg-color-darken{background-color:#1c1c1c!important}.bg-color-orange{background-color:#cd4900!important}.bg-color-yellow{background-color:#ffc40d!important}::-moz-selection{background:#f2dede}::selection{background:#f2dede}::-webkit-selection{background:#f2dede}.ui-match{background:#ff9632}a:hover{text-decoration:none}a.button:hover{color:#fff}.loading{padding:5px 5px 0 20px;background:url(/Content/img/ajax-loader.gif) 0 3px no-repeat}article{margin-bottom:20px;border-radius:0;padding:0 20px 20px 20px;margin:10px 0;min-height:200px}article .categories a:first-child .tags a:first-child{padding-left:2px}article section{margin-left:85px}article .categories{margin-right:10px}article .thumb{margin:0 15px 0 10px;float:left}article header h2{margin-top:0}article header h2 a{cursor:pointer}article header h2 strong{margin-left:10px;padding-left:5px;font-size:24px;color:#428bca}article header div{margin:-10px 5px 20px 80px;padding-top:3px;border-top:1px solid #27aae2}article header div>span,article header article footer span{margin-right:20px}article li{margin-bottom:25px}article .date{width:70px;height:70px;background-color:#0072bc;color:#fff;float:left;text-align:center;font-weight:bold;font-family:Georgia,Arial,Tahoma,Geneva}article .date div:first-child{font-size:38px;margin-top:2px;height:46px;line-height:46px}article .date div:last-child{margin-top:-3px;font-size:15px;height:18px;line-height:18px}.img-article-thumbnail{width:160px;height:100px}.pagination{margin-bottom:5px}.pagination a{cursor:pointer}.technologies{color:#fff;margin:20px auto}.technologies a{height:130px;width:130px;margin:5px;padding:15px;color:#000;display:block;cursor:pointer;overflow:hidden;text-decoration:none;border:1px solid #ccc}.technologies a p{padding-top:15px;font-size:12px}.technologies a div{text-align:center;display:block}.technologies a div img{width:80px;height:80px}.technologies a.wide{width:270px}.technologies a:hover{outline:3px #225a68 solid}.post-related{line-height:20px;font-size:13px;margin-top:40px}.post-related ul{list-style:none}.post-related ul li{line-height:26px}.post-related ul li a:hover{color:#01a31c}.post-related .title{border-top:6px solid #01a31c;height:1px;margin:20px 0 30px 0;position:relative}.post-related .title span{display:block;height:40px;padding:0 18px;line-height:40px;background:#01a31c;color:#fff;position:absolute;top:-25px;overflow:hidden}.home{text-align:center;margin-top:20px}#cta-content{margin-top:-10px;height:500px;width:100%;background:url('/Content/img/main_bg_tile.jpg') repeat-x transparent 50% 50%;text-align:center;color:#fff}#cta-content h1,#cta-content h2{text-shadow:0 0 10px rgba(0,0,0,.5)}#cta-content .grid-image{width:100%;height:100%;background:url('/Content/img/main_bg_grid_tile.png') repeat transparent}#cta-content .lights{width:100%;height:100%;background:url('/Content/img/main_bg_image.jpg') repeat-x transparent 50% 50%}#cta-content .wrapped-content{padding:150px 0 20px 0;margin:auto}#cta-content h1{letter-spacing:12px;color:#fff;font-size:50px;margin:3px 0}#cta-content h2{font-weight:normal;letter-spacing:1px;margin-top:20px;margin-bottom:40px;font-size:22px}#cta-content h2 p{margin:auto;font-weight:normal;letter-spacing:1px;font-size:12px;padding-top:10px}.post-nav a,.post-nav span{height:35px;display:block;color:#fff;padding:0 20px 0 20px}.post-nav{margin-bottom:15px;letter-spacing:4px;overflow:hidden;display:block;text-align:center;margin-left:16px;position:relative}.post-nav a:hover{background:#0072bc;text-decoration:none}.post-nav li{line-height:35px;height:35px;display:block;margin-right:20px;background:#ccc;color:#fff;float:left}.bg-color-pink{background-color:#c3325f!important}.intro h5{margin:10px 0 10px 0;padding-bottom:10px;border-bottom:5px solid}.intro h5.green{border-color:#008641;color:#008641}.intro h5.red{border-color:#bc1c48;color:#bc1c48}.intro h5.yellow{border-color:#ffc40d;color:#ffc40d}.breadcrumb{padding-left:10px;border-left:#f88fb7 20px solid;border-radius:0}.comment{line-height:20px;font-size:13px;margin-top:40px;position:relative}.comment li:hover .gravatar{border-right-color:#e38383}.comment li:hover .comment-meta a{display:inline}.comment .comment-meta a{display:none;margin-top:5px;color:#ccc}.comment ul{list-style:none}.comment .commentid{font-weight:bold;color:#e38383}.comment .text>span{float:right;padding-right:5px;font-size:13px;color:#ccc}.comment li{margin-bottom:15px;padding-bottom:21px;background:url(/Content/img/postline.png) bottom repeat-x;zoom:1}.comment .nocomment{padding:20px;font-size:20px}.comment .gravatar{float:left;padding-right:20px;border-right:1px solid #d1d9db;margin:0 20px 0 0;border-right-color:#d1d9db}.comment .title{border-top:6px solid #0072bc;height:1px;margin:20px 0 40px 0;position:relative}.comment .title span{display:block;height:40px;padding:0 18px;line-height:40px;background:#0072bc;color:#fff;position:absolute;top:-25px;overflow:hidden}.gravatar img{width:40px;height:40px}.loadingbox{text-align:center;height:24px;line-height:12px;position:absolute;left:50%;top:0;margin-left:-45px;padding:6px 16px 6px 16px;font-weight:bold;font-size:12px;color:#333;background:#f9edbe;border:1px solid #f0c36d;border-radius:5px;z-index:10000}.navbar .search{margin:12px 15px 0 15px;height:28px;padding:4px 20px 4px 8px;font-size:12px;font-weight:normal;width:90px;border:none;-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.4),0 1px 0 rgba(255,255,255,.1);-moz-box-shadow:inset 0 1px 0 rgba(0,0,0,.4),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(0,0,0,.4),0 1px 0 rgba(255,255,255,.1);-webkit-border-radius:12px;-moz-border-radius:12px;border-radius:12px;-webkit-transition:width .7s;-moz-transition:width .7s;transition:width .7s}.navbar .search:focus{width:180px}.navbar .btn-navbar{margin-top:10px}.navbar .navbar-brand{padding:5px 20px 5px}.navbar .navbar-brand img{width:40px;height:40px;margin-right:10px}.container .content{margin:0 auto;color:#666}.container>footer{text-align:center}.container>footer .footer-links{margin-top:10px}.container>footer .footer-links li:first-child{padding-left:0}.container>footer .footer-links li{display:inline;padding:0 2px}.container>footer p{margin-bottom:0;color:#777}.avatar-mini{width:24px;height:24px}.personal-box{padding:15px;width:320px}.personal-box p{color:#666}.personal-box .avatar{width:80px;height:80px}.personal-box .hr{border-bottom:1px solid #bebebe;-moz-box-shadow:0 2px 4px rgba(0,0,0,.12);-o-box-shadow:0 2px 4px rgba(0,0,0,.12);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.12);box-shadow:0 2px 4px rgba(0,0,0,.12);margin-bottom:15px;padding-bottom:15px}table .action{width:20px}.sider{position:relative;padding:45px 15px 15px;margin:0 -15px 15px;background-color:#fafafa;border-color:#e5e5e5 #eee #eee;border-style:solid;border-width:1px 0;margin-left:0;margin-right:0;background-color:#fff;border-width:1px;border-color:#ddd;border-radius:4px 4px 0 0;box-shadow:none}.sider>div:first-child{position:absolute;top:15px;left:15px;font-size:12px;font-weight:bold;color:#bbb;text-transform:uppercase;letter-spacing:1px}.sider.has-error{border-color:#b94a48}.sider.has-error>div:first-child{color:#b94a48}.form-group.has-error span[class*="cke_editor_"]{border-color:#b94a48}@media screen and (max-width:480px){.navbar .navbar-right input{display:block}#cta-content{height:250px}#cta-content h1{font-size:16px}#cta-content h2{font-size:12px}#cta-content .wrapped-content{padding:70px 0 20px 0}}@media screen and (min-width:480px){.navbar .navbar-right input{display:none}#cta-content{height:350px}#cta-content h1{font-size:20px}#cta-content h2{font-size:16px}#cta-content .wrapped-content{padding:120px 0 20px 0}}@media screen and (min-width:768px){.navbar .navbar-right input{display:none}#cta-content{height:500px}#cta-content h1{font-size:30px}#cta-content h2{font-size:18px}#cta-content .wrapped-content{padding:150px 0 20px 0}}@media screen and (min-width:992px){.navbar .navbar-right input{display:none}#cta-content{height:450px}#cta-content h1{font-size:40px}#cta-content h2{font-size:20px}#cta-content .wrapped-content{padding:140px 0 20px 0}}@media screen and (min-width:1200px){.navbar .navbar-right input{display:block}#cta-content{height:500px}#cta-content h1{font-size:50px}#cta-content h2{font-size:22px}#cta-content .wrapped-content{padding:150px 0 20px 0}} \ No newline at end of file +body{padding-top:60px;padding-bottom:20px;font-family:"Microsoft YaHei","微软雅黑",PMingLiU,Verdana,Arial,Helvetica,sans-serif;background:url(/Content/img/bg.png)}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Microsoft YaHei","微软雅黑",PMingLiU,Verdana,Arial,Helvetica,sans-serif;line-height:1.4}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#ccc;margin-top:5px;margin-right:-10px}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.bg-color-purple{background-color:#603cba!important}.bg-color-greenDark{background-color:#008641!important}.bg-color-blue{background-color:#0072bc!important}.bg-color-red{background-color:#bc1c48!important}.bg-color-green{background-color:#01a31c!important}.bg-color-blueDark{background-color:#662d91!important}.bg-color-darken{background-color:#1c1c1c!important}.bg-color-orange{background-color:#cd4900!important}.bg-color-yellow{background-color:#ffc40d!important}.bg-color-pink{background-color:#c3325f!important}::-moz-selection{background:#f2dede}::selection{background:#f2dede}::-webkit-selection{background:#f2dede}.ui-match{background:#ff9632}a:hover{text-decoration:none}a.button:hover{color:#fff}.loading{padding:5px 5px 0 20px;background:url(/Content/img/ajax-loader.gif) 0 3px no-repeat}article{margin-bottom:20px;border-radius:0;padding:0 20px 20px 20px;margin:10px 0;min-height:200px}article .categories a:first-child .tags a:first-child{padding-left:2px}article section{margin-left:85px}article .categories{margin-right:10px}article .thumb{margin:0 15px 0 10px;float:left}article header h2{margin-top:0}article header h2 a{cursor:pointer}article header h2 strong{margin-left:10px;padding-left:5px;font-size:24px;color:#428bca}article header div{margin:-10px 5px 20px 80px;padding-top:3px;border-top:1px solid #27aae2}article header div>span,article header article footer span{margin-right:20px}article li{margin-bottom:25px}article .date{width:70px;height:70px;background-color:#0072bc;color:#fff;float:left;text-align:center;font-weight:bold;font-family:Georgia,Arial,Tahoma,Geneva}article .date div:first-child{font-size:38px;margin-top:2px;height:46px;line-height:46px}article .date div:last-child{margin-top:-3px;font-size:15px;height:18px;line-height:18px}.img-article-thumbnail{width:160px;height:100px}.pagination{margin-bottom:5px}.pagination a{cursor:pointer}.technologies{color:#fff;margin:20px auto}.technologies a{height:130px;width:130px;margin:5px;padding:15px;color:#000;display:block;cursor:pointer;overflow:hidden;text-decoration:none;border:1px solid #ccc}.technologies a p{padding-top:15px;font-size:12px}.technologies a div{text-align:center;display:block}.technologies a div img{width:80px;height:80px}.technologies a.wide{width:270px}.technologies a:hover{outline:3px #225a68 solid}.post-related{line-height:20px;font-size:13px;margin-top:40px}.post-related ul{list-style:none}.post-related ul li{line-height:26px}.post-related ul li a:hover{color:#01a31c}.post-related .title{border-top:6px solid #01a31c;height:1px;margin:20px 0 30px 0;position:relative}.post-related .title span{display:block;height:40px;padding:0 18px;line-height:40px;background:#01a31c;color:#fff;position:absolute;top:-25px;overflow:hidden}.home{text-align:center;margin-top:20px}#cta-content{margin-top:-10px;height:500px;width:100%;background:url('/Content/img/main_bg_tile.jpg') repeat-x transparent 50% 50%;text-align:center;color:#fff}#cta-content h1,#cta-content h2{text-shadow:0 0 10px rgba(0,0,0,.5)}#cta-content .grid-image{width:100%;height:100%;background:url('/Content/img/main_bg_grid_tile.png') repeat transparent}#cta-content .lights{width:100%;height:100%;background:url('/Content/img/main_bg_image.jpg') repeat-x transparent 50% 50%}#cta-content .wrapped-content{padding:150px 0 20px 0;margin:auto}#cta-content h1{letter-spacing:12px;color:#fff;font-size:50px;margin:3px 0}#cta-content h2{font-weight:normal;letter-spacing:1px;margin-top:20px;margin-bottom:40px;font-size:22px}#cta-content h2 p{margin:auto;font-weight:normal;letter-spacing:1px;font-size:12px;padding-top:10px}.post-nav a,.post-nav span{height:35px;display:block;color:#fff;padding:0 20px 0 20px}.post-nav{margin-bottom:15px;letter-spacing:4px;overflow:hidden;display:block;text-align:center;margin-left:16px;position:relative}.post-nav a:hover{background:#0072bc;text-decoration:none}.post-nav li{line-height:35px;height:35px;display:block;margin-right:20px;background:#ccc;color:#fff;float:left}#archives .group>a,.group>a:hover{color:#333}#archives ul{padding:5px;margin-left:10px}.intro h5{margin:10px 0 10px 0;padding-bottom:10px;border-bottom:5px solid}.intro h5.green{border-color:#008641;color:#008641}.intro h5.red{border-color:#bc1c48;color:#bc1c48}.intro h5.yellow{border-color:#ffc40d;color:#ffc40d}.breadcrumb{padding-left:10px;border-left:#f88fb7 20px solid;border-radius:0}.comment{line-height:20px;font-size:13px;margin-top:40px;position:relative}.comment li:hover .gravatar{border-right-color:#e38383}.comment li:hover .comment-meta a{display:inline}.comment .comment-meta a{display:none;margin-top:5px;color:#ccc}.comment ul{list-style:none}.comment .commentid{font-weight:bold;color:#e38383}.comment .text>span{float:right;padding-right:5px;font-size:13px;color:#ccc}.comment li{margin-bottom:15px;padding-bottom:21px;background:url(/Content/img/postline.png) bottom repeat-x;zoom:1}.comment .nocomment{padding:20px;font-size:20px}.comment .gravatar{float:left;padding-right:20px;border-right:1px solid #d1d9db;margin:0 20px 0 0;border-right-color:#d1d9db}.comment .title{border-top:6px solid #0072bc;height:1px;margin:20px 0 40px 0;position:relative}.comment .title span{display:block;height:40px;padding:0 18px;line-height:40px;background:#0072bc;color:#fff;position:absolute;top:-25px;overflow:hidden}.gravatar img{width:40px;height:40px}.loadingbox{text-align:center;height:24px;line-height:12px;position:absolute;left:50%;top:0;margin-left:-45px;padding:6px 16px 6px 16px;font-weight:bold;font-size:12px;color:#333;background:#f9edbe;border:1px solid #f0c36d;border-radius:5px;z-index:10000}.navbar .search{margin:12px 15px 0 15px;height:28px;padding:4px 20px 4px 8px;font-size:12px;font-weight:normal;width:90px;border:none;-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.4),0 1px 0 rgba(255,255,255,.1);-moz-box-shadow:inset 0 1px 0 rgba(0,0,0,.4),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(0,0,0,.4),0 1px 0 rgba(255,255,255,.1);-webkit-border-radius:12px;-moz-border-radius:12px;border-radius:12px;-webkit-transition:width .7s;-moz-transition:width .7s;transition:width .7s}.navbar .search:focus{width:180px}.navbar .btn-navbar{margin-top:10px}.navbar .navbar-brand{padding:5px 20px 5px}.navbar .navbar-brand img{width:40px;height:40px;margin-right:10px}.container .content{margin:0 auto;color:#666}.container>footer{text-align:center}.container>footer .footer-links{margin-top:10px}.container>footer .footer-links li:first-child{padding-left:0}.container>footer .footer-links li{display:inline;padding:0 2px}.container>footer p{margin-bottom:0;color:#777}.avatar-mini{width:24px;height:24px}.personal-box{padding:15px;width:320px}.personal-box p{color:#666}.personal-box .avatar{width:80px;height:80px}.personal-box .hr{border-bottom:1px solid #bebebe;-moz-box-shadow:0 2px 4px rgba(0,0,0,.12);-o-box-shadow:0 2px 4px rgba(0,0,0,.12);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.12);box-shadow:0 2px 4px rgba(0,0,0,.12);margin-bottom:15px;padding-bottom:15px}table .action{width:20px}.sider{position:relative;padding:45px 15px 15px;margin:0 -15px 15px;background-color:#fafafa;border-color:#e5e5e5 #eee #eee;border-style:solid;border-width:1px 0;margin-left:0;margin-right:0;background-color:#fff;border-width:1px;border-color:#ddd;border-radius:4px 4px 0 0;box-shadow:none}.sider>div:first-child{position:absolute;top:15px;left:15px;font-size:12px;font-weight:bold;color:#bbb;text-transform:uppercase;letter-spacing:1px}.sider.has-error{border-color:#b94a48}.sider.has-error>div:first-child{color:#b94a48}.form-group.has-error span[class*="cke_editor_"]{border-color:#b94a48}@media screen and (max-width:480px){.navbar .navbar-right input{display:block}#cta-content{height:250px}#cta-content h1{font-size:16px}#cta-content h2{font-size:12px}#cta-content .wrapped-content{padding:70px 0 20px 0}}@media screen and (min-width:480px){.navbar .navbar-right input{display:none}#cta-content{height:350px}#cta-content h1{font-size:20px}#cta-content h2{font-size:16px}#cta-content .wrapped-content{padding:120px 0 20px 0}}@media screen and (min-width:768px){.navbar .navbar-right input{display:none}#cta-content{height:500px}#cta-content h1{font-size:30px}#cta-content h2{font-size:18px}#cta-content .wrapped-content{padding:150px 0 20px 0}}@media screen and (min-width:992px){.navbar .navbar-right input{display:none}#cta-content{height:450px}#cta-content h1{font-size:40px}#cta-content h2{font-size:20px}#cta-content .wrapped-content{padding:140px 0 20px 0}}@media screen and (min-width:1200px){.navbar .navbar-right input{display:block}#cta-content{height:500px}#cta-content h1{font-size:50px}#cta-content h2{font-size:22px}#cta-content .wrapped-content{padding:150px 0 20px 0}} \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.coffee b/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.coffee index ae43fdb7..ff033fba 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.coffee +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.coffee @@ -4,6 +4,7 @@ 'ArticleServices', 'CommentServices', 'UserServices', +'ChannelServices', 'customDirectives', 'ngProgress', 'ui.utils', @@ -92,10 +93,10 @@ angular.module("app-admin",['formatFilters', templateUrl: "/partials/Admin/board/list.html" controller: BoardController) #home - .when("/", - templateUrl: "/partials/Admin/index.html" - controller: HomeController) - .otherwise redirectTo: "/" + #.when("/", + # templateUrl: "/partials/Admin/index.html" + # controller: HomeController) + .otherwise redirectTo: "/article" ] interceptor = ["$rootScope", "$q", (scope, $q) -> diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.js index ad6f2e50..24365b94 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.js @@ -1,6 +1,6 @@ var interceptor; -angular.module("app", ['formatFilters', 'MessageServices', 'ArticleServices', 'CommentServices', 'UserServices', 'customDirectives', 'ngProgress', 'ui.utils', 'ui.bootstrap', 'ngGrid']).config([ +angular.module("app", ['formatFilters', 'MessageServices', 'ArticleServices', 'CommentServices', 'UserServices', 'ChannelServices', 'customDirectives', 'ngProgress', 'ui.utils', 'ui.bootstrap', 'ngGrid']).config([ "$locationProvider", "$routeProvider", "$httpProvider", function($locationProvider, $routeProvider, $httpProvider) { $httpProvider.responseInterceptors.push(interceptor); $locationProvider.html5Mode(false).hashPrefix('!'); @@ -64,11 +64,8 @@ angular.module("app-admin", ['formatFilters', 'MessageServices', 'ArticleService }).when("/board", { templateUrl: "/partials/Admin/board/list.html", controller: BoardController - }).when("/", { - templateUrl: "/partials/Admin/index.html", - controller: HomeController }).otherwise({ - redirectTo: "/" + redirectTo: "/article" }); } ]); diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.min.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.min.js index 296c4777..83501503 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.min.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/app.min.js @@ -1 +1 @@ -var interceptor;angular.module("app",["formatFilters","MessageServices","ArticleServices","CommentServices","UserServices","customDirectives","ngProgress","ui.utils","ui.bootstrap","ngGrid"]).config(["$locationProvider","$routeProvider","$httpProvider",function(n,t,i){return i.responseInterceptors.push(interceptor),n.html5Mode(!1).hashPrefix("!"),t.when("/list/:channel/:group/:type/:query",{templateUrl:"/partials/Article/list.html",controller:ArticleListController}).when("/list/:channel/:group",{templateUrl:"/partials/Article/list.html",controller:ArticleListController}).when("/list/:channel",{templateUrl:"/partials/Article/list.html",controller:ArticleListController}).when("/search/:key",{templateUrl:"/partials/Article/list.html",controller:ArticleListController}).when("/post/:url",{templateUrl:"/partials/Article/detail.html",controller:ArticleDetailController}).when("/archives",{templateUrl:"/partials/Article/archives.html",controller:ArchivesController}).when("/board",{templateUrl:"/partials/message.html",controller:MessageController}).when("/about",{templateUrl:"/partials/about.html",controller:AboutController}).when("/",{templateUrl:"/partials/index.html",controller:HomeController}).otherwise({redirectTo:"/"})}]),angular.module("app-login",["UserServices","ui.utils","ui.bootstrap"]),angular.module("app-admin",["formatFilters","MessageServices","ArticleServices","CommentServices","UserServices","ChannelServices","GroupServices","CategoryServices","customDirectives","ngProgress","FileUpload","ui.utils","ui.bootstrap","ngGrid"]).config(["$locationProvider","$routeProvider","$httpProvider",function(n,t,i){return i.responseInterceptors.push(interceptor),n.html5Mode(!1).hashPrefix("!"),t.when("/channel",{templateUrl:"/partials/Admin/channel/list.html",controller:ChannelController}).when("/channel(':channel')/group",{templateUrl:"/partials/Admin/group/list.html",controller:GroupController}).when("/channel(':channel')/group(':group')/category",{templateUrl:"/partials/Admin/category/list.html",controller:CategoryController}).when("/article",{templateUrl:"/partials/Admin/article/list.html",controller:ArticleController}).when("/article(':id')",{templateUrl:"/partials/Admin/article/detail.html",controller:ArticleDetailController}).when("/article/new",{templateUrl:"/partials/Admin/article/detail.html",controller:ArticleDetailController}).when("/board",{templateUrl:"/partials/Admin/board/list.html",controller:BoardController}).when("/",{templateUrl:"/partials/Admin/index.html",controller:HomeController}).otherwise({redirectTo:"/"})}]),interceptor=["$rootScope","$q",function(n,t){var i,r;return r=function(n){return n},i=function(n){var i;return i=n.status,i===401?message.error("401 Unauthorized"):i===400?message.error(n.data["odata.error"].innererror.message):i===500&&message.error(n.data["odata.error"].innererror.message),t.reject(n)},function(n){return n.then(r,i)}}] \ No newline at end of file +var interceptor;angular.module("app",["formatFilters","MessageServices","ArticleServices","CommentServices","UserServices","ChannelServices","customDirectives","ngProgress","ui.utils","ui.bootstrap","ngGrid"]).config(["$locationProvider","$routeProvider","$httpProvider",function(n,t,i){return i.responseInterceptors.push(interceptor),n.html5Mode(!1).hashPrefix("!"),t.when("/list/:channel/:group/:type/:query",{templateUrl:"/partials/Article/list.html",controller:ArticleListController}).when("/list/:channel/:group",{templateUrl:"/partials/Article/list.html",controller:ArticleListController}).when("/list/:channel",{templateUrl:"/partials/Article/list.html",controller:ArticleListController}).when("/search/:key",{templateUrl:"/partials/Article/list.html",controller:ArticleListController}).when("/post/:url",{templateUrl:"/partials/Article/detail.html",controller:ArticleDetailController}).when("/archives",{templateUrl:"/partials/Article/archives.html",controller:ArchivesController}).when("/board",{templateUrl:"/partials/message.html",controller:MessageController}).when("/about",{templateUrl:"/partials/about.html",controller:AboutController}).when("/",{templateUrl:"/partials/index.html",controller:HomeController}).otherwise({redirectTo:"/"})}]),angular.module("app-login",["UserServices","ui.utils","ui.bootstrap"]),angular.module("app-admin",["formatFilters","MessageServices","ArticleServices","CommentServices","UserServices","ChannelServices","GroupServices","CategoryServices","customDirectives","ngProgress","FileUpload","ui.utils","ui.bootstrap","ngGrid"]).config(["$locationProvider","$routeProvider","$httpProvider",function(n,t,i){return i.responseInterceptors.push(interceptor),n.html5Mode(!1).hashPrefix("!"),t.when("/channel",{templateUrl:"/partials/Admin/channel/list.html",controller:ChannelController}).when("/channel(':channel')/group",{templateUrl:"/partials/Admin/group/list.html",controller:GroupController}).when("/channel(':channel')/group(':group')/category",{templateUrl:"/partials/Admin/category/list.html",controller:CategoryController}).when("/article",{templateUrl:"/partials/Admin/article/list.html",controller:ArticleController}).when("/article(':id')",{templateUrl:"/partials/Admin/article/detail.html",controller:ArticleDetailController}).when("/article/new",{templateUrl:"/partials/Admin/article/detail.html",controller:ArticleDetailController}).when("/board",{templateUrl:"/partials/Admin/board/list.html",controller:BoardController}).otherwise({redirectTo:"/article"})}]),interceptor=["$rootScope","$q",function(n,t){var i,r;return r=function(n){return n},i=function(n){var i;return i=n.status,i===401?message.error("401 Unauthorized"):i===400?message.error(n.data["odata.error"].innererror.message):i===500&&message.error(n.data["odata.error"].innererror.message),t.reject(n)},function(n){return n.then(r,i)}}] \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.coffee b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.coffee index 36487aa9..086d1028 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.coffee +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.coffee @@ -1,4 +1,12 @@ -ArchivesController=["$scope","$http", ($scope,$http) -> +ArchivesController=["$scope","Channel", ($scope,Channel) -> $scope.$parent.title='Archives' $scope.$parent.showBanner=false + + $scope.load = -> + $scope.loading=true + Channel.archives (data)-> + $scope.list = data + $scope.loading=false + + $scope.load() ] \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.js index dd56d377..c31ca05e 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.js @@ -1,8 +1,16 @@ var ArchivesController; ArchivesController = [ - "$scope", "$http", function($scope, $http) { + "$scope", "Channel", function($scope, Channel) { $scope.$parent.title = 'Archives'; - return $scope.$parent.showBanner = false; + $scope.$parent.showBanner = false; + $scope.load = function() { + $scope.loading = true; + return Channel.archives(function(data) { + $scope.list = data; + return $scope.loading = false; + }); + }; + return $scope.load(); } ]; diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.min.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.min.js index 15abde93..288a61eb 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.min.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/ArchivesController.min.js @@ -1 +1 @@ -var ArchivesController=["$scope","$http",function(n){return n.$parent.title="Archives",n.$parent.showBanner=!1}] \ No newline at end of file +var ArchivesController=["$scope","Channel",function(n,t){return n.$parent.title="Archives",n.$parent.showBanner=!1,n.load=function(){return n.loading=!0,t.archives(function(t){return n.list=t,n.loading=!1})},n.load()}] \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/GlobalController.coffee b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/GlobalController.coffee index ee3906fe..544f6111 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/GlobalController.coffee +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/GlobalController.coffee @@ -7,5 +7,6 @@ $scope.User=data $scope.search = -> + debugger $window.location.href="/#!/search/#{$scope.key}" ] diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/GlobalController.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/GlobalController.js index 4351c3e5..c467b709 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/GlobalController.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/GlobalController.js @@ -11,7 +11,7 @@ GlobalController = [ return $scope.User = data; }); return $scope.search = function() { - return $window.location.href = "/#!/search/" + $scope.key; + debugger; return $window.location.href = "/#!/search/" + $scope.key; }; } ]; diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.coffee b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.coffee index 3241af88..25670669 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.coffee +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.coffee @@ -20,7 +20,6 @@ $window.location.href='/admin' ,(error)-> $scope.user.Password='' - message.error error.data['odata.error'].innererror.message $scope.submitting=false $scope.signout = -> @@ -49,6 +48,5 @@ LoginDialogController=["$scope","$window", "dialog","User",($scope,$window, dial $window.location.href='/' ,(error)-> $scope.user.Password='' - message.error error.data['odata.error'].innererror.message $scope.submitting=false ] \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.js index 8ee7ae1e..fa1b360c 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.js @@ -23,7 +23,6 @@ LoginController = [ return $window.location.href = '/admin'; }, function(error) { $scope.user.Password = ''; - message.error(error.data['odata.error'].innererror.message); return $scope.submitting = false; }); }; @@ -59,7 +58,6 @@ LoginDialogController = [ return $window.location.href = '/'; }, function(error) { $scope.user.Password = ''; - message.error(error.data['odata.error'].innererror.message); return $scope.submitting = false; }); }; diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.min.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.min.js index d389de28..274ce02c 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.min.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/controllers/LoginController.min.js @@ -1 +1 @@ -var LoginController,LoginDialogController;LoginController=["$scope","$window","$dialog","User",function(n,t,i,r){return n.opts={dialogFade:!0,backdropFade:!0,templateUrl:"/partials/admin/login-dialog.html",controller:"LoginDialogController"},n.open=function(){return i.dialog(n.opts).open()},n.close=function(){return n.sgindialog=!1},n.signin=function(){return n.submitting=!0,r.signin({id:"(1)"},n.user,function(){return n.submitting=!1,t.location.href="/admin"},function(t){return n.user.Password="",message.error(t.data["odata.error"].innererror.message),n.submitting=!1})},n.signout=function(){return n.submitting=!0,r.signout({id:"(1)"},function(){return n.submitting=!1,t.location.href="/"})},n.manage=function(){return t.location.href="/admin/"},n.view=function(){return t.location.href="/"}}],LoginDialogController=["$scope","$window","dialog","User",function(n,t,i,r){return n.close=function(n){return i.close(n)},n.signin=function(){return n.submitting=!0,r.signin({id:"(1)"},n.user,function(){return n.submitting=!1,t.location.href="/"},function(t){return n.user.Password="",message.error(t.data["odata.error"].innererror.message),n.submitting=!1})}}] \ No newline at end of file +var LoginController,LoginDialogController;LoginController=["$scope","$window","$dialog","User",function(n,t,i,r){return n.opts={dialogFade:!0,backdropFade:!0,templateUrl:"/partials/admin/login-dialog.html",controller:"LoginDialogController"},n.open=function(){return i.dialog(n.opts).open()},n.close=function(){return n.sgindialog=!1},n.signin=function(){return n.submitting=!0,r.signin({id:"(1)"},n.user,function(){return n.submitting=!1,t.location.href="/admin"},function(){return n.user.Password="",n.submitting=!1})},n.signout=function(){return n.submitting=!0,r.signout({id:"(1)"},function(){return n.submitting=!1,t.location.href="/"})},n.manage=function(){return t.location.href="/admin/"},n.view=function(){return t.location.href="/"}}],LoginDialogController=["$scope","$window","dialog","User",function(n,t,i,r){return n.close=function(n){return i.close(n)},n.signin=function(){return n.submitting=!0,r.signin({id:"(1)"},n.user,function(){return n.submitting=!1,t.location.href="/"},function(){return n.user.Password="",n.submitting=!1})}}] \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.coffee b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.coffee index 99ee039d..0c5ef3ca 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.coffee +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.coffee @@ -1,4 +1,4 @@ -myDirectives.directive "odataPager", ($compile)-> +myDirectives.directive "odataPager", ['$compile',($compile)-> (scope, element, attrs) -> data=undefined @@ -20,4 +20,4 @@ data=value return if data==null or data==undefined update() - \ No newline at end of file +] \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.js index b96b7901..bb84c35d 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.js @@ -1,34 +1,36 @@  -myDirectives.directive("odataPager", function($compile) { - return function(scope, element, attrs) { - var data, update; - data = void 0; - update = function() { - if (scope.currentPage === void 0) { - scope.currentPage = 1; - } - if (scope.numData !== data['odata.count'] && scope.numData) { - scope.currentPage = 1; - } - scope.numData = data['odata.count']; - scope.numPages = Math.ceil(scope.numData / 10); - element.context.innerHTML = ''; - if (scope.currentPage < scope.numPages) { - element.context.innerHTML += '
{{(currentPage-1)*10+1}} - {{currentPage*10}} of {{numData}}
'; - } else { - element.context.innerHTML += '
{{(currentPage-1)*10+1}} - {{numData}} of {{numData}}
'; - } - if (scope.numData === '0') { - element.context.innerHTML = ''; - } - return $compile(element.contents())(scope); +myDirectives.directive("odataPager", [ + '$compile', function($compile) { + return function(scope, element, attrs) { + var data, update; + data = void 0; + update = function() { + if (scope.currentPage === void 0) { + scope.currentPage = 1; + } + if (scope.numData !== data['odata.count'] && scope.numData) { + scope.currentPage = 1; + } + scope.numData = data['odata.count']; + scope.numPages = Math.ceil(scope.numData / 10); + element.context.innerHTML = ''; + if (scope.currentPage < scope.numPages) { + element.context.innerHTML += '
{{(currentPage-1)*10+1}} - {{currentPage*10}} of {{numData}}
'; + } else { + element.context.innerHTML += '
{{(currentPage-1)*10+1}} - {{numData}} of {{numData}}
'; + } + if (scope.numData === '0') { + element.context.innerHTML = ''; + } + return $compile(element.contents())(scope); + }; + return scope.$watch(attrs.odataPager, function(value) { + data = value; + if (data === null || data === void 0) { + return; + } + return update(); + }); }; - return scope.$watch(attrs.odataPager, function(value) { - data = value; - if (data === null || data === void 0) { - return; - } - return update(); - }); - }; -}); + } +]); diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.min.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.min.js index 744332b6..383cb755 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.min.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/oDataPager.min.js @@ -1 +1 @@ -myDirectives.directive("odataPager",function(n){return function(t,i,r){var u,f;return u=void 0,f=function(){return t.currentPage===void 0&&(t.currentPage=1),t.numData!==u["odata.count"]&&t.numData&&(t.currentPage=1),t.numData=u["odata.count"],t.numPages=Math.ceil(t.numData/10),i.context.innerHTML='<\/pagination>',i.context.innerHTML+=t.currentPage{{(currentPage-1)*10+1}} - {{currentPage*10}} of {{numData}}<\/div>":"
{{(currentPage-1)*10+1}} - {{numData}} of {{numData}}<\/div>",t.numData==="0"&&(i.context.innerHTML=""),n(i.contents())(t)},t.$watch(r.odataPager,function(n){if(u=n,u!==null&&u!==void 0)return f()})}}) \ No newline at end of file +myDirectives.directive("odataPager",["$compile",function(n){return function(t,i,r){var u,f;return u=void 0,f=function(){return t.currentPage===void 0&&(t.currentPage=1),t.numData!==u["odata.count"]&&t.numData&&(t.currentPage=1),t.numData=u["odata.count"],t.numPages=Math.ceil(t.numData/10),i.context.innerHTML='<\/pagination>',i.context.innerHTML+=t.currentPage{{(currentPage-1)*10+1}} - {{currentPage*10}} of {{numData}}<\/div>":"
{{(currentPage-1)*10+1}} - {{numData}} of {{numData}}<\/div>",t.numData==="0"&&(i.context.innerHTML=""),n(i.contents())(t)},t.$watch(r.odataPager,function(n){if(u=n,u!==null&&u!==void 0)return f()})}}]) \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.coffee b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.coffee index 5ab16edd..3eb475b9 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.coffee +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.coffee @@ -15,7 +15,7 @@ ] -myDirectives.directive "dynamicUpload", ($compile)-> +myDirectives.directive "dynamicUpload", ['$compile',($compile)-> (scope, element, attrs) -> update =(value) -> element.context.innerHTML="" @@ -23,10 +23,11 @@ myDirectives.directive "dynamicUpload", ($compile)-> scope.$watch attrs.dynamicUpload, (value) -> update('1') +] angular.module("FileUpload",[]) -.factory "uploadManager", ($rootScope) -> +.factory "uploadManager", ["$rootScope",($rootScope) -> _files = [] add: (file) -> _files.push file @@ -54,4 +55,5 @@ angular.module("FileUpload",[]) $rootScope.$broadcast "uploadProgress", percentage setFileStatus: (data) -> - $rootScope.$broadcast "fileUploaded", data \ No newline at end of file + $rootScope.$broadcast "fileUploaded", data +] \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.js index 8b4c9725..514f03cb 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.js @@ -24,59 +24,63 @@ myDirectives.directive("upload", [ } ]); -myDirectives.directive("dynamicUpload", function($compile) { - return function(scope, element, attrs) { - var update; - update = function(value) { - element.context.innerHTML = ""; - return $compile(element.contents())(scope); +myDirectives.directive("dynamicUpload", [ + '$compile', function($compile) { + return function(scope, element, attrs) { + var update; + update = function(value) { + element.context.innerHTML = ""; + return $compile(element.contents())(scope); + }; + return scope.$watch(attrs.dynamicUpload, function(value) { + return update('1'); + }); }; - return scope.$watch(attrs.dynamicUpload, function(value) { - return update('1'); - }); - }; -}); + } +]); -angular.module("FileUpload", []).factory("uploadManager", function($rootScope) { - var _files; - _files = []; - return { - add: function(file) { - _files.push(file); - return $rootScope.$broadcast("fileAdded", file.files[0]); - }, - cancel: function(file) { - var deleteFile, f, _i, _len; - for (_i = 0, _len = _files.length; _i < _len; _i++) { - f = _files[_i]; - if (f.files[0].name === file.name) { - deleteFile = f; +angular.module("FileUpload", []).factory("uploadManager", [ + "$rootScope", function($rootScope) { + var _files; + _files = []; + return { + add: function(file) { + _files.push(file); + return $rootScope.$broadcast("fileAdded", file.files[0]); + }, + cancel: function(file) { + var deleteFile, f, _i, _len; + for (_i = 0, _len = _files.length; _i < _len; _i++) { + f = _files[_i]; + if (f.files[0].name === file.name) { + deleteFile = f; + } } + return _files.splice(_files.indexOf(deleteFile), 1); + }, + clear: function() { + return _files = []; + }, + files: function() { + var fileNames; + fileNames = []; + $.each(_files, function(index, file) { + return fileNames.push(file.files[0].name); + }); + return fileNames; + }, + upload: function() { + $.each(_files, function(index, file) { + return file.submit(); + }); + return this.clear(); + }, + setProgress: function(percentage) { + return $rootScope.$broadcast("uploadProgress", percentage); + }, + setFileStatus: function(data) { + return $rootScope.$broadcast("fileUploaded", data); } - return _files.splice(_files.indexOf(deleteFile), 1); - }, - clear: function() { - return _files = []; - }, - files: function() { - var fileNames; - fileNames = []; - $.each(_files, function(index, file) { - return fileNames.push(file.files[0].name); - }); - return fileNames; - }, - upload: function() { - $.each(_files, function(index, file) { - return file.submit(); - }); - return this.clear(); - }, - setProgress: function(percentage) { - return $rootScope.$broadcast("uploadProgress", percentage); - }, - setFileStatus: function(data) { - return $rootScope.$broadcast("fileUploaded", data); - } - }; -}); + }; + } +]); diff --git a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.min.js b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.min.js index d398c4be..b509c967 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.min.js +++ b/src/YangKai.BlogEngine.Web.Mvc/Content/js/directives/custom/upload.min.js @@ -1 +1 @@ -var factory;myDirectives.directive("upload",["uploadManager",factory=function(n){return{restrict:"A",link:function(t,i){return $(i).fileupload({dataType:"text",add:function(t,i){return n.add(i)},progressall:function(t,i){var r;return r=parseInt(i.loaded/i.total*100,10),n.setProgress(r)},done:function(t,i){return n.setFileStatus(i)}})}}}]),myDirectives.directive("dynamicUpload",function(n){return function(t,i,r){var u;return u=function(r){return i.context.innerHTML="",n(i.contents())(t)},t.$watch(r.dynamicUpload,function(){return u("1")})}}),angular.module("FileUpload",[]).factory("uploadManager",function(n){var t;return t=[],{add:function(i){return t.push(i),n.$broadcast("fileAdded",i.files[0])},cancel:function(n){for(var u,r,i=0,f=t.length;i",n(i.contents())(t)},t.$watch(r.dynamicUpload,function(){return u("1")})}}]),angular.module("FileUpload",[]).factory("uploadManager",["$rootScope",function(n){var t;return t=[],{add:function(i){return t.push(i),n.$broadcast("fileAdded",i.files[0])},cancel:function(n){for(var u,r,i=0,f=t.length;iBoards
  • About
  • - diff --git a/src/YangKai.BlogEngine.Web.Mvc/YangKai.BlogEngine.Web.Mvc.csproj b/src/YangKai.BlogEngine.Web.Mvc/YangKai.BlogEngine.Web.Mvc.csproj index 893ed4f0..7a0318f9 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/YangKai.BlogEngine.Web.Mvc.csproj +++ b/src/YangKai.BlogEngine.Web.Mvc/YangKai.BlogEngine.Web.Mvc.csproj @@ -1247,7 +1247,6 @@ Designer - diff --git a/src/YangKai.BlogEngine.Web.Mvc/_todo/Article/calendar.cshtml b/src/YangKai.BlogEngine.Web.Mvc/_todo/Article/calendar.cshtml deleted file mode 100644 index 83c5429c..00000000 --- a/src/YangKai.BlogEngine.Web.Mvc/_todo/Article/calendar.cshtml +++ /dev/null @@ -1,35 +0,0 @@ -@using YangKai.BlogEngine.Common -@using YangKai.BlogEngine.Model -@using YangKai.BlogEngine.Modules.PostModule.Objects -@model IList - -@{ - Layout = "~/Views/Shared/_layout.cshtml"; - ViewBag.Title = string.Format(Config.Format.PAGE_TITLE, "存档"); - var channel = ViewBag.Channel as Channel; - var calendarlist = (ViewBag.CalendarList as CalendarDictionary).Data.OrderByDescending(p => p.Key).ToDictionary(k => k.Key, v => v.Value); -} - - -
    -
      - @foreach (var calendar in calendarlist) - { - var list = Model.Where(p => p.PubDate.Year == calendar.Key.Year && p.PubDate.Month == calendar.Key.Month).OrderBy(p=>p.PubDate); -
    • -

      @calendar.Key.ToString("yyyy-MM") (@list.Count())

      -
        - @foreach (var item in list) - { -
      • [@item.Group.Name] @item.PubDate.ToString("dd")日: - @item.Title
      • - } -
      -
    • - } -
    -
    diff --git a/src/YangKai.BlogEngine.Web.Mvc/feed_articles.xml b/src/YangKai.BlogEngine.Web.Mvc/feed_articles.xml index 8c79eeb2..4a503dbf 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/feed_articles.xml +++ b/src/YangKai.BlogEngine.Web.Mvc/feed_articles.xml @@ -6,19 +6,19 @@ http://www.woshinidezhu.com/ zh-cn &copy; Powered by YangKai , 2008-2013, All Rights Reserved. 蜀ICP备09016538号. - Wed, 28 Aug 2013 19:09:37 GMT - Wed, 28 Aug 2013 19:09:37 GMT + Thu, 29 Aug 2013 22:44:13 GMT + Thu, 29 Aug 2013 22:44:13 GMT http://backend.userland.com/rss RSS.NET: http://www.rssdotnet.com/ - 4444 + /article <p> - 44444444444</p> + /article1</p> - http://www.woshinidezhu.com/#!/post/4444 - 技术 - 默认 - f3c1fff4-5a23-493d-aee0-7f34b0df625e - Sat, 24 Aug 2013 20:48:13 GMT + http://www.woshinidezhu.com/#!/post/article + 原创地 - 默认 + 9d8e328e-87ae-474a-be62-1669c87e4f40 + Thu, 29 Aug 2013 22:25:38 GMT 1 @@ -98,124 +98,6 @@ c43db3ae-6c32-4d40-b61d-f2e6bfa45346 Mon, 11 Mar 2013 17:45:00 GMT - - 你是想读书,还是想读完书? - <p> - &nbsp;</p> -<div> - 以前,读书前会很想读一本书,但实际读书时,经常是&ldquo;想读完书&rdquo;,而不是&ldquo;想读书&rdquo;。这种想法经常会让我的生活变得很痛苦,当你做一件事想着快点做完时,你的心思其实已经不在这件事上了。</div> -<div> - &nbsp;</div> -<div> - 这个问题在我大学时困扰了我很久。我没有意识到这本身其实是一个价值观问题,以至于我常在一些时间管理的书中寻找答案。那些书都只能让你更高效地&ldquo;做完事&rdquo;,却不能让你在做的过程中更投入一分。</div> -<div> - &nbsp;</div> -<div> - 直到后来离开学校,了解了一小部分禅宗思想,我开始豁然开朗。禅宗讲求摒除心中的杂质,全部精神专注于当下,摒弃过去摒弃未来,任何的多余的念头都可能使你正在做的事情不纯粹。禅宗上,这叫&ldquo;正念&rdquo;,我非常非常欣赏。</div> -<div> - &nbsp;</div> -<div> - 想想看,你去旅行,那你是为了旅行和生活本身呢,还是为了旅行回来能增加一点谈资、写一篇游记呢?答案是显然的。</div> -<div> - &nbsp;</div> -<div> - 人生也是一样,如果你一心只等着功成名就家财万贯衣食无忧的那一天,就好像你旅游时只等着回去写游记和炫耀一样,旅行本身就失去了意义。</div> -<div> - &nbsp;</div> -<div> - 生活就像这样的旅行,我们今天读的每一本书,写的每一个字,迈的每一个步,做的每一件事,就是这趟旅行的一部分。如果我们不能专注于它本身并享受这种过程,那整个生活就会变成急不可耐的煎熬。</div> -<div> - &nbsp;</div> -<div> - 回到读书上来,现在我觉得对书的&ldquo;量&rdquo;的追求是完全无意义的。如果我在读一本书时专注于其中,不仅可以获得远比匆匆翻过更深入的东西,而且还能为人生增加不曾虚度的有趣有意义的几天或几小时。</div> -<div> - &nbsp;</div> -<div> - 对了,在很多领域都有一个词叫&ldquo;flow&rdquo;,描述人们沉浸在某事中获得的愉悦状态,根据我粗浅通俗的理解,禅宗正念的目标,就是把这种状态扩展延伸到你生命的每一秒。</div> -<div> - &nbsp;</div> -<div> - &nbsp;</div> -<div> - &nbsp;</div> -<div> - <img alt="阅读" height="318" src="/upload/offsite/2013.03.11.do-you-want-to-read-or-do-you-want-to-read-a-book/0547faf2-8247-4bbd-8fd8-0340e9d002d1.jpg" style="color: rgb(0, 0, 0); font-family: arial, sans-serif; font-size: 13px;" width="450" /></div> -<div> - &nbsp;</div> -<div> - &nbsp;</div> -<div> - <strong>知乎上有个很好的问题:大学两年读了大概200本书,为什么感觉读书的价值还是没有体现出来呢</strong></div> -<div> - &nbsp;</div> -<div> - <strong>其中有些精彩的回答道出了个中缘由&mdash;&mdash;&ldquo;书不在于读完它,而在它成为你人生的一部分。&rdquo;</strong></div> -<div> - &nbsp;</div> -<div> - 大学时,一位很有才华的心理学老师说过的一句话,让我终身难忘:&ldquo;很多同学喜欢说自己一天能读多少页的书,有些人一天能读50页,有些人能读100页。可是一旦你用&lsquo;页数&rsquo;为单位来度量读书这种行为时,从一开始你就错了。&rdquo;</div> -<div> - &nbsp;</div> -<div> - 同理,如果你用读了多少本书来形容你的读书经历,这种思路,从一开始就错了。</div> -<div> - &nbsp;</div> -<div> - 如果你认真读到了书里去,是不会care、甚至会完全忽略掉今天读了多少页,今年读了多少本的;当你沉迷于书中绚烂多彩的世界,当你的观念被翻天覆地地革新,是不会care、甚至会完全忽略掉今天读了多少页,今年读了多少本的。</div> -<div> - &nbsp;</div> -<div> - 当我们看手表的时候,常是快等不及了;当我们数书页的时候,常是快看不下去了;当我们念叨看了几本书的时候,常是连书名都记不全了。所以,数多少页、多少本这行为本身,就说明你已经败了。</div> -<div> - &nbsp;</div> -<div> - 很多时候,一个人对待知识和思想的态度,就体现在用什么东西去丈量它。</div> -<div> - &nbsp;</div> -<div> - 如果有人问一位读书而有大成之人:你因何而脱胎换骨?你因何而涅磐重生?这些问题,他该如何作答?他说:&rdquo;我因200本书而脱胎换骨,我因1000本书而涅磐重生&ldquo;,如何?</div> -<div> - &nbsp;</div> -<div> - 阅读是一种享受,但如果读完一本书,没有新的体验,完全不同的视角和观点、不能对你的思维有所改变、特别是读完一本好书之后,想不清楚、说不清楚、写不清楚、也从来没有行动过,那你看书是在浪费时间。</div> -<div> - &nbsp;</div> -<div> - 学而悟道,有时候一本书就够了,有时候一万本都不够。这取决于,你读了什么书,更重要的是,你是如何读的:你有没有读进去把自己活埋在里面,又有没有读出来敲打出一个新的自己。</div> -<div> - &nbsp;</div> -<div> - 有些书,是一代宗师级的人物,把他们毕生的智慧熔铸在一本书里面;有些书,是一个领域的开疆拓土之作,从一片混沌中劈出一个新世界;有些书,是一个领域的集大成之作,观点纷繁,气象万千;有些书,如盗梦空间一般有几层境界,你多读一遍就多梦到一层。对这些书,你若只是都当成那两百分之一,花上一个星期匆匆读完,读后即扔,只摘下几条金句供日后泡妞之用,难道这就算读过了吗?</div> -<div> - &nbsp;</div> -<div> - 有些书,要用心血去读;有些书,要用足够的经历去读;有些书,是要绞尽最后一粒脑细胞去读;有些书,是一辈子都读不完读不透&hellip;&hellip;</div> -<div> - &nbsp;</div> -<div> - 看书的方法,不仅要看作者写了什么(一层),还要琢磨文字背后的意蕴,那些弦外之音(二层),还要去思考作者为什么要写这些、要这样写(三层),还要去想想 看作者用了什么样的框架和策略在组织这本书,以及在各种细微处又用了什么样的方法和技巧(四层),当然更重要的是,以上的这些分析对你自己的现实和精神世 界能带来什么样的帮助,是否能启发你、引导你、改变你&hellip;&hellip;(五层)</div> -<div> - &nbsp;</div> -<div> - 于是,一本值得都烂读透的书,就需要你去读五遍、十遍去读烂读透它。</div> -<div> - &nbsp;</div> -<div> - 于是乎,和很多人的答案相反:所谓200本,你不是读少了,而是读多了、读水了、读浅了!</div> -<div> - &nbsp;</div> -<div> - 其实你的状态一点都不特殊,你和许多人一样,以为自己在读书,其实是在集邮。</div> -<div> - &nbsp;</div> -<div> - 最后,建议你重新拿起一本你最崇敬的书,换一种方式,再读一遍、两遍、三遍&hellip;&hellip;</div> - - http://www.woshinidezhu.com/#!/post/do-you-want-to-read-or-do-you-want-to-read-a-book - 技术 - 杂类 - 06bc6dde-5e95-4464-a1ad-49d4fb9dd651 - Mon, 11 Mar 2013 17:45:00 GMT - “贱人就是矫情”翻译伤脑筋! <p> @@ -1726,5 +1608,17 @@ event.initKeyEvent(&quot;keypress&quot;, true, true, null, null, 12810d81-ddc7-e111-a611-00155d5f0243 Sat, 07 Jul 2012 10:38:00 GMT + + 追到手后男人的转变 + <p> + 表情相当的准确....</p> +<p> + <embed src="http://player.youku.com/player.php/sid/XNDE5MjAzMjU2/v.swf" quality="high" width="480" height="400" align="middle" allowScriptAccess="sameDomain" allowFullscreen="true" type="application/x-shockwave-flash"></embed></p> + + http://www.woshinidezhu.com/#!/post/hand-of-man-after-changing + 视频 - 欢乐 + e6455d4d-ddc7-e111-a611-00155d5f0243 + Sat, 07 Jul 2012 10:38:00 GMT + \ No newline at end of file diff --git a/src/YangKai.BlogEngine.Web.Mvc/partials/Admin/article/detail.html b/src/YangKai.BlogEngine.Web.Mvc/partials/Admin/article/detail.html index a54e9fbb..423327e1 100644 --- a/src/YangKai.BlogEngine.Web.Mvc/partials/Admin/article/detail.html +++ b/src/YangKai.BlogEngine.Web.Mvc/partials/Admin/article/detail.html @@ -1,4 +1,6 @@ -
    正在加载...
    + + +
    正在加载...