From cddbc08c0bcfffb196312e9cfec62b5db6196d24 Mon Sep 17 00:00:00 2001 From: xiaochong0302 Date: Thu, 17 Sep 2020 21:29:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 63 ++++++------ app/Caches/IndexCarouselList.php | 72 -------------- app/Caches/IndexSlideList.php | 71 ++++++++++++++ app/Console/Tasks/CleanLogTask.php | 12 +-- app/Console/Tasks/DeliverTask.php | 6 +- app/Console/Tasks/LiveNotifyTask.php | 6 +- app/Console/Tasks/RefundTask.php | 6 +- app/Console/Tasks/SiteMapTask.php | 2 +- app/Console/Tasks/SyncCourseIndexTask.php | 6 +- app/Console/Tasks/SyncGroupIndexTask.php | 6 +- app/Console/Tasks/SyncLearningTask.php | 8 +- app/Console/Tasks/SyncUserIndexTask.php | 6 +- .../Admin/Controllers/ChapterController.php | 25 +++-- .../Admin/Controllers/SessionController.php | 2 +- .../Admin/Controllers/SettingController.php | 36 +++---- ...uselController.php => SlideController.php} | 52 +++++----- app/Http/Admin/Controllers/TestController.php | 22 ++--- .../Admin/Controllers/UploadController.php | 6 +- app/Http/Admin/Controllers/VodController.php | 4 +- app/Http/Admin/Services/AlipayTest.php | 2 +- app/Http/Admin/Services/AuthNode.php | 12 +-- app/Http/Admin/Services/Chapter.php | 4 +- app/Http/Admin/Services/ChapterContent.php | 10 ++ app/Http/Admin/Services/Course.php | 6 +- app/Http/Admin/Services/Session.php | 4 +- app/Http/Admin/Services/Setting.php | 24 ++--- .../Services/{Carousel.php => Slide.php} | 90 +++++++++--------- app/Http/Admin/Views/carousel/add.volt | 8 +- app/Http/Admin/Views/carousel/edit.volt | 59 +++--------- app/Http/Admin/Views/carousel/list.volt | 22 ++--- app/Http/Admin/Views/category/edit.volt | 4 +- app/Http/Admin/Views/category/list.volt | 2 +- app/Http/Admin/Views/chapter/edit_lesson.volt | 6 +- .../Admin/Views/chapter/lessons_live.volt | 6 +- .../Admin/Views/chapter/lessons_read.volt | 6 +- app/Http/Admin/Views/chapter/lessons_vod.volt | 6 +- app/Http/Admin/Views/consult/list.volt | 2 +- app/Http/Admin/Views/course/edit_basic.volt | 8 +- app/Http/Admin/Views/course/list.volt | 4 +- app/Http/Admin/Views/help/edit.volt | 4 +- app/Http/Admin/Views/help/list.volt | 4 +- app/Http/Admin/Views/im/group/edit.volt | 4 +- app/Http/Admin/Views/im/group/list.volt | 4 +- app/Http/Admin/Views/index/index.volt | 6 +- app/Http/Admin/Views/index/main_app_info.volt | 2 +- app/Http/Admin/Views/nav/edit.volt | 12 +-- app/Http/Admin/Views/nav/list.volt | 2 +- app/Http/Admin/Views/package/list.volt | 2 +- app/Http/Admin/Views/page/edit.volt | 4 +- app/Http/Admin/Views/page/list.volt | 4 +- app/Http/Admin/Views/public/forbidden.volt | 2 +- app/Http/Admin/Views/public/live_player.volt | 8 +- app/Http/Admin/Views/public/login.volt | 4 +- app/Http/Admin/Views/public/vod_player.volt | 53 ++++++----- app/Http/Admin/Views/review/list.volt | 2 +- app/Http/Admin/Views/role/edit.volt | 2 +- app/Http/Admin/Views/setting/im_cs.volt | 4 +- app/Http/Admin/Views/setting/im_main.volt | 16 ++-- app/Http/Admin/Views/setting/live_pull.volt | 12 +-- app/Http/Admin/Views/setting/live_push.volt | 4 +- .../Admin/Views/setting/live_push_test.volt | 2 +- .../Views/setting/{mailer.volt => mail.volt} | 28 +++--- app/Http/Admin/Views/setting/pay_alipay.volt | 4 +- app/Http/Admin/Views/setting/pay_wxpay.volt | 4 +- app/Http/Admin/Views/setting/site.volt | 12 +-- .../Views/setting/{smser.volt => sms.volt} | 12 +-- app/Http/Admin/Views/setting/storage.volt | 6 +- app/Http/Admin/Views/setting/vod.volt | 24 ++--- app/Http/Admin/Views/topic/list.volt | 4 +- app/Http/Admin/Views/user/edit.volt | 8 +- app/Http/Admin/Views/user/list.volt | 2 +- app/Http/Desktop/Views/teaching/menu.volt | 10 -- app/Http/Desktop/Views/topic/show.volt | 19 ---- .../Controllers/AccountController.php | 70 +++++++------- .../Controllers/ChapterController.php | 24 ++--- .../Controllers/ConsultController.php | 30 +++--- .../Controllers/Controller.php | 13 ++- .../Controllers/CourseController.php | 52 +++++----- .../Controllers/DanmuController.php | 8 +- .../Controllers/ErrorController.php | 16 ++-- .../Controllers/HelpController.php | 10 +- .../Controllers/ImController.php | 60 ++++++------ .../Controllers/ImGroupController.php | 14 +-- .../Controllers/ImGroupManageController.php | 12 +-- .../Controllers/IndexController.php | 10 +- .../Controllers/LayerController.php | 6 +- .../Controllers/LiveController.php | 14 +-- .../Controllers/OrderController.php | 26 ++--- .../Controllers/PackageController.php | 10 +- .../Controllers/PageController.php | 6 +- .../Controllers/PublicController.php | 14 +-- .../Controllers/RefundController.php | 24 ++--- .../Controllers/ReviewController.php | 26 ++--- .../Controllers/SearchController.php | 14 +-- .../Controllers/TeacherConsoleController.php} | 44 ++++----- .../Controllers/TeacherController.php | 11 +-- .../Controllers/TopicController.php | 13 ++- .../Controllers/TradeController.php | 10 +- .../Controllers/UploadController.php | 8 +- .../Controllers/UserConsoleController.php} | 82 +++++++++------- .../Controllers/UserController.php | 22 ++--- .../Controllers/VerifyController.php | 8 +- .../Controllers/VipController.php | 14 +-- app/Http/{Desktop => Home}/Module.php | 6 +- .../{Desktop => Home}/Services/Account.php | 4 +- .../Services/CourseQuery.php | 8 +- app/Http/{Desktop => Home}/Services/Im.php | 2 +- .../{Desktop => Home}/Services/ImCsTrait.php | 2 +- .../Services/ImFriendTrait.php | 2 +- .../{Desktop => Home}/Services/ImGroup.php | 2 +- .../Services/ImGroupTrait.php | 2 +- .../Services/ImMessageTrait.php | 2 +- .../Services/ImNoticeTrait.php | 2 +- .../Services/ImStatTrait.php | 2 +- app/Http/{Desktop => Home}/Services/Index.php | 44 ++++----- app/Http/{Desktop => Home}/Services/Live.php | 4 +- .../{Desktop => Home}/Services/Service.php | 2 +- app/Http/{Desktop => Home}/Services/Trade.php | 6 +- .../Views/account/edit_email.volt | 4 +- .../Views/account/edit_password.volt | 2 +- .../Views/account/edit_phone.volt | 4 +- .../Views/account/forget_password.volt | 6 +- .../Views/account/login.volt | 8 +- .../Views/account/login_by_password.volt | 2 +- .../Views/account/login_by_verify.volt | 2 +- .../Views/account/register.volt | 4 +- .../Views/chapter/catalog.volt | 2 +- .../{Desktop => Home}/Views/chapter/live.volt | 8 +- .../Views/chapter/live_active.volt | 26 ++--- .../Views/chapter/live_chats.volt | 0 .../Views/chapter/live_forbid.volt | 2 +- .../Views/chapter/live_inactive.volt | 4 +- .../{Desktop => Home}/Views/chapter/read.volt | 20 ++-- .../{Desktop => Home}/Views/chapter/vod.volt | 18 ++-- .../{Desktop => Home}/Views/consult/add.volt | 2 +- .../{Desktop => Home}/Views/consult/edit.volt | 4 +- .../Views/consult/reply.volt | 2 +- .../{Desktop => Home}/Views/consult/show.volt | 4 +- .../Views/course/consults.volt | 6 +- .../{Desktop => Home}/Views/course/list.volt | 4 +- .../Views/course/list_filter.volt | 0 .../Views/course/packages.volt | 4 +- .../{Desktop => Home}/Views/course/pager.volt | 0 .../Views/course/recommended.volt | 0 .../Views/course/related.volt | 0 .../Views/course/reviews.volt | 4 +- .../{Desktop => Home}/Views/course/show.volt | 30 +++--- .../Views/course/show_catalog.volt | 6 +- .../Views/course/show_meta.volt | 0 .../Views/course/show_order.volt | 4 +- .../Views/course/show_teacher.volt | 2 +- .../Views/course/topics.volt | 2 +- .../Views/error/maintain.volt | 0 .../Views/error/show400.volt | 0 .../Views/error/show401.volt | 0 .../Views/error/show403.volt | 0 .../Views/error/show404.volt | 0 .../Views/error/show500.volt | 0 .../Views/error/show503.volt | 0 .../{Desktop => Home}/Views/help/index.volt | 4 +- .../{Desktop => Home}/Views/help/show.volt | 4 +- .../{Desktop => Home}/Views/im/chatlog.volt | 0 app/Http/{Desktop => Home}/Views/im/cs.volt | 2 +- .../Views/im/group/active_users.volt | 2 +- .../Views/im/group/list.volt | 6 +- .../Views/im/group/manage/edit.volt | 4 +- .../Views/im/group/manage/users.volt | 2 +- .../Views/im/group/pager.volt | 2 +- .../Views/im/group/show.volt | 11 +-- .../Views/im/group/show_owner.volt | 2 +- .../Views/im/group/users.volt | 4 +- .../{Desktop => Home}/Views/im/index.volt | 4 +- .../Views/im/index_groups.volt | 2 +- .../Views/im/index_users.volt | 2 +- .../{Desktop => Home}/Views/im/msgbox.volt | 2 +- .../{Desktop => Home}/Views/im/notice.volt | 2 +- .../{Desktop => Home}/Views/index/full.volt | 12 +-- .../{Desktop => Home}/Views/index/simple.volt | 12 +-- .../Views/macros/consult.volt | 0 .../Views/macros/course.volt | 6 +- .../{Desktop => Home}/Views/macros/group.volt | 0 .../{Desktop => Home}/Views/macros/order.volt | 0 .../Views/macros/refund.volt | 0 .../{Desktop => Home}/Views/macros/user.volt | 12 ++- .../Views/order/confirm.volt | 8 +- .../{Desktop => Home}/Views/order/info.volt | 4 +- .../{Desktop => Home}/Views/order/pay.volt | 12 +-- .../{Desktop => Home}/Views/page/show.volt | 5 +- .../Views/partials/footer.volt | 0 .../Views/partials/header.volt | 18 ++-- .../Views/partials/js_vars.volt | 6 +- .../Views/partials/pager.volt | 0 .../Views/partials/pager_ajax.volt | 0 .../Views/refund/confirm.volt | 2 +- .../{Desktop => Home}/Views/refund/info.volt | 2 +- .../{Desktop => Home}/Views/review/add.volt | 4 +- .../{Desktop => Home}/Views/review/edit.volt | 4 +- .../Views/search/course.volt | 4 +- .../{Desktop => Home}/Views/search/empty.volt | 0 .../{Desktop => Home}/Views/search/group.volt | 4 +- .../{Desktop => Home}/Views/search/index.volt | 2 +- .../Views/search/sidebar.volt | 4 +- .../{Desktop => Home}/Views/search/user.volt | 12 +-- .../Views/teacher/console}/consults.volt | 14 +-- .../Views/teacher/console}/courses.volt | 4 +- .../Views/teacher/console/live.volt} | 4 +- .../Views/teacher/console}/lives.volt | 17 ++-- app/Http/Home/Views/teacher/console/menu.volt | 10 ++ .../{Desktop => Home}/Views/teacher/list.volt | 6 +- .../Views/teacher/pager.volt | 2 +- .../Views/templates/error.volt | 2 +- .../Views/templates/layer.volt | 4 +- .../Views/templates/main.volt | 6 +- .../Views/topic/courses.volt | 0 app/Http/Home/Views/topic/show.volt | 21 ++++ .../Views/user/console}/account.volt | 10 +- .../Views/user/console}/consults.volt | 12 +-- .../Views/user/console}/courses.volt | 8 +- .../Views/user/console}/favorites.volt | 8 +- .../Views/user/console}/friends.volt | 18 +--- .../Views/user/console}/groups.volt | 12 +-- .../Views/user/console}/groups_joined.volt | 6 +- .../Views/user/console}/groups_owned.volt | 4 +- .../my => Home/Views/user/console}/menu.volt | 22 ++--- .../Views/user/console}/orders.volt | 8 +- .../Views/user/console}/profile.volt | 8 +- .../Views/user/console}/refunds.volt | 8 +- .../Views/user/console}/reviews.volt | 10 +- .../{Desktop => Home}/Views/user/courses.volt | 0 .../Views/user/favorites.volt | 0 .../{Desktop => Home}/Views/user/friends.volt | 2 +- .../{Desktop => Home}/Views/user/groups.volt | 2 +- .../{Desktop => Home}/Views/user/show.volt | 20 ++-- .../{Desktop => Home}/Views/vip/courses.volt | 0 .../{Desktop => Home}/Views/vip/index.volt | 10 +- .../{Desktop => Home}/Views/vip/users.volt | 2 +- app/Listeners/Listener.php | 2 +- app/Models/Client.php | 4 +- app/Models/Course.php | 6 +- app/Models/ImGroup.php | 6 +- app/Models/{Carousel.php => Slide.php} | 54 +++-------- app/Models/User.php | 6 +- app/Repos/{Carousel.php => Slide.php} | 14 +-- .../LiveList.php => Repos/Teacher.php} | 61 +----------- app/Services/Auth/{Desktop.php => Home.php} | 4 +- app/Services/Captcha.php | 4 +- app/Services/Frontend/Chapter/BasicInfo.php | 29 ------ app/Services/Frontend/ChapterLiveTrait.php | 13 --- app/Services/Frontend/Course/BasicInfo.php | 21 ---- app/Services/Frontend/Help/HelpList.php | 20 ---- app/Services/Frontend/My/CourseList.php | 20 ---- app/Services/Frontend/My/FavoriteList.php | 20 ---- app/Services/Frontend/My/FriendList.php | 20 ---- app/Services/Frontend/Teacher/TeacherInfo.php | 18 ---- app/Services/Frontend/Teaching/CourseList.php | 84 ---------------- .../Frontend/Teaching/LivePushUrl.php | 29 ------ app/Services/Live.php | 8 +- app/Services/LiveNotify.php | 2 +- .../Account/EmailUpdate.php | 6 +- .../Account/PasswordReset.php | 6 +- .../Account/PasswordUpdate.php | 6 +- .../Account/PhoneUpdate.php | 6 +- .../{Frontend => Logic}/Account/Register.php | 6 +- .../Chapter/BasicInfo.php} | 28 ++++-- .../Chapter/ChapterInfo.php | 17 ++-- .../Chapter/ChapterLike.php | 8 +- .../{Frontend => Logic}/Chapter/DanmuList.php | 8 +- .../{Frontend => Logic}/Chapter/Learning.php | 16 ++-- .../{Frontend => Logic}/ChapterTrait.php | 7 +- .../Consult/ConsultCreate.php | 10 +- .../Consult/ConsultDelete.php | 12 +-- .../Consult/ConsultInfo.php | 8 +- .../Consult/ConsultLike.php | 8 +- .../Consult/ConsultReply.php | 8 +- .../Consult/ConsultUpdate.php | 8 +- .../{Frontend => Logic}/ConsultTrait.php | 2 +- .../Course/BasicInfo.php} | 27 +++--- .../Course/ChapterList.php | 8 +- .../Course/ConsultList.php | 8 +- .../Course/CourseFavorite.php | 8 +- .../{Frontend => Logic}/Course/CourseInfo.php | 13 +-- .../{Frontend => Logic}/Course/CourseList.php | 6 +- .../Course/PackageList.php | 8 +- .../Course/RecommendedList.php | 8 +- .../Course/RelatedList.php | 8 +- .../{Frontend => Logic}/Course/ReviewList.php | 8 +- .../Course/TeacherList.php | 8 +- .../{Frontend => Logic}/Course/TopicList.php | 8 +- .../{Frontend => Logic}/CourseTrait.php | 2 +- .../{Frontend => Logic}/Danmu/DanmuCreate.php | 8 +- .../{Frontend => Logic}/Danmu/DanmuInfo.php | 8 +- .../{Frontend => Logic}/DanmuTrait.php | 2 +- .../{Frontend => Logic}/Help/HelpInfo.php | 8 +- app/Services/Logic/Help/HelpList.php | 18 ++++ .../{Frontend => Logic}/HelpTrait.php | 2 +- .../{Frontend => Logic}/Order/OrderCancel.php | 8 +- .../Order/OrderConfirm.php | 6 +- .../{Frontend => Logic}/Order/OrderCreate.php | 6 +- .../{Frontend => Logic}/Order/OrderInfo.php | 6 +- .../{Frontend => Logic}/OrderTrait.php | 2 +- .../Package/CourseList.php | 8 +- .../Package/PackageInfo.php | 8 +- .../{Frontend => Logic}/PackageTrait.php | 2 +- .../{Frontend => Logic}/Page/PageInfo.php | 10 +- .../{Frontend => Logic}/PageTrait.php | 2 +- .../Refund/RefundCancel.php | 8 +- .../Refund/RefundConfirm.php | 8 +- .../Refund/RefundCreate.php | 8 +- .../{Frontend => Logic}/Refund/RefundInfo.php | 8 +- .../{Frontend => Logic}/RefundTrait.php | 2 +- .../Review/ReviewCreate.php | 10 +- .../Review/ReviewDelete.php | 10 +- .../{Frontend => Logic}/Review/ReviewInfo.php | 8 +- .../{Frontend => Logic}/Review/ReviewLike.php | 8 +- .../Review/ReviewUpdate.php | 10 +- .../{Frontend => Logic}/ReviewTrait.php | 2 +- .../{Frontend => Logic}/Reward/OptionList.php | 6 +- .../{Frontend => Logic}/Search/Course.php | 2 +- .../{Frontend => Logic}/Search/Group.php | 2 +- .../{Frontend => Logic}/Search/Handler.php | 6 +- .../{Frontend => Logic}/Search/User.php | 2 +- app/Services/{Frontend => Logic}/Service.php | 2 +- .../Teacher/Console}/ConsultList.php | 10 +- .../Teacher/Console}/CourseList.php | 12 +-- .../Logic/Teacher/Console/LiveList.php | 65 +++++++++++++ .../Logic/Teacher/Console/LivePushUrl.php | 25 +++++ app/Services/Logic/Teacher/TeacherInfo.php | 18 ++++ .../Teacher/TeacherList.php | 6 +- .../{Frontend => Logic}/Topic/CourseList.php | 8 +- .../{Frontend => Logic}/Topic/TopicInfo.php | 10 +- .../{Frontend => Logic}/TopicTrait.php | 2 +- .../{Frontend => Logic}/Trade/TradeCreate.php | 8 +- .../{Frontend => Logic}/Trade/TradeInfo.php | 8 +- .../{Frontend => Logic}/TradeTrait.php | 2 +- .../My => Logic/User/Console}/AccountInfo.php | 6 +- .../My => Logic/User/Console}/ConsultList.php | 6 +- .../Logic/User/Console/CourseList.php | 20 ++++ .../Logic/User/Console/FavoriteList.php | 20 ++++ .../Logic/User/Console/FriendList.php | 20 ++++ .../My => Logic/User/Console}/GroupList.php | 8 +- .../My => Logic/User/Console}/OrderList.php | 8 +- .../My => Logic/User/Console}/ProfileInfo.php | 6 +- .../User/Console}/ProfileUpdate.php | 6 +- .../My => Logic/User/Console}/RefundList.php | 8 +- .../My => Logic/User/Console}/ReviewList.php | 6 +- .../{Frontend => Logic}/User/CourseList.php | 8 +- .../{Frontend => Logic}/User/FavoriteList.php | 8 +- .../{Frontend => Logic}/User/FriendList.php | 8 +- .../{Frontend => Logic}/User/GroupList.php | 8 +- .../{Frontend => Logic}/User/UserInfo.php | 8 +- .../{Frontend => Logic}/UserTrait.php | 2 +- .../{Frontend => Logic}/Verify/EmailCode.php | 10 +- .../{Frontend => Logic}/Verify/SmsCode.php | 10 +- .../{Frontend => Logic}/Verify/VerifyCode.php | 14 +-- .../{Frontend => Logic}/Vip/CourseList.php | 6 +- .../{Frontend => Logic}/Vip/OptionList.php | 6 +- .../{Frontend => Logic}/Vip/UserList.php | 6 +- app/Services/{Mailer => Mail}/Test.php | 2 +- app/Services/{Mailer => Mail}/Verify.php | 2 +- app/Services/Mailer.php | 6 +- app/Services/MyStorage.php | 6 +- app/Services/Pay/AlipayGateway.php | 2 +- app/Services/Pay/WxpayGateway.php | 2 +- app/Services/Service.php | 2 +- app/Services/{Smser => Sms}/Live.php | 2 +- app/Services/{Smser => Sms}/Order.php | 2 +- app/Services/{Smser => Sms}/Refund.php | 2 +- app/Services/{Smser => Sms}/Test.php | 2 +- app/Services/{Smser => Sms}/Verify.php | 2 +- app/Services/Smser.php | 4 +- app/Services/Storage.php | 4 +- app/Services/{Syncer => Sync}/CourseIndex.php | 2 +- app/Services/{Syncer => Sync}/GroupIndex.php | 2 +- app/Services/{Syncer => Sync}/Learning.php | 2 +- app/Services/{Syncer => Sync}/UserIndex.php | 2 +- app/Services/Vod.php | 6 +- app/Validators/Carousel.php | 55 +++++------ bootstrap/HttpErrorHandler.php | 2 +- bootstrap/HttpKernel.php | 6 +- config/errors.php | 28 +++--- config/routes.php | 8 +- db/migrations/20200827063842_init_table.php | 2 +- .../20200827112717_insert_setting_data.php | 26 ++--- db/migrations/schema.php | 32 +++---- public/static/admin/js/vditor.js | 2 +- public/static/desktop/js/markdown.preview.js | 11 --- .../static/{desktop => home}/css/common.css | 34 +++---- public/static/{desktop => home}/css/error.css | 0 .../static/{desktop => home}/img/alipay.png | Bin .../{desktop => home}/img/vip_cover.png | Bin public/static/{desktop => home}/img/wxpay.png | Bin .../{desktop => home}/js/captcha.login.js | 0 .../{desktop => home}/js/captcha.verify.js | 0 .../{desktop => home}/js/chapter.action.js | 0 .../{desktop => home}/js/chapter.live.chat.js | 4 +- .../js/chapter.live.countdown.js | 0 .../js/chapter.live.player.js | 0 .../{desktop => home}/js/chapter.read.js | 0 .../js/chapter.vod.player.js | 0 public/static/{desktop => home}/js/common.js | 0 public/static/{desktop => home}/js/copy.js | 0 .../{desktop => home}/js/course.list.js | 0 .../{desktop => home}/js/course.share.js | 0 .../{desktop => home}/js/course.show.js | 0 public/static/{desktop => home}/js/fixbar.js | 0 public/static/{desktop => home}/js/help.js | 0 .../static/{desktop => home}/js/im.apply.js | 0 public/static/{desktop => home}/js/im.cs.js | 4 +- .../{desktop => home}/js/im.group.list.js | 0 .../{desktop => home}/js/im.group.show.js | 0 public/static/{desktop => home}/js/im.js | 4 +- .../static/{desktop => home}/js/im.msgbox.js | 0 public/static/{desktop => home}/js/index.js | 2 +- public/static/home/js/markdown.preview.js | 26 +++++ .../static/{desktop => home}/js/order.pay.js | 0 .../js/teacher.console.js} | 0 .../{desktop => home}/js/teacher.list.js | 0 .../static/{desktop => home}/js/topic.show.js | 0 .../{desktop => home}/js/upload.avatar.js | 0 .../js/user.console.account.js} | 0 .../js/my.js => home/js/user.console.js} | 0 .../js/user.console.profile.js} | 0 .../js/user.console.review.js} | 0 .../static/{desktop => home}/js/user.share.js | 0 .../static/{desktop => home}/js/user.show.js | 0 public/static/{desktop => home}/js/vip.js | 0 426 files changed, 1912 insertions(+), 2092 deletions(-) delete mode 100644 app/Caches/IndexCarouselList.php create mode 100644 app/Caches/IndexSlideList.php rename app/Http/Admin/Controllers/{CarouselController.php => SlideController.php} (50%) rename app/Http/Admin/Services/{Carousel.php => Slide.php} (52%) rename app/Http/Admin/Views/setting/{mailer.volt => mail.volt} (79%) rename app/Http/Admin/Views/setting/{smser.volt => sms.volt} (94%) delete mode 100644 app/Http/Desktop/Views/teaching/menu.volt delete mode 100644 app/Http/Desktop/Views/topic/show.volt rename app/Http/{Desktop => Home}/Controllers/AccountController.php (65%) rename app/Http/{Desktop => Home}/Controllers/ChapterController.php (76%) rename app/Http/{Desktop => Home}/Controllers/ConsultController.php (69%) rename app/Http/{Desktop => Home}/Controllers/Controller.php (94%) rename app/Http/{Desktop => Home}/Controllers/CourseController.php (68%) rename app/Http/{Desktop => Home}/Controllers/DanmuController.php (63%) rename app/Http/{Desktop => Home}/Controllers/ErrorController.php (77%) rename app/Http/{Desktop => Home}/Controllers/HelpController.php (69%) rename app/Http/{Desktop => Home}/Controllers/ImController.php (77%) rename app/Http/{Desktop => Home}/Controllers/ImGroupController.php (80%) rename app/Http/{Desktop => Home}/Controllers/ImGroupManageController.php (77%) rename app/Http/{Desktop => Home}/Controllers/IndexController.php (82%) rename app/Http/{Desktop => Home}/Controllers/LayerController.php (88%) rename app/Http/{Desktop => Home}/Controllers/LiveController.php (75%) rename app/Http/{Desktop => Home}/Controllers/OrderController.php (69%) rename app/Http/{Desktop => Home}/Controllers/PackageController.php (62%) rename app/Http/{Desktop => Home}/Controllers/PageController.php (68%) rename app/Http/{Desktop => Home}/Controllers/PublicController.php (86%) rename app/Http/{Desktop => Home}/Controllers/RefundController.php (66%) rename app/Http/{Desktop => Home}/Controllers/ReviewController.php (71%) rename app/Http/{Desktop => Home}/Controllers/SearchController.php (78%) rename app/Http/{Desktop/Controllers/TeachingController.php => Home/Controllers/TeacherConsoleController.php} (56%) rename app/Http/{Desktop => Home}/Controllers/TeacherController.php (70%) rename app/Http/{Desktop => Home}/Controllers/TopicController.php (63%) rename app/Http/{Desktop => Home}/Controllers/TradeController.php (67%) rename app/Http/{Desktop => Home}/Controllers/UploadController.php (78%) rename app/Http/{Desktop/Controllers/MyController.php => Home/Controllers/UserConsoleController.php} (50%) rename app/Http/{Desktop => Home}/Controllers/UserController.php (72%) rename app/Http/{Desktop => Home}/Controllers/VerifyController.php (78%) rename app/Http/{Desktop => Home}/Controllers/VipController.php (73%) rename app/Http/{Desktop => Home}/Module.php (84%) rename app/Http/{Desktop => Home}/Services/Account.php (93%) rename app/Http/{Desktop => Home}/Services/CourseQuery.php (95%) rename app/Http/{Desktop => Home}/Services/Im.php (99%) rename app/Http/{Desktop => Home}/Services/ImCsTrait.php (97%) rename app/Http/{Desktop => Home}/Services/ImFriendTrait.php (99%) rename app/Http/{Desktop => Home}/Services/ImGroup.php (99%) rename app/Http/{Desktop => Home}/Services/ImGroupTrait.php (99%) rename app/Http/{Desktop => Home}/Services/ImMessageTrait.php (99%) rename app/Http/{Desktop => Home}/Services/ImNoticeTrait.php (96%) rename app/Http/{Desktop => Home}/Services/ImStatTrait.php (94%) rename app/Http/{Desktop => Home}/Services/Index.php (64%) rename app/Http/{Desktop => Home}/Services/Live.php (97%) rename app/Http/{Desktop => Home}/Services/Service.php (60%) rename app/Http/{Desktop => Home}/Services/Trade.php (91%) rename app/Http/{Desktop => Home}/Views/account/edit_email.volt (93%) rename app/Http/{Desktop => Home}/Views/account/edit_password.volt (94%) rename app/Http/{Desktop => Home}/Views/account/edit_phone.volt (93%) rename app/Http/{Desktop => Home}/Views/account/forget_password.volt (92%) rename app/Http/{Desktop => Home}/Views/account/login.volt (77%) rename app/Http/{Desktop => Home}/Views/account/login_by_password.volt (96%) rename app/Http/{Desktop => Home}/Views/account/login_by_verify.volt (95%) rename app/Http/{Desktop => Home}/Views/account/register.volt (95%) rename app/Http/{Desktop => Home}/Views/chapter/catalog.volt (92%) rename app/Http/{Desktop => Home}/Views/chapter/live.volt (68%) rename app/Http/{Desktop => Home}/Views/chapter/live_active.volt (78%) rename app/Http/{Desktop => Home}/Views/chapter/live_chats.volt (100%) rename app/Http/{Desktop => Home}/Views/chapter/live_forbid.volt (78%) rename app/Http/{Desktop => Home}/Views/chapter/live_inactive.volt (88%) rename app/Http/{Desktop => Home}/Views/chapter/read.volt (76%) rename app/Http/{Desktop => Home}/Views/chapter/vod.volt (79%) rename app/Http/{Desktop => Home}/Views/consult/add.volt (95%) rename app/Http/{Desktop => Home}/Views/consult/edit.volt (90%) rename app/Http/{Desktop => Home}/Views/consult/reply.volt (93%) rename app/Http/{Desktop => Home}/Views/consult/show.volt (90%) rename app/Http/{Desktop => Home}/Views/course/consults.volt (86%) rename app/Http/{Desktop => Home}/Views/course/list.volt (60%) rename app/Http/{Desktop => Home}/Views/course/list_filter.volt (100%) rename app/Http/{Desktop => Home}/Views/course/packages.volt (88%) rename app/Http/{Desktop => Home}/Views/course/pager.volt (100%) rename app/Http/{Desktop => Home}/Views/course/recommended.volt (100%) rename app/Http/{Desktop => Home}/Views/course/related.volt (100%) rename app/Http/{Desktop => Home}/Views/course/reviews.volt (88%) rename app/Http/{Desktop => Home}/Views/course/show.volt (79%) rename app/Http/{Desktop => Home}/Views/course/show_catalog.volt (92%) rename app/Http/{Desktop => Home}/Views/course/show_meta.volt (100%) rename app/Http/{Desktop => Home}/Views/course/show_order.volt (78%) rename app/Http/{Desktop => Home}/Views/course/show_teacher.volt (90%) rename app/Http/{Desktop => Home}/Views/course/topics.volt (77%) rename app/Http/{Desktop => Home}/Views/error/maintain.volt (100%) rename app/Http/{Desktop => Home}/Views/error/show400.volt (100%) rename app/Http/{Desktop => Home}/Views/error/show401.volt (100%) rename app/Http/{Desktop => Home}/Views/error/show403.volt (100%) rename app/Http/{Desktop => Home}/Views/error/show404.volt (100%) rename app/Http/{Desktop => Home}/Views/error/show500.volt (100%) rename app/Http/{Desktop => Home}/Views/error/show503.volt (100%) rename app/Http/{Desktop => Home}/Views/help/index.volt (94%) rename app/Http/{Desktop => Home}/Views/help/show.volt (82%) rename app/Http/{Desktop => Home}/Views/im/chatlog.volt (100%) rename app/Http/{Desktop => Home}/Views/im/cs.volt (89%) rename app/Http/{Desktop => Home}/Views/im/group/active_users.volt (90%) rename app/Http/{Desktop => Home}/Views/im/group/list.volt (62%) rename app/Http/{Desktop => Home}/Views/im/group/manage/edit.volt (92%) rename app/Http/{Desktop => Home}/Views/im/group/manage/users.volt (91%) rename app/Http/{Desktop => Home}/Views/im/group/pager.volt (94%) rename app/Http/{Desktop => Home}/Views/im/group/show.volt (79%) rename app/Http/{Desktop => Home}/Views/im/group/show_owner.volt (89%) rename app/Http/{Desktop => Home}/Views/im/group/users.volt (92%) rename app/Http/{Desktop => Home}/Views/im/index.volt (91%) rename app/Http/{Desktop => Home}/Views/im/index_groups.volt (93%) rename app/Http/{Desktop => Home}/Views/im/index_users.volt (93%) rename app/Http/{Desktop => Home}/Views/im/msgbox.volt (77%) rename app/Http/{Desktop => Home}/Views/im/notice.volt (97%) rename app/Http/{Desktop => Home}/Views/index/full.volt (84%) rename app/Http/{Desktop => Home}/Views/index/simple.volt (77%) rename app/Http/{Desktop => Home}/Views/macros/consult.volt (100%) rename app/Http/{Desktop => Home}/Views/macros/course.volt (94%) rename app/Http/{Desktop => Home}/Views/macros/group.volt (100%) rename app/Http/{Desktop => Home}/Views/macros/order.volt (100%) rename app/Http/{Desktop => Home}/Views/macros/refund.volt (100%) rename app/Http/{Desktop => Home}/Views/macros/user.volt (64%) rename app/Http/{Desktop => Home}/Views/order/confirm.volt (92%) rename app/Http/{Desktop => Home}/Views/order/info.volt (87%) rename app/Http/{Desktop => Home}/Views/order/pay.volt (81%) rename app/Http/{Desktop => Home}/Views/page/show.volt (74%) rename app/Http/{Desktop => Home}/Views/partials/footer.volt (100%) rename app/Http/{Desktop => Home}/Views/partials/header.volt (61%) rename app/Http/{Desktop => Home}/Views/partials/js_vars.volt (82%) rename app/Http/{Desktop => Home}/Views/partials/pager.volt (100%) rename app/Http/{Desktop => Home}/Views/partials/pager_ajax.volt (100%) rename app/Http/{Desktop => Home}/Views/refund/confirm.volt (97%) rename app/Http/{Desktop => Home}/Views/refund/info.volt (96%) rename app/Http/{Desktop => Home}/Views/review/add.volt (93%) rename app/Http/{Desktop => Home}/Views/review/edit.volt (92%) rename app/Http/{Desktop => Home}/Views/search/course.volt (86%) rename app/Http/{Desktop => Home}/Views/search/empty.volt (100%) rename app/Http/{Desktop => Home}/Views/search/group.volt (85%) rename app/Http/{Desktop => Home}/Views/search/index.volt (94%) rename app/Http/{Desktop => Home}/Views/search/sidebar.volt (76%) rename app/Http/{Desktop => Home}/Views/search/user.volt (81%) rename app/Http/{Desktop/Views/teaching => Home/Views/teacher/console}/consults.volt (82%) rename app/Http/{Desktop/Views/teaching => Home/Views/teacher/console}/courses.volt (90%) rename app/Http/{Desktop/Views/teaching/live_push.volt => Home/Views/teacher/console/live.volt} (92%) rename app/Http/{Desktop/Views/teaching => Home/Views/teacher/console}/lives.volt (74%) create mode 100644 app/Http/Home/Views/teacher/console/menu.volt rename app/Http/{Desktop => Home}/Views/teacher/list.volt (62%) rename app/Http/{Desktop => Home}/Views/teacher/pager.volt (94%) rename app/Http/{Desktop => Home}/Views/templates/error.volt (86%) rename app/Http/{Desktop => Home}/Views/templates/layer.volt (88%) rename app/Http/{Desktop => Home}/Views/templates/main.volt (89%) rename app/Http/{Desktop => Home}/Views/topic/courses.volt (100%) create mode 100644 app/Http/Home/Views/topic/show.volt rename app/Http/{Desktop/Views/my => Home/Views/user/console}/account.volt (88%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/consults.volt (82%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/courses.volt (87%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/favorites.volt (85%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/friends.volt (78%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/groups.volt (66%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/groups_joined.volt (79%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/groups_owned.volt (85%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/menu.volt (57%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/orders.volt (84%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/profile.volt (94%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/refunds.volt (84%) rename app/Http/{Desktop/Views/my => Home/Views/user/console}/reviews.volt (84%) rename app/Http/{Desktop => Home}/Views/user/courses.volt (100%) rename app/Http/{Desktop => Home}/Views/user/favorites.volt (100%) rename app/Http/{Desktop => Home}/Views/user/friends.volt (93%) rename app/Http/{Desktop => Home}/Views/user/groups.volt (94%) rename app/Http/{Desktop => Home}/Views/user/show.volt (85%) rename app/Http/{Desktop => Home}/Views/vip/courses.volt (100%) rename app/Http/{Desktop => Home}/Views/vip/index.volt (83%) rename app/Http/{Desktop => Home}/Views/vip/users.volt (93%) rename app/Models/{Carousel.php => Slide.php} (73%) rename app/Repos/{Carousel.php => Slide.php} (83%) rename app/{Services/Frontend/Teaching/LiveList.php => Repos/Teacher.php} (51%) rename app/Services/Auth/{Desktop.php => Home.php} (91%) delete mode 100644 app/Services/Frontend/Chapter/BasicInfo.php delete mode 100644 app/Services/Frontend/ChapterLiveTrait.php delete mode 100644 app/Services/Frontend/Course/BasicInfo.php delete mode 100644 app/Services/Frontend/Help/HelpList.php delete mode 100644 app/Services/Frontend/My/CourseList.php delete mode 100644 app/Services/Frontend/My/FavoriteList.php delete mode 100644 app/Services/Frontend/My/FriendList.php delete mode 100644 app/Services/Frontend/Teacher/TeacherInfo.php delete mode 100644 app/Services/Frontend/Teaching/CourseList.php delete mode 100644 app/Services/Frontend/Teaching/LivePushUrl.php rename app/Services/{Frontend => Logic}/Account/EmailUpdate.php (86%) rename app/Services/{Frontend => Logic}/Account/PasswordReset.php (85%) rename app/Services/{Frontend => Logic}/Account/PasswordUpdate.php (86%) rename app/Services/{Frontend => Logic}/Account/PhoneUpdate.php (86%) rename app/Services/{Frontend => Logic}/Account/Register.php (94%) rename app/Services/{Frontend/Chapter/BasicInfoTrait.php => Logic/Chapter/BasicInfo.php} (81%) rename app/Services/{Frontend => Logic}/Chapter/ChapterInfo.php (91%) rename app/Services/{Frontend => Logic}/Chapter/ChapterLike.php (90%) rename app/Services/{Frontend => Logic}/Chapter/DanmuList.php (87%) rename app/Services/{Frontend => Logic}/Chapter/Learning.php (71%) rename app/Services/{Frontend => Logic}/ChapterTrait.php (94%) rename app/Services/{Frontend => Logic}/Consult/ConsultCreate.php (91%) rename app/Services/{Frontend => Logic}/Consult/ConsultDelete.php (81%) rename app/Services/{Frontend => Logic}/Consult/ConsultInfo.php (90%) rename app/Services/{Frontend => Logic}/Consult/ConsultLike.php (91%) rename app/Services/{Frontend => Logic}/Consult/ConsultReply.php (75%) rename app/Services/{Frontend => Logic}/Consult/ConsultUpdate.php (79%) rename app/Services/{Frontend => Logic}/ConsultTrait.php (87%) rename app/Services/{Frontend/Course/BasicInfoTrait.php => Logic/Course/BasicInfo.php} (79%) rename app/Services/{Frontend => Logic}/Course/ChapterList.php (92%) rename app/Services/{Frontend => Logic}/Course/ConsultList.php (90%) rename app/Services/{Frontend => Logic}/Course/CourseFavorite.php (91%) rename app/Services/{Frontend => Logic}/Course/CourseInfo.php (84%) rename app/Services/{Frontend => Logic}/Course/CourseList.php (94%) rename app/Services/{Frontend => Logic}/Course/PackageList.php (90%) rename app/Services/{Frontend => Logic}/Course/RecommendedList.php (64%) rename app/Services/{Frontend => Logic}/Course/RelatedList.php (63%) rename app/Services/{Frontend => Logic}/Course/ReviewList.php (89%) rename app/Services/{Frontend => Logic}/Course/TeacherList.php (63%) rename app/Services/{Frontend => Logic}/Course/TopicList.php (63%) rename app/Services/{Frontend => Logic}/CourseTrait.php (98%) rename app/Services/{Frontend => Logic}/Danmu/DanmuCreate.php (88%) rename app/Services/{Frontend => Logic}/Danmu/DanmuInfo.php (82%) rename app/Services/{Frontend => Logic}/DanmuTrait.php (86%) rename app/Services/{Frontend => Logic}/Help/HelpInfo.php (70%) create mode 100644 app/Services/Logic/Help/HelpList.php rename app/Services/{Frontend => Logic}/HelpTrait.php (91%) rename app/Services/{Frontend => Logic}/Order/OrderCancel.php (74%) rename app/Services/{Frontend => Logic}/Order/OrderConfirm.php (96%) rename app/Services/{Frontend => Logic}/Order/OrderCreate.php (98%) rename app/Services/{Frontend => Logic}/Order/OrderInfo.php (95%) rename app/Services/{Frontend => Logic}/OrderTrait.php (91%) rename app/Services/{Frontend => Logic}/Package/CourseList.php (64%) rename app/Services/{Frontend => Logic}/Package/PackageInfo.php (77%) rename app/Services/{Frontend => Logic}/PackageTrait.php (91%) rename app/Services/{Frontend => Logic}/Page/PageInfo.php (68%) rename app/Services/{Frontend => Logic}/PageTrait.php (91%) rename app/Services/{Frontend => Logic}/Refund/RefundCancel.php (81%) rename app/Services/{Frontend => Logic}/Refund/RefundConfirm.php (56%) rename app/Services/{Frontend => Logic}/Refund/RefundCreate.php (92%) rename app/Services/{Frontend => Logic}/Refund/RefundInfo.php (90%) rename app/Services/{Frontend => Logic}/RefundTrait.php (91%) rename app/Services/{Frontend => Logic}/Review/ReviewCreate.php (87%) rename app/Services/{Frontend => Logic}/Review/ReviewDelete.php (82%) rename app/Services/{Frontend => Logic}/Review/ReviewInfo.php (85%) rename app/Services/{Frontend => Logic}/Review/ReviewLike.php (90%) rename app/Services/{Frontend => Logic}/Review/ReviewUpdate.php (83%) rename app/Services/{Frontend => Logic}/ReviewTrait.php (86%) rename app/Services/{Frontend => Logic}/Reward/OptionList.php (79%) rename app/Services/{Frontend => Logic}/Search/Course.php (98%) rename app/Services/{Frontend => Logic}/Search/Group.php (97%) rename app/Services/{Frontend => Logic}/Search/Handler.php (51%) rename app/Services/{Frontend => Logic}/Search/User.php (97%) rename app/Services/{Frontend => Logic}/Service.php (61%) rename app/Services/{Frontend/Teaching => Logic/Teacher/Console}/ConsultList.php (93%) rename app/Services/{Frontend/Teacher => Logic/Teacher/Console}/CourseList.php (81%) create mode 100644 app/Services/Logic/Teacher/Console/LiveList.php create mode 100644 app/Services/Logic/Teacher/Console/LivePushUrl.php create mode 100644 app/Services/Logic/Teacher/TeacherInfo.php rename app/Services/{Frontend => Logic}/Teacher/TeacherList.php (90%) rename app/Services/{Frontend => Logic}/Topic/CourseList.php (85%) rename app/Services/{Frontend => Logic}/Topic/TopicInfo.php (62%) rename app/Services/{Frontend => Logic}/TopicTrait.php (91%) rename app/Services/{Frontend => Logic}/Trade/TradeCreate.php (80%) rename app/Services/{Frontend => Logic}/Trade/TradeInfo.php (76%) rename app/Services/{Frontend => Logic}/TradeTrait.php (91%) rename app/Services/{Frontend/My => Logic/User/Console}/AccountInfo.php (79%) rename app/Services/{Frontend/My => Logic/User/Console}/ConsultList.php (93%) create mode 100644 app/Services/Logic/User/Console/CourseList.php create mode 100644 app/Services/Logic/User/Console/FavoriteList.php create mode 100644 app/Services/Logic/User/Console/FriendList.php rename app/Services/{Frontend/My => Logic/User/Console}/GroupList.php (91%) rename app/Services/{Frontend/My => Logic/User/Console}/OrderList.php (91%) rename app/Services/{Frontend/My => Logic/User/Console}/ProfileInfo.php (89%) rename app/Services/{Frontend/My => Logic/User/Console}/ProfileUpdate.php (90%) rename app/Services/{Frontend/My => Logic/User/Console}/RefundList.php (91%) rename app/Services/{Frontend/My => Logic/User/Console}/ReviewList.php (92%) rename app/Services/{Frontend => Logic}/User/CourseList.php (90%) rename app/Services/{Frontend => Logic}/User/FavoriteList.php (88%) rename app/Services/{Frontend => Logic}/User/FriendList.php (87%) rename app/Services/{Frontend => Logic}/User/GroupList.php (87%) rename app/Services/{Frontend => Logic}/User/UserInfo.php (86%) rename app/Services/{Frontend => Logic}/UserTrait.php (91%) rename app/Services/{Frontend => Logic}/Verify/EmailCode.php (66%) rename app/Services/{Frontend => Logic}/Verify/SmsCode.php (66%) rename app/Services/{Frontend => Logic}/Verify/VerifyCode.php (61%) rename app/Services/{Frontend => Logic}/Vip/CourseList.php (92%) rename app/Services/{Frontend => Logic}/Vip/OptionList.php (79%) rename app/Services/{Frontend => Logic}/Vip/UserList.php (90%) rename app/Services/{Mailer => Mail}/Test.php (96%) rename app/Services/{Mailer => Mail}/Verify.php (97%) rename app/Services/{Smser => Sms}/Live.php (97%) rename app/Services/{Smser => Sms}/Order.php (96%) rename app/Services/{Smser => Sms}/Refund.php (96%) rename app/Services/{Smser => Sms}/Test.php (89%) rename app/Services/{Smser => Sms}/Verify.php (94%) rename app/Services/{Syncer => Sync}/CourseIndex.php (94%) rename app/Services/{Syncer => Sync}/GroupIndex.php (93%) rename app/Services/{Syncer => Sync}/Learning.php (98%) rename app/Services/{Syncer => Sync}/UserIndex.php (93%) delete mode 100644 public/static/desktop/js/markdown.preview.js rename public/static/{desktop => home}/css/common.css (98%) rename public/static/{desktop => home}/css/error.css (100%) rename public/static/{desktop => home}/img/alipay.png (100%) rename public/static/{desktop => home}/img/vip_cover.png (100%) rename public/static/{desktop => home}/img/wxpay.png (100%) rename public/static/{desktop => home}/js/captcha.login.js (100%) rename public/static/{desktop => home}/js/captcha.verify.js (100%) rename public/static/{desktop => home}/js/chapter.action.js (100%) rename public/static/{desktop => home}/js/chapter.live.chat.js (95%) rename public/static/{desktop => home}/js/chapter.live.countdown.js (100%) rename public/static/{desktop => home}/js/chapter.live.player.js (100%) rename public/static/{desktop => home}/js/chapter.read.js (100%) rename public/static/{desktop => home}/js/chapter.vod.player.js (100%) rename public/static/{desktop => home}/js/common.js (100%) rename public/static/{desktop => home}/js/copy.js (100%) rename public/static/{desktop => home}/js/course.list.js (100%) rename public/static/{desktop => home}/js/course.share.js (100%) rename public/static/{desktop => home}/js/course.show.js (100%) rename public/static/{desktop => home}/js/fixbar.js (100%) rename public/static/{desktop => home}/js/help.js (100%) rename public/static/{desktop => home}/js/im.apply.js (100%) rename public/static/{desktop => home}/js/im.cs.js (94%) rename public/static/{desktop => home}/js/im.group.list.js (100%) rename public/static/{desktop => home}/js/im.group.show.js (100%) rename public/static/{desktop => home}/js/im.js (98%) rename public/static/{desktop => home}/js/im.msgbox.js (100%) rename public/static/{desktop => home}/js/index.js (88%) create mode 100644 public/static/home/js/markdown.preview.js rename public/static/{desktop => home}/js/order.pay.js (100%) rename public/static/{desktop/js/teaching.js => home/js/teacher.console.js} (100%) rename public/static/{desktop => home}/js/teacher.list.js (100%) rename public/static/{desktop => home}/js/topic.show.js (100%) rename public/static/{desktop => home}/js/upload.avatar.js (100%) rename public/static/{desktop/js/my.account.js => home/js/user.console.account.js} (100%) rename public/static/{desktop/js/my.js => home/js/user.console.js} (100%) rename public/static/{desktop/js/my.profile.js => home/js/user.console.profile.js} (100%) rename public/static/{desktop/js/my.review.js => home/js/user.console.review.js} (100%) rename public/static/{desktop => home}/js/user.share.js (100%) rename public/static/{desktop => home}/js/user.show.js (100%) rename public/static/{desktop => home}/js/vip.js (100%) diff --git a/README.md b/README.md index eadac14f..a97005b5 100644 --- a/README.md +++ b/README.md @@ -4,14 +4,20 @@ 酷瓜云课堂,依托腾讯云基础服务架构,采用 C 扩展框架 Phalcon 开发,致力网络教育软件。 +#### 系统功能 + 都有些什么功能?我也不想写一大堆,自己体验吧! - [前台演示](https://ctc.koogua.com) - [后台演示](https://ctc.koogua.com/admin) -> 帐号:100015@163.com / 123456 (前后台通用) +帐号:100015@163.com / 123456 (前后台通用,请不要修改密码) -PS:**管理后台已禁止提交并隐藏私人配置** +友情提示: + +- 系统配置低(1核 1G 1M 跑多个容器),手下留情 +- 课程数据来源于网络(无实质内容),切莫购买 +- 管理后台已禁止提交(私密配置已过滤) #### 项目组件 @@ -32,32 +38,7 @@ PS:**管理后台已禁止提交并隐藏私人配置** #### 安装指南 - [运行环境搭建](https://gitee.com/koogua/course-tencent-cloud-docker) -- [系统服务配置](https://gitee.com/koogua/course-tencent-cloud/wikis/服务配置) - -#### 会推出商业服务吗? - -- 如果不符合您对“开源”的认知,请移步其它同类产品,毕竟同类“免费”产品也很多。 -- 如果使用协议不能满足您的需求,或者您希望有更好的支持,商业服务是不错的选择。 - -我们为用户提供的服务包括: - -- 系统安装 -- 系统定制 -- 企业会员 - -#### 会有阿里云版吗? - -阿里云版规划中,之前阿里云服务过期未续费,所以腾讯云版本先出。 - -#### 代码有加密吗? - -所有代码都公开(授权代码除外,例如layim),没有所谓的商业版和付费插件。 - -#### 通过这个项目能学到什么? - -1. 项目规划,phalcon实战,缓存,JWT,即时通讯,全文检索 -2. docker,supervisor,devops -3. git,linux,php,mysql,redis,nginx +- [系统服务配置](https://gitee.com/koogua/course-tencent-cloud/wikis) #### 开发计划 @@ -73,7 +54,29 @@ PS:**管理后台已禁止提交并隐藏私人配置** #### 加入我们 -这是我的创业项目,个人能力和精力有限,要兼顾产品规划以及开发,还要处理很多琐碎事情。 -目前在南山科技园某个众创空间,希望有 **深圳前端同学** 加入我们。 +这是一个创业项目,个人能力和精力有限,要兼顾产品规划以及开发,还要处理很多琐碎事情。目前在南山科技园某个众创空间,希望有 **深圳前端同学** 加入我们。 联系邮箱:76632555@qq.com + +#### 通过这个项目能学到什么? + +- 项目规划,phalcon,缓存,JWT,即时通讯,全文检索 +- docker,supervisor,devops +- git,linux,php,mysql,redis,nginx + +#### 有阿里云版吗? + +阿里云版规划中,之前阿里云服务过期未续费,所以腾讯云版本先出。 + +#### 代码有加密吗? + +所有代码都公开(授权代码除外,例如layim),没有所谓的商业版和付费插件。 + +#### 有商业服务吗? + +生存是一个问题,生存才能发展,我们为用户提供的服务包括: + +- 系统安装 +- 系统定制 +- 企业授权 + diff --git a/app/Caches/IndexCarouselList.php b/app/Caches/IndexCarouselList.php deleted file mode 100644 index 94ccde8c..00000000 --- a/app/Caches/IndexCarouselList.php +++ /dev/null @@ -1,72 +0,0 @@ -lifetime; - } - - public function getKey($id = null) - { - return 'index_carousel_list'; - } - - public function getContent($id = null) - { - $limit = 5; - - $carousels = $this->findCarousels($limit); - - if ($carousels->count() == 0) { - return []; - } - - return $this->handleContent($carousels); - } - - /** - * @param CarouselModel[] $carousels - * @return array - */ - protected function handleContent($carousels) - { - $result = []; - - foreach ($carousels as $carousel) { - $result[] = [ - 'id' => $carousel->id, - 'title' => $carousel->title, - 'cover' => $carousel->cover, - 'style' => $carousel->style, - 'target' => $carousel->target, - 'content' => $carousel->content, - ]; - } - - return $result; - } - - /** - * @param int $limit - * @return ResultsetInterface|Resultset|CarouselModel[] - */ - public function findCarousels($limit = 5) - { - return CarouselModel::query() - ->where('published = 1') - ->orderBy('priority ASC') - ->limit($limit) - ->execute(); - } - -} diff --git a/app/Caches/IndexSlideList.php b/app/Caches/IndexSlideList.php new file mode 100644 index 00000000..72899070 --- /dev/null +++ b/app/Caches/IndexSlideList.php @@ -0,0 +1,71 @@ +lifetime; + } + + public function getKey($id = null) + { + return 'index_slide_list'; + } + + public function getContent($id = null) + { + $limit = 5; + + $slides = $this->findSlides($limit); + + if ($slides->count() == 0) { + return []; + } + + return $this->handleContent($slides); + } + + /** + * @param SlideModel[] $slides + * @return array + */ + protected function handleContent($slides) + { + $result = []; + + foreach ($slides as $slide) { + $result[] = [ + 'id' => $slide->id, + 'title' => $slide->title, + 'cover' => $slide->cover, + 'target' => $slide->target, + 'content' => $slide->content, + ]; + } + + return $result; + } + + /** + * @param int $limit + * @return ResultsetInterface|Resultset|SlideModel[] + */ + public function findSlides($limit = 5) + { + return SlideModel::query() + ->where('published = 1') + ->orderBy('priority ASC') + ->limit($limit) + ->execute(); + } + +} diff --git a/app/Console/Tasks/CleanLogTask.php b/app/Console/Tasks/CleanLogTask.php index dc499431..2b242985 100644 --- a/app/Console/Tasks/CleanLogTask.php +++ b/app/Console/Tasks/CleanLogTask.php @@ -13,8 +13,8 @@ class CleanLogTask extends Task $this->cleanSqlLog(); $this->cleanListenerLog(); $this->cleanCaptchaLog(); - $this->cleanMailerLog(); - $this->cleanSmserLog(); + $this->cleanMailLog(); + $this->cleanSmsLog(); $this->cleanVodLog(); $this->cleanLiveLog(); $this->cleanStorageLog(); @@ -99,17 +99,17 @@ class CleanLogTask extends Task /** * 清理短信服务日志 */ - protected function cleanSmserLog() + protected function cleanSmsLog() { - $this->cleanLog('smser', 7); + $this->cleanLog('sms', 7); } /** * 清理邮件服务日志 */ - protected function cleanMailerLog() + protected function cleanMailLog() { - $this->cleanLog('mailer', 7); + $this->cleanLog('mail', 7); } /** diff --git a/app/Console/Tasks/DeliverTask.php b/app/Console/Tasks/DeliverTask.php index a7ff11be..9b9ddebd 100644 --- a/app/Console/Tasks/DeliverTask.php +++ b/app/Console/Tasks/DeliverTask.php @@ -9,7 +9,7 @@ use App\Models\Task as TaskModel; use App\Models\Trade as TradeModel; use App\Repos\Order as OrderRepo; use App\Repos\User as UserRepo; -use App\Services\Smser\Order as OrderSmser; +use App\Services\Sms\Order as OrderSms; use Phalcon\Mvc\Model; use Phalcon\Mvc\Model\Resultset; use Phalcon\Mvc\Model\ResultsetInterface; @@ -164,9 +164,9 @@ class DeliverTask extends Task protected function handleOrderNotice(OrderModel $order) { - $smser = new OrderSmser(); + $sms = new OrderSms(); - $smser->handle($order); + $sms->handle($order); } protected function handleOrderRefund(OrderModel $order) diff --git a/app/Console/Tasks/LiveNotifyTask.php b/app/Console/Tasks/LiveNotifyTask.php index 5dd5b542..a36c3cf7 100644 --- a/app/Console/Tasks/LiveNotifyTask.php +++ b/app/Console/Tasks/LiveNotifyTask.php @@ -5,7 +5,7 @@ namespace App\Console\Tasks; use App\Models\CourseUser as CourseUserModel; use App\Repos\Chapter as ChapterRepo; use App\Services\LiveNotify as LiveNotifyService; -use App\Services\Smser\Live as LiveSmser; +use App\Services\Sms\Live as LiveSms; class LiveNotifyTask extends Task { @@ -53,10 +53,10 @@ class LiveNotifyTask extends Task if (!$targetUserIds) return; - $smser = new LiveSmser(); + $sms = new LiveSms(); foreach ($targetUserIds as $userId) { - $smser->handle($chapterId, $userId, $chapterLive->start_time); + $sms->handle($chapterId, $userId, $chapterLive->start_time); } } diff --git a/app/Console/Tasks/RefundTask.php b/app/Console/Tasks/RefundTask.php index 434cfdfb..0edf1a67 100644 --- a/app/Console/Tasks/RefundTask.php +++ b/app/Console/Tasks/RefundTask.php @@ -13,7 +13,7 @@ use App\Repos\Trade as TradeRepo; use App\Repos\User as UserRepo; use App\Services\Pay\Alipay as AlipayService; use App\Services\Pay\Wxpay as WxpayService; -use App\Services\Smser\Refund as RefundSmser; +use App\Services\Sms\Refund as RefundSms; use Phalcon\Mvc\Model\Resultset; use Phalcon\Mvc\Model\ResultsetInterface; @@ -283,9 +283,9 @@ class RefundTask extends Task */ protected function handleRefundNotice(RefundModel $refund) { - $smser = new RefundSmser(); + $sms = new RefundSms(); - $smser->handle($refund); + $sms->handle($refund); } /** diff --git a/app/Console/Tasks/SiteMapTask.php b/app/Console/Tasks/SiteMapTask.php index 0d389e26..d78ce46d 100644 --- a/app/Console/Tasks/SiteMapTask.php +++ b/app/Console/Tasks/SiteMapTask.php @@ -49,7 +49,7 @@ class SiteMapTask extends Task { $service = new AppService(); - $settings = $service->getSectionSettings('site'); + $settings = $service->getSettings('site'); return $settings['url'] ?? ''; } diff --git a/app/Console/Tasks/SyncCourseIndexTask.php b/app/Console/Tasks/SyncCourseIndexTask.php index abbe3b5b..1578f036 100644 --- a/app/Console/Tasks/SyncCourseIndexTask.php +++ b/app/Console/Tasks/SyncCourseIndexTask.php @@ -5,7 +5,7 @@ namespace App\Console\Tasks; use App\Repos\Course as CourseRepo; use App\Services\Search\CourseDocument; use App\Services\Search\CourseSearcher; -use App\Services\Syncer\CourseIndex as CourseIndexSyncer; +use App\Services\Sync\CourseIndex as CourseIndexSync; class SyncCourseIndexTask extends Task { @@ -54,9 +54,9 @@ class SyncCourseIndexTask extends Task protected function getSyncKey() { - $syncer = new CourseIndexSyncer(); + $sync = new CourseIndexSync(); - return $syncer->getSyncKey(); + return $sync->getSyncKey(); } } diff --git a/app/Console/Tasks/SyncGroupIndexTask.php b/app/Console/Tasks/SyncGroupIndexTask.php index 65ead9a9..d48223de 100644 --- a/app/Console/Tasks/SyncGroupIndexTask.php +++ b/app/Console/Tasks/SyncGroupIndexTask.php @@ -5,7 +5,7 @@ namespace App\Console\Tasks; use App\Repos\ImGroup as GroupRepo; use App\Services\Search\GroupDocument; use App\Services\Search\GroupSearcher; -use App\Services\Syncer\GroupIndex as GroupIndexSyncer; +use App\Services\Sync\GroupIndex as GroupIndexSync; class SyncGroupIndexTask extends Task { @@ -54,9 +54,9 @@ class SyncGroupIndexTask extends Task protected function getSyncKey() { - $syncer = new GroupIndexSyncer(); + $sync = new GroupIndexSync(); - return $syncer->getSyncKey(); + return $sync->getSyncKey(); } } diff --git a/app/Console/Tasks/SyncLearningTask.php b/app/Console/Tasks/SyncLearningTask.php index cac1e4dc..8adbc36e 100644 --- a/app/Console/Tasks/SyncLearningTask.php +++ b/app/Console/Tasks/SyncLearningTask.php @@ -9,7 +9,7 @@ use App\Repos\ChapterUser as ChapterUserRepo; use App\Repos\Course as CourseRepo; use App\Repos\CourseUser as CourseUserRepo; use App\Repos\Learning as LearningRepo; -use App\Services\Syncer\Learning as LearningSyncer; +use App\Services\Sync\Learning as LearningSync; class SyncLearningTask extends Task { @@ -20,9 +20,9 @@ class SyncLearningTask extends Task $redis = $this->getRedis(); - $syncer = new LearningSyncer(); + $sync = new LearningSync(); - $syncKey = $syncer->getSyncKey(); + $syncKey = $sync->getSyncKey(); $requestIds = $redis->sMembers($syncKey); @@ -30,7 +30,7 @@ class SyncLearningTask extends Task foreach ($requestIds as $requestId) { - $itemKey = $syncer->getItemKey($requestId); + $itemKey = $sync->getItemKey($requestId); $this->handleLearning($itemKey); diff --git a/app/Console/Tasks/SyncUserIndexTask.php b/app/Console/Tasks/SyncUserIndexTask.php index b8cb5669..7e55f3da 100644 --- a/app/Console/Tasks/SyncUserIndexTask.php +++ b/app/Console/Tasks/SyncUserIndexTask.php @@ -5,7 +5,7 @@ namespace App\Console\Tasks; use App\Repos\User as UserRepo; use App\Services\Search\UserDocument; use App\Services\Search\UserSearcher; -use App\Services\Syncer\UserIndex as UserIndexSyncer; +use App\Services\Sync\UserIndex as UserIndexSync; class SyncUserIndexTask extends Task { @@ -54,9 +54,9 @@ class SyncUserIndexTask extends Task protected function getSyncKey() { - $syncer = new UserIndexSyncer(); + $sync = new UserIndexSync(); - return $syncer->getSyncKey(); + return $sync->getSyncKey(); } } diff --git a/app/Http/Admin/Controllers/ChapterController.php b/app/Http/Admin/Controllers/ChapterController.php index 43418d73..6cfc8e7c 100644 --- a/app/Http/Admin/Controllers/ChapterController.php +++ b/app/Http/Admin/Controllers/ChapterController.php @@ -44,15 +44,15 @@ class ChapterController extends Controller $course = $courseService->getCourse($courseId); $chapters = $courseService->getChapters($courseId); + $this->view->pick('chapter/add_chapter'); + + if ($type == 'lesson') { + $this->view->pick('chapter/add_lesson'); + } + $this->view->setVar('course', $course); $this->view->setVar('parent_id', $parentId); $this->view->setVar('chapters', $chapters); - - if ($type == 'chapter') { - $this->view->pick('chapter/add_chapter'); - } else { - $this->view->pick('chapter/add_lesson'); - } } /** @@ -89,11 +89,12 @@ class ChapterController extends Controller $chapter = $chapterService->getChapter($id); $course = $courseService->getCourse($chapter->course_id); - $this->view->setVar('chapter', $chapter); - $this->view->setVar('course', $course); + $this->view->pick('chapter/edit_chapter'); if ($chapter->parent_id > 0) { + $this->view->pick('chapter/edit_lesson'); + switch ($course->model) { case CourseModel::MODEL_VOD: $vod = $contentService->getChapterVod($chapter->id); @@ -110,12 +111,10 @@ class ChapterController extends Controller $this->view->setVar('read', $read); break; } - - $this->view->pick('chapter/edit_lesson'); - - } else { - $this->view->pick('chapter/edit_chapter'); } + + $this->view->setVar('chapter', $chapter); + $this->view->setVar('course', $course); } /** diff --git a/app/Http/Admin/Controllers/SessionController.php b/app/Http/Admin/Controllers/SessionController.php index d868f531..3c67806f 100644 --- a/app/Http/Admin/Controllers/SessionController.php +++ b/app/Http/Admin/Controllers/SessionController.php @@ -48,7 +48,7 @@ class SessionController extends \Phalcon\Mvc\Controller $settingService = new SettingService(); - $captcha = $settingService->getSectionSettings('captcha'); + $captcha = $settingService->getSettings('captcha'); $this->view->pick('public/login'); $this->view->setVar('app_info', $appInfo); diff --git a/app/Http/Admin/Controllers/SettingController.php b/app/Http/Admin/Controllers/SettingController.php index e3dfc8f3..820b0ac0 100644 --- a/app/Http/Admin/Controllers/SettingController.php +++ b/app/Http/Admin/Controllers/SettingController.php @@ -29,7 +29,7 @@ class SettingController extends Controller } else { - $site = $settingService->getSectionSettings($section); + $site = $settingService->getSettings($section); $site['url'] = $site['url'] ?: kg_site_url(); @@ -56,7 +56,7 @@ class SettingController extends Controller } else { - $secret = $settingService->getSectionSettings($section); + $secret = $settingService->getSettings($section); $this->view->setVar('secret', $secret); } @@ -81,7 +81,7 @@ class SettingController extends Controller } else { - $cos = $settingService->getSectionSettings($section); + $cos = $settingService->getSettings($section); $this->view->setVar('cos', $cos); } @@ -106,7 +106,7 @@ class SettingController extends Controller } else { - $vod = $settingService->getSectionSettings($section); + $vod = $settingService->getSettings($section); $this->view->setVar('vod', $vod); } @@ -169,11 +169,11 @@ class SettingController extends Controller } /** - * @Route("/smser", name="admin.setting.smser") + * @Route("/sms", name="admin.setting.sms") */ - public function smserAction() + public function smsAction() { - $section = 'smser'; + $section = 'sms'; $settingService = new SettingService(); @@ -181,24 +181,24 @@ class SettingController extends Controller $data = $this->request->getPost(); - $settingService->updateSmserSettings($section, $data); + $settingService->updateSmsSettings($section, $data); return $this->jsonSuccess(['msg' => '更新配置成功']); } else { - $smser = $settingService->getSectionSettings($section); + $sms = $settingService->getSettings($section); - $this->view->setVar('smser', $smser); + $this->view->setVar('sms', $sms); } } /** - * @Route("/mailer", name="admin.setting.mailer") + * @Route("/mail", name="admin.setting.mail") */ - public function mailerAction() + public function mailAction() { - $section = 'mailer'; + $section = 'mail'; $settingService = new SettingService(); @@ -212,9 +212,9 @@ class SettingController extends Controller } else { - $mailer = $settingService->getSectionSettings($section); + $mail = $settingService->getSettings($section); - $this->view->setVar('mailer', $mailer); + $this->view->setVar('mail', $mail); } } @@ -242,7 +242,7 @@ class SettingController extends Controller } else { - $captcha = $settingService->getSectionSettings($section); + $captcha = $settingService->getSettings($section); $this->view->setVar('captcha', $captcha); } @@ -290,8 +290,8 @@ class SettingController extends Controller } else { - $main = $settingService->getSectionSettings('im.main'); - $cs = $settingService->getSectionSettings('im.cs'); + $main = $settingService->getSettings('im.main'); + $cs = $settingService->getSettings('im.cs'); $this->view->setVar('main', $main); $this->view->setVar('cs', $cs); diff --git a/app/Http/Admin/Controllers/CarouselController.php b/app/Http/Admin/Controllers/SlideController.php similarity index 50% rename from app/Http/Admin/Controllers/CarouselController.php rename to app/Http/Admin/Controllers/SlideController.php index 2d2472b5..8369c875 100644 --- a/app/Http/Admin/Controllers/CarouselController.php +++ b/app/Http/Admin/Controllers/SlideController.php @@ -2,28 +2,28 @@ namespace App\Http\Admin\Controllers; -use App\Http\Admin\Services\Carousel as CarouselService; +use App\Http\Admin\Services\Slide as SlideService; /** - * @RoutePrefix("/admin/carousel") + * @RoutePrefix("/admin/slide") */ -class CarouselController extends Controller +class SlideController extends Controller { /** - * @Get("/list", name="admin.carousel.list") + * @Get("/list", name="admin.slide.list") */ public function listAction() { - $carouselService = new CarouselService(); + $slideService = new SlideService(); - $pager = $carouselService->getCarousels(); + $pager = $slideService->getSlides(); $this->view->setVar('pager', $pager); } /** - * @Get("/add", name="admin.carousel.add") + * @Get("/add", name="admin.slide.add") */ public function addAction() { @@ -31,17 +31,17 @@ class CarouselController extends Controller } /** - * @Post("/create", name="admin.carousel.create") + * @Post("/create", name="admin.slide.create") */ public function createAction() { - $carouselService = new CarouselService(); + $slideService = new SlideService(); - $carousel = $carouselService->createCarousel(); + $slide = $slideService->createSlide(); $location = $this->url->get([ - 'for' => 'admin.carousel.edit', - 'id' => $carousel->id, + 'for' => 'admin.slide.edit', + 'id' => $slide->id, ]); $content = [ @@ -53,27 +53,27 @@ class CarouselController extends Controller } /** - * @Get("/{id:[0-9]+}/edit", name="admin.carousel.edit") + * @Get("/{id:[0-9]+}/edit", name="admin.slide.edit") */ public function editAction($id) { - $carouselService = new CarouselService(); + $slideService = new SlideService(); - $carousel = $carouselService->getCarousel($id); + $slide = $slideService->getSlide($id); - $this->view->setVar('carousel', $carousel); + $this->view->setVar('slide', $slide); } /** - * @Post("/{id:[0-9]+}/update", name="admin.carousel.update") + * @Post("/{id:[0-9]+}/update", name="admin.slide.update") */ public function updateAction($id) { - $carouselService = new CarouselService(); + $slideService = new SlideService(); - $carouselService->updateCarousel($id); + $slideService->updateSlide($id); - $location = $this->url->get(['for' => 'admin.carousel.list']); + $location = $this->url->get(['for' => 'admin.slide.list']); $content = [ 'location' => $location, @@ -84,13 +84,13 @@ class CarouselController extends Controller } /** - * @Post("/{id:[0-9]+}/delete", name="admin.carousel.delete") + * @Post("/{id:[0-9]+}/delete", name="admin.slide.delete") */ public function deleteAction($id) { - $carouselService = new CarouselService(); + $slideService = new SlideService(); - $carouselService->deleteCarousel($id); + $slideService->deleteSlide($id); $location = $this->request->getHTTPReferer(); @@ -103,13 +103,13 @@ class CarouselController extends Controller } /** - * @Post("/{id:[0-9]+}/restore", name="admin.carousel.restore") + * @Post("/{id:[0-9]+}/restore", name="admin.slide.restore") */ public function restoreAction($id) { - $carouselService = new CarouselService(); + $slideService = new SlideService(); - $carouselService->restoreCarousel($id); + $slideService->restoreSlide($id); $location = $this->request->getHTTPReferer(); diff --git a/app/Http/Admin/Controllers/TestController.php b/app/Http/Admin/Controllers/TestController.php index d363e8e3..ec650dc8 100644 --- a/app/Http/Admin/Controllers/TestController.php +++ b/app/Http/Admin/Controllers/TestController.php @@ -7,9 +7,9 @@ use App\Http\Admin\Services\Setting as SettingService; use App\Http\Admin\Services\WxpayTest as WxpayTestService; use App\Services\Captcha as CaptchaService; use App\Services\Live as LiveService; -use App\Services\Mailer\Test as TestMailerService; +use App\Services\Mail\Test as TestMailService; use App\Services\MyStorage as StorageService; -use App\Services\Smser\Test as TestSmserService; +use App\Services\Sms\Test as TestSmsService; use App\Services\Vod as VodService; /** @@ -66,7 +66,7 @@ class TestController extends Controller $pushUrl = $liveService->getPushUrl($streamName); $qrcode = $this->url->get( - ['for' => 'desktop.qrcode'], + ['for' => 'home.qrcode'], ['text' => urlencode($pushUrl)] ); @@ -96,15 +96,15 @@ class TestController extends Controller } /** - * @Post("/smser", name="admin.test.smser") + * @Post("/sms", name="admin.test.sms") */ - public function smserAction() + public function smsAction() { $phone = $this->request->getPost('phone', 'string'); - $smserService = new TestSmserService(); + $smsService = new TestSmsService(); - $response = $smserService->handle($phone); + $response = $smsService->handle($phone); if ($response) { return $this->jsonSuccess(['msg' => '发送短信成功,请到收件箱确认']); @@ -114,15 +114,15 @@ class TestController extends Controller } /** - * @Post("/mailer", name="admin.test.mailer") + * @Post("/mail", name="admin.test.mail") */ - public function mailerAction() + public function mailAction() { $email = $this->request->getPost('email', 'string'); - $mailerService = new TestMailerService(); + $mailService = new TestMailService(); - $result = $mailerService->handle($email); + $result = $mailService->handle($email); if ($result) { return $this->jsonSuccess(['msg' => '发送邮件成功,请到收件箱确认']); diff --git a/app/Http/Admin/Controllers/UploadController.php b/app/Http/Admin/Controllers/UploadController.php index eb251179..86709468 100644 --- a/app/Http/Admin/Controllers/UploadController.php +++ b/app/Http/Admin/Controllers/UploadController.php @@ -53,13 +53,13 @@ class UploadController extends Controller } /** - * @Post("/editor/img", name="admin.upload.editor_img") + * @Post("/content/img", name="admin.upload.content_img") */ - public function uploadEditorImageAction() + public function uploadContentImageAction() { $service = new StorageService(); - $file = $service->uploadEditorImage(); + $file = $service->uploadContentImage(); if ($file) { return $this->jsonSuccess([ diff --git a/app/Http/Admin/Controllers/VodController.php b/app/Http/Admin/Controllers/VodController.php index f319a578..d2ffdfa5 100644 --- a/app/Http/Admin/Controllers/VodController.php +++ b/app/Http/Admin/Controllers/VodController.php @@ -3,7 +3,6 @@ namespace App\Http\Admin\Controllers; use App\Services\Vod as VodService; -use Phalcon\Mvc\View; /** * @RoutePrefix("/admin/vod") @@ -31,10 +30,9 @@ class VodController extends Controller $chapterId = $this->request->getQuery('chapter_id', 'int'); $playUrl = $this->request->getQuery('play_url', 'string'); - $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('public/vod_player'); $this->view->setVar('chapter_id', $chapterId); - $this->view->setVar('play_url', urldecode($playUrl)); + $this->view->setVar('play_url', $playUrl); } } diff --git a/app/Http/Admin/Services/AlipayTest.php b/app/Http/Admin/Services/AlipayTest.php index 832f0514..dfc9269f 100644 --- a/app/Http/Admin/Services/AlipayTest.php +++ b/app/Http/Admin/Services/AlipayTest.php @@ -20,7 +20,7 @@ class AlipayTest extends PayTest if ($code) { $codeUrl = $this->url->get( - ['for' => 'desktop.qrcode'], + ['for' => 'home.qrcode'], ['text' => urlencode($code)] ); } diff --git a/app/Http/Admin/Services/AuthNode.php b/app/Http/Admin/Services/AuthNode.php index c30d4d0f..44482bb0 100644 --- a/app/Http/Admin/Services/AuthNode.php +++ b/app/Http/Admin/Services/AuthNode.php @@ -385,25 +385,25 @@ class AuthNode extends Service 'id' => '2-5-1', 'title' => '轮播列表', 'type' => 'menu', - 'route' => 'admin.carousel.list', + 'route' => 'admin.slide.list', ], [ 'id' => '2-5-2', 'title' => '添加轮播', 'type' => 'menu', - 'route' => 'admin.carousel.add', + 'route' => 'admin.slide.add', ], [ 'id' => '2-5-3', 'title' => '编辑轮播', 'type' => 'button', - 'route' => 'admin.carousel.edit', + 'route' => 'admin.slide.edit', ], [ 'id' => '2-5-4', 'title' => '删除轮播', 'type' => 'button', - 'route' => 'admin.carousel.delete', + 'route' => 'admin.slide.delete', ], ], ], @@ -675,13 +675,13 @@ class AuthNode extends Service 'id' => '5-1-6', 'title' => '短信设置', 'type' => 'menu', - 'route' => 'admin.setting.smser', + 'route' => 'admin.setting.sms', ], [ 'id' => '5-1-7', 'title' => '邮件设置', 'type' => 'menu', - 'route' => 'admin.setting.mailer', + 'route' => 'admin.setting.mail', ], [ 'id' => '5-1-8', diff --git a/app/Http/Admin/Services/Chapter.php b/app/Http/Admin/Services/Chapter.php index 11d94fb6..4eeb8264 100644 --- a/app/Http/Admin/Services/Chapter.php +++ b/app/Http/Admin/Services/Chapter.php @@ -3,7 +3,7 @@ namespace App\Http\Admin\Services; use App\Caches\Chapter as ChapterCache; -use App\Caches\CourseChapterList as CourseCatalogCache; +use App\Caches\CourseChapterList as CatalogCache; use App\Models\Chapter as ChapterModel; use App\Models\ChapterLive as ChapterLiveModel; use App\Models\ChapterRead as ChapterReadModel; @@ -249,7 +249,7 @@ class Chapter extends Service protected function rebuildCatalogCache(ChapterModel $chapter) { - $cache = new CourseCatalogCache(); + $cache = new CatalogCache(); $cache->rebuild($chapter->course_id); } diff --git a/app/Http/Admin/Services/ChapterContent.php b/app/Http/Admin/Services/ChapterContent.php index 1fbc24c6..665992bf 100644 --- a/app/Http/Admin/Services/ChapterContent.php +++ b/app/Http/Admin/Services/ChapterContent.php @@ -2,6 +2,7 @@ namespace App\Http\Admin\Services; +use App\Caches\CourseChapterList as CatalogCache; use App\Library\Utils\Word as WordUtil; use App\Models\Chapter as ChapterModel; use App\Models\Course as CourseModel; @@ -63,6 +64,8 @@ class ChapterContent extends Service $this->updateChapterRead($chapter); break; } + + $this->rebuildCatalogCache($chapter); } protected function updateChapterVod(ChapterModel $chapter) @@ -166,4 +169,11 @@ class ChapterContent extends Service $courseStats->updateReadAttrs($chapter->course_id); } + protected function rebuildCatalogCache(ChapterModel $chapter) + { + $cache = new CatalogCache(); + + $cache->rebuild($chapter->course_id); + } + } diff --git a/app/Http/Admin/Services/Course.php b/app/Http/Admin/Services/Course.php index 503e96b2..9dba1d7c 100644 --- a/app/Http/Admin/Services/Course.php +++ b/app/Http/Admin/Services/Course.php @@ -21,7 +21,7 @@ use App\Repos\CourseCategory as CourseCategoryRepo; use App\Repos\CourseRelated as CourseRelatedRepo; use App\Repos\CourseUser as CourseUserRepo; use App\Repos\User as UserRepo; -use App\Services\Syncer\CourseIndex as CourseIndexSyncer; +use App\Services\Sync\CourseIndex as CourseIndexSync; use App\Validators\Course as CourseValidator; class Course extends Service @@ -363,9 +363,9 @@ class Course extends Service protected function rebuildCourseIndex(CourseModel $course) { - $syncer = new CourseIndexSyncer(); + $sync = new CourseIndexSync(); - $syncer->addItem($course->id); + $sync->addItem($course->id); } protected function saveTeachers(CourseModel $course, $teacherIds) diff --git a/app/Http/Admin/Services/Session.php b/app/Http/Admin/Services/Session.php index 41064122..9ce79803 100644 --- a/app/Http/Admin/Services/Session.php +++ b/app/Http/Admin/Services/Session.php @@ -24,7 +24,7 @@ class Session extends Service $currentUser = $this->getCurrentUser(); if ($currentUser->id > 0) { - $this->response->redirect(['for' => 'desktop.index']); + $this->response->redirect(['for' => 'home.index']); } $post = $this->request->getPost(); @@ -33,7 +33,7 @@ class Session extends Service $user = $accountValidator->checkAdminLogin($post['account'], $post['password']); - $captchaSettings = $this->getSectionSettings('captcha'); + $captchaSettings = $this->getSettings('captcha'); /** * 验证码是一次性的,放到最后检查,减少第三方调用 diff --git a/app/Http/Admin/Services/Setting.php b/app/Http/Admin/Services/Setting.php index e6a18d10..f5b6ee0b 100644 --- a/app/Http/Admin/Services/Setting.php +++ b/app/Http/Admin/Services/Setting.php @@ -11,18 +11,18 @@ class Setting extends Service public function getAlipaySettings() { - $alipay = $this->getSectionSettings('pay.alipay'); + $alipay = $this->getSettings('pay.alipay'); - $alipay['notify_url'] = $alipay['notify_url'] ?: kg_full_url(['for' => 'desktop.alipay_notify']); + $alipay['notify_url'] = $alipay['notify_url'] ?: kg_full_url(['for' => 'home.alipay_notify']); return $alipay; } public function getWxpaySettings() { - $wxpay = $this->getSectionSettings('pay.wxpay'); + $wxpay = $this->getSettings('pay.wxpay'); - $wxpay['notify_url'] = $wxpay['notify_url'] ?: kg_full_url(['for' => 'desktop.wxpay_notify']); + $wxpay['notify_url'] = $wxpay['notify_url'] ?: kg_full_url(['for' => 'home.wxpay_notify']); return $wxpay; } @@ -36,20 +36,20 @@ class Setting extends Service public function getLiveSettings($section) { - $result = $this->getSectionSettings($section); + $result = $this->getSettings($section); if ($section == 'live.notify') { - $result['stream_begin_url'] = $result['stream_begin_url'] ?: kg_full_url(['for' => 'desktop.live_notify'], ['action' => 'streamBegin']); - $result['stream_end_url'] = $result['stream_end_url'] ?: kg_full_url(['for' => 'desktop.live_notify'], ['action' => 'streamEnd']); - $result['record_url'] = $result['record_url'] ?: kg_full_url(['for' => 'desktop.live_notify'], ['action' => 'record']); - $result['snapshot_url'] = $result['snapshot_url'] ?: kg_full_url(['for' => 'desktop.live_notify'], ['action' => 'snapshot']); - $result['porn_url'] = $result['porn_url'] ?: kg_full_url(['for' => 'desktop.live_notify'], ['action' => 'porn']); + $result['stream_begin_url'] = $result['stream_begin_url'] ?: kg_full_url(['for' => 'home.live_notify'], ['action' => 'streamBegin']); + $result['stream_end_url'] = $result['stream_end_url'] ?: kg_full_url(['for' => 'home.live_notify'], ['action' => 'streamEnd']); + $result['record_url'] = $result['record_url'] ?: kg_full_url(['for' => 'home.live_notify'], ['action' => 'record']); + $result['snapshot_url'] = $result['snapshot_url'] ?: kg_full_url(['for' => 'home.live_notify'], ['action' => 'snapshot']); + $result['porn_url'] = $result['porn_url'] ?: kg_full_url(['for' => 'home.live_notify'], ['action' => 'porn']); } return $result; } - public function getSectionSettings($section) + public function getSettings($section) { $settingsRepo = new SettingRepo(); @@ -112,7 +112,7 @@ class Setting extends Service $this->updateSectionSettings($section, $settings); } - public function updateSmserSettings($section, $settings) + public function updateSmsSettings($section, $settings) { $settings['template'] = kg_json_encode($settings['template']); diff --git a/app/Http/Admin/Services/Carousel.php b/app/Http/Admin/Services/Slide.php similarity index 52% rename from app/Http/Admin/Services/Carousel.php rename to app/Http/Admin/Services/Slide.php index cd746de6..54c7895b 100644 --- a/app/Http/Admin/Services/Carousel.php +++ b/app/Http/Admin/Services/Slide.php @@ -2,16 +2,16 @@ namespace App\Http\Admin\Services; -use App\Caches\IndexCarouselList as IndexCarouselListCache; +use App\Caches\IndexSlideList as IndexSlideListCache; use App\Library\Paginator\Query as PagerQuery; -use App\Models\Carousel as CarouselModel; -use App\Repos\Carousel as CarouselRepo; -use App\Validators\Carousel as CarouselValidator; +use App\Models\Slide as SlideModel; +use App\Repos\Slide as SlideRepo; +use App\Validators\Slide as SlideValidator; -class Carousel extends Service +class Slide extends Service { - public function getCarousels() + public function getSlides() { $pagerQuery = new PagerQuery(); @@ -23,55 +23,55 @@ class Carousel extends Service $page = $pagerQuery->getPage(); $limit = $pagerQuery->getLimit(); - $carouselRepo = new CarouselRepo(); + $slideRepo = new SlideRepo(); - return $carouselRepo->paginate($params, $sort, $page, $limit); + return $slideRepo->paginate($params, $sort, $page, $limit); } - public function getCarousel($id) + public function getSlide($id) { return $this->findOrFail($id); } - public function createCarousel() + public function createSlide() { $post = $this->request->getPost(); - $validator = new CarouselValidator(); + $validator = new SlideValidator(); $data['title'] = $validator->checkTitle($post['title']); $data['target'] = $validator->checkTarget($post['target']); - if ($post['target'] == CarouselModel::TARGET_COURSE) { + if ($post['target'] == SlideModel::TARGET_COURSE) { $course = $validator->checkCourse($post['content']); $data['content'] = $course->id; $data['cover'] = $course->cover; $data['summary'] = $course->summary; - } elseif ($post['target'] == CarouselModel::TARGET_PAGE) { + } elseif ($post['target'] == SlideModel::TARGET_PAGE) { $page = $validator->checkPage($post['content']); $data['content'] = $page->id; - } elseif ($post['target'] == CarouselModel::TARGET_LINK) { + } elseif ($post['target'] == SlideModel::TARGET_LINK) { $data['content'] = $validator->checkLink($post['content']); } $data['priority'] = 20; - $carousel = new CarouselModel(); + $slide = new SlideModel(); - $carousel->create($data); + $slide->create($data); - $this->rebuildCarouselCache(); + $this->rebuildSlideCache(); - return $carousel; + return $slide; } - public function updateCarousel($id) + public function updateSlide($id) { - $carousel = $this->findOrFail($id); + $slide = $this->findOrFail($id); $post = $this->request->getPost(); - $validator = new CarouselValidator(); + $validator = new SlideValidator(); $data = []; @@ -87,18 +87,14 @@ class Carousel extends Service $data['cover'] = $validator->checkCover($post['cover']); } - if (isset($post['style']['bg_color'])) { - $data['style']['bg_color'] = $validator->checkBgColor($post['style']['bg_color']); - } - if (isset($post['content'])) { - if ($carousel->target == CarouselModel::TARGET_COURSE) { + if ($slide->target == SlideModel::TARGET_COURSE) { $course = $validator->checkCourse($post['content']); $data['content'] = $course->id; - } elseif ($carousel->target == CarouselModel::TARGET_PAGE) { + } elseif ($slide->target == SlideModel::TARGET_PAGE) { $page = $validator->checkPage($post['content']); $data['content'] = $page->id; - } elseif ($carousel->target == CarouselModel::TARGET_LINK) { + } elseif ($slide->target == SlideModel::TARGET_LINK) { $data['content'] = $validator->checkLink($post['content']); } } @@ -111,51 +107,51 @@ class Carousel extends Service $data['published'] = $validator->checkPublishStatus($post['published']); } - $carousel->update($data); + $slide->update($data); - $this->rebuildCarouselCache(); + $this->rebuildSlideCache(); - return $carousel; + return $slide; } - public function deleteCarousel($id) + public function deleteSlide($id) { - $carousel = $this->findOrFail($id); + $slide = $this->findOrFail($id); - $carousel->deleted = 1; + $slide->deleted = 1; - $carousel->update(); + $slide->update(); - $this->rebuildCarouselCache(); + $this->rebuildSlideCache(); - return $carousel; + return $slide; } - public function restoreCarousel($id) + public function restoreSlide($id) { - $carousel = $this->findOrFail($id); + $slide = $this->findOrFail($id); - $carousel->deleted = 0; + $slide->deleted = 0; - $carousel->update(); + $slide->update(); - $this->rebuildCarouselCache(); + $this->rebuildSlideCache(); - return $carousel; + return $slide; } - protected function rebuildCarouselCache() + protected function rebuildSlideCache() { - $cache = new IndexCarouselListCache(); + $cache = new IndexSlideListCache(); $cache->rebuild(); } protected function findOrFail($id) { - $validator = new CarouselValidator(); + $validator = new SlideValidator(); - return $validator->checkCarousel($id); + return $validator->checkSlide($id); } } diff --git a/app/Http/Admin/Views/carousel/add.volt b/app/Http/Admin/Views/carousel/add.volt index a1a7e1e2..ba0cb7f9 100644 --- a/app/Http/Admin/Views/carousel/add.volt +++ b/app/Http/Admin/Views/carousel/add.volt @@ -2,7 +2,7 @@ {% block content %} -
+
添加轮播
@@ -15,9 +15,9 @@
- - - + + +
diff --git a/app/Http/Admin/Views/carousel/edit.volt b/app/Http/Admin/Views/carousel/edit.volt index b2381874..03c453bd 100644 --- a/app/Http/Admin/Views/carousel/edit.volt +++ b/app/Http/Admin/Views/carousel/edit.volt @@ -3,67 +3,58 @@ {% block content %} {%- macro content_label(target) %} - {% if target == 'course' %} + {% if target == 1 %} 课程编号 - {% elseif target == 'page' %} + {% elseif target == 2 %} 单页编号 - {% elseif target == 'link' %} + {% elseif target == 3 %} 链接地址 {% endif %} {%- endmacro %} - +
编辑轮播
- - + +
-
- -
- -
-
-
-
-
- +
- +
- +
- +
- +
- - + +
@@ -81,28 +72,4 @@ {{ js_include('admin/js/cover.upload.js') }} -{% endblock %} - -{% block inline_js %} - - - {% endblock %} \ No newline at end of file diff --git a/app/Http/Admin/Views/carousel/list.volt b/app/Http/Admin/Views/carousel/list.volt index c60351b5..fb832a23 100644 --- a/app/Http/Admin/Views/carousel/list.volt +++ b/app/Http/Admin/Views/carousel/list.volt @@ -3,17 +3,15 @@ {% block content %} {%- macro target_info(value) %} - {% if value == 'course' %} + {% if value == 1 %} 课程 - {% elseif value == 'page' %} + {% elseif value == 2 %} 单页 - {% elseif value == 'link' %} - 链接 + {% elseif value == 3 %} + 链接 {% endif %} {%- endmacro %} - {% set add_url = url({'for':'admin.carousel.add'}) %} -
@@ -43,16 +41,16 @@ {% for item in pager.items %} - {% set edit_url = url({'for':'admin.carousel.edit','id':item.id}) %} - {% set update_url = url({'for':'admin.carousel.update','id':item.id}) %} - {% set delete_url = url({'for':'admin.carousel.delete','id':item.id}) %} - {% set restore_url = url({'for':'admin.carousel.restore','id':item.id}) %} + {% set edit_url = url({'for':'admin.slide.edit','id':item.id}) %} + {% set update_url = url({'for':'admin.slide.update','id':item.id}) %} + {% set delete_url = url({'for':'admin.slide.delete','id':item.id}) %} + {% set restore_url = url({'for':'admin.slide.restore','id':item.id}) %} {{ item.id }} - {{ item.title }} + {{ item.title }} {{ target_info(item.target) }} - +
diff --git a/app/Http/Admin/Views/category/edit.volt b/app/Http/Admin/Views/category/edit.volt index 0d12f1eb..13bc5302 100644 --- a/app/Http/Admin/Views/category/edit.volt +++ b/app/Http/Admin/Views/category/edit.volt @@ -21,8 +21,8 @@
- - + +
diff --git a/app/Http/Admin/Views/category/list.volt b/app/Http/Admin/Views/category/list.volt index 840af593..6a2e9b04 100644 --- a/app/Http/Admin/Views/category/list.volt +++ b/app/Http/Admin/Views/category/list.volt @@ -61,7 +61,7 @@ {{ item.level }} {{ item.child_count }} - +
diff --git a/app/Http/Admin/Views/chapter/edit_lesson.volt b/app/Http/Admin/Views/chapter/edit_lesson.volt index 802c973e..69bfd8d1 100644 --- a/app/Http/Admin/Views/chapter/edit_lesson.volt +++ b/app/Http/Admin/Views/chapter/edit_lesson.volt @@ -41,7 +41,7 @@ {% block link_css %} - {% if chapter.model == '3' %} + {% if chapter.model == 3 %} {{ css_link('https://cdn.jsdelivr.net/npm/vditor/dist/index.css', false) }} {% endif %} @@ -49,12 +49,12 @@ {% block include_js %} - {% if chapter.model == '3' %} + {% if chapter.model == 3 %} {{ js_include('https://cdn.jsdelivr.net/npm/vditor/dist/index.min.js', false) }} {{ js_include('admin/js/vditor.js') }} - {% elseif chapter.model == '1' %} + {% elseif chapter.model == 1 %} {{ js_include('lib/vod-js-sdk-v6.min.js') }} {{ js_include('lib/clipboard.min.js') }} diff --git a/app/Http/Admin/Views/chapter/lessons_live.volt b/app/Http/Admin/Views/chapter/lessons_live.volt index 649374af..8ecd0f97 100644 --- a/app/Http/Admin/Views/chapter/lessons_live.volt +++ b/app/Http/Admin/Views/chapter/lessons_live.volt @@ -42,7 +42,7 @@ {% for item in lessons %} - {% set preview_url = url({'for':'desktop.chapter.show','id':item.id}) %} + {% set preview_url = url({'for':'home.chapter.show','id':item.id}) %} {% set edit_url = url({'for':'admin.chapter.edit','id':item.id}) %} {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} @@ -56,8 +56,8 @@ {{ live_time_info(item.attrs) }} {{ live_status_info(item.attrs['stream']['status']) }} - - + +
diff --git a/app/Http/Admin/Views/chapter/lessons_read.volt b/app/Http/Admin/Views/chapter/lessons_read.volt index af794cbf..e5fdacb0 100644 --- a/app/Http/Admin/Views/chapter/lessons_read.volt +++ b/app/Http/Admin/Views/chapter/lessons_read.volt @@ -21,7 +21,7 @@ {% for item in lessons %} - {% set preview_url = url({'for':'desktop.chapter.show','id':item.id}) %} + {% set preview_url = url({'for':'home.chapter.show','id':item.id}) %} {% set edit_url = url({'for':'admin.chapter.edit','id':item.id}) %} {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} @@ -34,8 +34,8 @@ {{ item.attrs['word_count'] }} - - + +
diff --git a/app/Http/Admin/Views/chapter/lessons_vod.volt b/app/Http/Admin/Views/chapter/lessons_vod.volt index 93777824..838017da 100644 --- a/app/Http/Admin/Views/chapter/lessons_vod.volt +++ b/app/Http/Admin/Views/chapter/lessons_vod.volt @@ -37,7 +37,7 @@ {% for item in lessons %} - {% set preview_url = url({'for':'desktop.chapter.show','id':item.id}) %} + {% set preview_url = url({'for':'home.chapter.show','id':item.id}) %} {% set edit_url = url({'for':'admin.chapter.edit','id':item.id}) %} {% set update_url = url({'for':'admin.chapter.update','id':item.id}) %} {% set delete_url = url({'for':'admin.chapter.delete','id':item.id}) %} @@ -51,8 +51,8 @@ {{ file_status(item.attrs['file']['status']) }} {{ item.attrs['duration']|duration }} - - + +
diff --git a/app/Http/Admin/Views/consult/list.volt b/app/Http/Admin/Views/consult/list.volt index 2ab73896..21a74f8d 100644 --- a/app/Http/Admin/Views/consult/list.volt +++ b/app/Http/Admin/Views/consult/list.volt @@ -57,7 +57,7 @@

编号:{{ item.owner.id }}

{{ date('Y-m-d H:i:s',item.create_time) }} - +
diff --git a/app/Http/Admin/Views/course/edit_basic.volt b/app/Http/Admin/Views/course/edit_basic.volt index 7d3d5703..e28afa78 100644 --- a/app/Http/Admin/Views/course/edit_basic.volt +++ b/app/Http/Admin/Views/course/edit_basic.volt @@ -30,10 +30,10 @@
- - - - + + + +
diff --git a/app/Http/Admin/Views/course/list.volt b/app/Http/Admin/Views/course/list.volt index 7022c87d..9580510d 100644 --- a/app/Http/Admin/Views/course/list.volt +++ b/app/Http/Admin/Views/course/list.volt @@ -69,7 +69,7 @@ {% for item in pager.items %} - {% set preview_url = url({'for':'desktop.course.show','id':item.id}) %} + {% set preview_url = url({'for':'home.course.show','id':item.id}) %} {% set edit_url = url({'for':'admin.course.edit','id':item.id}) %} {% set update_url = url({'for':'admin.course.update','id':item.id}) %} {% set delete_url = url({'for':'admin.course.delete','id':item.id}) %} @@ -97,7 +97,7 @@

市场:{{ '¥%0.2f'|format(item.market_price) }}

会员:{{ '¥%0.2f'|format(item.vip_price) }}

- +
diff --git a/app/Http/Admin/Views/help/edit.volt b/app/Http/Admin/Views/help/edit.volt index 4d9ab1d4..72cf83dd 100644 --- a/app/Http/Admin/Views/help/edit.volt +++ b/app/Http/Admin/Views/help/edit.volt @@ -39,8 +39,8 @@
- - + +
diff --git a/app/Http/Admin/Views/help/list.volt b/app/Http/Admin/Views/help/list.volt index c930b3db..f7926df5 100644 --- a/app/Http/Admin/Views/help/list.volt +++ b/app/Http/Admin/Views/help/list.volt @@ -32,7 +32,7 @@ {% for item in helps %} {% set list_url = url({'for':'admin.help.list'},{'category_id':item.category.id}) %} - {% set preview_url = url({'for':'desktop.help.show','id':item.id}) %} + {% set preview_url = url({'for':'home.help.show','id':item.id}) %} {% set edit_url = url({'for':'admin.help.edit','id':item.id}) %} {% set update_url = url({'for':'admin.help.update','id':item.id}) %} {% set delete_url = url({'for':'admin.help.delete','id':item.id}) %} @@ -42,7 +42,7 @@ {{ item.title }} {{ item.category.name }} - +
diff --git a/app/Http/Admin/Views/im/group/edit.volt b/app/Http/Admin/Views/im/group/edit.volt index 10be069f..1a3b7cb1 100644 --- a/app/Http/Admin/Views/im/group/edit.volt +++ b/app/Http/Admin/Views/im/group/edit.volt @@ -37,8 +37,8 @@
- - + +
diff --git a/app/Http/Admin/Views/im/group/list.volt b/app/Http/Admin/Views/im/group/list.volt index d304bba3..6570f894 100644 --- a/app/Http/Admin/Views/im/group/list.volt +++ b/app/Http/Admin/Views/im/group/list.volt @@ -49,7 +49,7 @@ {% for item in pager.items %} - {% set preview_url = url({'for':'desktop.group.show','id':item.id}) %} + {% set preview_url = url({'for':'home.group.show','id':item.id}) %} {% set edit_url = url({'for':'admin.group.edit','id':item.id}) %} {% set update_url = url({'for':'admin.group.update','id':item.id}) %} {% set delete_url = url({'for':'admin.group.delete','id':item.id}) %} @@ -59,7 +59,7 @@ {{ item.name }} {{ type_info(item.type) }} {{ owner_info(item.owner) }} {{ item.user_count }} - +
diff --git a/app/Http/Admin/Views/index/index.volt b/app/Http/Admin/Views/index/index.volt index c14f300f..e0973609 100644 --- a/app/Http/Admin/Views/index/index.volt +++ b/app/Http/Admin/Views/index/index.volt @@ -28,13 +28,13 @@
  • {{ auth_user.name }}
    -
    基本资料
    -
    安全设置
    +
    基本资料
    +
    安全设置
    退出登录
  • - 前台 + 前台
  • diff --git a/app/Http/Admin/Views/index/main_app_info.volt b/app/Http/Admin/Views/index/main_app_info.volt index 33661931..e5199d2e 100644 --- a/app/Http/Admin/Views/index/main_app_info.volt +++ b/app/Http/Admin/Views/index/main_app_info.volt @@ -19,7 +19,7 @@ 获取渠道 Gitee  - Github + Github diff --git a/app/Http/Admin/Views/nav/edit.volt b/app/Http/Admin/Views/nav/edit.volt index 60ad58ad..fd7673e3 100644 --- a/app/Http/Admin/Views/nav/edit.volt +++ b/app/Http/Admin/Views/nav/edit.volt @@ -27,22 +27,22 @@
    - - + +
    - - + +
    - - + +
    diff --git a/app/Http/Admin/Views/nav/list.volt b/app/Http/Admin/Views/nav/list.volt index 2e6a65ab..669a1eed 100644 --- a/app/Http/Admin/Views/nav/list.volt +++ b/app/Http/Admin/Views/nav/list.volt @@ -82,7 +82,7 @@ {{ position_info(item.position) }} {{ target_info(item.target) }} - +
    diff --git a/app/Http/Admin/Views/package/list.volt b/app/Http/Admin/Views/package/list.volt index 49940aee..e319bd11 100644 --- a/app/Http/Admin/Views/package/list.volt +++ b/app/Http/Admin/Views/package/list.volt @@ -43,7 +43,7 @@ {{ item.course_count }} {{ '¥%0.2f'|format(item.market_price) }} {{ '¥%0.2f'|format(item.vip_price) }} - +
    diff --git a/app/Http/Admin/Views/page/edit.volt b/app/Http/Admin/Views/page/edit.volt index cc4d7232..d7eaca4e 100644 --- a/app/Http/Admin/Views/page/edit.volt +++ b/app/Http/Admin/Views/page/edit.volt @@ -22,8 +22,8 @@
    - - + +
    diff --git a/app/Http/Admin/Views/page/list.volt b/app/Http/Admin/Views/page/list.volt index 99e8a4c2..5e7a5062 100644 --- a/app/Http/Admin/Views/page/list.volt +++ b/app/Http/Admin/Views/page/list.volt @@ -31,7 +31,7 @@ {% for item in pager.items %} - {% set preview_url = url({'for':'desktop.page.show','id':item.id}) %} + {% set preview_url = url({'for':'home.page.show','id':item.id}) %} {% set edit_url = url({'for':'admin.page.edit','id':item.id}) %} {% set update_url = url({'for':'admin.page.update','id':item.id}) %} {% set delete_url = url({'for':'admin.page.delete','id':item.id}) %} @@ -40,7 +40,7 @@ {{ item.title }} {{ date('Y-m-d H:i',item.create_time) }} {{ date('Y-m-d H:i',item.update_time) }} - +
    diff --git a/app/Http/Admin/Views/public/forbidden.volt b/app/Http/Admin/Views/public/forbidden.volt index 35cf5cd1..28975e59 100644 --- a/app/Http/Admin/Views/public/forbidden.volt +++ b/app/Http/Admin/Views/public/forbidden.volt @@ -19,6 +19,6 @@ {% block link_css %} - {{ css_link("desktop/css/error.css") }} + {{ css_link("home/css/error.css") }} {% endblock %} \ No newline at end of file diff --git a/app/Http/Admin/Views/public/live_player.volt b/app/Http/Admin/Views/public/live_player.volt index a6d3f352..334eb6e5 100644 --- a/app/Http/Admin/Views/public/live_player.volt +++ b/app/Http/Admin/Views/public/live_player.volt @@ -18,7 +18,7 @@ {% block inline_js %} - + diff --git a/app/Http/Admin/Views/public/login.volt b/app/Http/Admin/Views/public/login.volt index 5e583d7d..d2afecea 100644 --- a/app/Http/Admin/Views/public/login.volt +++ b/app/Http/Admin/Views/public/login.volt @@ -26,7 +26,7 @@ {% endif %}
    - {% set disabled = captcha.enabled ? 'disabled' : '' %} + {% set disabled = captcha.enabled ? 'disabled="disabled"' : '' %} @@ -71,7 +71,7 @@ var $ = layui.jquery; - var captcha = new TencentCaptcha( + new TencentCaptcha( $('#captcha-btn')[0], $('#captcha-btn').data('app-id'), function (res) { diff --git a/app/Http/Admin/Views/public/vod_player.volt b/app/Http/Admin/Views/public/vod_player.volt index 63c1c400..12489974 100644 --- a/app/Http/Admin/Views/public/vod_player.volt +++ b/app/Http/Admin/Views/public/vod_player.volt @@ -1,31 +1,38 @@ - - - - - - 视频点播 - +{% extends 'templates/main.volt' %} + +{% block content %} + +
    + +{% endblock %} + +{% block inline_css %} + - - -
    - - - - \ No newline at end of file + + +{% endblock %} \ No newline at end of file diff --git a/app/Http/Admin/Views/review/list.volt b/app/Http/Admin/Views/review/list.volt index 30ae9ef3..3e61817e 100644 --- a/app/Http/Admin/Views/review/list.volt +++ b/app/Http/Admin/Views/review/list.volt @@ -54,7 +54,7 @@

    昵称:{{ item.owner.name }}

    编号:{{ item.owner.id }}

    - +
    diff --git a/app/Http/Admin/Views/role/edit.volt b/app/Http/Admin/Views/role/edit.volt index 23afcd58..d54835c6 100644 --- a/app/Http/Admin/Views/role/edit.volt +++ b/app/Http/Admin/Views/role/edit.volt @@ -31,7 +31,7 @@ {{ level2.title }} {% for level3 in level2.children %} - + {% endfor %} diff --git a/app/Http/Admin/Views/setting/im_cs.volt b/app/Http/Admin/Views/setting/im_cs.volt index b21920dc..156633c5 100644 --- a/app/Http/Admin/Views/setting/im_cs.volt +++ b/app/Http/Admin/Views/setting/im_cs.volt @@ -2,8 +2,8 @@
    - - + +
    diff --git a/app/Http/Admin/Views/setting/im_main.volt b/app/Http/Admin/Views/setting/im_main.volt index 7776e094..3e392a17 100644 --- a/app/Http/Admin/Views/setting/im_main.volt +++ b/app/Http/Admin/Views/setting/im_main.volt @@ -14,29 +14,29 @@
    - - + +
    - - + +
    - - + +
    - - + +
    diff --git a/app/Http/Admin/Views/setting/live_pull.volt b/app/Http/Admin/Views/setting/live_pull.volt index 7990554a..d8cc833c 100644 --- a/app/Http/Admin/Views/setting/live_pull.volt +++ b/app/Http/Admin/Views/setting/live_pull.volt @@ -8,8 +8,8 @@
    - - + +
    @@ -24,8 +24,8 @@
    - - + +
    @@ -48,8 +48,8 @@
    - - + +
    diff --git a/app/Http/Admin/Views/setting/live_push.volt b/app/Http/Admin/Views/setting/live_push.volt index 6eaeb1b2..6550b759 100644 --- a/app/Http/Admin/Views/setting/live_push.volt +++ b/app/Http/Admin/Views/setting/live_push.volt @@ -16,8 +16,8 @@
    - - + +
    diff --git a/app/Http/Admin/Views/setting/live_push_test.volt b/app/Http/Admin/Views/setting/live_push_test.volt index 45430f41..969c162f 100644 --- a/app/Http/Admin/Views/setting/live_push_test.volt +++ b/app/Http/Admin/Views/setting/live_push_test.volt @@ -17,7 +17,7 @@
    - +
    复制 diff --git a/app/Http/Admin/Views/setting/mailer.volt b/app/Http/Admin/Views/setting/mail.volt similarity index 79% rename from app/Http/Admin/Views/setting/mailer.volt rename to app/Http/Admin/Views/setting/mail.volt index 651114e9..440c3fe9 100644 --- a/app/Http/Admin/Views/setting/mailer.volt +++ b/app/Http/Admin/Views/setting/mail.volt @@ -2,60 +2,60 @@ {% block content %} - +
    邮件配置
    - +
    - +
    - +
    - +
    - - - + + +
    - - + +
    - +
    - +
    @@ -68,7 +68,7 @@
    -
    +
    邮件测试
    @@ -98,7 +98,7 @@ var $ = layui.jquery; var form = layui.form; - form.on('radio(smtp_auth)', function (data) { + form.on('radio(smtp_auth_enabled)', function (data) { var block = $('#smtp-auth-block'); if (data.value === '1') { block.show(); diff --git a/app/Http/Admin/Views/setting/pay_alipay.volt b/app/Http/Admin/Views/setting/pay_alipay.volt index b99f0581..3a773750 100644 --- a/app/Http/Admin/Views/setting/pay_alipay.volt +++ b/app/Http/Admin/Views/setting/pay_alipay.volt @@ -2,8 +2,8 @@
    - - + +
    diff --git a/app/Http/Admin/Views/setting/pay_wxpay.volt b/app/Http/Admin/Views/setting/pay_wxpay.volt index aec88276..14e7bf66 100644 --- a/app/Http/Admin/Views/setting/pay_wxpay.volt +++ b/app/Http/Admin/Views/setting/pay_wxpay.volt @@ -2,8 +2,8 @@
    - - + +
    diff --git a/app/Http/Admin/Views/setting/site.volt b/app/Http/Admin/Views/setting/site.volt index 3f994ab2..7d51d8b5 100644 --- a/app/Http/Admin/Views/setting/site.volt +++ b/app/Http/Admin/Views/setting/site.volt @@ -12,8 +12,8 @@
    - - + +
    @@ -27,8 +27,8 @@
    - - + +
    @@ -92,8 +92,8 @@
    - - + +
    diff --git a/app/Http/Admin/Views/setting/smser.volt b/app/Http/Admin/Views/setting/sms.volt similarity index 94% rename from app/Http/Admin/Views/setting/smser.volt rename to app/Http/Admin/Views/setting/sms.volt index a9ba080c..dbddfc49 100644 --- a/app/Http/Admin/Views/setting/smser.volt +++ b/app/Http/Admin/Views/setting/sms.volt @@ -2,28 +2,28 @@ {% block content %} - {% set template = smser.template|json_decode %} + {% set template = sms.template|json_decode %} - +
    基础配置
    - +
    - +
    - +
    @@ -80,7 +80,7 @@
    -
    +
    短信测试
    diff --git a/app/Http/Admin/Views/setting/storage.volt b/app/Http/Admin/Views/setting/storage.volt index ced0f8ca..34ab1e62 100644 --- a/app/Http/Admin/Views/setting/storage.volt +++ b/app/Http/Admin/Views/setting/storage.volt @@ -21,8 +21,8 @@
    - - + +
    @@ -56,7 +56,7 @@ mageMogr2/thumbnail/270x/interlace/0 - carousel_1100 + slide_1100 imageMogr2/thumbnail/1100x/interlace/0 diff --git a/app/Http/Admin/Views/setting/vod.volt b/app/Http/Admin/Views/setting/vod.volt index bf2ba42d..fc8b7d55 100644 --- a/app/Http/Admin/Views/setting/vod.volt +++ b/app/Http/Admin/Views/setting/vod.volt @@ -13,8 +13,8 @@
    - - + +
    @@ -31,22 +31,22 @@
    - - + +
    - - + +
    - - + +
    @@ -63,8 +63,8 @@
    - - + +
    @@ -79,8 +79,8 @@
    - - + +
    diff --git a/app/Http/Admin/Views/topic/list.volt b/app/Http/Admin/Views/topic/list.volt index 029bcf84..295d1484 100644 --- a/app/Http/Admin/Views/topic/list.volt +++ b/app/Http/Admin/Views/topic/list.volt @@ -33,7 +33,7 @@ {% for item in pager.items %} - {% set preview_url = url({'for':'desktop.topic.show','id':item.id}) %} + {% set preview_url = url({'for':'home.topic.show','id':item.id}) %} {% set edit_url = url({'for':'admin.topic.edit','id':item.id}) %} {% set update_url = url({'for':'admin.topic.update','id':item.id}) %} {% set delete_url = url({'for':'admin.topic.delete','id':item.id}) %} @@ -44,7 +44,7 @@ {{ item.course_count }} {{ date('Y-m-d H:i',item.create_time) }} {{ date('Y-m-d H:i',item.update_time) }} - +
    diff --git a/app/Http/Admin/Views/user/edit.volt b/app/Http/Admin/Views/user/edit.volt index f10cb96c..7a0fb973 100644 --- a/app/Http/Admin/Views/user/edit.volt +++ b/app/Http/Admin/Views/user/edit.volt @@ -29,18 +29,18 @@
    - - + +
    {% if auth_user.root == 1 %}
    - + {% for role in roles %} {% if role.id > 1 %} - + {% endif %} {% endfor %}
    diff --git a/app/Http/Admin/Views/user/list.volt b/app/Http/Admin/Views/user/list.volt index 15fde050..837e94cb 100644 --- a/app/Http/Admin/Views/user/list.volt +++ b/app/Http/Admin/Views/user/list.volt @@ -68,7 +68,7 @@ {% for item in pager.items %} - {% set preview_url = url({'for':'desktop.user.show','id':item.id}) %} + {% set preview_url = url({'for':'home.user.show','id':item.id}) %} {% set edit_url = url({'for':'admin.user.edit','id':item.id}) %} {{ item.id }} diff --git a/app/Http/Desktop/Views/teaching/menu.volt b/app/Http/Desktop/Views/teaching/menu.volt deleted file mode 100644 index 5ab72115..00000000 --- a/app/Http/Desktop/Views/teaching/menu.volt +++ /dev/null @@ -1,10 +0,0 @@ -
    -
    教学中心
    - -
    diff --git a/app/Http/Desktop/Views/topic/show.volt b/app/Http/Desktop/Views/topic/show.volt deleted file mode 100644 index 9d953fb7..00000000 --- a/app/Http/Desktop/Views/topic/show.volt +++ /dev/null @@ -1,19 +0,0 @@ -{% extends 'templates/main.volt' %} - -{% block content %} - - {% set courses_url = url({'for':'desktop.topic.courses','id':topic.id}) %} - -
    -
    {{ topic.title }}
    -
    - -
    - -{% endblock %} - -{% block include_js %} - - {{ js_include('desktop/js/topic.show.js') }} - -{% endblock %} \ No newline at end of file diff --git a/app/Http/Desktop/Controllers/AccountController.php b/app/Http/Home/Controllers/AccountController.php similarity index 65% rename from app/Http/Desktop/Controllers/AccountController.php rename to app/Http/Home/Controllers/AccountController.php index 7b0749b9..92969579 100644 --- a/app/Http/Desktop/Controllers/AccountController.php +++ b/app/Http/Home/Controllers/AccountController.php @@ -1,12 +1,12 @@ authUser->id > 0) { - $this->response->redirect('/'); + return $this->response->redirect('/'); } $service = new AccountService(); - $captcha = $service->getSectionSettings('captcha'); + $captcha = $service->getSettings('captcha'); $returnUrl = $this->request->getHTTPReferer(); @@ -35,7 +35,7 @@ class AccountController extends Controller } /** - * @Post("/register", name="desktop.account.do_register") + * @Post("/register", name="home.account.do_register") */ public function doRegisterAction() { @@ -54,7 +54,7 @@ class AccountController extends Controller } /** - * @Get("/login", name="desktop.account.login") + * @Get("/login", name="home.account.login") */ public function loginAction() { @@ -64,7 +64,7 @@ class AccountController extends Controller $service = new AccountService(); - $captcha = $service->getSectionSettings('captcha'); + $captcha = $service->getSettings('captcha'); $returnUrl = $this->request->getHTTPReferer(); @@ -73,7 +73,7 @@ class AccountController extends Controller } /** - * @Post("/password/login", name="desktop.account.pwd_login") + * @Post("/password/login", name="home.account.pwd_login") */ public function loginByPasswordAction() { @@ -83,7 +83,7 @@ class AccountController extends Controller $returnUrl = $this->request->getPost('return_url', 'string'); - $location = $returnUrl ?: $this->url->get(['for' => 'desktop.index']); + $location = $returnUrl ?: $this->url->get(['for' => 'home.index']); $content = ['location' => $location]; @@ -91,7 +91,7 @@ class AccountController extends Controller } /** - * @Post("/verify/login", name="desktop.account.verify_login") + * @Post("/verify/login", name="home.account.verify_login") */ public function loginByVerifyAction() { @@ -101,7 +101,7 @@ class AccountController extends Controller $returnUrl = $this->request->getPost('return_url', 'string'); - $location = $returnUrl ?: $this->url->get(['for' => 'desktop.index']); + $location = $returnUrl ?: $this->url->get(['for' => 'home.index']); $content = ['location' => $location]; @@ -109,7 +109,7 @@ class AccountController extends Controller } /** - * @Get("/logout", name="desktop.account.logout") + * @Get("/logout", name="home.account.logout") */ public function logoutAction() { @@ -117,38 +117,38 @@ class AccountController extends Controller $service->logout(); - $this->response->redirect(['for' => 'desktop.index']); + $this->response->redirect(['for' => 'home.index']); } /** - * @Get("/password/forget", name="desktop.account.forget_pwd") + * @Get("/password/forget", name="home.account.forget_pwd") */ public function forgetPasswordAction() { if ($this->authUser->id > 0) { - $this->response->redirect(['for' => 'desktop.index']); + $this->response->redirect(['for' => 'home.index']); } $service = new AccountService(); - $captcha = $service->getSectionSettings('captcha'); + $captcha = $service->getSettings('captcha'); $this->view->pick('account/forget_password'); $this->view->setVar('captcha', $captcha); } /** - * @Get("/password/edit", name="desktop.account.edit_pwd") + * @Get("/password/edit", name="home.account.edit_pwd") */ public function editPasswordAction() { if ($this->authUser->id == 0) { - $this->response->redirect(['for' => 'desktop.account.login']); + $this->response->redirect(['for' => 'home.account.login']); } $service = new AccountService(); - $captcha = $service->getSectionSettings('captcha'); + $captcha = $service->getSettings('captcha'); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('account/edit_password'); @@ -156,17 +156,17 @@ class AccountController extends Controller } /** - * @Get("/phone/edit", name="desktop.account.edit_phone") + * @Get("/phone/edit", name="home.account.edit_phone") */ public function editPhoneAction() { if ($this->authUser->id == 0) { - $this->response->redirect(['for' => 'desktop.account.login']); + $this->response->redirect(['for' => 'home.account.login']); } $service = new AccountService(); - $captcha = $service->getSectionSettings('captcha'); + $captcha = $service->getSettings('captcha'); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('account/edit_phone'); @@ -174,17 +174,17 @@ class AccountController extends Controller } /** - * @Get("/email/edit", name="desktop.account.edit_email") + * @Get("/email/edit", name="home.account.edit_email") */ public function editEmailAction() { if ($this->authUser->id == 0) { - $this->response->redirect(['for' => 'desktop.account.login']); + $this->response->redirect(['for' => 'home.account.login']); } $service = new AccountService(); - $captcha = $service->getSectionSettings('captcha'); + $captcha = $service->getSettings('captcha'); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $this->view->pick('account/edit_email'); @@ -192,7 +192,7 @@ class AccountController extends Controller } /** - * @Post("/password/reset", name="desktop.account.reset_pwd") + * @Post("/password/reset", name="home.account.reset_pwd") */ public function resetPasswordAction() { @@ -200,7 +200,7 @@ class AccountController extends Controller $service->handle(); - $loginUrl = $this->url->get(['for' => 'desktop.account.login']); + $loginUrl = $this->url->get(['for' => 'home.account.login']); $content = [ 'location' => $loginUrl, @@ -211,7 +211,7 @@ class AccountController extends Controller } /** - * @Post("/phone/update", name="desktop.account.update_phone") + * @Post("/phone/update", name="home.account.update_phone") */ public function updatePhoneAction() { @@ -225,7 +225,7 @@ class AccountController extends Controller } /** - * @Post("/email/update", name="desktop.account.update_email") + * @Post("/email/update", name="home.account.update_email") */ public function updateEmailAction() { @@ -239,7 +239,7 @@ class AccountController extends Controller } /** - * @Post("/password/update", name="desktop.account.update_pwd") + * @Post("/password/update", name="home.account.update_pwd") */ public function updatePasswordAction() { diff --git a/app/Http/Desktop/Controllers/ChapterController.php b/app/Http/Home/Controllers/ChapterController.php similarity index 76% rename from app/Http/Desktop/Controllers/ChapterController.php rename to app/Http/Home/Controllers/ChapterController.php index 3438fa7b..1db71e31 100644 --- a/app/Http/Desktop/Controllers/ChapterController.php +++ b/app/Http/Home/Controllers/ChapterController.php @@ -1,14 +1,14 @@ response->redirect([ - 'for' => 'desktop.course.show', + return $this->response->redirect([ + 'for' => 'home.course.show', 'id' => $chapter['course']['id'], ]); } @@ -63,7 +63,7 @@ class ChapterController extends Controller } /** - * @Get("/{id:[0-9]+}/danmu", name="desktop.chapter.danmu") + * @Get("/{id:[0-9]+}/danmu", name="home.chapter.danmu") */ public function danmuAction($id) { @@ -75,7 +75,7 @@ class ChapterController extends Controller } /** - * @Post("/{id:[0-9]+}/like", name="desktop.chapter.like") + * @Post("/{id:[0-9]+}/like", name="home.chapter.like") */ public function likeAction($id) { @@ -91,7 +91,7 @@ class ChapterController extends Controller } /** - * @Post("/{id:[0-9]+}/learning", name="desktop.chapter.learning") + * @Post("/{id:[0-9]+}/learning", name="home.chapter.learning") */ public function learningAction($id) { diff --git a/app/Http/Desktop/Controllers/ConsultController.php b/app/Http/Home/Controllers/ConsultController.php similarity index 69% rename from app/Http/Desktop/Controllers/ConsultController.php rename to app/Http/Home/Controllers/ConsultController.php index e1d2078f..e31c1f32 100644 --- a/app/Http/Desktop/Controllers/ConsultController.php +++ b/app/Http/Home/Controllers/ConsultController.php @@ -1,13 +1,13 @@ siteInfo = $this->getSiteInfo(); - $this->authUser = $this->getAuthUser(); $this->checkSiteStatus(); @@ -91,7 +90,7 @@ class Controller extends \Phalcon\Mvc\Controller protected function getAuthUser() { /** - * @var DesktopAuth $auth + * @var HomeAuth $auth */ $auth = $this->getDI()->get('auth'); @@ -140,7 +139,7 @@ class Controller extends \Phalcon\Mvc\Controller return [ 'main' => $cache->get('im.main'), 'cs' => $cache->get('im.cs'), - 'websocket' => $websocket, + 'ws' => $websocket, ]; } diff --git a/app/Http/Desktop/Controllers/CourseController.php b/app/Http/Home/Controllers/CourseController.php similarity index 68% rename from app/Http/Desktop/Controllers/CourseController.php rename to app/Http/Home/Controllers/CourseController.php index 75dd8aca..c06fba43 100644 --- a/app/Http/Desktop/Controllers/CourseController.php +++ b/app/Http/Home/Controllers/CourseController.php @@ -1,19 +1,19 @@ handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('course/packages'); $this->view->setVar('packages', $packages); } /** - * @Get("/{id:[0-9]+}/consults", name="desktop.course.consults") + * @Get("/{id:[0-9]+}/consults", name="home.course.consults") */ public function consultsAction($id) { @@ -115,12 +114,11 @@ class CourseController extends Controller $pager->target = 'tab-consults'; $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('course/consults'); $this->view->setVar('pager', $pager); } /** - * @Get("/{id:[0-9]+}/reviews", name="desktop.course.reviews") + * @Get("/{id:[0-9]+}/reviews", name="home.course.reviews") */ public function reviewsAction($id) { @@ -131,12 +129,11 @@ class CourseController extends Controller $pager->target = 'tab-reviews'; $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('course/reviews'); $this->view->setVar('pager', $pager); } /** - * @Get("/{id:[0-9]+}/recommended", name="desktop.course.recommended") + * @Get("/{id:[0-9]+}/recommended", name="home.course.recommended") */ public function recommendedAction($id) { @@ -145,12 +142,11 @@ class CourseController extends Controller $courses = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('course/recommended'); $this->view->setVar('courses', $courses); } /** - * @Get("/{id:[0-9]+}/related", name="desktop.course.related") + * @Get("/{id:[0-9]+}/related", name="home.course.related") */ public function relatedAction($id) { @@ -159,12 +155,11 @@ class CourseController extends Controller $courses = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('course/related'); $this->view->setVar('courses', $courses); } /** - * @Get("/{id:[0-9]+}/topics", name="desktop.course.topics") + * @Get("/{id:[0-9]+}/topics", name="home.course.topics") */ public function topicsAction($id) { @@ -173,12 +168,11 @@ class CourseController extends Controller $topics = $service->handle($id); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('course/topics'); $this->view->setVar('topics', $topics); } /** - * @Post("/{id:[0-9]+}/favorite", name="desktop.course.favorite") + * @Post("/{id:[0-9]+}/favorite", name="home.course.favorite") */ public function favoriteAction($id) { diff --git a/app/Http/Desktop/Controllers/DanmuController.php b/app/Http/Home/Controllers/DanmuController.php similarity index 63% rename from app/Http/Desktop/Controllers/DanmuController.php rename to app/Http/Home/Controllers/DanmuController.php index 5897614c..908b5290 100644 --- a/app/Http/Desktop/Controllers/DanmuController.php +++ b/app/Http/Home/Controllers/DanmuController.php @@ -1,9 +1,9 @@ authUser->id == 0) { - return $this->response->redirect(['for' => 'desktop.account.login']); + return $this->response->redirect(['for' => 'home.account.login']); } } /** - * @Get("/", name="desktop.im.index") + * @Get("/", name="home.im.index") */ public function indexAction() { @@ -44,7 +44,7 @@ class ImController extends Controller } /** - * @Get("/cs", name="desktop.im.cs") + * @Get("/cs", name="home.im.cs") */ public function csAction() { @@ -56,7 +56,7 @@ class ImController extends Controller } /** - * @Get("/init", name="desktop.im.init") + * @Get("/init", name="home.im.init") */ public function initAction() { @@ -68,7 +68,7 @@ class ImController extends Controller } /** - * @Get("/group/users", name="desktop.im.group_users") + * @Get("/group/users", name="home.im.group_users") */ public function groupUsersAction() { @@ -80,7 +80,7 @@ class ImController extends Controller } /** - * @Get("/msgbox", name="desktop.im.msgbox") + * @Get("/msgbox", name="home.im.msgbox") */ public function msgboxAction() { @@ -88,12 +88,11 @@ class ImController extends Controller $pager = $service->getNotices(); - $this->view->pick('im/msgbox'); $this->view->setVar('pager', $pager); } /** - * @Get("/chatlog", name="desktop.im.chatlog") + * @Get("/chatlog", name="home.im.chatlog") */ public function chatlogAction() { @@ -102,12 +101,11 @@ class ImController extends Controller $pager = $service->getChatMessages(); $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('im/chatlog'); $this->view->setVar('pager', $pager); } /** - * @Get("/friend/msg/unread", name="desktop.im.unread_friend_msg") + * @Get("/friend/msg/unread", name="home.im.unread_friend_msg") */ public function unreadFriendMessageAction() { @@ -121,7 +119,7 @@ class ImController extends Controller } /** - * @Get("/notice/unread", name="desktop.im.unread_notice") + * @Get("/notice/unread", name="home.im.unread_notice") */ public function unreadNoticeAction() { @@ -133,7 +131,7 @@ class ImController extends Controller } /** - * @Get("/notice", name="desktop.im.notice") + * @Get("/notice", name="home.im.notice") */ public function noticeAction() { @@ -145,7 +143,7 @@ class ImController extends Controller } /** - * @Post("/notice/read", name="desktop.im.read_notice") + * @Post("/notice/read", name="home.im.read_notice") */ public function readNoticeAction() { @@ -157,7 +155,7 @@ class ImController extends Controller } /** - * @Get("/friend/status", name="desktop.im.friend_status") + * @Get("/friend/status", name="home.im.friend_status") */ public function friendStatusAction() { @@ -169,7 +167,7 @@ class ImController extends Controller } /** - * @Get("/chat/history", name="desktop.im.chat_history") + * @Get("/chat/history", name="home.im.chat_history") */ public function chatHistoryAction() { @@ -181,7 +179,7 @@ class ImController extends Controller } /** - * @Post("/user/bind", name="desktop.im.bind_user") + * @Post("/user/bind", name="home.im.bind_user") */ public function bindUserAction() { @@ -193,7 +191,7 @@ class ImController extends Controller } /** - * @Post("/msg/chat/send", name="desktop.im.send_chat_msg") + * @Post("/msg/chat/send", name="home.im.send_chat_msg") */ public function sendChatMessageAction() { @@ -208,7 +206,7 @@ class ImController extends Controller } /** - * @Post("/msg/cs/send", name="desktop.im.send_cs_msg") + * @Post("/msg/cs/send", name="home.im.send_cs_msg") */ public function sendCsMessageAction() { @@ -223,7 +221,7 @@ class ImController extends Controller } /** - * @Post("/status/update", name="desktop.im.update_status") + * @Post("/status/update", name="home.im.update_status") */ public function updateStatusAction() { @@ -235,7 +233,7 @@ class ImController extends Controller } /** - * @Post("/sign/update", name="desktop.desktop.im.update_sign") + * @Post("/sign/update", name="home.home.im.update_sign") */ public function updateSignatureAction() { @@ -247,7 +245,7 @@ class ImController extends Controller } /** - * @Post("/skin/update", name="desktop.desktop.im.update_skin") + * @Post("/skin/update", name="home.home.im.update_skin") */ public function updateSKinAction() { @@ -259,7 +257,7 @@ class ImController extends Controller } /** - * @Post("/friend/apply", name="desktop.im.apply_friend") + * @Post("/friend/apply", name="home.im.apply_friend") */ public function applyFriendAction() { @@ -273,7 +271,7 @@ class ImController extends Controller } /** - * @Post("/friend/accept", name="desktop.im.accept_friend") + * @Post("/friend/accept", name="home.im.accept_friend") */ public function acceptFriendAction() { @@ -285,7 +283,7 @@ class ImController extends Controller } /** - * @Post("/friend/refuse", name="desktop.im.refuse_friend") + * @Post("/friend/refuse", name="home.im.refuse_friend") */ public function refuseFriendAction() { @@ -297,7 +295,7 @@ class ImController extends Controller } /** - * @Post("/group/apply", name="desktop.im.apply_group") + * @Post("/group/apply", name="home.im.apply_group") */ public function applyGroupAction() { @@ -311,7 +309,7 @@ class ImController extends Controller } /** - * @Post("/group/accept", name="desktop.desktop.im.accept_group") + * @Post("/group/accept", name="home.home.im.accept_group") */ public function acceptGroupAction() { @@ -323,7 +321,7 @@ class ImController extends Controller } /** - * @Post("/group/refuse", name="desktop.desktop.im.refuse_group") + * @Post("/group/refuse", name="home.home.im.refuse_group") */ public function refuseGroupAction() { @@ -335,7 +333,7 @@ class ImController extends Controller } /** - * @Post("/friend/{id:[0-9]+}/quit", name="desktop.im.quit_friend") + * @Post("/friend/{id:[0-9]+}/quit", name="home.im.quit_friend") */ public function quitFriendAction($id) { @@ -349,7 +347,7 @@ class ImController extends Controller } /** - * @Post("/group/{id:[0-9]+}/quit", name="desktop.im.quit_group") + * @Post("/group/{id:[0-9]+}/quit", name="home.im.quit_group") */ public function quitGroupAction($id) { diff --git a/app/Http/Desktop/Controllers/ImGroupController.php b/app/Http/Home/Controllers/ImGroupController.php similarity index 80% rename from app/Http/Desktop/Controllers/ImGroupController.php rename to app/Http/Home/Controllers/ImGroupController.php index 12329885..bde92ad8 100644 --- a/app/Http/Desktop/Controllers/ImGroupController.php +++ b/app/Http/Home/Controllers/ImGroupController.php @@ -1,8 +1,8 @@ view->pick('index/full'); $this->view->setVar('lives', $service->getLives()); - $this->view->setVar('carousels', $service->getCarousels()); + $this->view->setVar('slides', $service->getSlides()); $this->view->setVar('new_courses', $service->getNewCourses()); $this->view->setVar('free_courses', $service->getFreeCourses()); $this->view->setVar('vip_courses', $service->getVipCourses()); @@ -42,7 +42,7 @@ class IndexController extends Controller $this->view->pick('index/simple'); $this->view->setVar('lives', $service->getLives()); - $this->view->setVar('carousels', $service->getCarousels()); + $this->view->setVar('slides', $service->getSlides()); $this->view->setVar('new_courses', $service->getSimpleNewCourses()); $this->view->setVar('free_courses', $service->getSimpleFreeCourses()); $this->view->setVar('vip_courses', $service->getSimpleVipCourses()); diff --git a/app/Http/Desktop/Controllers/LayerController.php b/app/Http/Home/Controllers/LayerController.php similarity index 88% rename from app/Http/Desktop/Controllers/LayerController.php rename to app/Http/Home/Controllers/LayerController.php index c0c420c3..2d15d84b 100644 --- a/app/Http/Desktop/Controllers/LayerController.php +++ b/app/Http/Home/Controllers/LayerController.php @@ -1,9 +1,9 @@ getDI()->get('auth'); diff --git a/app/Http/Desktop/Controllers/LiveController.php b/app/Http/Home/Controllers/LiveController.php similarity index 75% rename from app/Http/Desktop/Controllers/LiveController.php rename to app/Http/Home/Controllers/LiveController.php index 0a1625c7..9f205c26 100644 --- a/app/Http/Desktop/Controllers/LiveController.php +++ b/app/Http/Home/Controllers/LiveController.php @@ -1,8 +1,8 @@ authUser->id == 0) { - $this->response->redirect(['for' => 'desktop.account.login']); + $this->response->redirect(['for' => 'home.account.login']); return false; } @@ -29,7 +29,7 @@ class OrderController extends Controller } /** - * @Get("/info", name="desktop.order.info") + * @Get("/info", name="home.order.info") */ public function infoAction() { @@ -44,7 +44,7 @@ class OrderController extends Controller } /** - * @Get("/confirm", name="desktop.order.confirm") + * @Get("/confirm", name="home.order.confirm") */ public function confirmAction() { @@ -59,7 +59,7 @@ class OrderController extends Controller } /** - * @Post("/create", name="desktop.order.create") + * @Post("/create", name="home.order.create") */ public function createAction() { @@ -67,13 +67,13 @@ class OrderController extends Controller $order = $service->handle(); - $location = $this->url->get(['for' => 'desktop.order.pay'], ['sn' => $order->sn]); + $location = $this->url->get(['for' => 'home.order.pay'], ['sn' => $order->sn]); return $this->jsonSuccess(['location' => $location]); } /** - * @Get("/pay", name="desktop.order.pay") + * @Get("/pay", name="home.order.pay") */ public function payAction() { @@ -84,14 +84,14 @@ class OrderController extends Controller $order = $service->handle($sn); if ($order['status'] != OrderModel::STATUS_PENDING) { - $this->response->redirect(['for' => 'desktop.my.orders']); + $this->response->redirect(['for' => 'home.my.orders']); } $this->view->setVar('order', $order); } /** - * @Post("/cancel", name="desktop.order.cancel") + * @Post("/cancel", name="home.order.cancel") */ public function cancelAction() { diff --git a/app/Http/Desktop/Controllers/PackageController.php b/app/Http/Home/Controllers/PackageController.php similarity index 62% rename from app/Http/Desktop/Controllers/PackageController.php rename to app/Http/Home/Controllers/PackageController.php index a57f684f..261cbb47 100644 --- a/app/Http/Desktop/Controllers/PackageController.php +++ b/app/Http/Home/Controllers/PackageController.php @@ -1,9 +1,9 @@ handle(); $content = [ - 'location' => $this->url->get(['for' => 'desktop.my.refunds']), + 'location' => $this->url->get(['for' => 'home.my.refunds']), 'msg' => '申请退款成功', ]; @@ -53,7 +53,7 @@ class RefundController extends Controller } /** - * @Get("/info", name="desktop.refund.info") + * @Get("/info", name="home.refund.info") */ public function infoAction() { @@ -68,7 +68,7 @@ class RefundController extends Controller } /** - * @Post("/cancel", name="desktop.refund.cancel") + * @Post("/cancel", name="home.refund.cancel") */ public function cancelAction() { @@ -79,7 +79,7 @@ class RefundController extends Controller $service->handle($sn); $content = [ - 'location' => $this->url->get(['for' => 'desktop.my.refunds']), + 'location' => $this->url->get(['for' => 'home.my.refunds']), 'msg' => '取消退款成功', ]; diff --git a/app/Http/Desktop/Controllers/ReviewController.php b/app/Http/Home/Controllers/ReviewController.php similarity index 71% rename from app/Http/Desktop/Controllers/ReviewController.php rename to app/Http/Home/Controllers/ReviewController.php index d49a2a58..48b09a67 100644 --- a/app/Http/Desktop/Controllers/ReviewController.php +++ b/app/Http/Home/Controllers/ReviewController.php @@ -1,12 +1,12 @@ request->get('type', ['trim', 'string'], 'course'); if (empty($query)) { - return $this->response->redirect(['for' => 'desktop.course.list']); + return $this->response->redirect(['for' => 'home.course.list']); } $this->seo->prependTitle(['搜索', $query]); @@ -43,7 +43,7 @@ class SearchController extends Controller } /** - * @Get("/form", name="desktop.search.form") + * @Get("/form", name="home.search.form") */ public function formAction() { diff --git a/app/Http/Desktop/Controllers/TeachingController.php b/app/Http/Home/Controllers/TeacherConsoleController.php similarity index 56% rename from app/Http/Desktop/Controllers/TeachingController.php rename to app/Http/Home/Controllers/TeacherConsoleController.php index d2eb9382..d98b46c7 100644 --- a/app/Http/Desktop/Controllers/TeachingController.php +++ b/app/Http/Home/Controllers/TeacherConsoleController.php @@ -1,19 +1,18 @@ authUser->id == 0) { - $this->response->redirect(['for' => 'desktop.account.login']); + $this->response->redirect(['for' => 'home.account.login']); return false; } @@ -29,7 +28,7 @@ class TeachingController extends Controller } /** - * @Get("/", name="desktop.teaching.index") + * @Get("/index", name="home.tc.index") */ public function indexAction() { @@ -37,7 +36,7 @@ class TeachingController extends Controller } /** - * @Get("/courses", name="desktop.teaching.courses") + * @Get("/courses", name="home.tc.courses") */ public function coursesAction() { @@ -45,13 +44,12 @@ class TeachingController extends Controller $pager = $service->handle(); - $pager->items = kg_array_object($pager->items); - + $this->view->pick('teacher/console/courses'); $this->view->setVar('pager', $pager); } /** - * @Get("/lives", name="desktop.teaching.lives") + * @Get("/lives", name="home.tc.lives") */ public function livesAction() { @@ -59,13 +57,12 @@ class TeachingController extends Controller $pager = $service->handle(); - $pager->items = kg_array_object($pager->items); - + $this->view->pick('teacher/console/lives'); $this->view->setVar('pager', $pager); } /** - * @Get("/consults", name="desktop.teaching.consults") + * @Get("/consults", name="home.tc.consults") */ public function consultsAction() { @@ -73,22 +70,21 @@ class TeachingController extends Controller $pager = $service->handle(); - $pager->items = kg_array_object($pager->items); - + $this->view->pick('teacher/console/consults'); $this->view->setVar('pager', $pager); } /** - * @Get("/live/push", name="desktop.teaching.live_push") + * @Get("/live/{id:[0-9]+}", name="home.tc.live") */ - public function livePushAction() + public function liveAction($id) { $service = new LivePushUrlService(); - $pushUrl = $service->handle(); + $pushUrl = $service->handle($id); $qrcode = $this->url->get( - ['for' => 'desktop.qrcode'], + ['for' => 'home.qrcode'], ['text' => urlencode($pushUrl)] ); @@ -99,7 +95,7 @@ class TeachingController extends Controller 'stream_code' => substr($pushUrl, $pos + 1), ]; - $this->view->pick('teaching/live_push'); + $this->view->pick('teacher/console/live_push'); $this->view->setVar('qrcode', $qrcode); $this->view->setVar('obs', $obs); } diff --git a/app/Http/Desktop/Controllers/TeacherController.php b/app/Http/Home/Controllers/TeacherController.php similarity index 70% rename from app/Http/Desktop/Controllers/TeacherController.php rename to app/Http/Home/Controllers/TeacherController.php index ea6275e4..a6f2f2ce 100644 --- a/app/Http/Desktop/Controllers/TeacherController.php +++ b/app/Http/Home/Controllers/TeacherController.php @@ -1,8 +1,8 @@ target = 'teacher-list'; $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('teacher/pager'); $this->view->setVar('pager', $pager); } /** - * @Get("/{id:[0-9]+}", name="desktop.teacher.show") + * @Get("/{id:[0-9]+}", name="home.teacher.show") */ public function showAction($id) { diff --git a/app/Http/Desktop/Controllers/TopicController.php b/app/Http/Home/Controllers/TopicController.php similarity index 63% rename from app/Http/Desktop/Controllers/TopicController.php rename to app/Http/Home/Controllers/TopicController.php index 349cd128..bd0375e9 100644 --- a/app/Http/Desktop/Controllers/TopicController.php +++ b/app/Http/Home/Controllers/TopicController.php @@ -1,9 +1,9 @@ handle($id); - $this->seo->prependTitle($topic['title']); + $this->seo->prependTitle(['专题', $topic['title']]); $this->seo->setDescription($topic['summary']); $this->view->setVar('topic', $topic); } /** - * @Get("/{id:[0-9]+}/courses", name="desktop.topic.courses") + * @Get("/{id:[0-9]+}/courses", name="home.topic.courses") */ public function coursesAction($id) { @@ -39,7 +39,6 @@ class TopicController extends Controller $pager->target = 'course-list'; $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); - $this->view->pick('topic/courses'); $this->view->setVar('pager', $pager); } diff --git a/app/Http/Desktop/Controllers/TradeController.php b/app/Http/Home/Controllers/TradeController.php similarity index 67% rename from app/Http/Desktop/Controllers/TradeController.php rename to app/Http/Home/Controllers/TradeController.php index 046c87f6..6e1c7ad5 100644 --- a/app/Http/Desktop/Controllers/TradeController.php +++ b/app/Http/Home/Controllers/TradeController.php @@ -1,9 +1,9 @@ authUser->id == 0) { - $this->response->redirect(['for' => 'desktop.account.login']); + $this->response->redirect(['for' => 'home.account.login']); return false; } @@ -34,7 +34,7 @@ class MyController extends Controller } /** - * @Get("/", name="desktop.my.index") + * @Get("/index", name="home.uc.index") */ public function indexAction() { @@ -42,7 +42,7 @@ class MyController extends Controller } /** - * @Get("/profile", name="desktop.my.profile") + * @Get("/profile", name="home.uc.profile") */ public function profileAction() { @@ -50,11 +50,12 @@ class MyController extends Controller $user = $service->handle(); + $this->view->pick('user/console/profile'); $this->view->setVar('user', $user); } /** - * @Get("/account", name="desktop.my.account") + * @Get("/account", name="home.uc.account") */ public function accountAction() { @@ -62,112 +63,119 @@ class MyController extends Controller $account = $service->handle(); + $this->view->pick('user/console/account'); $this->view->setVar('account', $account); } /** - * @Get("/courses", name="desktop.my.courses") + * @Get("/courses", name="home.uc.courses") */ public function coursesAction() { - $service = new MyCourseListService(); + $service = new CourseListService(); $pager = $service->handle(); + $this->view->pick('user/console/courses'); $this->view->setVar('pager', $pager); } /** - * @Get("/favorites", name="desktop.my.favorites") + * @Get("/favorites", name="home.uc.favorites") */ public function favoritesAction() { - $service = new MyFavoriteListService(); + $service = new FavoriteListService(); $pager = $service->handle(); + $this->view->pick('user/console/favorites'); $this->view->setVar('pager', $pager); } /** - * @Get("/consults", name="desktop.my.consults") + * @Get("/consults", name="home.uc.consults") */ public function consultsAction() { - $service = new MyConsultListService(); + $service = new ConsultListService(); $pager = $service->handle(); + $this->view->pick('user/console/consults'); $this->view->setVar('pager', $pager); } /** - * @Get("/reviews", name="desktop.my.reviews") + * @Get("/reviews", name="home.uc.reviews") */ public function reviewsAction() { - $service = new MyReviewListService(); + $service = new ReviewListService(); $pager = $service->handle(); + $this->view->pick('user/console/reviews'); $this->view->setVar('pager', $pager); } /** - * @Get("/orders", name="desktop.my.orders") + * @Get("/orders", name="home.uc.orders") */ public function ordersAction() { - $service = new MyOrderListService(); + $service = new OrderListService(); $pager = $service->handle(); + $this->view->pick('user/console/orders'); $this->view->setVar('pager', $pager); } /** - * @Get("/refunds", name="desktop.my.refunds") + * @Get("/refunds", name="home.uc.refunds") */ public function refundsAction() { - $service = new MyRefundListService(); + $service = new RefundListService(); $pager = $service->handle(); + $this->view->pick('user/console/refunds'); $this->view->setVar('pager', $pager); } /** - * @Get("/friends", name="desktop.my.friends") + * @Get("/friends", name="home.uc.friends") */ public function friendsAction() { - $service = new MyFriendListService(); + $service = new FriendListService(); $pager = $service->handle(); - $this->view->pick('my/friends'); + $this->view->pick('user/console/friends'); $this->view->setVar('pager', $pager); } /** - * @Get("/groups", name="desktop.my.groups") + * @Get("/groups", name="home.uc.groups") */ public function groupsAction() { $scope = $this->request->getQuery('scope', 'string', 'joined'); - $service = new MyGroupListService(); + $service = new GroupListService(); $pager = $service->handle($scope); - $this->view->pick('my/groups'); + $this->view->pick('user/console/groups'); $this->view->setVar('scope', $scope); $this->view->setVar('pager', $pager); } /** - * @Post("/profile/update", name="desktop.my.update_profile") + * @Post("/profile/update", name="home.uc.update_profile") */ public function updateProfileAction() { diff --git a/app/Http/Desktop/Controllers/UserController.php b/app/Http/Home/Controllers/UserController.php similarity index 72% rename from app/Http/Desktop/Controllers/UserController.php rename to app/Http/Home/Controllers/UserController.php index 4ea12c97..d547a2b2 100644 --- a/app/Http/Desktop/Controllers/UserController.php +++ b/app/Http/Home/Controllers/UserController.php @@ -1,12 +1,12 @@ setShared('auth', function () { - return new DesktopAuth(); + return new HomeAuth(); }); } diff --git a/app/Http/Desktop/Services/Account.php b/app/Http/Home/Services/Account.php similarity index 93% rename from app/Http/Desktop/Services/Account.php rename to app/Http/Home/Services/Account.php index 1005fe93..4858213d 100644 --- a/app/Http/Desktop/Services/Account.php +++ b/app/Http/Home/Services/Account.php @@ -1,10 +1,10 @@ baseUrl = $this->url->get(['for' => 'desktop.course.list']); + $this->baseUrl = $this->url->get(['for' => 'home.course.list']); } public function handleTopCategories() @@ -30,7 +30,7 @@ class CourseQuery extends Service unset($params['sc']); } - $baseUrl = $this->url->get(['for' => 'desktop.course.list']); + $baseUrl = $this->url->get(['for' => 'home.course.list']); $defaultItem = [ 'id' => 'all', @@ -78,7 +78,7 @@ class CourseQuery extends Service unset($params['sc']); } - $baseUrl = $this->url->get(['for' => 'desktop.course.list']); + $baseUrl = $this->url->get(['for' => 'home.course.list']); $defaultItem = [ 'id' => 'all', diff --git a/app/Http/Desktop/Services/Im.php b/app/Http/Home/Services/Im.php similarity index 99% rename from app/Http/Desktop/Services/Im.php rename to app/Http/Home/Services/Im.php index c1aed7df..b988473e 100644 --- a/app/Http/Desktop/Services/Im.php +++ b/app/Http/Home/Services/Im.php @@ -1,6 +1,6 @@ get(); + $slides = $cache->get(); - if (!$carousels) return []; + if (!$slides) return []; - foreach ($carousels as $key => $carousel) { + foreach ($slides as $key => $slide) { - $carousels[$key]['style'] = CarouselModel::htmlStyle($carousel['style']); - - switch ($carousel['target']) { - case CarouselModel::TARGET_COURSE: - $carousels[$key]['url'] = $this->url->get([ - 'for' => 'desktop.course.show', - 'id' => $carousel['content'], + switch ($slide['target']) { + case SlideModel::TARGET_COURSE: + $slides[$key]['url'] = $this->url->get([ + 'for' => 'home.course.show', + 'id' => $slide['content'], ]); break; - case CarouselModel::TARGET_PAGE: - $carousels[$key]['url'] = $this->url->get([ - 'for' => 'desktop.page.show', - 'id' => $carousel['content'], + case SlideModel::TARGET_PAGE: + $slides[$key]['url'] = $this->url->get([ + 'for' => 'home.page.show', + 'id' => $slide['content'], ]); break; - case CarouselModel::TARGET_LINK: - $carousels[$key]['url'] = $carousel['content']; + case SlideModel::TARGET_LINK: + $slides[$key]['url'] = $slide['content']; break; default: break; } } - return $carousels; + return $slides; } public function getLives() diff --git a/app/Http/Desktop/Services/Live.php b/app/Http/Home/Services/Live.php similarity index 97% rename from app/Http/Desktop/Services/Live.php rename to app/Http/Home/Services/Live.php index ed4ecb97..686c9ba6 100644 --- a/app/Http/Desktop/Services/Live.php +++ b/app/Http/Home/Services/Live.php @@ -1,8 +1,8 @@ url->get( - ['for' => 'desktop.qrcode'], + ['for' => 'home.qrcode'], ['text' => urlencode($text)] ); } diff --git a/app/Http/Desktop/Views/account/edit_email.volt b/app/Http/Home/Views/account/edit_email.volt similarity index 93% rename from app/Http/Desktop/Views/account/edit_email.volt rename to app/Http/Home/Views/account/edit_email.volt index 3c09146b..9a9b1b09 100644 --- a/app/Http/Desktop/Views/account/edit_email.volt +++ b/app/Http/Home/Views/account/edit_email.volt @@ -2,7 +2,7 @@ {% block content %} - +

    @@ -37,6 +37,6 @@ {% block include_js %} {{ js_include('https://ssl.captcha.qq.com/TCaptcha.js',false) }} - {{ js_include('desktop/js/captcha.verify.js') }} + {{ js_include('home/js/captcha.verify.js') }} {% endblock %} \ No newline at end of file diff --git a/app/Http/Desktop/Views/account/edit_password.volt b/app/Http/Home/Views/account/edit_password.volt similarity index 94% rename from app/Http/Desktop/Views/account/edit_password.volt rename to app/Http/Home/Views/account/edit_password.volt index b5ea7b28..b13a77d8 100644 --- a/app/Http/Desktop/Views/account/edit_password.volt +++ b/app/Http/Home/Views/account/edit_password.volt @@ -2,7 +2,7 @@ {% block content %} - +
    diff --git a/app/Http/Desktop/Views/account/edit_phone.volt b/app/Http/Home/Views/account/edit_phone.volt similarity index 93% rename from app/Http/Desktop/Views/account/edit_phone.volt rename to app/Http/Home/Views/account/edit_phone.volt index c4257703..d24685ca 100644 --- a/app/Http/Desktop/Views/account/edit_phone.volt +++ b/app/Http/Home/Views/account/edit_phone.volt @@ -2,7 +2,7 @@ {% block content %} - +

    @@ -37,6 +37,6 @@ {% block include_js %} {{ js_include('https://ssl.captcha.qq.com/TCaptcha.js',false) }} - {{ js_include('desktop/js/captcha.verify.js') }} + {{ js_include('home/js/captcha.verify.js') }} {% endblock %} \ No newline at end of file diff --git a/app/Http/Desktop/Views/account/forget_password.volt b/app/Http/Home/Views/account/forget_password.volt similarity index 92% rename from app/Http/Desktop/Views/account/forget_password.volt rename to app/Http/Home/Views/account/forget_password.volt index 8a2dcf16..d72ccd9d 100644 --- a/app/Http/Desktop/Views/account/forget_password.volt +++ b/app/Http/Home/Views/account/forget_password.volt @@ -4,11 +4,11 @@ @@ -34,8 +34,8 @@ {% block include_js %} {{ js_include('https://ssl.captcha.qq.com/TCaptcha.js',false) }} - {{ js_include('desktop/js/captcha.login.js') }} - {{ js_include('desktop/js/captcha.verify.js') }} + {{ js_include('home/js/captcha.login.js') }} + {{ js_include('home/js/captcha.verify.js') }} {% endblock %} diff --git a/app/Http/Desktop/Views/account/login_by_password.volt b/app/Http/Home/Views/account/login_by_password.volt similarity index 96% rename from app/Http/Desktop/Views/account/login_by_password.volt rename to app/Http/Home/Views/account/login_by_password.volt index a896cd2d..53b31fab 100644 --- a/app/Http/Desktop/Views/account/login_by_password.volt +++ b/app/Http/Home/Views/account/login_by_password.volt @@ -1,4 +1,4 @@ - +
    diff --git a/app/Http/Desktop/Views/account/login_by_verify.volt b/app/Http/Home/Views/account/login_by_verify.volt similarity index 95% rename from app/Http/Desktop/Views/account/login_by_verify.volt rename to app/Http/Home/Views/account/login_by_verify.volt index b49b5b6b..adee53ed 100644 --- a/app/Http/Desktop/Views/account/login_by_verify.volt +++ b/app/Http/Home/Views/account/login_by_verify.volt @@ -1,4 +1,4 @@ - +
    diff --git a/app/Http/Desktop/Views/account/register.volt b/app/Http/Home/Views/account/register.volt similarity index 95% rename from app/Http/Desktop/Views/account/register.volt rename to app/Http/Home/Views/account/register.volt index 5a009a17..25d65749 100644 --- a/app/Http/Desktop/Views/account/register.volt +++ b/app/Http/Home/Views/account/register.volt @@ -8,7 +8,7 @@