Repository: oitone/wemall
Branch: v7
Commit: 685d0aab69a6
Files: 1835
Total size: 21.9 MB
Directory structure:
gitextract_l5oxnja2/
├── .htaccess
├── .travis.yml
├── LICENSE.txt
├── README.md
├── addons/
│ ├── common/
│ │ └── config.php
│ └── putong/
│ ├── config.php
│ └── demo/
│ ├── Demo.php
│ ├── config.php
│ ├── controller/
│ │ ├── Admin.php
│ │ └── Index.php
│ ├── data/
│ │ ├── install.sql
│ │ └── uninstall.sql
│ ├── info.html
│ ├── model/
│ │ └── AddonsPutongDemoConfig.php
│ └── view/
│ ├── admin_add.html
│ ├── admin_index.html
│ ├── index_index.html
│ └── public_left.html
├── application/
│ ├── .htaccess
│ ├── admin/
│ │ ├── common.php
│ │ ├── config.php
│ │ ├── controller/
│ │ │ ├── AddonsController.php
│ │ │ ├── BaseController.php
│ │ │ ├── FileController.php
│ │ │ ├── HelpController.php
│ │ │ ├── IndexController.php
│ │ │ ├── PublicController.php
│ │ │ ├── WechatController.php
│ │ │ ├── article/
│ │ │ │ ├── CategoryController.php
│ │ │ │ └── IndexController.php
│ │ │ ├── auth/
│ │ │ │ ├── AdminController.php
│ │ │ │ └── GroupController.php
│ │ │ ├── config/
│ │ │ │ ├── MailController.php
│ │ │ │ ├── SiteController.php
│ │ │ │ └── SmsController.php
│ │ │ ├── tpl/
│ │ │ │ ├── MailController.php
│ │ │ │ ├── ShopController.php
│ │ │ │ └── SmsController.php
│ │ │ ├── user/
│ │ │ │ ├── IndexController.php
│ │ │ │ └── LevelController.php
│ │ │ └── wx/
│ │ │ ├── ConfigController.php
│ │ │ ├── KefuController.php
│ │ │ ├── MenuController.php
│ │ │ ├── PrintController.php
│ │ │ ├── ReplyController.php
│ │ │ └── TplmsgController.php
│ │ ├── validate/
│ │ │ └── Admin.php
│ │ └── view/
│ │ ├── addons_index.html
│ │ ├── addons_shop.html
│ │ ├── analysis_user.html
│ │ ├── article/
│ │ │ ├── category_add.html
│ │ │ ├── category_index.html
│ │ │ ├── index_add.html
│ │ │ └── index_index.html
│ │ ├── auth/
│ │ │ ├── admin_add.html
│ │ │ ├── admin_index.html
│ │ │ ├── group_add.html
│ │ │ └── group_index.html
│ │ ├── config/
│ │ │ ├── mail_index.html
│ │ │ ├── site_index.html
│ │ │ └── sms_index.html
│ │ ├── file_index.html
│ │ ├── help_index.html
│ │ ├── index_index.html
│ │ ├── layout.html
│ │ ├── layout_addons.html
│ │ ├── public_footer.html
│ │ ├── public_header.html
│ │ ├── public_left.html
│ │ ├── public_login.html
│ │ ├── tpl/
│ │ │ ├── mail_add.html
│ │ │ ├── mail_index.html
│ │ │ ├── shop_index.html
│ │ │ ├── sms_add.html
│ │ │ └── sms_index.html
│ │ ├── user/
│ │ │ ├── index_add.html
│ │ │ ├── index_index.html
│ │ │ ├── level_add.html
│ │ │ └── level_index.html
│ │ └── wx/
│ │ ├── config_index.html
│ │ ├── kefu_index.html
│ │ ├── menu_add.html
│ │ ├── menu_index.html
│ │ ├── print_index.html
│ │ ├── reply_add.html
│ │ ├── reply_index.html
│ │ ├── tplmsg_add.html
│ │ └── tplmsg_index.html
│ ├── app/
│ │ └── controller/
│ │ ├── AddonsController.php
│ │ └── IndexController.php
│ ├── command.php
│ ├── common/
│ │ ├── behavior/
│ │ │ └── Config.php
│ │ └── model/
│ │ ├── Admin.php
│ │ ├── Analysis.php
│ │ ├── Article.php
│ │ ├── ArticleCategory.php
│ │ ├── AuthGroup.php
│ │ ├── AuthGroupAccess.php
│ │ ├── AuthRule.php
│ │ ├── Config.php
│ │ ├── File.php
│ │ ├── Mail.php
│ │ ├── MailTpl.php
│ │ ├── Sms.php
│ │ ├── SmsTpl.php
│ │ ├── User.php
│ │ ├── UserLevel.php
│ │ ├── WxConfig.php
│ │ ├── WxKefu.php
│ │ ├── WxMenu.php
│ │ ├── WxPrint.php
│ │ ├── WxReply.php
│ │ └── WxTplmsg.php
│ ├── common.php
│ ├── config.php
│ ├── database.php
│ ├── install/
│ │ ├── common.php
│ │ ├── config.php
│ │ ├── controller/
│ │ │ └── IndexController.php
│ │ ├── data/
│ │ │ └── database.tpl
│ │ └── view/
│ │ ├── index.html
│ │ ├── index_header.html
│ │ ├── index_index.html
│ │ ├── index_setup1.html
│ │ ├── index_setup2.html
│ │ └── index_setup3.html
│ ├── route.php
│ └── tags.php
├── build.php
├── composer.json
├── data/
│ └── index.html
├── extend/
│ └── com/
│ └── Auth.php
├── index.php
├── public/
│ ├── .htaccess
│ ├── index.php
│ ├── install/
│ │ ├── css/
│ │ │ ├── base.css
│ │ │ └── style.css
│ │ └── js/
│ │ └── install.js
│ ├── robots.txt
│ ├── router.php
│ └── static/
│ ├── article/
│ │ ├── page_mp_article_improve2756b8.css
│ │ ├── page_mp_article_improve_combo2805ea.css
│ │ └── page_mp_article_improve_pc2637ae.css
│ ├── dist/
│ │ ├── css/
│ │ │ └── AdminLTE.css
│ │ ├── fonts/
│ │ │ └── FontAwesome.otf
│ │ └── js/
│ │ ├── app.js
│ │ └── wemall.js
│ ├── layui/
│ │ ├── css/
│ │ │ ├── layui.css
│ │ │ └── modules/
│ │ │ ├── code.css
│ │ │ ├── laydate/
│ │ │ │ └── laydate.css
│ │ │ └── layer/
│ │ │ └── default/
│ │ │ └── layer.css
│ │ ├── lay/
│ │ │ ├── dest/
│ │ │ │ └── layui.all.js
│ │ │ ├── lib/
│ │ │ │ └── jquery.js
│ │ │ └── modules/
│ │ │ ├── code.js
│ │ │ ├── element.js
│ │ │ ├── flow.js
│ │ │ ├── form.js
│ │ │ ├── laydate.js
│ │ │ ├── layedit.js
│ │ │ ├── layer.js
│ │ │ ├── laypage.js
│ │ │ ├── laytpl.js
│ │ │ ├── tree.js
│ │ │ ├── upload.js
│ │ │ └── util.js
│ │ └── layui.js
│ ├── plugins/
│ │ ├── bootbox/
│ │ │ └── bootbox.js
│ │ ├── bootstrap/
│ │ │ ├── css/
│ │ │ │ └── bootstrap.css
│ │ │ └── js/
│ │ │ ├── bootstrap.js
│ │ │ └── npm.js
│ │ ├── bootstrap-datetimepicker/
│ │ │ ├── css/
│ │ │ │ └── bootstrap-datetimepicker.css
│ │ │ └── js/
│ │ │ ├── bootstrap-datetimepicker.js
│ │ │ └── locales/
│ │ │ ├── bootstrap-datetimepicker.ar.js
│ │ │ ├── bootstrap-datetimepicker.bg.js
│ │ │ ├── bootstrap-datetimepicker.ca.js
│ │ │ ├── bootstrap-datetimepicker.cs.js
│ │ │ ├── bootstrap-datetimepicker.da.js
│ │ │ ├── bootstrap-datetimepicker.de.js
│ │ │ ├── bootstrap-datetimepicker.ee.js
│ │ │ ├── bootstrap-datetimepicker.el.js
│ │ │ ├── bootstrap-datetimepicker.es.js
│ │ │ ├── bootstrap-datetimepicker.fi.js
│ │ │ ├── bootstrap-datetimepicker.fr.js
│ │ │ ├── bootstrap-datetimepicker.he.js
│ │ │ ├── bootstrap-datetimepicker.hr.js
│ │ │ ├── bootstrap-datetimepicker.hu.js
│ │ │ ├── bootstrap-datetimepicker.hy.js
│ │ │ ├── bootstrap-datetimepicker.id.js
│ │ │ ├── bootstrap-datetimepicker.is.js
│ │ │ ├── bootstrap-datetimepicker.it.js
│ │ │ ├── bootstrap-datetimepicker.ja.js
│ │ │ ├── bootstrap-datetimepicker.ko.js
│ │ │ ├── bootstrap-datetimepicker.lt.js
│ │ │ ├── bootstrap-datetimepicker.lv.js
│ │ │ ├── bootstrap-datetimepicker.ms.js
│ │ │ ├── bootstrap-datetimepicker.nb.js
│ │ │ ├── bootstrap-datetimepicker.nl.js
│ │ │ ├── bootstrap-datetimepicker.no.js
│ │ │ ├── bootstrap-datetimepicker.pl.js
│ │ │ ├── bootstrap-datetimepicker.pt-BR.js
│ │ │ ├── bootstrap-datetimepicker.pt.js
│ │ │ ├── bootstrap-datetimepicker.ro.js
│ │ │ ├── bootstrap-datetimepicker.rs-latin.js
│ │ │ ├── bootstrap-datetimepicker.rs.js
│ │ │ ├── bootstrap-datetimepicker.ru.js
│ │ │ ├── bootstrap-datetimepicker.sk.js
│ │ │ ├── bootstrap-datetimepicker.sl.js
│ │ │ ├── bootstrap-datetimepicker.sv.js
│ │ │ ├── bootstrap-datetimepicker.sw.js
│ │ │ ├── bootstrap-datetimepicker.th.js
│ │ │ ├── bootstrap-datetimepicker.tr.js
│ │ │ ├── bootstrap-datetimepicker.ua.js
│ │ │ ├── bootstrap-datetimepicker.uk.js
│ │ │ ├── bootstrap-datetimepicker.zh-CN.js
│ │ │ └── bootstrap-datetimepicker.zh-TW.js
│ │ ├── bootstrap-slider/
│ │ │ ├── bootstrap-slider.js
│ │ │ └── slider.css
│ │ ├── bootstrap-switch/
│ │ │ ├── css/
│ │ │ │ └── bootstrap-switch.css
│ │ │ └── js/
│ │ │ └── bootstrap-switch.js
│ │ ├── bootstrap-wysihtml5/
│ │ │ ├── bootstrap3-wysihtml5.all.js
│ │ │ └── bootstrap3-wysihtml5.css
│ │ ├── chartjs/
│ │ │ └── Chart.js
│ │ ├── ckeditor/
│ │ │ ├── CHANGES.md
│ │ │ ├── LICENSE.md
│ │ │ ├── README.md
│ │ │ ├── adapters/
│ │ │ │ └── jquery.js
│ │ │ ├── build-config.js
│ │ │ ├── ckeditor.js
│ │ │ ├── config.js
│ │ │ ├── contents.css
│ │ │ ├── lang/
│ │ │ │ ├── af.js
│ │ │ │ ├── ar.js
│ │ │ │ ├── bg.js
│ │ │ │ ├── bn.js
│ │ │ │ ├── bs.js
│ │ │ │ ├── ca.js
│ │ │ │ ├── cs.js
│ │ │ │ ├── cy.js
│ │ │ │ ├── da.js
│ │ │ │ ├── de.js
│ │ │ │ ├── el.js
│ │ │ │ ├── en-au.js
│ │ │ │ ├── en-ca.js
│ │ │ │ ├── en-gb.js
│ │ │ │ ├── en.js
│ │ │ │ ├── eo.js
│ │ │ │ ├── es.js
│ │ │ │ ├── et.js
│ │ │ │ ├── eu.js
│ │ │ │ ├── fa.js
│ │ │ │ ├── fi.js
│ │ │ │ ├── fo.js
│ │ │ │ ├── fr-ca.js
│ │ │ │ ├── fr.js
│ │ │ │ ├── gl.js
│ │ │ │ ├── gu.js
│ │ │ │ ├── he.js
│ │ │ │ ├── hi.js
│ │ │ │ ├── hr.js
│ │ │ │ ├── hu.js
│ │ │ │ ├── id.js
│ │ │ │ ├── is.js
│ │ │ │ ├── it.js
│ │ │ │ ├── ja.js
│ │ │ │ ├── ka.js
│ │ │ │ ├── km.js
│ │ │ │ ├── ko.js
│ │ │ │ ├── ku.js
│ │ │ │ ├── lt.js
│ │ │ │ ├── lv.js
│ │ │ │ ├── mk.js
│ │ │ │ ├── mn.js
│ │ │ │ ├── ms.js
│ │ │ │ ├── nb.js
│ │ │ │ ├── nl.js
│ │ │ │ ├── no.js
│ │ │ │ ├── pl.js
│ │ │ │ ├── pt-br.js
│ │ │ │ ├── pt.js
│ │ │ │ ├── ro.js
│ │ │ │ ├── ru.js
│ │ │ │ ├── si.js
│ │ │ │ ├── sk.js
│ │ │ │ ├── sl.js
│ │ │ │ ├── sq.js
│ │ │ │ ├── sr-latn.js
│ │ │ │ ├── sr.js
│ │ │ │ ├── sv.js
│ │ │ │ ├── th.js
│ │ │ │ ├── tr.js
│ │ │ │ ├── ug.js
│ │ │ │ ├── uk.js
│ │ │ │ ├── vi.js
│ │ │ │ ├── zh-cn.js
│ │ │ │ └── zh.js
│ │ │ ├── plugins/
│ │ │ │ ├── a11yhelp/
│ │ │ │ │ └── dialogs/
│ │ │ │ │ ├── a11yhelp.js
│ │ │ │ │ └── lang/
│ │ │ │ │ ├── _translationstatus.txt
│ │ │ │ │ ├── ar.js
│ │ │ │ │ ├── bg.js
│ │ │ │ │ ├── ca.js
│ │ │ │ │ ├── cs.js
│ │ │ │ │ ├── cy.js
│ │ │ │ │ ├── da.js
│ │ │ │ │ ├── de.js
│ │ │ │ │ ├── el.js
│ │ │ │ │ ├── en.js
│ │ │ │ │ ├── eo.js
│ │ │ │ │ ├── es.js
│ │ │ │ │ ├── et.js
│ │ │ │ │ ├── fa.js
│ │ │ │ │ ├── fi.js
│ │ │ │ │ ├── fr-ca.js
│ │ │ │ │ ├── fr.js
│ │ │ │ │ ├── gl.js
│ │ │ │ │ ├── gu.js
│ │ │ │ │ ├── he.js
│ │ │ │ │ ├── hi.js
│ │ │ │ │ ├── hr.js
│ │ │ │ │ ├── hu.js
│ │ │ │ │ ├── id.js
│ │ │ │ │ ├── it.js
│ │ │ │ │ ├── ja.js
│ │ │ │ │ ├── km.js
│ │ │ │ │ ├── ko.js
│ │ │ │ │ ├── ku.js
│ │ │ │ │ ├── lt.js
│ │ │ │ │ ├── lv.js
│ │ │ │ │ ├── mk.js
│ │ │ │ │ ├── mn.js
│ │ │ │ │ ├── nb.js
│ │ │ │ │ ├── nl.js
│ │ │ │ │ ├── no.js
│ │ │ │ │ ├── pl.js
│ │ │ │ │ ├── pt-br.js
│ │ │ │ │ ├── pt.js
│ │ │ │ │ ├── ro.js
│ │ │ │ │ ├── ru.js
│ │ │ │ │ ├── si.js
│ │ │ │ │ ├── sk.js
│ │ │ │ │ ├── sl.js
│ │ │ │ │ ├── sq.js
│ │ │ │ │ ├── sr-latn.js
│ │ │ │ │ ├── sr.js
│ │ │ │ │ ├── sv.js
│ │ │ │ │ ├── th.js
│ │ │ │ │ ├── tr.js
│ │ │ │ │ ├── ug.js
│ │ │ │ │ ├── uk.js
│ │ │ │ │ ├── vi.js
│ │ │ │ │ ├── zh-cn.js
│ │ │ │ │ └── zh.js
│ │ │ │ ├── about/
│ │ │ │ │ └── dialogs/
│ │ │ │ │ └── about.js
│ │ │ │ ├── clipboard/
│ │ │ │ │ └── dialogs/
│ │ │ │ │ └── paste.js
│ │ │ │ ├── dialog/
│ │ │ │ │ └── dialogDefinition.js
│ │ │ │ ├── image/
│ │ │ │ │ └── dialogs/
│ │ │ │ │ └── image.js
│ │ │ │ ├── link/
│ │ │ │ │ └── dialogs/
│ │ │ │ │ ├── anchor.js
│ │ │ │ │ └── link.js
│ │ │ │ ├── pastefromword/
│ │ │ │ │ └── filter/
│ │ │ │ │ └── default.js
│ │ │ │ ├── scayt/
│ │ │ │ │ ├── LICENSE.md
│ │ │ │ │ ├── README.md
│ │ │ │ │ └── dialogs/
│ │ │ │ │ ├── options.js
│ │ │ │ │ └── toolbar.css
│ │ │ │ ├── specialchar/
│ │ │ │ │ └── dialogs/
│ │ │ │ │ ├── lang/
│ │ │ │ │ │ ├── _translationstatus.txt
│ │ │ │ │ │ ├── ar.js
│ │ │ │ │ │ ├── bg.js
│ │ │ │ │ │ ├── ca.js
│ │ │ │ │ │ ├── cs.js
│ │ │ │ │ │ ├── cy.js
│ │ │ │ │ │ ├── de.js
│ │ │ │ │ │ ├── el.js
│ │ │ │ │ │ ├── en.js
│ │ │ │ │ │ ├── eo.js
│ │ │ │ │ │ ├── es.js
│ │ │ │ │ │ ├── et.js
│ │ │ │ │ │ ├── fa.js
│ │ │ │ │ │ ├── fi.js
│ │ │ │ │ │ ├── fr-ca.js
│ │ │ │ │ │ ├── fr.js
│ │ │ │ │ │ ├── gl.js
│ │ │ │ │ │ ├── he.js
│ │ │ │ │ │ ├── hr.js
│ │ │ │ │ │ ├── hu.js
│ │ │ │ │ │ ├── id.js
│ │ │ │ │ │ ├── it.js
│ │ │ │ │ │ ├── ja.js
│ │ │ │ │ │ ├── km.js
│ │ │ │ │ │ ├── ku.js
│ │ │ │ │ │ ├── lv.js
│ │ │ │ │ │ ├── nb.js
│ │ │ │ │ │ ├── nl.js
│ │ │ │ │ │ ├── no.js
│ │ │ │ │ │ ├── pl.js
│ │ │ │ │ │ ├── pt-br.js
│ │ │ │ │ │ ├── pt.js
│ │ │ │ │ │ ├── ru.js
│ │ │ │ │ │ ├── si.js
│ │ │ │ │ │ ├── sk.js
│ │ │ │ │ │ ├── sl.js
│ │ │ │ │ │ ├── sq.js
│ │ │ │ │ │ ├── sv.js
│ │ │ │ │ │ ├── th.js
│ │ │ │ │ │ ├── tr.js
│ │ │ │ │ │ ├── ug.js
│ │ │ │ │ │ ├── uk.js
│ │ │ │ │ │ ├── vi.js
│ │ │ │ │ │ ├── zh-cn.js
│ │ │ │ │ │ └── zh.js
│ │ │ │ │ └── specialchar.js
│ │ │ │ ├── table/
│ │ │ │ │ └── dialogs/
│ │ │ │ │ └── table.js
│ │ │ │ ├── tabletools/
│ │ │ │ │ └── dialogs/
│ │ │ │ │ └── tableCell.js
│ │ │ │ └── wsc/
│ │ │ │ ├── LICENSE.md
│ │ │ │ ├── README.md
│ │ │ │ └── dialogs/
│ │ │ │ ├── ciframe.html
│ │ │ │ ├── tmp.html
│ │ │ │ ├── tmpFrameset.html
│ │ │ │ ├── wsc.css
│ │ │ │ ├── wsc.js
│ │ │ │ └── wsc_ie.js
│ │ │ ├── skins/
│ │ │ │ └── moono/
│ │ │ │ ├── dialog.css
│ │ │ │ ├── dialog_ie.css
│ │ │ │ ├── dialog_ie7.css
│ │ │ │ ├── dialog_ie8.css
│ │ │ │ ├── dialog_iequirks.css
│ │ │ │ ├── dialog_opera.css
│ │ │ │ ├── editor.css
│ │ │ │ ├── editor_gecko.css
│ │ │ │ ├── editor_ie.css
│ │ │ │ ├── editor_ie7.css
│ │ │ │ ├── editor_ie8.css
│ │ │ │ ├── editor_iequirks.css
│ │ │ │ └── readme.md
│ │ │ └── styles.js
│ │ ├── colorpicker/
│ │ │ ├── bootstrap-colorpicker.css
│ │ │ └── bootstrap-colorpicker.js
│ │ ├── datatables/
│ │ │ ├── dataTables.bootstrap.css
│ │ │ ├── dataTables.bootstrap.js
│ │ │ ├── extensions/
│ │ │ │ ├── AutoFill/
│ │ │ │ │ ├── Readme.txt
│ │ │ │ │ ├── css/
│ │ │ │ │ │ └── dataTables.autoFill.css
│ │ │ │ │ ├── examples/
│ │ │ │ │ │ ├── columns.html
│ │ │ │ │ │ ├── complete-callback.html
│ │ │ │ │ │ ├── fill-both.html
│ │ │ │ │ │ ├── fill-horizontal.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── scrolling.html
│ │ │ │ │ │ ├── simple.html
│ │ │ │ │ │ └── step-callback.html
│ │ │ │ │ └── js/
│ │ │ │ │ └── dataTables.autoFill.js
│ │ │ │ ├── ColReorder/
│ │ │ │ │ ├── License.txt
│ │ │ │ │ ├── Readme.md
│ │ │ │ │ ├── css/
│ │ │ │ │ │ └── dataTables.colReorder.css
│ │ │ │ │ ├── examples/
│ │ │ │ │ │ ├── alt_insert.html
│ │ │ │ │ │ ├── col_filter.html
│ │ │ │ │ │ ├── colvis.html
│ │ │ │ │ │ ├── fixedcolumns.html
│ │ │ │ │ │ ├── fixedheader.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── jqueryui.html
│ │ │ │ │ │ ├── new_init.html
│ │ │ │ │ │ ├── predefined.html
│ │ │ │ │ │ ├── realtime.html
│ │ │ │ │ │ ├── reset.html
│ │ │ │ │ │ ├── scrolling.html
│ │ │ │ │ │ ├── server_side.html
│ │ │ │ │ │ ├── simple.html
│ │ │ │ │ │ └── state_save.html
│ │ │ │ │ └── js/
│ │ │ │ │ └── dataTables.colReorder.js
│ │ │ │ ├── ColVis/
│ │ │ │ │ ├── License.txt
│ │ │ │ │ ├── Readme.md
│ │ │ │ │ ├── css/
│ │ │ │ │ │ ├── dataTables.colVis.css
│ │ │ │ │ │ └── dataTables.colvis.jqueryui.css
│ │ │ │ │ ├── examples/
│ │ │ │ │ │ ├── button_order.html
│ │ │ │ │ │ ├── exclude_columns.html
│ │ │ │ │ │ ├── group_columns.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── jqueryui.html
│ │ │ │ │ │ ├── mouseover.html
│ │ │ │ │ │ ├── new_init.html
│ │ │ │ │ │ ├── restore.html
│ │ │ │ │ │ ├── simple.html
│ │ │ │ │ │ ├── text.html
│ │ │ │ │ │ ├── title_callback.html
│ │ │ │ │ │ ├── two_tables.html
│ │ │ │ │ │ └── two_tables_identical.html
│ │ │ │ │ └── js/
│ │ │ │ │ └── dataTables.colVis.js
│ │ │ │ ├── FixedColumns/
│ │ │ │ │ ├── License.txt
│ │ │ │ │ ├── Readme.md
│ │ │ │ │ ├── css/
│ │ │ │ │ │ └── dataTables.fixedColumns.css
│ │ │ │ │ ├── examples/
│ │ │ │ │ │ ├── bootstrap.html
│ │ │ │ │ │ ├── col_filter.html
│ │ │ │ │ │ ├── colvis.html
│ │ │ │ │ │ ├── css_size.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── index_column.html
│ │ │ │ │ │ ├── left_right_columns.html
│ │ │ │ │ │ ├── right_column.html
│ │ │ │ │ │ ├── rowspan.html
│ │ │ │ │ │ ├── server-side-processing.html
│ │ │ │ │ │ ├── simple.html
│ │ │ │ │ │ ├── size_fixed.html
│ │ │ │ │ │ ├── size_fluid.html
│ │ │ │ │ │ └── two_columns.html
│ │ │ │ │ └── js/
│ │ │ │ │ └── dataTables.fixedColumns.js
│ │ │ │ ├── FixedHeader/
│ │ │ │ │ ├── Readme.txt
│ │ │ │ │ ├── css/
│ │ │ │ │ │ └── dataTables.fixedHeader.css
│ │ │ │ │ ├── examples/
│ │ │ │ │ │ ├── header_footer.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── simple.html
│ │ │ │ │ │ ├── top_left_right.html
│ │ │ │ │ │ ├── two_tables.html
│ │ │ │ │ │ └── zIndexes.html
│ │ │ │ │ └── js/
│ │ │ │ │ └── dataTables.fixedHeader.js
│ │ │ │ ├── KeyTable/
│ │ │ │ │ ├── Readme.txt
│ │ │ │ │ ├── css/
│ │ │ │ │ │ └── dataTables.keyTable.css
│ │ │ │ │ ├── examples/
│ │ │ │ │ │ ├── events.html
│ │ │ │ │ │ ├── html.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── scrolling.html
│ │ │ │ │ │ └── simple.html
│ │ │ │ │ └── js/
│ │ │ │ │ └── dataTables.keyTable.js
│ │ │ │ ├── Responsive/
│ │ │ │ │ ├── License.txt
│ │ │ │ │ ├── Readme.md
│ │ │ │ │ ├── css/
│ │ │ │ │ │ ├── dataTables.responsive.css
│ │ │ │ │ │ └── dataTables.responsive.scss
│ │ │ │ │ ├── examples/
│ │ │ │ │ │ ├── child-rows/
│ │ │ │ │ │ │ ├── column-control.html
│ │ │ │ │ │ │ ├── custom-renderer.html
│ │ │ │ │ │ │ ├── disable-child-rows.html
│ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ ├── right-column.html
│ │ │ │ │ │ │ └── whole-row-control.html
│ │ │ │ │ │ ├── display-control/
│ │ │ │ │ │ │ ├── auto.html
│ │ │ │ │ │ │ ├── classes.html
│ │ │ │ │ │ │ ├── complexHeader.html
│ │ │ │ │ │ │ ├── fixedHeader.html
│ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ └── init-classes.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── initialisation/
│ │ │ │ │ │ │ ├── ajax.html
│ │ │ │ │ │ │ ├── className.html
│ │ │ │ │ │ │ ├── default.html
│ │ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ │ ├── new.html
│ │ │ │ │ │ │ └── option.html
│ │ │ │ │ │ └── styling/
│ │ │ │ │ │ ├── bootstrap.html
│ │ │ │ │ │ ├── compact.html
│ │ │ │ │ │ ├── foundation.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ └── scrolling.html
│ │ │ │ │ └── js/
│ │ │ │ │ └── dataTables.responsive.js
│ │ │ │ ├── Scroller/
│ │ │ │ │ ├── Readme.txt
│ │ │ │ │ ├── css/
│ │ │ │ │ │ └── dataTables.scroller.css
│ │ │ │ │ ├── examples/
│ │ │ │ │ │ ├── api_scrolling.html
│ │ │ │ │ │ ├── data/
│ │ │ │ │ │ │ └── 2500.txt
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── large_js_source.html
│ │ │ │ │ │ ├── server-side_processing.html
│ │ │ │ │ │ ├── simple.html
│ │ │ │ │ │ └── state_saving.html
│ │ │ │ │ └── js/
│ │ │ │ │ └── dataTables.scroller.js
│ │ │ │ └── TableTools/
│ │ │ │ ├── Readme.md
│ │ │ │ ├── css/
│ │ │ │ │ └── dataTables.tableTools.css
│ │ │ │ ├── examples/
│ │ │ │ │ ├── ajax.html
│ │ │ │ │ ├── alter_buttons.html
│ │ │ │ │ ├── bootstrap.html
│ │ │ │ │ ├── button_text.html
│ │ │ │ │ ├── collection.html
│ │ │ │ │ ├── defaults.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── jqueryui.html
│ │ │ │ │ ├── multi_instance.html
│ │ │ │ │ ├── multiple_tables.html
│ │ │ │ │ ├── new_init.html
│ │ │ │ │ ├── pdf_message.html
│ │ │ │ │ ├── plug-in.html
│ │ │ │ │ ├── select_column.html
│ │ │ │ │ ├── select_multi.html
│ │ │ │ │ ├── select_os.html
│ │ │ │ │ ├── select_single.html
│ │ │ │ │ ├── simple.html
│ │ │ │ │ └── swf_path.html
│ │ │ │ ├── images/
│ │ │ │ │ └── psd/
│ │ │ │ │ ├── collection.psd
│ │ │ │ │ ├── copy document.psd
│ │ │ │ │ ├── file_types.psd
│ │ │ │ │ └── printer.psd
│ │ │ │ ├── js/
│ │ │ │ │ └── dataTables.tableTools.js
│ │ │ │ └── swf/
│ │ │ │ ├── copy_csv_xls.swf
│ │ │ │ └── copy_csv_xls_pdf.swf
│ │ │ ├── jquery.dataTables.css
│ │ │ ├── jquery.dataTables.js
│ │ │ └── jquery.dataTables_themeroller.css
│ │ ├── datepicker/
│ │ │ ├── bootstrap-datepicker.js
│ │ │ ├── datepicker3.css
│ │ │ └── locales/
│ │ │ ├── bootstrap-datepicker.ar.js
│ │ │ ├── bootstrap-datepicker.az.js
│ │ │ ├── bootstrap-datepicker.bg.js
│ │ │ ├── bootstrap-datepicker.ca.js
│ │ │ ├── bootstrap-datepicker.cs.js
│ │ │ ├── bootstrap-datepicker.cy.js
│ │ │ ├── bootstrap-datepicker.da.js
│ │ │ ├── bootstrap-datepicker.de.js
│ │ │ ├── bootstrap-datepicker.el.js
│ │ │ ├── bootstrap-datepicker.es.js
│ │ │ ├── bootstrap-datepicker.et.js
│ │ │ ├── bootstrap-datepicker.fa.js
│ │ │ ├── bootstrap-datepicker.fi.js
│ │ │ ├── bootstrap-datepicker.fr.js
│ │ │ ├── bootstrap-datepicker.gl.js
│ │ │ ├── bootstrap-datepicker.he.js
│ │ │ ├── bootstrap-datepicker.hr.js
│ │ │ ├── bootstrap-datepicker.hu.js
│ │ │ ├── bootstrap-datepicker.id.js
│ │ │ ├── bootstrap-datepicker.is.js
│ │ │ ├── bootstrap-datepicker.it.js
│ │ │ ├── bootstrap-datepicker.ja.js
│ │ │ ├── bootstrap-datepicker.ka.js
│ │ │ ├── bootstrap-datepicker.kk.js
│ │ │ ├── bootstrap-datepicker.kr.js
│ │ │ ├── bootstrap-datepicker.lt.js
│ │ │ ├── bootstrap-datepicker.lv.js
│ │ │ ├── bootstrap-datepicker.mk.js
│ │ │ ├── bootstrap-datepicker.ms.js
│ │ │ ├── bootstrap-datepicker.nb.js
│ │ │ ├── bootstrap-datepicker.nl-BE.js
│ │ │ ├── bootstrap-datepicker.nl.js
│ │ │ ├── bootstrap-datepicker.no.js
│ │ │ ├── bootstrap-datepicker.pl.js
│ │ │ ├── bootstrap-datepicker.pt-BR.js
│ │ │ ├── bootstrap-datepicker.pt.js
│ │ │ ├── bootstrap-datepicker.ro.js
│ │ │ ├── bootstrap-datepicker.rs-latin.js
│ │ │ ├── bootstrap-datepicker.rs.js
│ │ │ ├── bootstrap-datepicker.ru.js
│ │ │ ├── bootstrap-datepicker.sk.js
│ │ │ ├── bootstrap-datepicker.sl.js
│ │ │ ├── bootstrap-datepicker.sq.js
│ │ │ ├── bootstrap-datepicker.sv.js
│ │ │ ├── bootstrap-datepicker.sw.js
│ │ │ ├── bootstrap-datepicker.th.js
│ │ │ ├── bootstrap-datepicker.tr.js
│ │ │ ├── bootstrap-datepicker.ua.js
│ │ │ ├── bootstrap-datepicker.vi.js
│ │ │ ├── bootstrap-datepicker.zh-CN.js
│ │ │ └── bootstrap-datepicker.zh-TW.js
│ │ ├── daterangepicker/
│ │ │ ├── daterangepicker-bs3.css
│ │ │ ├── daterangepicker.js
│ │ │ └── moment.js
│ │ ├── fastclick/
│ │ │ └── fastclick.js
│ │ ├── flot/
│ │ │ ├── excanvas.js
│ │ │ ├── jquery.colorhelpers.js
│ │ │ ├── jquery.flot.canvas.js
│ │ │ ├── jquery.flot.categories.js
│ │ │ ├── jquery.flot.crosshair.js
│ │ │ ├── jquery.flot.errorbars.js
│ │ │ ├── jquery.flot.fillbetween.js
│ │ │ ├── jquery.flot.image.js
│ │ │ ├── jquery.flot.js
│ │ │ ├── jquery.flot.navigate.js
│ │ │ ├── jquery.flot.pie.js
│ │ │ ├── jquery.flot.resize.js
│ │ │ ├── jquery.flot.selection.js
│ │ │ ├── jquery.flot.stack.js
│ │ │ ├── jquery.flot.symbol.js
│ │ │ ├── jquery.flot.threshold.js
│ │ │ └── jquery.flot.time.js
│ │ ├── form/
│ │ │ └── jquery.form.js
│ │ ├── fullcalendar/
│ │ │ ├── fullcalendar.css
│ │ │ ├── fullcalendar.js
│ │ │ └── fullcalendar.print.css
│ │ ├── iCheck/
│ │ │ ├── all.css
│ │ │ ├── flat/
│ │ │ │ ├── _all.css
│ │ │ │ ├── aero.css
│ │ │ │ ├── blue.css
│ │ │ │ ├── flat.css
│ │ │ │ ├── green.css
│ │ │ │ ├── grey.css
│ │ │ │ ├── orange.css
│ │ │ │ ├── pink.css
│ │ │ │ ├── purple.css
│ │ │ │ ├── red.css
│ │ │ │ └── yellow.css
│ │ │ ├── futurico/
│ │ │ │ └── futurico.css
│ │ │ ├── icheck.js
│ │ │ ├── line/
│ │ │ │ ├── _all.css
│ │ │ │ ├── aero.css
│ │ │ │ ├── blue.css
│ │ │ │ ├── green.css
│ │ │ │ ├── grey.css
│ │ │ │ ├── line.css
│ │ │ │ ├── orange.css
│ │ │ │ ├── pink.css
│ │ │ │ ├── purple.css
│ │ │ │ ├── red.css
│ │ │ │ └── yellow.css
│ │ │ ├── minimal/
│ │ │ │ ├── _all.css
│ │ │ │ ├── aero.css
│ │ │ │ ├── blue.css
│ │ │ │ ├── green.css
│ │ │ │ ├── grey.css
│ │ │ │ ├── minimal.css
│ │ │ │ ├── orange.css
│ │ │ │ ├── pink.css
│ │ │ │ ├── purple.css
│ │ │ │ ├── red.css
│ │ │ │ └── yellow.css
│ │ │ ├── polaris/
│ │ │ │ └── polaris.css
│ │ │ └── square/
│ │ │ ├── _all.css
│ │ │ ├── aero.css
│ │ │ ├── blue.css
│ │ │ ├── green.css
│ │ │ ├── grey.css
│ │ │ ├── orange.css
│ │ │ ├── pink.css
│ │ │ ├── purple.css
│ │ │ ├── red.css
│ │ │ ├── square.css
│ │ │ └── yellow.css
│ │ ├── input-mask/
│ │ │ ├── jquery.inputmask.date.extensions.js
│ │ │ ├── jquery.inputmask.extensions.js
│ │ │ ├── jquery.inputmask.js
│ │ │ ├── jquery.inputmask.numeric.extensions.js
│ │ │ ├── jquery.inputmask.phone.extensions.js
│ │ │ ├── jquery.inputmask.regex.extensions.js
│ │ │ └── phone-codes/
│ │ │ ├── phone-be.json
│ │ │ ├── phone-codes.json
│ │ │ └── readme.txt
│ │ ├── ionslider/
│ │ │ ├── ion.rangeSlider.css
│ │ │ ├── ion.rangeSlider.skinFlat.css
│ │ │ └── ion.rangeSlider.skinNice.css
│ │ ├── jQueryUI/
│ │ │ └── jquery-ui.js
│ │ ├── jvectormap/
│ │ │ ├── jquery-jvectormap-1.2.2.css
│ │ │ ├── jquery-jvectormap-usa-en.js
│ │ │ └── jquery-jvectormap-world-mill-en.js
│ │ ├── knob/
│ │ │ └── jquery.knob.js
│ │ ├── layer/
│ │ │ ├── extend/
│ │ │ │ └── layer.ext.js
│ │ │ ├── layer.js
│ │ │ └── skin/
│ │ │ ├── layer.css
│ │ │ └── layer.ext.css
│ │ ├── morris/
│ │ │ ├── morris.css
│ │ │ └── morris.js
│ │ ├── nprogress/
│ │ │ ├── nprogress.css
│ │ │ └── nprogress.js
│ │ ├── pace/
│ │ │ ├── pace.css
│ │ │ └── pace.js
│ │ ├── pjax/
│ │ │ └── jquery.pjax.js
│ │ ├── select2/
│ │ │ ├── i18n/
│ │ │ │ ├── ar.js
│ │ │ │ ├── az.js
│ │ │ │ ├── bg.js
│ │ │ │ ├── ca.js
│ │ │ │ ├── cs.js
│ │ │ │ ├── da.js
│ │ │ │ ├── de.js
│ │ │ │ ├── en.js
│ │ │ │ ├── es.js
│ │ │ │ ├── et.js
│ │ │ │ ├── eu.js
│ │ │ │ ├── fa.js
│ │ │ │ ├── fi.js
│ │ │ │ ├── fr.js
│ │ │ │ ├── gl.js
│ │ │ │ ├── he.js
│ │ │ │ ├── hi.js
│ │ │ │ ├── hr.js
│ │ │ │ ├── hu.js
│ │ │ │ ├── id.js
│ │ │ │ ├── is.js
│ │ │ │ ├── it.js
│ │ │ │ ├── ja.js
│ │ │ │ ├── ko.js
│ │ │ │ ├── lt.js
│ │ │ │ ├── lv.js
│ │ │ │ ├── mk.js
│ │ │ │ ├── ms.js
│ │ │ │ ├── nb.js
│ │ │ │ ├── nl.js
│ │ │ │ ├── pl.js
│ │ │ │ ├── pt-BR.js
│ │ │ │ ├── pt.js
│ │ │ │ ├── ro.js
│ │ │ │ ├── ru.js
│ │ │ │ ├── sk.js
│ │ │ │ ├── sr-Cyrl.js
│ │ │ │ ├── sr.js
│ │ │ │ ├── sv.js
│ │ │ │ ├── th.js
│ │ │ │ ├── tr.js
│ │ │ │ ├── uk.js
│ │ │ │ ├── vi.js
│ │ │ │ ├── zh-CN.js
│ │ │ │ └── zh-TW.js
│ │ │ ├── select2.css
│ │ │ ├── select2.full.js
│ │ │ └── select2.js
│ │ ├── slimScroll/
│ │ │ └── jquery.slimscroll.js
│ │ ├── sparkline/
│ │ │ └── jquery.sparkline.js
│ │ ├── timepicker/
│ │ │ ├── bootstrap-timepicker.css
│ │ │ └── bootstrap-timepicker.js
│ │ ├── toastr/
│ │ │ └── toastr.css
│ │ └── wangeditor/
│ │ ├── css/
│ │ │ ├── wangEditor.css
│ │ │ ├── wangEditor.less
│ │ │ └── wangEditor2.css
│ │ └── js/
│ │ ├── lib/
│ │ │ └── jquery-2.2.1.js
│ │ └── wangEditor.js
│ └── ueditor/
│ ├── dialogs/
│ │ ├── anchor/
│ │ │ └── anchor.html
│ │ ├── attachment/
│ │ │ ├── attachment.css
│ │ │ ├── attachment.html
│ │ │ └── attachment.js
│ │ ├── background/
│ │ │ ├── background.css
│ │ │ ├── background.html
│ │ │ └── background.js
│ │ ├── charts/
│ │ │ ├── chart.config.js
│ │ │ ├── charts.css
│ │ │ ├── charts.html
│ │ │ └── charts.js
│ │ ├── emotion/
│ │ │ ├── emotion.css
│ │ │ ├── emotion.html
│ │ │ └── emotion.js
│ │ ├── gmap/
│ │ │ └── gmap.html
│ │ ├── help/
│ │ │ ├── help.css
│ │ │ ├── help.html
│ │ │ └── help.js
│ │ ├── image/
│ │ │ ├── image.css
│ │ │ ├── image.html
│ │ │ └── image.js
│ │ ├── insertframe/
│ │ │ └── insertframe.html
│ │ ├── internal.js
│ │ ├── link/
│ │ │ └── link.html
│ │ ├── map/
│ │ │ ├── map.html
│ │ │ └── show.html
│ │ ├── music/
│ │ │ ├── music.css
│ │ │ ├── music.html
│ │ │ └── music.js
│ │ ├── preview/
│ │ │ └── preview.html
│ │ ├── scrawl/
│ │ │ ├── scrawl.css
│ │ │ ├── scrawl.html
│ │ │ └── scrawl.js
│ │ ├── searchreplace/
│ │ │ ├── searchreplace.html
│ │ │ └── searchreplace.js
│ │ ├── snapscreen/
│ │ │ └── snapscreen.html
│ │ ├── spechars/
│ │ │ ├── spechars.html
│ │ │ └── spechars.js
│ │ ├── table/
│ │ │ ├── edittable.css
│ │ │ ├── edittable.html
│ │ │ ├── edittable.js
│ │ │ ├── edittd.html
│ │ │ └── edittip.html
│ │ ├── template/
│ │ │ ├── config.js
│ │ │ ├── template.css
│ │ │ ├── template.html
│ │ │ └── template.js
│ │ ├── video/
│ │ │ ├── video.css
│ │ │ ├── video.html
│ │ │ └── video.js
│ │ ├── webapp/
│ │ │ └── webapp.html
│ │ └── wordimage/
│ │ ├── fClipboard_ueditor.swf
│ │ ├── imageUploader.swf
│ │ ├── tangram.js
│ │ ├── wordimage.html
│ │ └── wordimage.js
│ ├── index.html
│ ├── lang/
│ │ ├── en/
│ │ │ └── en.js
│ │ └── zh-cn/
│ │ └── zh-cn.js
│ ├── php/
│ │ ├── Uploader.class.php
│ │ ├── action_crawler.php
│ │ ├── action_list.php
│ │ ├── action_upload.php
│ │ ├── config.json
│ │ └── controller.php
│ ├── themes/
│ │ ├── default/
│ │ │ ├── css/
│ │ │ │ └── ueditor.css
│ │ │ └── dialogbase.css
│ │ └── iframe.css
│ ├── third-party/
│ │ ├── SyntaxHighlighter/
│ │ │ ├── shCore.js
│ │ │ └── shCoreDefault.css
│ │ ├── codemirror/
│ │ │ ├── codemirror.css
│ │ │ └── codemirror.js
│ │ ├── highcharts/
│ │ │ ├── adapters/
│ │ │ │ ├── mootools-adapter.js
│ │ │ │ ├── mootools-adapter.src.js
│ │ │ │ ├── prototype-adapter.js
│ │ │ │ ├── prototype-adapter.src.js
│ │ │ │ ├── standalone-framework.js
│ │ │ │ └── standalone-framework.src.js
│ │ │ ├── highcharts-more.js
│ │ │ ├── highcharts-more.src.js
│ │ │ ├── highcharts.js
│ │ │ ├── highcharts.src.js
│ │ │ ├── modules/
│ │ │ │ ├── annotations.js
│ │ │ │ ├── annotations.src.js
│ │ │ │ ├── canvas-tools.js
│ │ │ │ ├── canvas-tools.src.js
│ │ │ │ ├── data.js
│ │ │ │ ├── data.src.js
│ │ │ │ ├── drilldown.js
│ │ │ │ ├── drilldown.src.js
│ │ │ │ ├── exporting.js
│ │ │ │ ├── exporting.src.js
│ │ │ │ ├── funnel.js
│ │ │ │ ├── funnel.src.js
│ │ │ │ ├── heatmap.js
│ │ │ │ ├── heatmap.src.js
│ │ │ │ ├── map.js
│ │ │ │ ├── map.src.js
│ │ │ │ ├── no-data-to-display.js
│ │ │ │ └── no-data-to-display.src.js
│ │ │ └── themes/
│ │ │ ├── dark-blue.js
│ │ │ ├── dark-green.js
│ │ │ ├── gray.js
│ │ │ ├── grid.js
│ │ │ └── skies.js
│ │ ├── jquery-1.10.2.js
│ │ ├── video-js/
│ │ │ ├── video-js.css
│ │ │ ├── video-js.swf
│ │ │ ├── video.dev.js
│ │ │ └── video.js
│ │ ├── webuploader/
│ │ │ ├── Uploader.swf
│ │ │ ├── webuploader.css
│ │ │ ├── webuploader.custom.js
│ │ │ ├── webuploader.flashonly.js
│ │ │ ├── webuploader.html5only.js
│ │ │ ├── webuploader.js
│ │ │ └── webuploader.withoutimage.js
│ │ └── zeroclipboard/
│ │ ├── ZeroClipboard.js
│ │ └── ZeroClipboard.swf
│ ├── ueditor.all.js
│ ├── ueditor.config.js
│ └── ueditor.parse.js
├── think
├── thinkphp/
│ ├── .gitignore
│ ├── .htaccess
│ ├── .travis.yml
│ ├── CONTRIBUTING.md
│ ├── LICENSE.txt
│ ├── README.md
│ ├── base.php
│ ├── codecov.yml
│ ├── composer.json
│ ├── console.php
│ ├── convention.php
│ ├── helper.php
│ ├── lang/
│ │ └── zh-cn.php
│ ├── library/
│ │ ├── think/
│ │ │ ├── App.php
│ │ │ ├── Build.php
│ │ │ ├── Cache.php
│ │ │ ├── Collection.php
│ │ │ ├── Config.php
│ │ │ ├── Console.php
│ │ │ ├── Controller.php
│ │ │ ├── Cookie.php
│ │ │ ├── Db.php
│ │ │ ├── Debug.php
│ │ │ ├── Env.php
│ │ │ ├── Error.php
│ │ │ ├── Exception.php
│ │ │ ├── File.php
│ │ │ ├── Hook.php
│ │ │ ├── Lang.php
│ │ │ ├── Loader.php
│ │ │ ├── Log.php
│ │ │ ├── Model.php
│ │ │ ├── Paginator.php
│ │ │ ├── Process.php
│ │ │ ├── Request.php
│ │ │ ├── Response.php
│ │ │ ├── Route.php
│ │ │ ├── Session.php
│ │ │ ├── Template.php
│ │ │ ├── Url.php
│ │ │ ├── Validate.php
│ │ │ ├── View.php
│ │ │ ├── cache/
│ │ │ │ ├── Driver.php
│ │ │ │ └── driver/
│ │ │ │ ├── File.php
│ │ │ │ ├── Lite.php
│ │ │ │ ├── Memcache.php
│ │ │ │ ├── Memcached.php
│ │ │ │ ├── Redis.php
│ │ │ │ ├── Sqlite.php
│ │ │ │ ├── Wincache.php
│ │ │ │ └── Xcache.php
│ │ │ ├── config/
│ │ │ │ └── driver/
│ │ │ │ ├── Ini.php
│ │ │ │ ├── Json.php
│ │ │ │ └── Xml.php
│ │ │ ├── console/
│ │ │ │ ├── Command.php
│ │ │ │ ├── Input.php
│ │ │ │ ├── LICENSE
│ │ │ │ ├── Output.php
│ │ │ │ ├── bin/
│ │ │ │ │ └── README.md
│ │ │ │ ├── command/
│ │ │ │ │ ├── Build.php
│ │ │ │ │ ├── Clear.php
│ │ │ │ │ ├── Help.php
│ │ │ │ │ ├── Lists.php
│ │ │ │ │ ├── Make.php
│ │ │ │ │ ├── make/
│ │ │ │ │ │ ├── Controller.php
│ │ │ │ │ │ ├── Model.php
│ │ │ │ │ │ └── stubs/
│ │ │ │ │ │ ├── controller.plain.stub
│ │ │ │ │ │ ├── controller.stub
│ │ │ │ │ │ └── model.stub
│ │ │ │ │ └── optimize/
│ │ │ │ │ ├── Autoload.php
│ │ │ │ │ ├── Config.php
│ │ │ │ │ ├── Route.php
│ │ │ │ │ └── Schema.php
│ │ │ │ ├── input/
│ │ │ │ │ ├── Argument.php
│ │ │ │ │ ├── Definition.php
│ │ │ │ │ └── Option.php
│ │ │ │ └── output/
│ │ │ │ ├── Ask.php
│ │ │ │ ├── Descriptor.php
│ │ │ │ ├── Formatter.php
│ │ │ │ ├── Question.php
│ │ │ │ ├── descriptor/
│ │ │ │ │ └── Console.php
│ │ │ │ ├── driver/
│ │ │ │ │ ├── Buffer.php
│ │ │ │ │ ├── Console.php
│ │ │ │ │ └── Nothing.php
│ │ │ │ ├── formatter/
│ │ │ │ │ ├── Stack.php
│ │ │ │ │ └── Style.php
│ │ │ │ └── question/
│ │ │ │ ├── Choice.php
│ │ │ │ └── Confirmation.php
│ │ │ ├── controller/
│ │ │ │ ├── Rest.php
│ │ │ │ └── Yar.php
│ │ │ ├── db/
│ │ │ │ ├── Builder.php
│ │ │ │ ├── Connection.php
│ │ │ │ ├── Query.php
│ │ │ │ ├── builder/
│ │ │ │ │ ├── Mysql.php
│ │ │ │ │ ├── Pgsql.php
│ │ │ │ │ ├── Sqlite.php
│ │ │ │ │ └── Sqlsrv.php
│ │ │ │ ├── connector/
│ │ │ │ │ ├── Mysql.php
│ │ │ │ │ ├── Pgsql.php
│ │ │ │ │ ├── Sqlite.php
│ │ │ │ │ ├── Sqlsrv.php
│ │ │ │ │ └── pgsql.sql
│ │ │ │ └── exception/
│ │ │ │ ├── BindParamException.php
│ │ │ │ ├── DataNotFoundException.php
│ │ │ │ └── ModelNotFoundException.php
│ │ │ ├── debug/
│ │ │ │ ├── Console.php
│ │ │ │ └── Html.php
│ │ │ ├── exception/
│ │ │ │ ├── ClassNotFoundException.php
│ │ │ │ ├── DbException.php
│ │ │ │ ├── ErrorException.php
│ │ │ │ ├── Handle.php
│ │ │ │ ├── HttpException.php
│ │ │ │ ├── HttpResponseException.php
│ │ │ │ ├── PDOException.php
│ │ │ │ ├── RouteNotFoundException.php
│ │ │ │ ├── TemplateNotFoundException.php
│ │ │ │ ├── ThrowableError.php
│ │ │ │ └── ValidateException.php
│ │ │ ├── log/
│ │ │ │ └── driver/
│ │ │ │ ├── File.php
│ │ │ │ ├── Socket.php
│ │ │ │ └── Test.php
│ │ │ ├── model/
│ │ │ │ ├── Collection.php
│ │ │ │ ├── Merge.php
│ │ │ │ ├── Pivot.php
│ │ │ │ ├── Relation.php
│ │ │ │ └── relation/
│ │ │ │ ├── BelongsTo.php
│ │ │ │ ├── BelongsToMany.php
│ │ │ │ ├── HasMany.php
│ │ │ │ ├── HasManyThrough.php
│ │ │ │ ├── HasOne.php
│ │ │ │ ├── MorphMany.php
│ │ │ │ ├── MorphOne.php
│ │ │ │ ├── MorphTo.php
│ │ │ │ └── OneToOne.php
│ │ │ ├── paginator/
│ │ │ │ └── driver/
│ │ │ │ └── Bootstrap.php
│ │ │ ├── process/
│ │ │ │ ├── Builder.php
│ │ │ │ ├── Utils.php
│ │ │ │ ├── exception/
│ │ │ │ │ ├── Failed.php
│ │ │ │ │ └── Timeout.php
│ │ │ │ └── pipes/
│ │ │ │ ├── Pipes.php
│ │ │ │ ├── Unix.php
│ │ │ │ └── Windows.php
│ │ │ ├── response/
│ │ │ │ ├── Json.php
│ │ │ │ ├── Jsonp.php
│ │ │ │ ├── Redirect.php
│ │ │ │ ├── View.php
│ │ │ │ └── Xml.php
│ │ │ ├── session/
│ │ │ │ └── driver/
│ │ │ │ ├── Memcache.php
│ │ │ │ ├── Memcached.php
│ │ │ │ └── Redis.php
│ │ │ ├── template/
│ │ │ │ ├── TagLib.php
│ │ │ │ ├── driver/
│ │ │ │ │ └── File.php
│ │ │ │ └── taglib/
│ │ │ │ └── Cx.php
│ │ │ └── view/
│ │ │ └── driver/
│ │ │ ├── Php.php
│ │ │ └── Think.php
│ │ └── traits/
│ │ ├── controller/
│ │ │ └── Jump.php
│ │ ├── model/
│ │ │ └── SoftDelete.php
│ │ └── think/
│ │ └── Instance.php
│ ├── phpunit.xml
│ ├── start.php
│ └── tpl/
│ ├── default_index.tpl
│ ├── dispatch_jump.tpl
│ ├── page_trace.tpl
│ └── think_exception.tpl
├── tpl/
│ ├── addons/
│ │ └── index.html
│ └── theme/
│ └── default/
│ └── index.html
├── vendor/
│ ├── autoload.php
│ ├── composer/
│ │ ├── ClassLoader.php
│ │ ├── LICENSE
│ │ ├── autoload_classmap.php
│ │ ├── autoload_files.php
│ │ ├── autoload_namespaces.php
│ │ ├── autoload_psr4.php
│ │ ├── autoload_real.php
│ │ ├── autoload_static.php
│ │ └── installed.json
│ ├── dodgepudding/
│ │ └── wechat-php-sdk/
│ │ ├── .gitignore
│ │ ├── JSSDK.class.php
│ │ ├── README.md
│ │ ├── Thinkphp/
│ │ │ ├── EasyWechat.class.php
│ │ │ └── TPWechat.class.php
│ │ ├── WxPrint.class.php
│ │ ├── composer.json
│ │ ├── demo.php
│ │ ├── errCode.php
│ │ ├── old_version/
│ │ │ ├── Thinkphp/
│ │ │ │ ├── Snoopy.class.php
│ │ │ │ ├── Wechatauth.class.php
│ │ │ │ ├── Wechatext.class.php
│ │ │ │ └── Wechatpay.class.php
│ │ │ ├── snoopy.class.php
│ │ │ ├── test/
│ │ │ │ ├── test2.php
│ │ │ │ ├── test3.php
│ │ │ │ └── weshare.html
│ │ │ ├── wechat.js
│ │ │ ├── wechatauth.class.php
│ │ │ ├── wechatext.class.php
│ │ │ └── wechatpay.class.php
│ │ ├── qyerrCode.php
│ │ ├── qywechat.class.php
│ │ ├── test/
│ │ │ ├── auth.php
│ │ │ ├── jsapi/
│ │ │ │ ├── jsapi-demo-6.1.js
│ │ │ │ ├── jsapi_demo.php
│ │ │ │ └── style.css
│ │ │ ├── qydemo.php
│ │ │ └── test1.php
│ │ ├── wechat.class.php
│ │ └── wiki/
│ │ ├── %B5%C4%EA%B5%D8%E2%FE%D6+%DA%D6%E5%FE%A6+զ%F4.md
│ │ ├── %B5%F9%BA%FE%EB%EAե%AB%F5+%ED%B5%F6%BB%F5+V2%B5%C4%D1%D5%C5%FA%FE%A6+զ%F4.md
│ │ ├── %D5%E5%E0%D5%C1%EEJS.md
│ │ ├── %DA%D8%D7ի%B5%FB%A6%B5%EB%AEզ%F2%FE%A6+զ%F4.md
│ │ ├── %F5%A9%A6%D5+%C7%D5%C5%E6%B5%ED%E5%B5%D7%C2%DE+%F8%DE%ED%EE%DA%C7%E9%DA%E0%EC.md
│ │ ├── %F5+%FC%F5%A9%DC%D5%C5%C0API%FE%A6+զ%F4.md
│ │ ├── API%B5%C4%D1%D5%C5%FA%DA%F6%D6%BB%FE%E1%FC.md
│ │ ├── Home.md
│ │ ├── README.md
│ │ └── ի%B5%FB%A6API%FE%A6+զ%F4.md
│ ├── phpmailer/
│ │ └── phpmailer/
│ │ ├── LICENSE
│ │ ├── PHPMailerAutoload.php
│ │ ├── VERSION
│ │ ├── class.phpmailer.php
│ │ ├── class.phpmaileroauth.php
│ │ ├── class.phpmaileroauthgoogle.php
│ │ ├── class.pop3.php
│ │ ├── class.smtp.php
│ │ ├── composer.json
│ │ ├── examples/
│ │ │ ├── DKIM.phps
│ │ │ ├── code_generator.phps
│ │ │ ├── contactform.phps
│ │ │ ├── contents.html
│ │ │ ├── contentsutf8.html
│ │ │ ├── exceptions.phps
│ │ │ ├── gmail.phps
│ │ │ ├── gmail_xoauth.phps
│ │ │ ├── index.html
│ │ │ ├── mail.phps
│ │ │ ├── mailing_list.phps
│ │ │ ├── pop_before_smtp.phps
│ │ │ ├── scripts/
│ │ │ │ ├── XRegExp.js
│ │ │ │ ├── shAutoloader.js
│ │ │ │ ├── shBrushPhp.js
│ │ │ │ ├── shCore.js
│ │ │ │ └── shLegacy.js
│ │ │ ├── send_file_upload.phps
│ │ │ ├── send_multiple_file_upload.phps
│ │ │ ├── sendmail.phps
│ │ │ ├── signed-mail.phps
│ │ │ ├── smtp.phps
│ │ │ ├── smtp_check.phps
│ │ │ ├── smtp_no_auth.phps
│ │ │ ├── ssl_options.phps
│ │ │ └── styles/
│ │ │ ├── shCore.css
│ │ │ ├── shCoreDefault.css
│ │ │ ├── shCoreDjango.css
│ │ │ ├── shCoreEclipse.css
│ │ │ ├── shCoreEmacs.css
│ │ │ ├── shCoreFadeToGrey.css
│ │ │ ├── shCoreMDUltra.css
│ │ │ ├── shCoreMidnight.css
│ │ │ ├── shCoreRDark.css
│ │ │ ├── shThemeAppleScript.css
│ │ │ ├── shThemeDefault.css
│ │ │ ├── shThemeDjango.css
│ │ │ ├── shThemeEclipse.css
│ │ │ ├── shThemeEmacs.css
│ │ │ ├── shThemeFadeToGrey.css
│ │ │ ├── shThemeMDUltra.css
│ │ │ ├── shThemeMidnight.css
│ │ │ ├── shThemeRDark.css
│ │ │ └── shThemeVisualStudio.css
│ │ ├── extras/
│ │ │ ├── EasyPeasyICS.php
│ │ │ ├── README.md
│ │ │ ├── htmlfilter.php
│ │ │ └── ntlm_sasl_client.php
│ │ ├── get_oauth_token.php
│ │ └── language/
│ │ ├── phpmailer.lang-am.php
│ │ ├── phpmailer.lang-ar.php
│ │ ├── phpmailer.lang-az.php
│ │ ├── phpmailer.lang-be.php
│ │ ├── phpmailer.lang-bg.php
│ │ ├── phpmailer.lang-ca.php
│ │ ├── phpmailer.lang-ch.php
│ │ ├── phpmailer.lang-cs.php
│ │ ├── phpmailer.lang-da.php
│ │ ├── phpmailer.lang-de.php
│ │ ├── phpmailer.lang-el.php
│ │ ├── phpmailer.lang-eo.php
│ │ ├── phpmailer.lang-es.php
│ │ ├── phpmailer.lang-et.php
│ │ ├── phpmailer.lang-fa.php
│ │ ├── phpmailer.lang-fi.php
│ │ ├── phpmailer.lang-fo.php
│ │ ├── phpmailer.lang-fr.php
│ │ ├── phpmailer.lang-gl.php
│ │ ├── phpmailer.lang-he.php
│ │ ├── phpmailer.lang-hr.php
│ │ ├── phpmailer.lang-hu.php
│ │ ├── phpmailer.lang-id.php
│ │ ├── phpmailer.lang-it.php
│ │ ├── phpmailer.lang-ja.php
│ │ ├── phpmailer.lang-ka.php
│ │ ├── phpmailer.lang-ko.php
│ │ ├── phpmailer.lang-lt.php
│ │ ├── phpmailer.lang-lv.php
│ │ ├── phpmailer.lang-ms.php
│ │ ├── phpmailer.lang-nb.php
│ │ ├── phpmailer.lang-nl.php
│ │ ├── phpmailer.lang-pl.php
│ │ ├── phpmailer.lang-pt.php
│ │ ├── phpmailer.lang-pt_br.php
│ │ ├── phpmailer.lang-ro.php
│ │ ├── phpmailer.lang-ru.php
│ │ ├── phpmailer.lang-sk.php
│ │ ├── phpmailer.lang-sl.php
│ │ ├── phpmailer.lang-sr.php
│ │ ├── phpmailer.lang-sv.php
│ │ ├── phpmailer.lang-tr.php
│ │ ├── phpmailer.lang-uk.php
│ │ ├── phpmailer.lang-vi.php
│ │ ├── phpmailer.lang-zh.php
│ │ └── phpmailer.lang-zh_cn.php
│ └── phpoffice/
│ └── phpexcel/
│ ├── .gitattributes
│ ├── .gitignore
│ ├── .travis.yml
│ ├── Classes/
│ │ ├── PHPExcel/
│ │ │ ├── Autoloader.php
│ │ │ ├── CachedObjectStorage/
│ │ │ │ ├── APC.php
│ │ │ │ ├── CacheBase.php
│ │ │ │ ├── DiscISAM.php
│ │ │ │ ├── ICache.php
│ │ │ │ ├── Igbinary.php
│ │ │ │ ├── Memcache.php
│ │ │ │ ├── Memory.php
│ │ │ │ ├── MemoryGZip.php
│ │ │ │ ├── MemorySerialized.php
│ │ │ │ ├── PHPTemp.php
│ │ │ │ ├── SQLite.php
│ │ │ │ ├── SQLite3.php
│ │ │ │ └── Wincache.php
│ │ │ ├── CachedObjectStorageFactory.php
│ │ │ ├── CalcEngine/
│ │ │ │ ├── CyclicReferenceStack.php
│ │ │ │ └── Logger.php
│ │ │ ├── Calculation/
│ │ │ │ ├── Database.php
│ │ │ │ ├── DateTime.php
│ │ │ │ ├── Engineering.php
│ │ │ │ ├── Exception.php
│ │ │ │ ├── ExceptionHandler.php
│ │ │ │ ├── Financial.php
│ │ │ │ ├── FormulaParser.php
│ │ │ │ ├── FormulaToken.php
│ │ │ │ ├── Function.php
│ │ │ │ ├── Functions.php
│ │ │ │ ├── Logical.php
│ │ │ │ ├── LookupRef.php
│ │ │ │ ├── MathTrig.php
│ │ │ │ ├── Statistical.php
│ │ │ │ ├── TextData.php
│ │ │ │ ├── Token/
│ │ │ │ │ └── Stack.php
│ │ │ │ └── functionlist.txt
│ │ │ ├── Calculation.php
│ │ │ ├── Cell/
│ │ │ │ ├── AdvancedValueBinder.php
│ │ │ │ ├── DataType.php
│ │ │ │ ├── DataValidation.php
│ │ │ │ ├── DefaultValueBinder.php
│ │ │ │ ├── Hyperlink.php
│ │ │ │ └── IValueBinder.php
│ │ │ ├── Cell.php
│ │ │ ├── Chart/
│ │ │ │ ├── Axis.php
│ │ │ │ ├── DataSeries.php
│ │ │ │ ├── DataSeriesValues.php
│ │ │ │ ├── Exception.php
│ │ │ │ ├── GridLines.php
│ │ │ │ ├── Layout.php
│ │ │ │ ├── Legend.php
│ │ │ │ ├── PlotArea.php
│ │ │ │ ├── Properties.php
│ │ │ │ ├── Renderer/
│ │ │ │ │ ├── PHP Charting Libraries.txt
│ │ │ │ │ └── jpgraph.php
│ │ │ │ └── Title.php
│ │ │ ├── Chart.php
│ │ │ ├── Comment.php
│ │ │ ├── DocumentProperties.php
│ │ │ ├── DocumentSecurity.php
│ │ │ ├── Exception.php
│ │ │ ├── HashTable.php
│ │ │ ├── Helper/
│ │ │ │ └── HTML.php
│ │ │ ├── IComparable.php
│ │ │ ├── IOFactory.php
│ │ │ ├── NamedRange.php
│ │ │ ├── Reader/
│ │ │ │ ├── Abstract.php
│ │ │ │ ├── CSV.php
│ │ │ │ ├── DefaultReadFilter.php
│ │ │ │ ├── Excel2003XML.php
│ │ │ │ ├── Excel2007/
│ │ │ │ │ ├── Chart.php
│ │ │ │ │ └── Theme.php
│ │ │ │ ├── Excel2007.php
│ │ │ │ ├── Excel5/
│ │ │ │ │ ├── Escher.php
│ │ │ │ │ ├── MD5.php
│ │ │ │ │ └── RC4.php
│ │ │ │ ├── Excel5.php
│ │ │ │ ├── Exception.php
│ │ │ │ ├── Gnumeric.php
│ │ │ │ ├── HTML.php
│ │ │ │ ├── IReadFilter.php
│ │ │ │ ├── IReader.php
│ │ │ │ ├── OOCalc.php
│ │ │ │ └── SYLK.php
│ │ │ ├── ReferenceHelper.php
│ │ │ ├── RichText/
│ │ │ │ ├── ITextElement.php
│ │ │ │ ├── Run.php
│ │ │ │ └── TextElement.php
│ │ │ ├── RichText.php
│ │ │ ├── Settings.php
│ │ │ ├── Shared/
│ │ │ │ ├── CodePage.php
│ │ │ │ ├── Date.php
│ │ │ │ ├── Drawing.php
│ │ │ │ ├── Escher/
│ │ │ │ │ ├── DgContainer/
│ │ │ │ │ │ ├── SpgrContainer/
│ │ │ │ │ │ │ └── SpContainer.php
│ │ │ │ │ │ └── SpgrContainer.php
│ │ │ │ │ ├── DgContainer.php
│ │ │ │ │ ├── DggContainer/
│ │ │ │ │ │ ├── BstoreContainer/
│ │ │ │ │ │ │ ├── BSE/
│ │ │ │ │ │ │ │ └── Blip.php
│ │ │ │ │ │ │ └── BSE.php
│ │ │ │ │ │ └── BstoreContainer.php
│ │ │ │ │ └── DggContainer.php
│ │ │ │ ├── Escher.php
│ │ │ │ ├── Excel5.php
│ │ │ │ ├── File.php
│ │ │ │ ├── Font.php
│ │ │ │ ├── JAMA/
│ │ │ │ │ ├── CHANGELOG.TXT
│ │ │ │ │ ├── CholeskyDecomposition.php
│ │ │ │ │ ├── EigenvalueDecomposition.php
│ │ │ │ │ ├── LUDecomposition.php
│ │ │ │ │ ├── Matrix.php
│ │ │ │ │ ├── QRDecomposition.php
│ │ │ │ │ ├── SingularValueDecomposition.php
│ │ │ │ │ └── utils/
│ │ │ │ │ ├── Error.php
│ │ │ │ │ └── Maths.php
│ │ │ │ ├── OLE/
│ │ │ │ │ ├── ChainedBlockStream.php
│ │ │ │ │ ├── PPS/
│ │ │ │ │ │ ├── File.php
│ │ │ │ │ │ └── Root.php
│ │ │ │ │ └── PPS.php
│ │ │ │ ├── OLE.php
│ │ │ │ ├── OLERead.php
│ │ │ │ ├── PCLZip/
│ │ │ │ │ ├── gnu-lgpl.txt
│ │ │ │ │ ├── pclzip.lib.php
│ │ │ │ │ └── readme.txt
│ │ │ │ ├── PasswordHasher.php
│ │ │ │ ├── String.php
│ │ │ │ ├── TimeZone.php
│ │ │ │ ├── XMLWriter.php
│ │ │ │ ├── ZipArchive.php
│ │ │ │ ├── ZipStreamWrapper.php
│ │ │ │ └── trend/
│ │ │ │ ├── bestFitClass.php
│ │ │ │ ├── exponentialBestFitClass.php
│ │ │ │ ├── linearBestFitClass.php
│ │ │ │ ├── logarithmicBestFitClass.php
│ │ │ │ ├── polynomialBestFitClass.php
│ │ │ │ ├── powerBestFitClass.php
│ │ │ │ └── trendClass.php
│ │ │ ├── Style/
│ │ │ │ ├── Alignment.php
│ │ │ │ ├── Border.php
│ │ │ │ ├── Borders.php
│ │ │ │ ├── Color.php
│ │ │ │ ├── Conditional.php
│ │ │ │ ├── Fill.php
│ │ │ │ ├── Font.php
│ │ │ │ ├── NumberFormat.php
│ │ │ │ ├── Protection.php
│ │ │ │ └── Supervisor.php
│ │ │ ├── Style.php
│ │ │ ├── Worksheet/
│ │ │ │ ├── AutoFilter/
│ │ │ │ │ ├── Column/
│ │ │ │ │ │ └── Rule.php
│ │ │ │ │ └── Column.php
│ │ │ │ ├── AutoFilter.php
│ │ │ │ ├── BaseDrawing.php
│ │ │ │ ├── CellIterator.php
│ │ │ │ ├── Column.php
│ │ │ │ ├── ColumnCellIterator.php
│ │ │ │ ├── ColumnDimension.php
│ │ │ │ ├── ColumnIterator.php
│ │ │ │ ├── Drawing/
│ │ │ │ │ └── Shadow.php
│ │ │ │ ├── Drawing.php
│ │ │ │ ├── HeaderFooter.php
│ │ │ │ ├── HeaderFooterDrawing.php
│ │ │ │ ├── MemoryDrawing.php
│ │ │ │ ├── PageMargins.php
│ │ │ │ ├── PageSetup.php
│ │ │ │ ├── Protection.php
│ │ │ │ ├── Row.php
│ │ │ │ ├── RowCellIterator.php
│ │ │ │ ├── RowDimension.php
│ │ │ │ ├── RowIterator.php
│ │ │ │ └── SheetView.php
│ │ │ ├── Worksheet.php
│ │ │ ├── WorksheetIterator.php
│ │ │ ├── Writer/
│ │ │ │ ├── Abstract.php
│ │ │ │ ├── CSV.php
│ │ │ │ ├── Excel2007/
│ │ │ │ │ ├── Chart.php
│ │ │ │ │ ├── Comments.php
│ │ │ │ │ ├── ContentTypes.php
│ │ │ │ │ ├── DocProps.php
│ │ │ │ │ ├── Drawing.php
│ │ │ │ │ ├── Rels.php
│ │ │ │ │ ├── RelsRibbon.php
│ │ │ │ │ ├── RelsVBA.php
│ │ │ │ │ ├── StringTable.php
│ │ │ │ │ ├── Style.php
│ │ │ │ │ ├── Theme.php
│ │ │ │ │ ├── Workbook.php
│ │ │ │ │ ├── Worksheet.php
│ │ │ │ │ └── WriterPart.php
│ │ │ │ ├── Excel2007.php
│ │ │ │ ├── Excel5/
│ │ │ │ │ ├── BIFFwriter.php
│ │ │ │ │ ├── Escher.php
│ │ │ │ │ ├── Font.php
│ │ │ │ │ ├── Parser.php
│ │ │ │ │ ├── Workbook.php
│ │ │ │ │ ├── Worksheet.php
│ │ │ │ │ └── Xf.php
│ │ │ │ ├── Excel5.php
│ │ │ │ ├── Exception.php
│ │ │ │ ├── HTML.php
│ │ │ │ ├── IWriter.php
│ │ │ │ ├── OpenDocument/
│ │ │ │ │ ├── Cell/
│ │ │ │ │ │ └── Comment.php
│ │ │ │ │ ├── Content.php
│ │ │ │ │ ├── Meta.php
│ │ │ │ │ ├── MetaInf.php
│ │ │ │ │ ├── Mimetype.php
│ │ │ │ │ ├── Settings.php
│ │ │ │ │ ├── Styles.php
│ │ │ │ │ ├── Thumbnails.php
│ │ │ │ │ └── WriterPart.php
│ │ │ │ ├── OpenDocument.php
│ │ │ │ ├── PDF/
│ │ │ │ │ ├── Core.php
│ │ │ │ │ ├── DomPDF.php
│ │ │ │ │ ├── mPDF.php
│ │ │ │ │ └── tcPDF.php
│ │ │ │ └── PDF.php
│ │ │ └── locale/
│ │ │ ├── bg/
│ │ │ │ └── config
│ │ │ ├── cs/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── da/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── de/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── en/
│ │ │ │ └── uk/
│ │ │ │ └── config
│ │ │ ├── es/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── fi/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── fr/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── hu/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── it/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── nl/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── no/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── pl/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── pt/
│ │ │ │ ├── br/
│ │ │ │ │ ├── config
│ │ │ │ │ └── functions
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── ru/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ ├── sv/
│ │ │ │ ├── config
│ │ │ │ └── functions
│ │ │ └── tr/
│ │ │ ├── config
│ │ │ └── functions
│ │ └── PHPExcel.php
│ ├── Examples/
│ │ ├── .gitignore
│ │ ├── 01pharSimple.php
│ │ ├── 01simple-download-ods.php
│ │ ├── 01simple-download-pdf.php
│ │ ├── 01simple-download-xls.php
│ │ ├── 01simple-download-xlsx.php
│ │ ├── 01simple.php
│ │ ├── 01simplePCLZip.php
│ │ ├── 02types-xls.php
│ │ ├── 02types.php
│ │ ├── 03formulas.php
│ │ ├── 04printing.php
│ │ ├── 05featuredemo.inc.php
│ │ ├── 05featuredemo.php
│ │ ├── 06largescale-with-cellcaching-sqlite.php
│ │ ├── 06largescale-with-cellcaching-sqlite3.php
│ │ ├── 06largescale-with-cellcaching.php
│ │ ├── 06largescale-xls.php
│ │ ├── 06largescale.php
│ │ ├── 07reader.php
│ │ ├── 07readerPCLZip.php
│ │ ├── 08conditionalformatting.php
│ │ ├── 08conditionalformatting2.php
│ │ ├── 09pagebreaks.php
│ │ ├── 10autofilter-selection-1.php
│ │ ├── 10autofilter-selection-2.php
│ │ ├── 10autofilter-selection-display.php
│ │ ├── 10autofilter.php
│ │ ├── 11documentsecurity-xls.php
│ │ ├── 11documentsecurity.php
│ │ ├── 12cellProtection.php
│ │ ├── 13calculation.php
│ │ ├── 14excel5.php
│ │ ├── 15datavalidation-xls.php
│ │ ├── 15datavalidation.php
│ │ ├── 16csv.php
│ │ ├── 17html.php
│ │ ├── 18extendedcalculation.php
│ │ ├── 19namedrange.php
│ │ ├── 20readexcel5.php
│ │ ├── 21pdf.php
│ │ ├── 22heavilyformatted.php
│ │ ├── 23sharedstyles.php
│ │ ├── 24readfilter.php
│ │ ├── 25inmemoryimage.php
│ │ ├── 26utf8.php
│ │ ├── 27imagesexcel5.php
│ │ ├── 28iterator.php
│ │ ├── 29advancedvaluebinder.php
│ │ ├── 30template.php
│ │ ├── 31docproperties_write-xls.php
│ │ ├── 31docproperties_write.php
│ │ ├── 32chartreadwrite.php
│ │ ├── 33chartcreate-area.php
│ │ ├── 33chartcreate-bar-stacked.php
│ │ ├── 33chartcreate-bar.php
│ │ ├── 33chartcreate-column-2.php
│ │ ├── 33chartcreate-column.php
│ │ ├── 33chartcreate-composite.php
│ │ ├── 33chartcreate-line.php
│ │ ├── 33chartcreate-multiple-charts.php
│ │ ├── 33chartcreate-pie.php
│ │ ├── 33chartcreate-radar.php
│ │ ├── 33chartcreate-scatter.php
│ │ ├── 33chartcreate-stock.php
│ │ ├── 34chartupdate.php
│ │ ├── 35chartrender.php
│ │ ├── 36chartreadwriteHTML.php
│ │ ├── 36chartreadwritePDF.php
│ │ ├── 37page_layout_view.php
│ │ ├── 38cloneWorksheet.php
│ │ ├── 39dropdown.php
│ │ ├── 40duplicateStyle.php
│ │ ├── 41password.php
│ │ ├── 42richText.php
│ │ ├── Excel2003XMLReader.php
│ │ ├── Excel2003XMLTest.xml
│ │ ├── GnumericReader.php
│ │ ├── GnumericTest.gnumeric
│ │ ├── OOCalcReader.php
│ │ ├── OOCalcReaderPCLZip.php
│ │ ├── OOCalcTest.ods
│ │ ├── Quadratic.php
│ │ ├── Quadratic2.php
│ │ ├── SylkReader.php
│ │ ├── SylkTest.slk
│ │ ├── XMLReader.php
│ │ ├── XMLTest.xml
│ │ ├── data/
│ │ │ └── continents/
│ │ │ ├── Africa.txt
│ │ │ ├── Asia.txt
│ │ │ ├── Europe.txt
│ │ │ ├── North America.txt
│ │ │ ├── Oceania.txt
│ │ │ └── South America.txt
│ │ └── runall.php
│ ├── changelog.txt
│ ├── composer.json
│ ├── install.txt
│ ├── license.md
│ └── unitTests/
│ ├── Classes/
│ │ └── PHPExcel/
│ │ ├── AutoloaderTest.php
│ │ ├── Calculation/
│ │ │ ├── DateTimeTest.php
│ │ │ ├── EngineeringTest.php
│ │ │ ├── FinancialTest.php
│ │ │ ├── FunctionsTest.php
│ │ │ ├── LogicalTest.php
│ │ │ ├── LookupRefTest.php
│ │ │ ├── MathTrigTest.php
│ │ │ └── TextDataTest.php
│ │ ├── CalculationTest.php
│ │ ├── Cell/
│ │ │ ├── AdvancedValueBinderTest.php
│ │ │ ├── DataTypeTest.php
│ │ │ ├── DefaultValueBinderTest.php
│ │ │ └── HyperlinkTest.php
│ │ ├── CellTest.php
│ │ ├── Chart/
│ │ │ ├── DataSeriesValuesTest.php
│ │ │ ├── LayoutTest.php
│ │ │ └── LegendTest.php
│ │ ├── Reader/
│ │ │ └── XEEValidatorTest.php
│ │ ├── ReferenceHelperTest.php
│ │ ├── Shared/
│ │ │ ├── CodePageTest.php
│ │ │ ├── DateTest.php
│ │ │ ├── FileTest.php
│ │ │ ├── FontTest.php
│ │ │ ├── PasswordHasherTest.php
│ │ │ ├── StringTest.php
│ │ │ └── TimeZoneTest.php
│ │ ├── Style/
│ │ │ ├── ColorTest.php
│ │ │ └── NumberFormatTest.php
│ │ └── Worksheet/
│ │ ├── AutoFilter/
│ │ │ ├── Column/
│ │ │ │ └── RuleTest.php
│ │ │ └── ColumnTest.php
│ │ ├── AutoFilterTest.php
│ │ ├── CellCollectionTest.php
│ │ ├── ColumnCellIteratorTest.php
│ │ ├── ColumnIteratorTest.php
│ │ ├── RowCellIteratorTest.php
│ │ ├── RowIteratorTest.php
│ │ ├── WorksheetColumnTest.php
│ │ └── WorksheetRowTest.php
│ ├── bootstrap.php
│ ├── custom/
│ │ ├── Complex.php
│ │ └── complexAssert.php
│ ├── phpunit-cc.xml
│ ├── phpunit.xml
│ ├── rawTestData/
│ │ ├── Calculation/
│ │ │ ├── DateTime/
│ │ │ │ ├── DATE.data
│ │ │ │ ├── DATEDIF.data
│ │ │ │ ├── DATEVALUE.data
│ │ │ │ ├── DAY.data
│ │ │ │ ├── DAYS360.data
│ │ │ │ ├── EDATE.data
│ │ │ │ ├── EOMONTH.data
│ │ │ │ ├── HOUR.data
│ │ │ │ ├── MINUTE.data
│ │ │ │ ├── MONTH.data
│ │ │ │ ├── NETWORKDAYS.data
│ │ │ │ ├── SECOND.data
│ │ │ │ ├── TIME.data
│ │ │ │ ├── TIMEVALUE.data
│ │ │ │ ├── WEEKDAY.data
│ │ │ │ ├── WEEKNUM.data
│ │ │ │ ├── WORKDAY.data
│ │ │ │ ├── YEAR.data
│ │ │ │ └── YEARFRAC.data
│ │ │ ├── Engineering/
│ │ │ │ ├── BESSELI.data
│ │ │ │ ├── BESSELJ.data
│ │ │ │ ├── BESSELK.data
│ │ │ │ ├── BESSELY.data
│ │ │ │ ├── BIN2DEC.data
│ │ │ │ ├── BIN2HEX.data
│ │ │ │ ├── BIN2OCT.data
│ │ │ │ ├── COMPLEX.data
│ │ │ │ ├── CONVERTUOM.data
│ │ │ │ ├── DEC2BIN.data
│ │ │ │ ├── DEC2HEX.data
│ │ │ │ ├── DEC2OCT.data
│ │ │ │ ├── DELTA.data
│ │ │ │ ├── ERF.data
│ │ │ │ ├── ERFC.data
│ │ │ │ ├── GESTEP.data
│ │ │ │ ├── HEX2BIN.data
│ │ │ │ ├── HEX2DEC.data
│ │ │ │ ├── HEX2OCT.data
│ │ │ │ ├── IMABS.data
│ │ │ │ ├── IMAGINARY.data
│ │ │ │ ├── IMARGUMENT.data
│ │ │ │ ├── IMCONJUGATE.data
│ │ │ │ ├── IMCOS.data
│ │ │ │ ├── IMDIV.data
│ │ │ │ ├── IMEXP.data
│ │ │ │ ├── IMLN.data
│ │ │ │ ├── IMLOG10.data
│ │ │ │ ├── IMLOG2.data
│ │ │ │ ├── IMPOWER.data
│ │ │ │ ├── IMPRODUCT.data
│ │ │ │ ├── IMREAL.data
│ │ │ │ ├── IMSIN.data
│ │ │ │ ├── IMSQRT.data
│ │ │ │ ├── IMSUB.data
│ │ │ │ ├── IMSUM.data
│ │ │ │ ├── OCT2BIN.data
│ │ │ │ ├── OCT2DEC.data
│ │ │ │ └── OCT2HEX.data
│ │ │ ├── Financial/
│ │ │ │ ├── ACCRINT.data
│ │ │ │ ├── ACCRINTM.data
│ │ │ │ ├── AMORDEGRC.data
│ │ │ │ ├── AMORLINC.data
│ │ │ │ ├── COUPDAYBS.data
│ │ │ │ ├── COUPDAYS.data
│ │ │ │ ├── COUPDAYSNC.data
│ │ │ │ ├── COUPNCD.data
│ │ │ │ ├── COUPNUM.data
│ │ │ │ ├── COUPPCD.data
│ │ │ │ ├── CUMIPMT.data
│ │ │ │ ├── CUMPRINC.data
│ │ │ │ ├── DB.data
│ │ │ │ ├── DDB.data
│ │ │ │ ├── DISC.data
│ │ │ │ ├── DOLLARDE.data
│ │ │ │ ├── DOLLARFR.data
│ │ │ │ ├── EFFECT.data
│ │ │ │ ├── FV.data
│ │ │ │ ├── FVSCHEDULE.data
│ │ │ │ ├── INTRATE.data
│ │ │ │ ├── IPMT.data
│ │ │ │ ├── IRR.data
│ │ │ │ ├── ISPMT.data
│ │ │ │ ├── MIRR.data
│ │ │ │ ├── NOMINAL.data
│ │ │ │ ├── NPER.data
│ │ │ │ ├── NPV.data
│ │ │ │ ├── PRICE.data
│ │ │ │ ├── RATE.data
│ │ │ │ └── XIRR.data
│ │ │ ├── Functions/
│ │ │ │ ├── ERROR_TYPE.data
│ │ │ │ ├── IS_BLANK.data
│ │ │ │ ├── IS_ERR.data
│ │ │ │ ├── IS_ERROR.data
│ │ │ │ ├── IS_EVEN.data
│ │ │ │ ├── IS_LOGICAL.data
│ │ │ │ ├── IS_NA.data
│ │ │ │ ├── IS_NONTEXT.data
│ │ │ │ ├── IS_NUMBER.data
│ │ │ │ ├── IS_ODD.data
│ │ │ │ ├── IS_TEXT.data
│ │ │ │ ├── N.data
│ │ │ │ └── TYPE.data
│ │ │ ├── Logical/
│ │ │ │ ├── AND.data
│ │ │ │ ├── IF.data
│ │ │ │ ├── IFERROR.data
│ │ │ │ ├── NOT.data
│ │ │ │ └── OR.data
│ │ │ ├── LookupRef/
│ │ │ │ ├── HLOOKUP.data
│ │ │ │ └── VLOOKUP.data
│ │ │ ├── MathTrig/
│ │ │ │ ├── ATAN2.data
│ │ │ │ ├── CEILING.data
│ │ │ │ ├── COMBIN.data
│ │ │ │ ├── EVEN.data
│ │ │ │ ├── FACT.data
│ │ │ │ ├── FACTDOUBLE.data
│ │ │ │ ├── FLOOR.data
│ │ │ │ ├── GCD.data
│ │ │ │ ├── INT.data
│ │ │ │ ├── LCM.data
│ │ │ │ ├── LOG.data
│ │ │ │ ├── MDETERM.data
│ │ │ │ ├── MINVERSE.data
│ │ │ │ ├── MMULT.data
│ │ │ │ ├── MOD.data
│ │ │ │ ├── MROUND.data
│ │ │ │ ├── MULTINOMIAL.data
│ │ │ │ ├── ODD.data
│ │ │ │ ├── POWER.data
│ │ │ │ ├── PRODUCT.data
│ │ │ │ ├── QUOTIENT.data
│ │ │ │ ├── ROMAN.data
│ │ │ │ ├── ROUNDDOWN.data
│ │ │ │ ├── ROUNDUP.data
│ │ │ │ ├── SERIESSUM.data
│ │ │ │ ├── SIGN.data
│ │ │ │ ├── SQRTPI.data
│ │ │ │ ├── SUMSQ.data
│ │ │ │ └── TRUNC.data
│ │ │ └── TextData/
│ │ │ ├── CHAR.data
│ │ │ ├── CLEAN.data
│ │ │ ├── CODE.data
│ │ │ ├── CONCATENATE.data
│ │ │ ├── DOLLAR.data
│ │ │ ├── FIND.data
│ │ │ ├── FIXED.data
│ │ │ ├── LEFT.data
│ │ │ ├── LEN.data
│ │ │ ├── LOWER.data
│ │ │ ├── MID.data
│ │ │ ├── PROPER.data
│ │ │ ├── REPLACE.data
│ │ │ ├── RIGHT.data
│ │ │ ├── SEARCH.data
│ │ │ ├── SUBSTITUTE.data
│ │ │ ├── T.data
│ │ │ ├── TEXT.data
│ │ │ ├── TRIM.data
│ │ │ ├── UPPER.data
│ │ │ └── VALUE.data
│ │ ├── CalculationBinaryComparisonOperation.data
│ │ ├── Cell/
│ │ │ └── DefaultValueBinder.data
│ │ ├── CellAbsoluteCoordinate.data
│ │ ├── CellAbsoluteReference.data
│ │ ├── CellBuildRange.data
│ │ ├── CellCoordinates.data
│ │ ├── CellExtractAllCellReferencesInRange.data
│ │ ├── CellGetRangeBoundaries.data
│ │ ├── CellRangeBoundaries.data
│ │ ├── CellRangeDimension.data
│ │ ├── CellSplitRange.data
│ │ ├── ColumnIndex.data
│ │ ├── ColumnString.data
│ │ ├── Reader/
│ │ │ ├── XEETestInvalidUTF-16.xml
│ │ │ ├── XEETestInvalidUTF-16BE.xml
│ │ │ ├── XEETestInvalidUTF-16LE.xml
│ │ │ ├── XEETestInvalidUTF-8.xml
│ │ │ ├── XEETestValidUTF-16.xml
│ │ │ ├── XEETestValidUTF-16BE.xml
│ │ │ ├── XEETestValidUTF-16LE.xml
│ │ │ └── XEETestValidUTF-8.xml
│ │ ├── Shared/
│ │ │ ├── CentimeterSizeToPixels.data
│ │ │ ├── CodePage.data
│ │ │ ├── DateTimeExcelToPHP1900.data
│ │ │ ├── DateTimeExcelToPHP1900Timezone.data
│ │ │ ├── DateTimeExcelToPHP1904.data
│ │ │ ├── DateTimeFormatCodes.data
│ │ │ ├── DateTimeFormattedPHPToExcel1900.data
│ │ │ ├── DateTimePHPToExcel1900.data
│ │ │ ├── DateTimePHPToExcel1904.data
│ │ │ ├── FontSizeToPixels.data
│ │ │ ├── InchSizeToPixels.data
│ │ │ └── PasswordHashes.data
│ │ └── Style/
│ │ ├── ColorChangeBrightness.data
│ │ ├── ColorGetBlue.data
│ │ ├── ColorGetGreen.data
│ │ ├── ColorGetRed.data
│ │ └── NumberFormat.data
│ └── testDataFileIterator.php
└── wemall7.sql
================================================
FILE CONTENTS
================================================
================================================
FILE: .htaccess
================================================
开始处理钩子啦
'; echo '打印传给钩子的参数:
'; dump($param); echo '打印插件配置:
'; dump($this->getConfig()); // 这里可以通过钩子来调用钩子模板 return $this->fetch('info'); } } ================================================ FILE: addons/putong/demo/config.php ================================================ // +---------------------------------------------------------------------- return [ 'name' => 'demo', 'title' => 'demo', 'description' => 'demo插件', 'status' => 1, 'url' => true, 'author' => '清月曦', 'version' => '0.1' ]; ================================================ FILE: addons/putong/demo/controller/Admin.php ================================================ redirect('admin/public/login'); } if ($this->request->isPjax()){ $this->view->engine->layout(false); }else{ $this->view->engine->layout('./application/admin/view/layout_addons.html'); } } //活动列表 public function index() { $configList = AddonsPutongDemoConfig::with('file')->order('id desc')->paginate(); // dump($configList->toArray()); cookie("prevUrl", request()->url()); $this->assign('configList', $configList); return view('admin_index'); } //新增修改活动 public function add() { if (request()->isPost()){ $data = input('post.'); $data['status'] = input('?post.status') ? $data['status'] : 0; if(input('post.id')){ $result = AddonsPutongDemoConfig::update($data); }else{ $result = AddonsPutongDemoConfig::create($data); } if($result){ $this->success("保存成功", cookie("prevUrl")); }else{ $this->error('保存失败', cookie("prevUrl")); } }else{ $id = input('param.id'); if($id){ $config = AddonsPutongDemoConfig::with('file')->find($id); $this->assign('config', $config); } return view('admin_add'); } } //更新状态 public function update() { $data = input('param.'); $result = AddonsPutongDemoConfig::where('id','in',$data['id'])->update(['status' => $data['status']]); if($result){ $this->success("修改成功", cookie("prevUrl")); }else{ $this->error('修改失败', cookie("prevUrl")); } } } ================================================ FILE: addons/putong/demo/controller/Index.php ================================================ view->replace([ '__CSS__' => request()->root(true).'/addons/putong/demo/view/public/css', '__IMG__' => request()->root(true).'/addons/putong/demo/view/public/image', ]); } public function index() { return view('index_index'); } } ================================================ FILE: addons/putong/demo/data/install.sql ================================================ -- -- 表的结构 `addons_putong_demo_config` -- CREATE TABLE `addons_putong_demo_config` ( `id` int(10) unsigned NOT NULL, `name` text NOT NULL COMMENT '活动名称', `file_id` int(11) NOT NULL COMMENT '活动图片', `sub` text NOT NULL COMMENT '活动描述', `detail` text NOT NULL COMMENT '活动详情', `timerange` text NOT NULL COMMENT '活动时间', `remark` text NOT NULL COMMENT '备注', `status` int(1) NOT NULL DEFAULT '1' COMMENT '1:开启0:关闭', `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; -- -- 转存表中的数据 `addons_putong_demo_config` -- INSERT INTO `addons_putong_demo_config` (`id`, `name`, `file_id`, `sub`, `detail`, `timerange`, `remark`, `status`, `created_at`, `updated_at`) VALUES (1, '活动名称', 1, '这里是活动描述', '', '2017-05-01 12:00:00 --- 2017-05-25 11:59:59', '', 1, '2017-05-01 10:25:26', '2017-05-01 12:12:04'), (2, '活动2', 1, '活动描述', '111
', '2017-05-01 12:00:00 --- 2017-05-11 11:59:59', '', 1, '2017-05-01 10:37:35', '2017-05-01 12:11:06'); ================================================ FILE: addons/putong/demo/data/uninstall.sql ================================================ /* * @Author: qingyuexi * @Date: 2016-10-04 14:24:05 * @Last Modified by: qingyuexi * @Last Modified time: 2016-02-18 15:11:31 */ DROP TABLE IF EXISTS `addons_putong_demo_config`; ================================================ FILE: addons/putong/demo/info.html ================================================我是钩子模板
我是在钩子中生成的url
{:addon_url('putong://demo/admin/index', [], true, true)}
钩子处理结束啦
================================================ FILE: addons/putong/demo/model/AddonsPutongDemoConfig.php ================================================ hasOne('app\common\model\File','id','file_id'); } } ================================================ FILE: addons/putong/demo/view/admin_add.html ================================================| 活动编号 | 活动名称 | 活动图片 | 活动时间 | 活动状态 | 操作 |
|---|---|---|---|---|---|
| {$config.id} | {$config.name} |
{empty name="config.file_id"}
{else /}
|
{$config.timerange} | {eq name="config.status" value="1"} 已开启 {else/} 已关闭 {/eq} | 编辑 {eq name="config.status" value="0"} 开启 {/eq} {eq name="config.status" value="1"} 关闭 {/eq} |
{$item.title}
| 编号 | 名称 | 状态 | 备注 | 操作 | |
|---|---|---|---|---|---|
| {$category.id} | {$category.name} | {eq name="category.status" value="1"} 开启 {else/} 关闭 {/eq} | {$category.remark} | 编辑 {eq name="category.status" value="0"} 开启 {else} 关闭 {/eq} | |
| {$category1.id} | |─{$category1.name} | {eq name="category1.status" value="1"} 开启 {else/} 关闭 {/eq} | {$category1.remark} | 编辑 {eq name="category1.status" value="0"} 开启 {else} 关闭 {/eq} |
| 编号 | 标题 | 分类 | 作者 | 状态 | 备注 | 时间 | 操作 | |
|---|---|---|---|---|---|---|---|---|
| {$article.id} | 《{$article.title}》 | {$article.category.name} | {$article.author} | {eq name="article.status" value="1"} 开启 {else/} 关闭 {/eq} | {$article.remark} | {$article.created_at} | 编辑 {eq name="article.status" value="0"} 开启 {else} 关闭 {/eq} |
| 编号 | 用户名 | 用户组 | 手机号 | 邮箱 | 状态 | 备注 | 最后登录时间 | 操作 |
|---|---|---|---|---|---|---|---|---|
| {$user.id} | {$user.username} | {$user.group.title} | {$user.mobile} | {$user.email} | {eq name="user.status" value="1"} 启用 {else/} 禁用 {/eq} | {$user.remark} | {$user.last_login_time} | 修改 {gt name="user.id" value="1"} {eq name="user.status" value="0"} 开启 {else} 关闭 {/eq} 删除 {/gt} |
打开后台系统中系统设置项下面的微信设置,找到微信token项以及它下面的那串url地址(注:token类似于密码,token可以自己修改)。
图1 后台token对应位置
打开微信官方公众后台(https://mp.weixin.qq.com),登陆自己的公众号,进入到开发者模式模块,启用开发者模式,填写URL和Token两项(就是图1中的相关值)
图2 配置微信后台
第二步:对接appid和AppSecret及微信支付参数在微信公众后台可看到该公众号的appid和AppSecret,把这两项复制到后台系统中的对应位置。 微信支付参数设置同上述,将相关信息复制进对应位置。
图3 系统后台对应位置
图4 微信appid和AppSecret
第三步:设置自定义菜单建议设置项:
商城首页:http://__ROOT__/app/index/index
第四步:设置首次关注回复图片或文字
图5 系统后台对应微信设置
若需设置首次关注的图片,开启对应功能并上传对应图片。如果没开启,系统会去查询是否设置首次关注对应的描述,如果仍未设置,则不会有系统首次关注的回复。
第五步:可设置qq客服
图5 系统后台对应设置
THINKPHP版本:{$Think.THINK_VERSION}
服务器IP:{$Think.server.SERVER_ADDR}
服务器系统:
PHP版本:
当前时间:
官网网址:http://www.wemallshop.com
支持的变量:
验证码:$code
模版内容举例:您好,欢迎您注册wemallshop微信商城,您的验证码是:$code
支持的变量:
验证码:${code}
模版内容举例:您的本次验证码${code},10分钟内输入有效,感谢使用平台
| 编号 | 用户名 | 账户 | 积分 | 等级 | 状态 | 备注 | 注册时间 | 操作 | |
|---|---|---|---|---|---|---|---|---|---|
| {$user.id} |
{empty name="user.avater"}
{else /}
|
{$user.money} | {$user.score} | {$user.level} | {eq name="user.status" value="1"} 启用 {else/} 禁用 {/eq} | {$user.remark} | {$user.created_at} | 修改 {gt name="user.id" value="1"} {eq name="user.status" value="0"} 开启 {else} 关闭 {/eq} {/gt} |
微信转接客服,转接到配置客服,不设置将随机转接。详细可见官方说明文档http://dkf.qq.com/faq-1_1.html。
关键词:qqkf 设置qq客服,备注设置qq号
| ID | PID(上级) | 菜单名称 | 类型 | URL | 关键词 | 排序 | 备注 | 操作 | |
|---|---|---|---|---|---|---|---|---|---|
| {$menu.id} | {$menu.pid} | {$menu.name} | {eq name="menu.type|default=''" value="view"}链接{/eq} {eq name="menu.type|default=''" value="click"}模拟关键字{/eq} | {eq name="menu.type|default=''" value="view"} {$menu.url} {/eq} | {eq name="menu.type|default=''" value="click"} {$menu.key} {/eq} | {$menu.rank} | {$menu.remark} | 修改 删除 | |
| {$menu1.id} | {$menu1.pid} | |─{$menu1.name} | {eq name="menu1.type|default=''" value="view"}链接{/eq} {eq name="menu1.type|default=''" value="click"}模拟关键字{/eq} | {eq name="menu1.type|default=''" value="view"} {$menu1.url} {/eq} | {eq name="menu1.type|default=''" value="click"} {$menu1.key} {/eq} | {$menu1.rank} | {$menu1.remark} | 修改 删除 |
关键词:subscribe 设置关注自动回复
| ID | 类型 | 标题 | 描述 | 图片 | 链接 | 关键词 | 备注 | 操作 | |
|---|---|---|---|---|---|---|---|---|---|
| {$replylist.id} | {eq name="replylist.type|default=''" value="news"}图文{/eq} {eq name="replylist.type|default=''" value="text"}文本{/eq} | {$replylist.title|substr=0,12} | {$replylist.description|substr=0,12} |
{empty name="replylist.file_id"}
{else /}
|
{$replylist.url} | {$replylist.key} | {$replylist.remark} | 修改删除 |
微信模板消息请设置所在行业为IT科技/互联网|电子商务,消费品/消费品
无法自动添加的用户请在微信后台手动添加设置
版权完全遵循MIT开源协议,以下为基于 WeMall 的补充协议。
为了保证您和他人的利益请遵循以下几条使用规则:
1、您可以在完全遵循本协议的情况下,将 WeMall 用于商业用途,而不必支付使用费用,但我们也不承诺会对非赞助用户提供任何形式的技术支持;
2、使用 WeMall 您可以不用在明显页面保留程序版权信息,但程序最终版权仍归原作者所有,为了程序能持续发展建议您在网站底部注明:powered by WeMall,另外我们可能不会对未保留版权信息的用户提供任何无偿的技术支持;
3、非授权用户后台版权与程序内版权信息不可以去除,这是我们唯一可以保护自己权益的地方;
4、您可以免费使用 WeMall ,修改源代码或界面风格以适应您的实际要求,但是禁止对软件进行改名发布,禁止以任何形式对 WeMall 形成竞争;
5、您可以对 WeMall 进行二次开发,但禁止重新分发任何在 WeMall 的整体或任何部分基础上发展的派生版本、修改版本或第三方版本,可以自己分配使用版权请参考第四条;
6、如果您在您的程序如引用WeMall的功能或者设计,请在明显的地方如官网等地方加入本设计或功能采用 WeMall ;
7、自您开始使用 WeMall 时本协议已自动生效;
8、如果您未能遵守本协议的条款3、条款4、条款5、条款6,您的免费使用授权将被终止,并将依法承担相应法律责任。