├── log ├── user.log ├── userInfo.txt └── img-material.log ├── config ├── ticketFile.txt ├── accessTokenFile.txt └── router.js ├── .gitignore ├── app ├── views │ ├── includes │ │ ├── footer.jade │ │ ├── layout.jade │ │ ├── head.jade │ │ ├── wechat_head.jade │ │ └── header.jade │ ├── include │ │ ├── footer.html │ │ ├── nav-top.html │ │ ├── head.html │ │ └── nav-search.html │ ├── category_admin.jade │ ├── template │ │ ├── error.html │ │ ├── category.html │ │ ├── keyword_list.html │ │ ├── user_list.html │ │ ├── register.html │ │ ├── category_list.html │ │ ├── search.html │ │ ├── list.html │ │ ├── index.html │ │ ├── search_voice.html │ │ ├── addEdit.html │ │ ├── detail.html │ │ └── admin.html │ ├── signin.jade │ ├── signup.jade │ ├── index.jade │ ├── userlist.jade │ ├── categorylist.jade │ ├── search.jade │ ├── list.jade │ ├── detail.jade │ ├── admin.jade │ ├── search_voice.jade │ └── movie.jade ├── models │ ├── user.js │ ├── movie.js │ ├── comment.js │ ├── keyword.js │ └── category.js ├── controllers │ ├── wechat.js │ ├── admin.js │ ├── category.js │ ├── comment.js │ ├── index.js │ ├── user.js │ ├── game.js │ └── movie.js ├── schemas │ ├── category.js │ ├── keyword.js │ ├── movie.js │ ├── comment.js │ └── user.js └── api │ └── movie.js ├── config.json ├── weChat ├── menu.js ├── index.js ├── G.js ├── api.js ├── wxUtil.js └── wechat.js ├── libs ├── sign.js ├── tpl.js └── utils.js ├── package.json ├── README.md ├── app.js └── public └── index.js /log/user.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /log/userInfo.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/ticketFile.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /log/img-material.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/accessTokenFile.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .git 3 | .project -------------------------------------------------------------------------------- /app/views/includes/footer.jade: -------------------------------------------------------------------------------- 1 | .container 2 | .row 3 | p.lead.text-center.text-danger 4 | -------------------------------------------------------------------------------- /app/models/user.js: -------------------------------------------------------------------------------- 1 | var mongoose = require('mongoose') 2 | var UserSchema = require('../schemas/user') 3 | var User = mongoose.model('User',UserSchema) 4 | 5 | module.exports = User -------------------------------------------------------------------------------- /config.json: -------------------------------------------------------------------------------- 1 | { 2 | "host" : "http://tender.imwork.net", 3 | "appId": "wxa70ee22bb073c6ef", 4 | "appSecret": "667461fe041520cc4f8c921197be2937", 5 | "token": "weixintoken" 6 | } 7 | -------------------------------------------------------------------------------- /app/models/movie.js: -------------------------------------------------------------------------------- 1 | var mongoose = require('mongoose') 2 | var MovieSchema = require('../schemas/movie') 3 | var Movie = mongoose.model('Movie',MovieSchema) 4 | 5 | module.exports = Movie -------------------------------------------------------------------------------- /app/models/comment.js: -------------------------------------------------------------------------------- 1 | var mongoose = require('mongoose') 2 | var CommentSchema = require('../schemas/comment') 3 | var Comment = mongoose.model('Comment',CommentSchema) 4 | 5 | module.exports = Comment -------------------------------------------------------------------------------- /app/models/keyword.js: -------------------------------------------------------------------------------- 1 | var mongoose = require('mongoose') 2 | var KeywordSchema = require('../schemas/keyword') 3 | var Keyword = mongoose.model('Keyword',KeywordSchema) 4 | 5 | module.exports = Keyword -------------------------------------------------------------------------------- /app/models/category.js: -------------------------------------------------------------------------------- 1 | var mongoose = require('mongoose') 2 | var CategorySchema = require('../schemas/category') 3 | var Category = mongoose.model('Category',CategorySchema) 4 | 5 | module.exports = Category -------------------------------------------------------------------------------- /app/views/includes/layout.jade: -------------------------------------------------------------------------------- 1 | doctype 2 | html 3 | head 4 | meta(charset="utf-8") 5 | title #{title} 6 | include ./head 7 | body 8 | include ./header 9 | block content 10 | include ./footer -------------------------------------------------------------------------------- /app/views/include/footer.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /app/views/includes/head.jade: -------------------------------------------------------------------------------- 1 | meta(name="viewport", content="width=device-width, initial-scale=1") 2 | link(href="//cdn.bootcss.com/bootstrap/3.3.6/css/bootstrap.min.css", rel="stylesheet") 3 | script(src="//cdn.bootcss.com/jquery/2.1.4/jquery.min.js") 4 | script(src="//cdn.bootcss.com/bootstrap/3.3.6/js/bootstrap.min.js") -------------------------------------------------------------------------------- /app/controllers/wechat.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | var wxUtil = require('../../weChat/wxUtil'); 3 | var wechat = require('../../weChat/G'); 4 | var wx = require('../../weChat/index') 5 | 6 | exports.hear = function *(next){ 7 | this.middle = wechat(wx.options.wechat,wxUtil.reply); 8 | yield this.middle(next); 9 | } 10 | -------------------------------------------------------------------------------- /app/views/includes/wechat_head.jade: -------------------------------------------------------------------------------- 1 | doctype 2 | html 3 | head 4 | meta(charset="utf-8") 5 | title #{title} 6 | meta(name="viewport", content="initial-scale=1, maximum-scale=1, minimum-scale=1") 7 | link(rel="stylesheet", href="http://res.wx.qq.com/open/libs/weui/0.3.0/weui.min.css") 8 | script(src="http://zeptojs.com/zepto-docs.min.js") 9 | script(src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js") 10 | body 11 | block content 12 | -------------------------------------------------------------------------------- /app/views/include/nav-top.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/views/category_admin.jade: -------------------------------------------------------------------------------- 1 | extends ./includes/layout 2 | 3 | block content 4 | .container 5 | .row 6 | form.form-horizontal(method="post", action="/admin/category") 7 | .form-group 8 | label.col-sm-2.control-label(for="inputCategory") 电影分类 9 | .col-sm-10 10 | input#inputCategory.form-control(type="text", name="category[name]", value=category.name) 11 | .form-group 12 | .col-sm-offset-2.col-sm-10 13 | button.btn.btn-default(type="submit") 录入 -------------------------------------------------------------------------------- /app/views/include/head.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /app/views/template/error.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 || {{title}} | 15 ||||
|---|---|---|---|
| ID | 18 |用户名 | 19 |角色 | 20 ||
| {{index + 1}} | 27 |{{user.name}} | 28 |29 | {{if user.role<10}} 30 | 普通用户 31 | {{else if user.role>=10&&user.role<50}} 32 | 管理员 33 | {{else if user.role>=50}} 34 | 超级管理员 35 | {{/if}} 36 | | 37 ||
| 暂无记录 | 42 ||||
暂无搜索记录
49 | {{/if}} 50 |58 | {{index+1}} 59 | {{movie.title}} 60 |
61 | {{/each}} 62 | {{else}} 63 |暂无电影
64 | {{/if}} 65 |暂无分类
78 | {{/if}} 79 |导演:{{movie.director}}
20 |主演:{{movie.actors}}
21 |语言:{{movie.language}}
22 |制片国家:{{movie.country}}
23 |上映时间:{{movie.year}}
24 |{{movie.summary}}
28 |
45 |- 评论列表
46 | {{if comments.length}}
47 | {{each comments as comment floor}}
48 | -
49 |
50 |
51 |
52 |
53 |
58 | {{comment.content}}
59 |
60 |
65 | {{if comment.reply}}
66 | {{each comment.reply as reply index}}
67 |
68 |
69 |
70 |
71 |
72 |
78 | {{reply.content}}
79 |
80 |
85 |
86 | {{/each}}
87 | {{/if}}
88 |
89 | {{/each}}
90 | {{else}}
91 | - 暂无评论
92 | {{/if}}
93 |
94 | {{if user}} 95 |54 | {{comment.from.name}} 55 | #{{floor+1}} 56 |
57 |61 | {{comment.createtime}} 62 | 回复 63 |
64 |73 | {{reply.from.name}} 74 | 回复 75 | {{reply.to.name}} 76 |
77 |81 | {{reply.createtime}} 82 | 回复 83 |
84 |