4 Commits

62 changed files with 11213 additions and 492 deletions

9
UPDATE.md Normal file
View File

@@ -0,0 +1,9 @@
## PicHome beta1.1 更新说明
### 1.导入逻辑优化,修复库导入文件和实际文件严重不符问题,支持合并库和导入库等文件库的导入,以及导入效率优化
### 2.修复库设置中“分类(文件夹)”筛选项丢失的问题
### 3.在站点设置=>界面设置内增加“默认打开文件窗口方式”设置,支持文件在当前窗口打开,详情页显示和功能优化
### 4.其他已知bug修复

View File

@@ -8,7 +8,7 @@ d3af6beed6f4c5941d8474d8c30de6ab *admin/login/images/bg_login.gif
c3ed53246c61a74dca37236067d3ba56 *admin/login/login.php c3ed53246c61a74dca37236067d3ba56 *admin/login/login.php
2ccb26dbc4099faa5579c6c0d5727623 *admin/login/updatesession.php 2ccb26dbc4099faa5579c6c0d5727623 *admin/login/updatesession.php
cd5af5197f085d31563c357bf2b3f933 *admin/scripts/admin.js cd5af5197f085d31563c357bf2b3f933 *admin/scripts/admin.js
2eead28813ab73fc1f0c84d01e6ba64a *admin/system/common.php a6964db4b95a3d7fc276d190f92a9542 *admin/system/common.php
a60c2224558c2b82fbc7c5298df8aa5f *admin/system/cron.php a60c2224558c2b82fbc7c5298df8aa5f *admin/system/cron.php
a3342df727581964bd15ba05ef4b74db *admin/system/database.php a3342df727581964bd15ba05ef4b74db *admin/system/database.php
9a7dd5d9cca593615256b921abcc0ab6 *admin/system/dist/css/chunk-2b4f90f7.519dec70.css 9a7dd5d9cca593615256b921abcc0ab6 *admin/system/dist/css/chunk-2b4f90f7.519dec70.css
@@ -90,7 +90,7 @@ abe78a94ae6f33d188e25d7047f5b0f2 *admin/systemlog/template/admin.htm
455bd79582a8bea73faec69555b69eb3 *admin/systemlog/uninstall.php 455bd79582a8bea73faec69555b69eb3 *admin/systemlog/uninstall.php
5bb95d9914284024bfbde8e8cb60286f *admin/template/header_left.htm 5bb95d9914284024bfbde8e8cb60286f *admin/template/header_left.htm
853b016ecacafd2eccc8f35a5ab8b276 *admin.php 853b016ecacafd2eccc8f35a5ab8b276 *admin.php
af8d986a5c78a4d104938291c6e541ca *avatar.php 5e5eb249d06b26d6c26cc8fb30b78892 *avatar.php
d0029be05cb9f585dcbcc8dd34817b81 *config/config_default.php d0029be05cb9f585dcbcc8dd34817b81 *config/config_default.php
a316f263465d0751621451addf43c399 *config/config_frame.php a316f263465d0751621451addf43c399 *config/config_frame.php
77fc6ae224ef71e20a515569babe71db *core/adminstart.php 77fc6ae224ef71e20a515569babe71db *core/adminstart.php
@@ -239,7 +239,7 @@ d5b0e7dc291a731a5c184d97baecf2df *core/class/table/table_user_profile_setting.ph
bc2e189cfaacbdb84ddceb3a0abdcf92 *core/class/table/table_user_verify_info.php bc2e189cfaacbdb84ddceb3a0abdcf92 *core/class/table/table_user_verify_info.php
692cda4c6ad17e87e1edefb7251d0116 *core/class/table/table_user_wechat.php 692cda4c6ad17e87e1edefb7251d0116 *core/class/table/table_user_wechat.php
ca64f852f9c9442d65fa30ed279c6d6c *core/coreBase.php ca64f852f9c9442d65fa30ed279c6d6c *core/coreBase.php
f869d55a8b656f7e51ae88b928b91e6e *core/core_version.php b335e80b81831d8e322f43e404124d1d *core/core_version.php
d90d23b8deb20cef2c43e66725ec2813 *core/cron/cron_cache_cleanup_week.php d90d23b8deb20cef2c43e66725ec2813 *core/cron/cron_cache_cleanup_week.php
d6f619ef3f14590fc5abc6ce76954d25 *core/cron/cron_cache_pichome_searchhot.php d6f619ef3f14590fc5abc6ce76954d25 *core/cron/cron_cache_pichome_searchhot.php
09bf107dfc58f0424b0245834d221a42 *core/cron/cron_clean_notification_month.php 09bf107dfc58f0424b0245834d221a42 *core/cron/cron_clean_notification_month.php
@@ -255,9 +255,9 @@ ec9cb962601e7d0d092e7b6e09ba8dc2 *core/function/cache/cache_profilesetting.php
f0e6d9900f7db48051ee4fdea06c8889 *core/function/cache/cache_setting.php f0e6d9900f7db48051ee4fdea06c8889 *core/function/cache/cache_setting.php
cc7c6903e4401fdb29424890e2084a91 *core/function/cache/cache_usergroups.php cc7c6903e4401fdb29424890e2084a91 *core/function/cache/cache_usergroups.php
2ce5a4d7e34bca8432b5885b14b25574 *core/function/cache/cache_userstats.php 2ce5a4d7e34bca8432b5885b14b25574 *core/function/cache/cache_userstats.php
e3e91bb4a446a73d1744ca195e39066a *core/function/function_cache.php a4656352d5a04b447ae9ffa64e2474e7 *core/function/function_cache.php
c006c70d2a5b50212a02a31eff50c71d *core/function/function_code.php c006c70d2a5b50212a02a31eff50c71d *core/function/function_code.php
3727ad4836f9dbdacb0d6ce0f44ee443 *core/function/function_core.php 86342eb3ddd47606c7e1ced02f4cc54e *core/function/function_core.php
52776d2eac0619ddad1ca9762781a4b0 *core/function/function_filesock.php 52776d2eac0619ddad1ca9762781a4b0 *core/function/function_filesock.php
92ebd7558fd1c9291179a91fb3c2f880 *core/function/function_mail.php 92ebd7558fd1c9291179a91fb3c2f880 *core/function/function_mail.php
aff9e34d19a59c6c356696f8f2540618 *core/function/function_message.php aff9e34d19a59c6c356696f8f2540618 *core/function/function_message.php
@@ -1039,10 +1039,10 @@ eba5f5cecbb2a1cf2064e55c8c0de177 *dzz/pdf/web/locale/vi/viewer.properties
badeea57fda90d27e54a9f9488ac4c43 *dzz/pdf/web/viewer.html badeea57fda90d27e54a9f9488ac4c43 *dzz/pdf/web/viewer.html
6cf3b8dd7fae022af726634be28de37d *dzz/pdf/web/viewer.js 6cf3b8dd7fae022af726634be28de37d *dzz/pdf/web/viewer.js
9d8f7b8df2cf3dffa23febb3582928d4 *dzz/pdf/web/viewer.js.map 9d8f7b8df2cf3dffa23febb3582928d4 *dzz/pdf/web/viewer.js.map
8659ad92dfd558463783565f41e2267b *dzz/pichome/admin.php 9702eb58e8b17ea4d968e2f0f6a7d14e *dzz/pichome/admin.php
7534bf9c73c427bffedb2ea88a853d12 *dzz/pichome/ajax.php 8d4800ca355e9f6a54e78f5349717829 *dzz/pichome/ajax.php
da38e97091f039e98f3cff60351dec3c *dzz/pichome/checkexport.php 0ca8de11ebaf13e2a461dc37a5182f65 *dzz/pichome/checkexport.php
088006485445db81b3e5431e1a60efc6 *dzz/pichome/class/class_eagleexport.php fc77d297675059d228b072772c97071b *dzz/pichome/class/class_eagleexport.php
6293eb9bd5b473c7f178be5d6534341c *dzz/pichome/config/config.php 6293eb9bd5b473c7f178be5d6534341c *dzz/pichome/config/config.php
29640dfed0df1100d9c8e4d819b4c593 *dzz/pichome/css/admin.css 29640dfed0df1100d9c8e4d819b4c593 *dzz/pichome/css/admin.css
07f01151181178c663d669622ea927f3 *dzz/pichome/css/common.css 07f01151181178c663d669622ea927f3 *dzz/pichome/css/common.css
@@ -1056,6 +1056,12 @@ f09b1c7476e28ad67f1c2f2f314230a0 *dzz/pichome/css/fonts/remixicon.symbol.svg
881fbc46361e0c0e5f003c159b2f3005 *dzz/pichome/css/fonts/remixicon.woff 881fbc46361e0c0e5f003c159b2f3005 *dzz/pichome/css/fonts/remixicon.woff
9915fef980fa539085da55b84dfde760 *dzz/pichome/css/fonts/remixicon.woff2 9915fef980fa539085da55b84dfde760 *dzz/pichome/css/fonts/remixicon.woff2
beba9d9c0e6f710c90145d9e3cbbab2d *dzz/pichome/css/index.css beba9d9c0e6f710c90145d9e3cbbab2d *dzz/pichome/css/index.css
29640dfed0df1100d9c8e4d819b4c593 *dzz/pichome/css/pc/admin.css
8106960af48c6ce411b168662f3a4386 *dzz/pichome/css/pc/common.css
e3123a0f6930b3d0a84387d3102c704d *dzz/pichome/css/pc/details.css
73f2dc27a3b58222ac1c0cfebb8bd4cb *dzz/pichome/css/pc/index.css
69c8a20f13ee8eb40d35ddd497d35fd3 *dzz/pichome/css/pc/xuanzhuan/iconfont.ttf
b006647cb9c39a657d354fcf0bdf88bf *dzz/pichome/css/pc/xuanzhuan/index.css
48994b9f88c49cdb67a88116380cfb95 *dzz/pichome/css/theme/black/index.css 48994b9f88c49cdb67a88116380cfb95 *dzz/pichome/css/theme/black/index.css
3d037ab39fd205fc01dcb0644dc73594 *dzz/pichome/css/theme/black/root.css 3d037ab39fd205fc01dcb0644dc73594 *dzz/pichome/css/theme/black/root.css
247be4f622b714c5745e69ebb932e197 *dzz/pichome/css/theme/darkgrey/index.css 247be4f622b714c5745e69ebb932e197 *dzz/pichome/css/theme/darkgrey/index.css
@@ -1070,10 +1076,10 @@ dce825b1ca6c3b1c18adc856618b8602 *dzz/pichome/css/theme/lightgrey/index.css
2566cbfc860d4bc3c12812d9d35011ef *dzz/pichome/css/theme/purple/root.css 2566cbfc860d4bc3c12812d9d35011ef *dzz/pichome/css/theme/purple/root.css
4705cbd2d8a842635d69d2ace637212e *dzz/pichome/css/theme/white/index.css 4705cbd2d8a842635d69d2ace637212e *dzz/pichome/css/theme/white/index.css
b07e0746971bb7c6dfc1d88ed2bdc4b2 *dzz/pichome/css/theme/white/root.css b07e0746971bb7c6dfc1d88ed2bdc4b2 *dzz/pichome/css/theme/white/root.css
b8ca416041036fcaa26a718343b671cc *dzz/pichome/details.php a735516da3ba332a53a8bfad48610aea *dzz/pichome/details.php
8cbb24ea1bf37279c62c847f69984107 *dzz/pichome/download.php 8cbb24ea1bf37279c62c847f69984107 *dzz/pichome/download.php
e245c8b1f860c8252eade7f3dec51879 *dzz/pichome/dzz_app_pichome.xml e245c8b1f860c8252eade7f3dec51879 *dzz/pichome/dzz_app_pichome.xml
149c4134105afa138de62c31034c38c6 *dzz/pichome/exportfile.php 15b6fca48208432cea1930bb57e0db5a *dzz/pichome/exportfile.php
06880b4a650311dd50933bf9a5aece2a *dzz/pichome/filelist.php 06880b4a650311dd50933bf9a5aece2a *dzz/pichome/filelist.php
ae3317853c4561197a9a649000597886 *dzz/pichome/function/function_common.php ae3317853c4561197a9a649000597886 *dzz/pichome/function/function_common.php
d211a97399d52fea48f94a45a06648d1 *dzz/pichome/image/eaglefile.webp d211a97399d52fea48f94a45a06648d1 *dzz/pichome/image/eaglefile.webp
@@ -1084,13 +1090,21 @@ d211a97399d52fea48f94a45a06648d1 *dzz/pichome/image/eaglefile.webp
08a26df5cbee8f21dbac8d646d1da218 *dzz/pichome/image/nodata.svg 08a26df5cbee8f21dbac8d646d1da218 *dzz/pichome/image/nodata.svg
f308fd14dbe2e06349ef366d6f9aa2c7 *dzz/pichome/image/palette.png f308fd14dbe2e06349ef366d6f9aa2c7 *dzz/pichome/image/palette.png
efdb2935803c55f32f283c48abed9dbd *dzz/pichome/image/phlogo.png efdb2935803c55f32f283c48abed9dbd *dzz/pichome/image/phlogo.png
6c9bc6ff1ea0bb36eb156ae681741ee5 *dzz/pichome/index.php fcb60dfc7f223068eac9d35e8028617c *dzz/pichome/index.php
c9b191574ccc8ab6c8ff631302f10561 *dzz/pichome/install.php c9b191574ccc8ab6c8ff631302f10561 *dzz/pichome/install.php
29b8b6254aaaa263cbb0fe8272f05a59 *dzz/pichome/js/audioPlay.js 29b8b6254aaaa263cbb0fe8272f05a59 *dzz/pichome/js/audioPlay.js
a088950fc4bf4348d87cda978e5ded97 *dzz/pichome/js/common.js a088950fc4bf4348d87cda978e5ded97 *dzz/pichome/js/common.js
b7a95d9f617863cf515a43e7b83978c5 *dzz/pichome/js/headerMethods.js b7a95d9f617863cf515a43e7b83978c5 *dzz/pichome/js/headerMethods.js
d752d1878252e486cc0244887cfadbae *dzz/pichome/js/headerWatch.js d752d1878252e486cc0244887cfadbae *dzz/pichome/js/headerWatch.js
d5843dbdc71ff8014a5eafd346a262da *dzz/pichome/js/jquery.mousewheel.min.js d5843dbdc71ff8014a5eafd346a262da *dzz/pichome/js/jquery.mousewheel.min.js
29b8b6254aaaa263cbb0fe8272f05a59 *dzz/pichome/js/pc/audioPlay.js
cda62b1eb2f8a116c0016cd3a603e014 *dzz/pichome/js/pc/headerMethods.js
d752d1878252e486cc0244887cfadbae *dzz/pichome/js/pc/headerWatch.js
d5843dbdc71ff8014a5eafd346a262da *dzz/pichome/js/pc/jquery.mousewheel.min.js
72dbef2b0dd2644f4fb4e72ddbb7013b *dzz/pichome/js/pc/plug/DomResize.js
8a788a8d0bfb2d3c1988bddb4aef4b4b *dzz/pichome/js/pc/plug/element-ui.js
66fe9527aec8d8b68e3bc5036ea8f7f9 *dzz/pichome/js/pc/plug/sortable.min.js
7fe276a3e0d5ed3a6f2c84a9440c4add *dzz/pichome/js/pc/plug/wavesurfer.js
72dbef2b0dd2644f4fb4e72ddbb7013b *dzz/pichome/js/plug/DomResize.js 72dbef2b0dd2644f4fb4e72ddbb7013b *dzz/pichome/js/plug/DomResize.js
8a788a8d0bfb2d3c1988bddb4aef4b4b *dzz/pichome/js/plug/element-ui.js 8a788a8d0bfb2d3c1988bddb4aef4b4b *dzz/pichome/js/plug/element-ui.js
dc3ea9ad3b70dda4a5250f14e9f2a36a *dzz/pichome/js/plug/jquery.row-grid.js dc3ea9ad3b70dda4a5250f14e9f2a36a *dzz/pichome/js/plug/jquery.row-grid.js
@@ -1103,32 +1117,32 @@ b21b8531847604ab5f2f5caaef51ba31 *dzz/pichome/js/vue/vue.js
69764bf35375a54256412f3c748b312d *dzz/pichome/js/waterfall.js 69764bf35375a54256412f3c748b312d *dzz/pichome/js/waterfall.js
c24f19d7061cdf5bae41e5e9b9f5600c *dzz/pichome/language/en-US/lang.php c24f19d7061cdf5bae41e5e9b9f5600c *dzz/pichome/language/en-US/lang.php
8a3e6ab24d873202b96c3acd9c1b0d2b *dzz/pichome/language/zh-CN/lang.php 8a3e6ab24d873202b96c3acd9c1b0d2b *dzz/pichome/language/zh-CN/lang.php
7c10bb4a15f7522989848c5138174c05 *dzz/pichome/library.php 2d494f5deef41265f95908bd33a902dd *dzz/pichome/library.php
ccef8b340c90fc0061c6dd645fecc8df *dzz/pichome/setting.php ccef8b340c90fc0061c6dd645fecc8df *dzz/pichome/setting.php
3a9db7def73d093f8f30ccae5577f18f *dzz/pichome/share.php cecf65f580b3a209dcf80cd8560ec6bb *dzz/pichome/share.php
37c8861eb4f7f8c94608935cd9c41544 *dzz/pichome/template/components/headerAdmin/index.htm 1b2b3b2922d7e02373b1b9862c7a5ef7 *dzz/pichome/template/pc/components/headerAdmin/index.htm
59434ecdc8ec0b282eec428cc5806ff5 *dzz/pichome/template/components/headerindex/index.htm 75ece58d5e173d62a72275aefc2ea7ec *dzz/pichome/template/pc/components/headerindex/index.htm
5518c2bc4f44f3636e63d6a3ebe6e508 *dzz/pichome/template/components/headerindex/screen.htm 5518c2bc4f44f3636e63d6a3ebe6e508 *dzz/pichome/template/pc/components/headerindex/screen.htm
105d244408ea6a9780677c28b376ea6c *dzz/pichome/template/components/headerindex/searchScreen.htm 105d244408ea6a9780677c28b376ea6c *dzz/pichome/template/pc/components/headerindex/searchScreen.htm
47702c24d36ca5b820de1029b4fdf138 *dzz/pichome/template/components/index/images.htm fc0a8c88bf39abe81695ab58de8d6a9f *dzz/pichome/template/pc/components/index/images.htm
986115087ed076c2e624bd94c0ec56f0 *dzz/pichome/template/components/index/indexVuex.htm 0b479ca8b7c107cd66492c3b5e9a7bce *dzz/pichome/template/pc/components/index/indexVuex.htm
c2953f2cc75684f3a777148ad8c5fce9 *dzz/pichome/template/components/index/screen.htm c2953f2cc75684f3a777148ad8c5fce9 *dzz/pichome/template/pc/components/index/screen.htm
8f54b82e6d2f9cb4d7ba43d09a39f088 *dzz/pichome/template/frame/footer_simple.htm 8f54b82e6d2f9cb4d7ba43d09a39f088 *dzz/pichome/template/pc/frame/footer_simple.htm
ae502b90b2b31175892efe56867bc2e7 *dzz/pichome/template/frame/header_simple_end.htm ae502b90b2b31175892efe56867bc2e7 *dzz/pichome/template/pc/frame/header_simple_end.htm
891bc77b1e8e054dcbcbc5bcdd317592 *dzz/pichome/template/frame/header_simple_start.htm 08154101159fde8eb21fe522cc937e4c *dzz/pichome/template/pc/frame/header_simple_start.htm
8f6971c0247b193ab47c3c5ddb6d0266 *dzz/pichome/template/page/adminBasic.htm 6b71a79c84f6349ee7756391c94dd889 *dzz/pichome/template/pc/page/adminBasic.htm
11fd257b9af5db87fcf2b70568a4310d *dzz/pichome/template/page/adminFileterset.htm cc96dd261e08e02dc52f76cd93f2b606 *dzz/pichome/template/pc/page/adminFileterset.htm
be4f1925a5cbd80416e8a545621132c2 *dzz/pichome/template/page/adminLoginpage.htm 109683e420385c288d86639466b6a1d8 *dzz/pichome/template/pc/page/adminLoginpage.htm
9c164499d8cf7719b80e969fd6def67d *dzz/pichome/template/page/adminPagesetting.htm e066dec8e0303fabf007c8a74eb4625e *dzz/pichome/template/pc/page/adminPagesetting.htm
c77af0fd0053dfaa96f4db838ae6adf3 *dzz/pichome/template/page/adminPersonal.htm 0920466b526ad2b5b6e20c8b2acead53 *dzz/pichome/template/pc/page/adminPersonal.htm
f0e94bac24224daf8e6957b01aea7fd6 *dzz/pichome/template/page/details.htm ad552124940206341e350aceaedc0e16 *dzz/pichome/template/pc/page/details.htm
4e61b93f59ad1885f03a5247022bbefd *dzz/pichome/template/page/index.htm ed7a4b32a51a8fb8dd3f5760d76d493a *dzz/pichome/template/pc/page/index.htm
cf70aadbb56bd4fe27d1c1b15a75ca90 *dzz/pichome/template/page/library.htm 4cc95ff5505efa436d8cce73dd456cfe *dzz/pichome/template/pc/page/library.htm
016721dd93f715c67bd1cd66cb3ca679 *dzz/pichome/template/page/share.htm 953101b30d9f9f7e303a7891ade351f3 *dzz/pichome/template/pc/page/share.htm
3cd79761b99168c3f9faf607183df134 *dzz/pichome/uninstall.php 3cd79761b99168c3f9faf607183df134 *dzz/pichome/uninstall.php
b5221437a0c978e0caf63f2278759934 *dzz/pichome/uninstall_real.php b5221437a0c978e0caf63f2278759934 *dzz/pichome/uninstall_real.php
efbd03954c4e8df90891d9d6f338619f *dzz/pichome/upload.php efbd03954c4e8df90891d9d6f338619f *dzz/pichome/upload.php
50001a358e0b90b6f1e4b2414c0f2d44 *dzz/pichome/user.php 91a4166d72ff4c926e1f5a73c804466c *dzz/pichome/user.php
3d037ab39fd205fc01dcb0644dc73594 *dzz/textviewer/css/theme/black/root.css 3d037ab39fd205fc01dcb0644dc73594 *dzz/textviewer/css/theme/black/root.css
e19d97f977fa3d2316168bbe8e4101e5 *dzz/textviewer/css/theme/darkgrey/root.css e19d97f977fa3d2316168bbe8e4101e5 *dzz/textviewer/css/theme/darkgrey/root.css
732389ded34cb9c52dd88271f1345af9 *dzz/textviewer/css/theme/fonts/element-icons.ttf 732389ded34cb9c52dd88271f1345af9 *dzz/textviewer/css/theme/fonts/element-icons.ttf
@@ -1155,8 +1169,8 @@ a875bc67c5d7db47c918a3cfe5318a57 *dzz/xgplayer/template/main.htm
5cb9422375b907e05eb6b7dc36fcd895 *favicon.ico 5cb9422375b907e05eb6b7dc36fcd895 *favicon.ico
8e55bdb192a3aefe82e03292527819ca *htaccess_default.txt 8e55bdb192a3aefe82e03292527819ca *htaccess_default.txt
55d39f5cf3916ab6a9336d95c671ab53 *index.php 55d39f5cf3916ab6a9336d95c671ab53 *index.php
ede086aa34596b826b2ccf6d32a89303 *install/data/install.sql 149ca09a781fa0fd9ee90ceb0a409006 *install/data/install.sql
67df3c5463e4b6826d4cfc8cc5d64b82 *install/data/install_data.sql 6add5cf682c64601c21a727302a46431 *install/data/install_data.sql
feabf4e4c8e20dc73548dfd6ba8400f9 *install/images/error.png feabf4e4c8e20dc73548dfd6ba8400f9 *install/images/error.png
fc25acefcabc066437d4b27550387954 *install/images/logo.png fc25acefcabc066437d4b27550387954 *install/images/logo.png
2ba93e93e0fbdfeb91e22f6d3bf8b6ca *install/images/logo.svg 2ba93e93e0fbdfeb91e22f6d3bf8b6ca *install/images/logo.svg
@@ -1170,6 +1184,7 @@ a987af86766c27c565794ffa189cf664 *install/include/install_mysql.php
d7d7fef7dc366413340be8ad3da41709 *install/include/install_var.php d7d7fef7dc366413340be8ad3da41709 *install/include/install_var.php
5c2f5c9042a9e66bc8f5af0b638cf1de *install/index.php 5c2f5c9042a9e66bc8f5af0b638cf1de *install/index.php
8eca1f167c0b805d9fda97804379a962 *install/language/zh-cn/lang.php 8eca1f167c0b805d9fda97804379a962 *install/language/zh-cn/lang.php
9df77036c7ebea501feaa23661852767 *install/update.php
5aefe69b1ba16fe8a6f79c2156f8f281 *misc/ajax.php 5aefe69b1ba16fe8a6f79c2156f8f281 *misc/ajax.php
66ee773a4c2e373da92f48f81930cf3f *misc/classes/init.php 66ee773a4c2e373da92f48f81930cf3f *misc/classes/init.php
f656adb0c1b2699a4d8c613f2b9dacab *misc/pichomeexport.php f656adb0c1b2699a4d8c613f2b9dacab *misc/pichomeexport.php
@@ -1184,7 +1199,6 @@ ff6abf5b6ce1f3256d2aad8fdd24f646 *misc/setunrun.php
d365238875a6457eaea991f1e7913309 *misc/template/misc_seluser.htm d365238875a6457eaea991f1e7913309 *misc/template/misc_seluser.htm
89c90d955c3bfda0f63dce1449021924 *misc/upgrade.php 89c90d955c3bfda0f63dce1449021924 *misc/upgrade.php
170b9709fad7d1a8479d03c5c5913bae *misc.php 170b9709fad7d1a8479d03c5c5913bae *misc.php
6b24f900b7ee6c424f47304a9cf098de *pichome_release.zip
eb11382b6241b03f598530206c21e0a1 *short.php eb11382b6241b03f598530206c21e0a1 *short.php
a4167122758dd580e234395e98987bcb *static/bootstrap/css/bootstrap-slider.css a4167122758dd580e234395e98987bcb *static/bootstrap/css/bootstrap-slider.css
e5f6fb08f469dc836cb3609e23694b3a *static/bootstrap/css/bootstrap-theme.css e5f6fb08f469dc836cb3609e23694b3a *static/bootstrap/css/bootstrap-theme.css

View File

@@ -113,7 +113,7 @@ if($operation == 'getApp'){//获取当前用户应用
left join %t s on s.uid = u.uid and s.skey=%swhere u.uid =%d", left join %t s on s.uid = u.uid and s.skey=%swhere u.uid =%d",
array('user','user_setting','headerColor',$uid)); array('user','user_setting','headerColor',$uid));
if($udata['avatarstatus'] == 1){ if($udata['avatarstatus'] == 1){
$userData['icon'] = 'avatar.php?uid='.$udata['uid']; $userData['icon'] = 'avatar.php?uid='.$udata['uid'].'&random='.VERHASH;
}elseif($udata['svalue']){ }elseif($udata['svalue']){
$userData['firstword'] = strtoupper(new_strsubstr($udata['username'],1,'')); $userData['firstword'] = strtoupper(new_strsubstr($udata['username'],1,''));
$userData['headerColor'] = $udata['svalue']; $userData['headerColor'] = $udata['svalue'];

View File

@@ -29,7 +29,7 @@ if(file_exists(dirname(__FILE__).'/'.$avatar)) {
exit; exit;
} }
$size = in_array($size, array('big', 'middle', 'small')) ? $size : 'middle'; $size = in_array($size, array('big', 'middle', 'small')) ? $size : 'middle';
$avatar_url = 'static/image/avatar/noavatar_'.$size.'.gif'; $avatar_url = 'data/avatar/noavatar_'.$size.'.gif';
} }
if(empty($random)) { if(empty($random)) {

View File

@@ -11,8 +11,8 @@ if(!defined('IN_OAOOA')) {
} }
if(!defined('CORE_VERSION')) { if(!defined('CORE_VERSION')) {
define('CORE_VERSION', 'beta1'); define('CORE_VERSION', 'beta1.1');
define('CORE_VERSION_LEVEL', 'Pichome'); define('CORE_VERSION_LEVEL', 'Pichome');
define('CORE_RELEASE', '20210820'); define('CORE_RELEASE', '20210923');
define('CORE_FIXBUG' , '01000000'); define('CORE_FIXBUG' , '01100000');
} }

View File

@@ -54,13 +54,13 @@ function updatecache($cachename = '') {
try{ try{
@include_once DZZ_ROOT.'./dzz/'.$entrys[0].'/cache/cache_'.$entrys[1].'.php'; @include_once DZZ_ROOT.'./dzz/'.$entrys[0].'/cache/cache_'.$entrys[1].'.php';
if(function_exists('build_cache_'.$entrys[0].'_'.$entrys[1])) call_user_func('build_cache_'.$entrys[0].'_'.$entrys[1]); if(function_exists('build_cache_'.$entrys[0].'_'.$entrys[1])) call_user_func('build_cache_'.$entrys[0].'_'.$entrys[1]);
elseif(function_exists('build_cache_app_'.$entryr[1])) call_user_func('build_cache_app_'.$entrys[1]); elseif(function_exists('build_cache_app_'.$entrys[1])) call_user_func('build_cache_app_'.$entrys[1]);
}catch(Exception $e){continue;} }catch(Exception $e){continue;}
}elseif(count($entrys)==3){ }elseif(count($entrys)==3){
try{ try{
@include_once DZZ_ROOT.'./'.$entrys[0].'/'.$entrys[1].'/cache/cache_'.$entrys[2].'.php'; @include_once DZZ_ROOT.'./'.$entrys[0].'/'.$entrys[1].'/cache/cache_'.$entrys[2].'.php';
if(function_exists('build_cache_'.$entrys[1].'_'.$entrys[2])) call_user_func('build_cache_'.$entrys[1].'_'.$entrys[2]); if(function_exists('build_cache_'.$entrys[1].'_'.$entrys[2])) call_user_func('build_cache_'.$entrys[1].'_'.$entrys[2]);
elseif(function_exists('build_cache_app_'.$entryr[1])) call_user_func('build_cache_app_'.$entrys[1]); elseif(function_exists('build_cache_app_'.$entrys[1])) call_user_func('build_cache_app_'.$entrys[1]);
}catch(Exception $e){continue;} }catch(Exception $e){continue;}
} else {//插件缓存 } else {//插件缓存

View File

@@ -804,7 +804,7 @@ function avatar_block($uid=0,$headercolors=array(),$class="Topcarousel"){
} }
if(empty($user)) return ''; if(empty($user)) return '';
if($user['avatarstatus']){//用户已经上传头像 if($user['avatarstatus']){//用户已经上传头像
return '<img src="avatar.php?uid='.$user['uid'].'" class="img-circle special_avatar_class" title="'.$user['username'].'">'; return '<img src="avatar.php?uid='.$user['uid'].'&random='.VERHASH.'" class="img-circle special_avatar_class" title="'.$user['username'].'">';
}else{//没有上传头像,使用背景+首字母 }else{//没有上传头像,使用背景+首字母
if($uid){ if($uid){
if($headercolors[$uid]) $headerColor=$headercolors[$uid]; if($headercolors[$uid]) $headerColor=$headercolors[$uid];

0
data/template/index.htm Normal file
View File

View File

@@ -26,7 +26,7 @@
if (!file_exists($waterfilepath)) { if (!file_exists($waterfilepath)) {
$waterfilepath = htmlspecialchars; $waterfilepath = htmlspecialchars;
} }
include template('page/adminBasic'); include template('pc/page/adminBasic');
} }
} }
@@ -46,7 +46,7 @@
exit(json_encode(array('success' => true))); exit(json_encode(array('success' => true)));
} else { } else {
$waterfilepath = $_G['setting']['attachurl'] . 'sitelogo/sitelogo.png'; $waterfilepath = $_G['setting']['attachurl'] . 'sitelogo/sitelogo.png';
include template('page/adminPagesetting'); include template('pc/page/adminPagesetting');
} }
} elseif ($do == 'loginpage') {//登录页设置 } elseif ($do == 'loginpage') {//登录页设置
if (submitcheck('settingsubmit')) { if (submitcheck('settingsubmit')) {
@@ -71,7 +71,7 @@
updatesetting($setting, $settingnew); updatesetting($setting, $settingnew);
exit(json_encode(array('success' => true))); exit(json_encode(array('success' => true)));
} else { } else {
include template('page/adminLoginpage'); include template('pc/page/adminLoginpage');
} }
} elseif ($do == 'fileterset') {//筛选项设置 } elseif ($do == 'fileterset') {//筛选项设置
@@ -91,7 +91,7 @@
}else{ }else{
$data = json_encode(array()); $data = json_encode(array());
} }
include template('page/adminFileterset'); include template('pc/page/adminFileterset');
} }
} }
function updatesetting($setting, $settingnew){ function updatesetting($setting, $settingnew){

View File

@@ -857,7 +857,7 @@
if ($appid) { if ($appid) {
if ($data = DB::fetch_first("select * from %t where appid=%s ", array('pichome_vapp', $appid))) { if ($data = DB::fetch_first("select * from %t where appid=%s ", array('pichome_vapp', $appid))) {
$data['filter'] = unserialize($data['filter']); $data['filter'] = unserialize($data['filter']);
if($data['filter']){ // if($data['filter']){
foreach ($data['filter'] as $k => $v) { foreach ($data['filter'] as $k => $v) {
if ($v['key'] == 'tag' && $v['chacked'] == 1) { if ($v['key'] == 'tag' && $v['chacked'] == 1) {
if (isset($v['group'])) { if (isset($v['group'])) {
@@ -875,21 +875,21 @@
} }
$pichomefilterfileds = $data['filter']; $pichomefilterfileds = $data['filter'];
exit(json_encode(array('success' => true, 'data' => $pichomefilterfileds))); exit(json_encode(array('success' => true, 'data' => $pichomefilterfileds)));
}else{ // }else{
if (isset($setting['pichomefilterfileds'])) { // if (isset($setting['pichomefilterfileds'])) {
exit(json_encode(array('success' => true, 'data' => $setting['pichomefilterfileds']))); // exit(json_encode(array('success' => true, 'data' => $setting['pichomefilterfileds'])));
} else { // } else {
$setting = C::t('setting')->fetch_all('pichomefilterfileds'); // $setting = C::t('setting')->fetch_all('pichomefilterfileds');
exit(json_encode(array('success' => true, 'data' =>$setting['pichomefilterfileds']))); // exit(json_encode(array('success' => true, 'data' =>$setting['pichomefilterfileds'])));
} // }
} // }
} else { } else {
exit(json_encode(array('error' => true))); exit(json_encode(array('error' => true)));
} }
} else { } else {
if (isset($setting['pichomefilterfileds'])) { if (isset($_G['setting']['pichomefilterfileds'])) {
exit(json_encode(array('success' => true, 'data' => $setting['pichomefilterfileds']))); exit(json_encode(array('success' => true, 'data' => $_G['setting']['pichomefilterfileds'])));
} else { } else {
$setting = C::t('setting')->fetch_all('pichomefilterfileds'); $setting = C::t('setting')->fetch_all('pichomefilterfileds');
exit(json_encode(array('success' => true, 'data' =>$setting['pichomefilterfileds']))); exit(json_encode(array('success' => true, 'data' =>$setting['pichomefilterfileds'])));

View File

@@ -142,7 +142,7 @@
'personal' => 1, 'personal' => 1,
'dateline' => $mtime, 'dateline' => $mtime,
'path' => $path, 'path' => $path,
'filter'=>'a:12:{i:0;a:3:{s:3:"key";s:3:"tag";s:4:"text";s:6:"标签";s:7:"checked";s:1:"1";}i:1;a:3:{s:3:"key";s:5:"color";s:4:"text";s:6:"颜色";s:7:"checked";s:1:"1";}i:2;a:3:{s:3:"key";s:4:"link";s:4:"text";s:6:"链接";s:7:"checked";s:1:"1";}i:3;a:3:{s:3:"key";s:4:"desc";s:4:"text";s:6:"注释";s:7:"checked";s:1:"1";}i:4;a:3:{s:3:"key";s:8:"duration";s:4:"text";s:6:"时长";s:7:"checked";s:1:"1";}i:5;a:3:{s:3:"key";s:4:"size";s:4:"text";s:6:"尺寸";s:7:"checked";s:1:"1";}i:6;a:3:{s:3:"key";s:3:"ext";s:4:"text";s:6:"类型";s:7:"checked";s:1:"1";}i:7;a:3:{s:3:"key";s:5:"shape";s:4:"text";s:6:"形状";s:7:"checked";s:1:"1";}i:8;a:3:{s:3:"key";s:5:"grade";s:4:"text";s:6:"评分";s:7:"checked";s:1:"1";}i:9;a:3:{s:3:"key";s:5:"btime";s:4:"text";s:12:"添加时间";s:7:"checked";s:1:"1";}i:10;a:3:{s:3:"key";s:8:"dateline";s:4:"text";s:12:"修改日期";s:7:"checked";s:1:"1";}i:11;a:3:{s:3:"key";s:5:"mtime";s:4:"text";s:12:"创建日期";s:7:"checked";s:1:"1";}}' 'filter'=>'a:13:{i:0;a:3:{s:3:"key";s:8:"classify";s:4:"text";s:6:"分类";s:7:"checked";s:1:"1";}i:1;a:4:{s:3:"key";s:3:"tag";s:4:"text";s:6:"标签";s:7:"checked";s:1:"1";s:8:"showtype";s:1:"0";}i:2;a:3:{s:3:"key";s:5:"color";s:4:"text";s:6:"颜色";s:7:"checked";s:1:"1";}i:3;a:3:{s:3:"key";s:4:"link";s:4:"text";s:6:"链接";s:7:"checked";s:1:"1";}i:4;a:3:{s:3:"key";s:4:"desc";s:4:"text";s:6:"注释";s:7:"checked";s:1:"1";}i:5;a:3:{s:3:"key";s:8:"duration";s:4:"text";s:6:"时长";s:7:"checked";s:1:"1";}i:6;a:3:{s:3:"key";s:4:"size";s:4:"text";s:6:"尺寸";s:7:"checked";s:1:"1";}i:7;a:3:{s:3:"key";s:3:"ext";s:4:"text";s:6:"类型";s:7:"checked";s:1:"1";}i:8;a:3:{s:3:"key";s:5:"shape";s:4:"text";s:6:"形状";s:7:"checked";s:1:"1";}i:9;a:3:{s:3:"key";s:5:"grade";s:4:"text";s:6:"评分";s:7:"checked";s:1:"1";}i:10;a:3:{s:3:"key";s:5:"btime";s:4:"text";s:12:"添加时间";s:7:"checked";s:1:"1";}i:11;a:3:{s:3:"key";s:8:"dateline";s:4:"text";s:12:"修改日期";s:7:"checked";s:1:"1";}i:12;a:3:{s:3:"key";s:5:"mtime";s:4:"text";s:12:"创建日期";s:7:"checked";s:1:"1";}}'
]; ];
if($appid = C::t('pichome_vapp')->insert($appattr)){ if($appid = C::t('pichome_vapp')->insert($appattr)){

View File

@@ -15,10 +15,13 @@
private $uid = 0;//用户id private $uid = 0;//用户id
private $username = null;//用户名 private $username = null;//用户名
private $filenum = 0;//总文件数 private $filenum = 0;//总文件数
private $isexportnum = 0;//已导入文件数 private $checkpage = 1;
private $mjsondir = DZZ_ROOT.'data/attachment/cache/'; private $checklimit = 100;
private $checknum = 0;
private $eagledir =DZZ_ROOT.'library'; private $eagledir =DZZ_ROOT.'library';
private $exportstatus = 0; private $exportstatus = 0;
private $donum = 0;
private $lastid = '';
public function __construct($data = array()) public function __construct($data = array())
{ {
@@ -28,7 +31,9 @@
$this->uid = $data['uid']; $this->uid = $data['uid'];
$this->username = $data['username']; $this->username = $data['username'];
$this->exportstatus = ($data['status'] == 1) ? 1:0; $this->exportstatus = ($data['status'] == 1) ? 1:0;
// $this->donum = $data['donum'];
$this->eagledir = str_replace(BS,'/',$this->eagledir); $this->eagledir = str_replace(BS,'/',$this->eagledir);
$this->lastid = $data['lastid'];
} }
public function exportAloneFile($rid,$force = 0) public function exportAloneFile($rid,$force = 0)
@@ -183,84 +188,42 @@
return true; return true;
} }
//创建json文件以便于之后对比
public function createmjson($jsonfile, $mjsonpath)
{
/* $handle = fopen($jsonfile, 'rb');
while (!feof($handle)) {
$fileContent = fread($handle, 8192);
if (file_put_contents($mjsonpath, $fileContent, FILE_APPEND) === false) {
return false;
}
unset($fileContent);
}*/
file_put_contents($mjsonpath, file_get_contents($jsonfile));
return true;
}
public function execExport($force = false) public function execExport($force = false)
{ {
if($this->exportstatus == 1) return; if($this->exportstatus > 0 && $this->exportstatus<3 ) return ;
//原json文件 C::t('pichome_vapp')->update($this->appid,array('state'=>1,'donum'=>0,'percent'=>0));
$mjsonpath = $this->mjsondir .md5($this->path) . '.json'; $filedir = $this->eagledir . '/' . $this->path.'/images';
if ($dch = opendir($filedir)) {
//当前文件信息json文件 while (($file = readdir($dch)) != false) {
$mjsonfile = $this->eagledir . BS . $this->path . '/mtime.json'; if ($file != '.' && $file != '..') {
$filedata = file_get_contents($mjsonfile); $filePath = $filedir . '/' . $file;
//获取文件信息 if (is_dir($filePath) && file_exists($filePath.'/metadata.json')) {
$filedata = json_decode($filedata, true); $this->filenum++;
//文件总数
$this->filenum = $filedata['all'];
unset($filedata['all']);
//当前json文件id数据
$fileids = array_keys($filedata);
//上次json文件id数据
$ofileids = [];
//原有json文件数据
if (file_exists($mjsonpath)) {
$ofiledata = file_get_contents($mjsonpath);
//获取文件信息
$ofiledata = json_decode($ofiledata, true);
unset($ofiledata['all']);
$ofileids = array_keys($ofiledata);
} }
//如果之前有json文件数据存储则对比多余的执行删除
if (!empty($ofileids)) {
//获取原来有,现在没有的数据并删除
$delids = array_diff($ofileids, $fileids);
$delrids = [];
foreach ($delids as $id) {
$delrids[] = $id . $this->appid;
} }
if(!empty($delrids)) C::t('pichome_resources')->delete_by_rid($delrids);
} }
$vappdata = C::t('pichome_vapp')->fetch($this->appid); closedir($dch);
}else{
//如果存在最后更新的id值视为更新中断从该id开始更新 C::t('pichome_vapp')->update($this->appid,array('state'=>0));
if($vappdata['lastid']){ return array('error' => 'Read Dir Failer');
//获取该id值位于数组中的位置
$index = array_search($vappdata['lastid'],$fileids);
//从当前索引位置截取数组中的值,忽略已经处理过的值
$filedata = array_slice($filedata,$index);
} }
if ($dh = opendir($filedir)) {
while (($file = readdir($dh)) != false) {
//运行导入 if ($file != '.' && $file != '..') {
foreach ($filedata as $k => $v) { $filePath = $filedir . '/' . $file;
$currentindex = array_search($k,$fileids); if (is_dir($filePath) && file_exists($filePath.'/metadata.json')) {
$percent = round(($currentindex/$this->filenum)*100); $id = str_replace('.info','',$file);
//记录导入起始位置,以备中断后从此处,更改导入状态为正在导入 //组合文件id
C::t('pichome_vapp')->update($this->appid,array('lastid'=>$k,'percent'=>$percent,'state'=>1)); $rid = $id . $this->appid;
$tmppath =$this->eagledir .BS. $this->path . BS . 'images' . BS . $k . '.info'; //文件路径
$tmppath =$filePath;
//文件信息文件路径 //文件信息文件路径
$metadatajsonfile = $tmppath . BS . 'metadata.json'; $metadatajsonfile = $tmppath . BS . 'metadata.json';
//组合文件id
$rid = $k . $this->appid;
$data = C::t('pichome_resources')->fetch($rid); $data = C::t('pichome_resources')->fetch($rid);
//获取json文件最后修改时间
$lastdate = filemtime($metadatajsonfile);
//查询文件表是否有对应记录 //查询文件表是否有对应记录
if ($data ) { if ($data ) {
//json文件不存在时删除文件此情形基本不会出现(文件更新时mtime会对应发生变化) //json文件不存在时删除文件此情形基本不会出现(文件更新时mtime会对应发生变化)
@@ -269,8 +232,7 @@
C::t('pichome_resources')->delete_by_rid($rid); C::t('pichome_resources')->delete_by_rid($rid);
continue; continue;
} }
elseif ($force || $data['dateline'] < $v) {//当文件最后更新时间小于eagle时间时需处理标签颜色目录等信息 elseif ($force || ($data['lastdate']< $lastdate)) {//当文件最后更新时间小于eagle时间时需处理标签颜色目录等信息
//获取文件信息数据 //获取文件信息数据
$metadata = file_get_contents($metadatajsonfile); $metadata = file_get_contents($metadatajsonfile);
$filemetadata = json_decode($metadata, true); $filemetadata = json_decode($metadata, true);
@@ -295,7 +257,8 @@
$filemetadata['thumbfile'] = $thumbfile; $filemetadata['thumbfile'] = $thumbfile;
$filemetadata['md5'] = $filemd5; $filemetadata['md5'] = $filemd5;
$filemetadata['rid'] = $rid; $filemetadata['rid'] = $rid;
$filemetadata['dateline'] = $v; $filemetadata['dateline'] = $filemetadata['mtime'];
$filemetadata['lastdate'] = $lastdate;
$this->exportfile($filemetadata); $this->exportfile($filemetadata);
} }
else { else {
@@ -311,6 +274,7 @@
//原有标签 //原有标签
$oldtids=[]; $oldtids=[];
if ($attrdata['tag']) $oldtids = explode(',', $attrdata['tag']); if ($attrdata['tag']) $oldtids = explode(',', $attrdata['tag']);
if (!empty($tags)) { if (!empty($tags)) {
$tagids = $this->addtag($tags); $tagids = $this->addtag($tags);
$setarr['tag'] = implode(',',$tagids); $setarr['tag'] = implode(',',$tagids);
@@ -333,7 +297,11 @@
$tcommentval['rid'] = $rid; $tcommentval['rid'] = $rid;
$tcommentval['x'] = number_format($commentval['x'], 2); $tcommentval['x'] = number_format($commentval['x'], 2);
$tcommentval['y'] = number_format($commentval['y'], 2); $tcommentval['y'] = number_format($commentval['y'], 2);
try{
C::t('pichome_comments')->insert($tcommentval); C::t('pichome_comments')->insert($tcommentval);
}catch (Exception $e){
}
$cids[] = $tcommentval['id']; $cids[] = $tcommentval['id'];
} }
$ocids = C::t('pichome_comments')->fetch_id_by_rid($rid); $ocids = C::t('pichome_comments')->fetch_id_by_rid($rid);
@@ -347,9 +315,10 @@
//检查reources数据变化 //检查reources数据变化
$resourcesarr = [ $resourcesarr = [
'name' => $filename, 'name' => $filename,
'dateline' => $v, 'dateline' => $filemetadata['lastModified'],
'isdelete' => $filemetadata['isDeleted'], 'isdelete' => $filemetadata['isDeleted'],
'grade' => $filemetadata['star'] ? intval($filemetadata['star']) : 0 'grade' => $filemetadata['star'] ? intval($filemetadata['star']) : 0,
'lastdate'=>$lastdate
]; ];
$file = str_replace(BS,'/',$file); $file = str_replace(BS,'/',$file);
$attachment = str_replace($this->eagledir .'/', '', $file); $attachment = str_replace($this->eagledir .'/', '', $file);
@@ -382,13 +351,20 @@
//尝试更新属性表数据 //尝试更新属性表数据
$setarr['link'] = $filemetadata['url'] ? trim($filemetadata['url']) : ''; $setarr['link'] = $filemetadata['url'] ? trim($filemetadata['url']) : '';
//描述数据 //描述数据
$setarr['desc'] = $filemetadata['annotation'] ? htmlspecialchars($filemetadata['annotation']) : ''; $setarr['desc'] = $filemetadata['annotation'] ? $filemetadata['annotation'] : '';
if ($filemetadata['duration']) $setarr['duration'] = number_format($filemetadata['duration'], 2); if ($filemetadata['duration']) $setarr['duration'] = number_format($filemetadata['duration'], 2);
$setarr['rid'] = $rid; $setarr['rid'] = $rid;
C::t('pichome_resources_attr')->insert($setarr); C::t('pichome_resources_attr')->insert($setarr);
} }
}
else{
$this->donum += 1;
$percent = round(($this->donum/$this->filenum)*100);
//防止因获取文件总个数不准确百分比溢出
$percent = ($percent > 100) ? 100:$percent;
//记录导入起始位置,以备中断后从此处,更改导入状态为正在导入
C::t('pichome_vapp')->update($this->appid,array('lastid'=>$id,'percent'=>$percent,'donum'=>$this->donum,'state'=>1));
continue;
} }
} }
else {//如果没有记录,则为新导入文件 else {//如果没有记录,则为新导入文件
@@ -411,7 +387,6 @@
$filename =$filemetadataname . '.' . $filemetadata['ext']; $filename =$filemetadataname . '.' . $filemetadata['ext'];
$thumbname = $filemetadataname . '_thumbnail.png'; $thumbname = $filemetadataname . '_thumbnail.png';
//echo $charset;die;
$file = $tmppath . BS . $filename; $file = $tmppath . BS . $filename;
$thumbfile = $tmppath . BS . $thumbname; $thumbfile = $tmppath . BS . $thumbname;
$filemd5 = md5_file($file); $filemd5 = md5_file($file);
@@ -420,18 +395,64 @@
$filemetadata['thumbfile'] = $thumbfile; $filemetadata['thumbfile'] = $thumbfile;
$filemetadata['md5'] = $filemd5; $filemetadata['md5'] = $filemd5;
$filemetadata['rid'] = $rid; $filemetadata['rid'] = $rid;
$filemetadata['dateline'] = $v; $filemetadata['mtime'] = $filemetadata['mtime'] ? $filemetadata['mtime']:$filemetadata['modificationTime'];
$filemetadata['btime'] = $filemetadata['btime'] ? $filemetadata['btime']:$filemetadata['modificationTime'];
$filemetadata['dateline'] = $filemetadata['lastModified'];
$filemetadata['lastdate'] = $lastdate;
$this->exportfile($filemetadata); $this->exportfile($filemetadata);
} }
$this->donum += 1;
$percent = round(($this->donum/$this->filenum)*100);
//防止因获取文件总个数不准确百分比溢出
$percent = ($percent > 100) ? 100:$percent;
//记录导入起始位置,以备中断后从此处,更改导入状态为正在导入
C::t('pichome_vapp')->update($this->appid,array('lastid'=>$id,'percent'=>$percent,'donum'=>$this->donum,'state'=>1));
} }
//更新存储json文件 }
$this->createmjson($mjsonfile,$mjsonpath); }
C::t('pichome_vapp')->update($this->appid,array('lastid'=>'','percent'=>100,'filenum'=>$this->filenum,'state'=>2)); closedir($dh);
}else{
C::t('pichome_vapp')->update($this->appid,array('state'=>0));
return array('error' => 'Read Dir Failer');
}
//更改状态为校验
C::t('pichome_vapp')->update($this->appid,array('lastid'=>'','percent'=>100,'filenum'=>$this->filenum,'donum'=>0,'state'=>2));
$total = DB::result_first("select count(rid) from %t where appid = %s ",array('pichome_resources',$this->appid));
//校验文件
$this->check_file($total);
return array('success' => true); return array('success' => true);
} }
public function check_file($total){
$limitsql = ($this->checkpage -1)*$this->checklimit.','.$this->checklimit;
$delrids = [];
$data = DB::fetch_all("select rid from %t where appid = %s order by lastdate asc limit $limitsql ",array('pichome_resources',$this->appid));
if(empty($data)) {
C::t('pichome_vapp')->update($this->appid,array('percent'=>100,'state'=>3));
return true;
}
foreach ( $data as $v){
$id = str_replace($this->appid,'',$v['rid']);
$filejson = $this->eagledir . '/' . $this->path.'/images/'.$id.'.info/metadata.json';
if(!file_exists($filejson)){
$delrids[] = $v['rid'];
}
$this->checknum += 1;
$percent = round(( $this->checknum/$total)*100);
//记录导入起始位置,以备中断后从此处,更改导入状态为正在导入
C::t('pichome_vapp')->update($this->appid,array('percent'=>$percent,'state'=>2));
}
if(!empty($delrids)){
//如果有需要删除的,删除后,则重新查询上一页数据
C::t('pichome_resources')->delete_by_rid($delrids);
$ctotal = DB::result_first("select count(rid) from %t where appid = %s ",array('pichome_resources',$this->appid));
if($ctotal)$this->check_file($total);
}else{
$this->checkpage += 1;
$this->check_file($total);
}
}
public function exportfile($filemetadata) public function exportfile($filemetadata)
{ {
$rid = $filemetadata['rid']; $rid = $filemetadata['rid'];
@@ -470,7 +491,6 @@
]; ];
//插入文件表数据 //插入文件表数据
if (C::t('pichome_resources')->insert($resourcesarr)) { if (C::t('pichome_resources')->insert($resourcesarr)) {
//插入目录关联表数据 //插入目录关联表数据
foreach ($filemetadata['folders'] as $fv) { foreach ($filemetadata['folders'] as $fv) {
$fid = $fv . $this->appid; $fid = $fv . $this->appid;
@@ -517,12 +537,14 @@
//链接数据 //链接数据
$setarr['link'] = $filemetadata['url'] ? trim($filemetadata['url']) : ''; $setarr['link'] = $filemetadata['url'] ? trim($filemetadata['url']) : '';
//描述数据 //描述数据
$setarr['desc'] = $filemetadata['annotation'] ? htmlspecialchars($filemetadata['annotation']) : ''; $setarr['desc'] = $filemetadata['annotation'] ? $filemetadata['annotation'] : '';
$setarr['rid'] = $rid; $setarr['rid'] = $rid;
$setarr['appid'] = $this->appid; $setarr['appid'] = $this->appid;
$setarr['path'] = $path; $setarr['path'] = $path;
//插入数据 //插入数据
C::t('pichome_resources_attr')->insert($setarr); C::t('pichome_resources_attr')->insert($setarr);
}else{
runlog('eagleexport',$rid);
} }
} }

View File

@@ -0,0 +1,133 @@
.el-aside {
background-color: var(--bg-header);
border-right: 1px solid var(--border-color-base);
}
.maxWidth {
width: 370px;
}
#center_title {
line-height: 55px;
border-bottom: 1px solid var(--border-color-base);
padding: 0 25px;
color: var(--content-textHover);
font-size: 16px;
}
.el-form-item__label,
.el-checkbox,
.el-radio {
color: var(--content-text);
}
.el-checkbox,
.el-radio {
margin-right: 16px;
margin-left: 0 !important;
}
.tipTxt{
color: var(--tip-color);
font-size: 12px;
line-height: 20px;
margin-top: 6px;
}
.tipTxt:hover {
color: var(--content-text);
}
.avatar-uploader .el-upload {
border: 1px dashed var(--border-color-base);
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
width: 150px;
height: 150px;
display: flex;
justify-content: center;
align-items: center;
}
.avatar-uploader .el-upload:hover {
border-color:var(--color-primary);
}
.avatar-uploader .avatar-uploader-icon {
font-size: 16px;
color: var(--content-text);
}
.avatar-uploader .el-image{
height: 150px;
width: 100%;
line-height: 150px;
}
.avatar-uploader .el-image img{
max-width: 100%;
max-height: 150px;
width: auto;
height: auto;
vertical-align: middle;
}
.avatar-uploader .el-progress{
position: absolute;
left: 0px;
top: 0px;
background: var(--bg-content);
z-index: 100;
}
.avatar {
max-width: 100%;
max-height: 100%;
display: inline-block;
}
.register-bg-bt{
background-color: transparent;
color: var(--content-text);
margin-left: 6px;
}
.el-checkbox,.el-radio{
min-width: 120px;
margin-bottom: 8px;
}
.theme-block{
margin-right: 12px;
float: left;
}
.theme-block .bg{
height: 40px;
width: 40px;
border: 1px solid var(--border-color-base);
border-radius: 4px;
position: relative;
overflow: hidden;
cursor: pointer;
}
.theme-block .bg.active{
border: 1px solid var(--color-primary);
}
.theme-block .bg .triangle{
position: absolute;
right: 0px;
bottom: 0px;
width: 0;
height: 0;
border-bottom: 30px solid var(--color-primary);
border-left: 30px solid transparent;
display: none;
}
.theme-block .bg .icon{
color: #FFFFFF;
font-size: 14px;
position: absolute;
bottom: 2px;
right: 2px;
display: none;
}
.theme-block .bg.active .triangle,
.theme-block .bg.active .icon{
display: block;
}

View File

@@ -0,0 +1,448 @@
*{
padding: 0;
margin: 0;
box-sizing: border-box;
}
html,
body,
#dzzoffice,
.el-container,
.el-main,
.page-content{
width: 100%;
height: 100%;
margin: 0;
padding: 0;
overflow: hidden;
}
.el-header{
color: var(--header-text);
border-bottom: 1px solid var(--border-color-base);
}
.el-color-dropdown{
color: var(--header-text);
background-color: var(--bg-header);
border-bottom: 1px solid var(--border-color-base);
}
body{
background-color: var(--bg-content);
}
[v-cloak]{
display: none;
}
.el-progress-bar__outer{
background-color: var(--bg-input);
}
.el-dropdown-menu__item--divided{
border-color: var(--border-color-base);
}
.el-dropdown-menu__item--divided:before{
background-color: transparent;
}
.el-divider.el-divider--horizontal{
margin: 8px 0;
}
.el-input__inner,
.el-textarea__inner{
font-size: 14px;
color: var(--header-text);
background-color: var(--bg-input);
}
.el-input__inner:focus,.el-input__inner:hover,
.el-textarea__inner:focus,.el-textarea__inner:hover{
background-color: var(--bg-inputfocus);
border-color: var(--color-primary);
}
.el-table td, .el-table th.is-leaf{
border-color:var(--border-color-base);
}
.el-table--border::after, .el-table--group::after, .el-table::before{
background-color: var(--border-color-base);
}
.el-table th,.el-table tr{
background-color: var(--bg-content);
}
.el-table--striped .el-table__body tr.el-table__row--striped td{
background-color: var(--td-striped);
}
.el-table--enable-row-hover .el-table__body tr:hover>td{
background-color: var(--bg-content);
}
.el-table--striped .el-table__body tr.el-table__row--striped:hover>td{
background-color: var(--td-striped);
}
.el-dialog,
.el-popper{
background-color: var(--bg-poper);
color: var(--header-text);
border-color:var(--border-color-base);
}
.el-popper[x-placement^=bottom] .popper__arrow{
border-bottom-color:var(--border-color-base) !important;
}
.el-popper[x-placement^=bottom] .popper__arrow::after{
border-bottom-color:var(--bg-poper) !important;
}
.el-popper[x-placement^=left] .popper__arrow{
border-left-color:var(--border-color-base) !important;
}
.el-popper[x-placement^=left] .popper__arrow::after{
border-left-color:var(--bg-poper) !important;
}
.el-dialog .el-dialog__header{
text-align: center;
}
.el-dialog .el-dialog__header .el-dialog__title{
color: var(--header-text);
}
.el-form-item__label{
color: var(--content-textHover);
}
.el-tooltip__popper.is-dark{
color: #FFFFFF;
border: 1px solid var(--border-color-base);
background-color: var(--bg-tooltip);
}
.el-tooltip__popper .popper__arrow{
border-bottom-color:var(--border-color-base) !important;
}
.el-tooltip__popper .popper__arrow::after{
border-bottom-color:var(--bg-tooltip) !important;
}
.el-menu{
background-color: transparent;
border: 0;
}
.el-menu .el-menu-item,
.el-dropdown-menu__item{
color: var(--header-text);
}
.el-menu .el-menu-item:focus,.el-menu .el-menu-item:hover,.el-menu .el-menu-item.is-active,
.el-dropdown-menu__item:focus,.el-dropdown-menu__item:not(.is-disabled):hover {
color: var(--header-active);
background-color: var(--bg-poperHover);
}
.el-dropdown,
.el-menu .el-menu-item{
color: var(--header-text);
}
.el-select-dropdown__item{
color: var(--header-text);
}
.el-select-dropdown__item.selected{
color: var(--header-active);
}
.el-select-dropdown__item.hover, .el-select-dropdown__item:hover {
background-color: var(--bg-poperHover);
color: var(--header-active);
}
.el-checkbox,
.el-radio{
color: var(--header-text);
}
.el-checkbox .el-checkbox__inner,
.el-radio .el-radio__inner{
background-color: transparent;
border-color: var(--radio-line);
}
.el-checkbox .el-checkbox__input.is-focus .el-checkbox__inner,
.el-radio .el-radio__input.is-focus .el-radio__inner{
border-color: var(--radio-line);
}
.el-radio__input.is-checked+.el-radio__label,
.el-checkbox__input.is-checked+.el-checkbox__label{
color: var(--header-active);
}
.el-input .el-input__icon{
color: var(--header-text);
}
.el-date-table td.available:hover,
.el-picker-panel__icon-btn:hover,
.el-date-table td.today span{
color: var(--header-active);
}
.el-picker-panel__icon-btn,
.el-date-table td,
.el-date-table th{
color: var(--header-text);
}
.el-date-table td.in-range div,
.el-date-table td.in-range div:hover{
background-color: var(--color-primary);
}
.el-date-range-picker__content.is-left,
.el-date-table th{
border-color:var(--border-color-base) !important;
}
.el-tree,
.el-tree .el-tree-node .el-tree-node__expand-icon{
background: transparent;
color: var(--header-text);
}
.el-tree .el-tree-node .el-tree-node__expand-icon.is-leaf{
color: transparent !important;
}
.el-tree .el-tree-node:focus .el-tree-node__expand-icon{
color: var(--header-active);
}
.el-tree .el-tree-node__content:hover{
color: var(--header-active);
background-color: var(--bg-poperHover);
}
.el-tree .el-tree-node:focus>.el-tree-node__content{
background-color: var(--bg-poperHover);
}
.page-content{
display: flex;
flex-direction: column;
}
.page-component__scroll{
height: 100%;
flex: 1;
}
.page-component__scroll>.el-scrollbar__wrap {
overflow-x: hidden;
}
.Topcarousel{
border-radius: 50%;
text-align: center;
display: inline-block;
font-size: 18px;
width: 100%;
height: 100%;
color: #FFF;
}
#copyInput{
opacity: 0;
position: fixed;
bottom: 0;
left: 0;
}
.img-circle{
border-radius: 50%;
width: 100%;
height: 100%;
}
.hide{
display: none !important;
}
.PopoverNotPadding{
padding: 0;
}
.clearfix:after{
content: '.';
clear: both;
display: block;
height: 0;
visibility: hidden;
font-size: 0;
line-height: 0;
}
ul{
list-style: none;
}
.squareIcon{
height: 48px;
width: 48px;
background: var(--bg-color);
color: var(--text-color1);
padding: 0 8px;
border-radius: 6px;
text-align: center;
line-height: 48px;
display: inline-block;
margin-right: 8px;
flex: 0 0 auto;
}
.squareIcon i{
font-size: 28px;
}
.squareImg{
height: 48px;
width: 48px;
border-radius: 6px;
display: inline-block;
margin-right: 8px;
flex: 0 0 auto;
background: var(--g-colroimg);
display: flex;
align-items: center;
justify-content: center;
}
.squareImg img{
max-width: 100%;
max-height: 100%;
}
.dzz-dropdown-menu .dzz-dropdown-menu__item{
color: var(--header-text);
line-height: 35px;
padding: 0 5px;
border-radius: 4px;
position: relative;
cursor: pointer;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.dzz-dropdown-menu .dzz-dropdown-menu__item:hover{
color: var(--header-active);
background-color: var(--bg-poperHover);
}
.dzz-dropdown-menu .dzz-dropdown-menu__item.nothover:hover{
background-color: transparent;
}
#top_header {
height: 70px;
width: 100%;
padding: 4px 16px;
align-items: center;
display: flex;
}
#top_header .header-content .h-left .el-image {
width: 35px;
height: 35px;
}
#top_header .header-content .h-left .text {
font-size: 16px;
font-weight: 700;
margin-left: 10px;
color: var(--header-active);
}
#top_header .header-content {
display: flex;
height: 56px;
align-items: center;
width: 100%;
}
#top_header .header-content .h-left {
height: 100%;
display: flex;
justify-content: center;
align-items: center;
text-decoration: none;
}
#top_header .header-content .h-center {
flex: 1 1 auto;
height: 100%;
padding: 0 30px;
display: flex;
align-items: center;
}
#top_header .header-content .h-right #dzz_avatar_img {
cursor: pointer;
width: 35px;
height: 35px;
line-height: 35px;
margin-left: 5px;
}
.el-empty{
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
text-align: center;
box-sizing: border-box;
padding: 40px 0;
}
.el-empty__image {
width: 160px;
}
.el-empty__image img{
user-select: none;
width: 100%;
height: 100%;
vertical-align: top;
object-fit: contain;
}
.el-empty__description {
margin-top: 20px;
color: var(--content-textHover);
}
.aboutPichome{
padding: 0;
width: 478px;
}
.aboutPichome .el-message-box__header,
.aboutPichome .el-message-box__btns{
display: none;
}
.aboutPichome .aboutlogo{
text-align: center;
line-height: 0;
padding-top: 40px;
}
.aboutPichome .aboutmessage{
padding: 65px 40px;
font-size: 19px;
padding-bottom: 15px;
}
.aboutPichome .aboutmessage .aboutlist{
margin-bottom: 20px;
overflow: hidden;
}
.aboutPichome a{
text-decoration: none;
}
.aboutPichome .aboutmessage .aboutlist .title{
float: left;
width: 95px;
}
.aboutPichome .aboutmessage .aboutlist .mes{
float: left;
width: calc(100% - 95px);
}
.aboutPichome .aboutmessage .aboutlist .update{
font-size: 12px;
}
#systemNotice .panel-heading {
border-radius: 0;
background: var(--bg-header);
color: var(--header-text);
padding: 10px 15px;
}
#systemNotice .panel-heading .close{
float: right;
border: 0;
font-size: 21px;
color: var(--header-text);
}
#systemNotice .panel-body {
background: var(--bg-input);
color: var(--header-text);
padding: 10px 15px !important;
}
#systemNotice .panel-body img{
max-height: 30px;
vertical-align: bottom;
margin-right: 10px;
}
#systemNotice .panel-body a{
color: var(--header-text);
text-decoration: none;
}

View File

@@ -0,0 +1,354 @@
.el-header,.el-main{
background-color: var(--bg-content);
}
#top_header .header-content .h-right .r-option {
display: flex;
align-items: center;
height: 40px;
}
#top_header .header-content .h-right .right-block {
float: left;
font-size: 24px;
padding: 8px;
cursor: pointer;
border-radius: 50%;
width: 40px;
height: 40px;
margin-right: 5px;
color: var(--header-icon);
}
#top_header .header-content .h-right .right-block:hover {
background: var(--header-textHover);
color: var(--header-iconHover);
}
#top_header .header-content .h-right .right-block i {
vertical-align: top;
}
#top_header .header-content .h-center .imgoperation {
text-align: center;
display: flex;
align-items: center;
justify-content: center;
flex: 1;
}
#top_header .header-content .h-center .imgoperation .proportion{
width: 140px;
}
#top_header .header-content .h-center .imgoperation .text{
display: inline-block;
cursor: default;
margin-left: 10px;
}
#top_header .header-content .h-center .imgoperation .text:hover{
color: var(--header-active);
}
#top_header .header-content .h-center .imgoperation .text .icon{
font-size: 18px;
vertical-align: middle;
font-weight: 700;
}
.carousel__arrow-box{
display: inline-block;
width: 52px;
margin-left: 10px;
}
.carousel__arrow-box .carousel__arrow{
cursor: pointer;
float: left;
margin-left: 5px;
}
.carousel__arrow-box .carousel__arrow:hover{
color: var(--header-active);
}
.carousel__arrow-box .carousel__arrow .icon{
font-size: 18px;
font-weight: 700;
vertical-align: middle;
}
.proportionnum-box .el-dropdown-menu__item{
line-height: 30px;
font-size: 12px;
}
.el-tooltip__popper.color-top {
color: var(--content-text);
background: var(--bg-content);
border: 1px solid var(--border-color-base);
}
.el-tooltip__popper.color-top .popper__arrow {
border-top-color: var(--border-color-base) !important;
}
.el-tooltip__popper.color-top .popper__arrow::after {
border-top-color: var(--bg-tooltip) !important;
}
.el-header {
border-bottom: 0;
}
.el-scrollbar__view{
height: 100%;
}
.el-slider__button-wrapper.grabbing:hover,
.el-slider__button-wrapper.grabbing,
.el-slider__button-wrapper.grabbing .el-slider__button{
cursor: grabbing !important;
}
.details-top {
width: 100%;
height: 100%;
position: relative;
overflow: hidden;
padding: 0 20px;
}
.details-maincontainer{
height: 100%;
}
.floating-layer {
width: 100%;
height: 100%;
position: relative;
padding-right: 360px;
padding-bottom: 8px;
}
.details-top .page-component__scroll .is-horizontal {
display: none;
}
#ImgScroll.move{
cursor: grab;
}
#ImgScroll.move.activemove{
cursor: grabbing;
}
#ImgScroll .is-horizontal {
display: block;
}
#ImgScroll .el-scrollbar__view {
position: relative;
text-align: center;
/* box-sizing: content-box; */
font-size: 0;
width: 100%;
height: 100%;
}
.information-box {
color: var(--content-text);
}
.floating-layer .picture-box {
height: 100%;
position: relative;
width: 100%;
}
.floating-layer.HideInformation{
padding-right: 0px;
}
.floating-layer .picture-box .image-viewer__img {
display: inline-block;
vertical-align: middle;
}
.floating-layer .picture-box .image-viewer__img.max {
max-width: 100%;
max-height: 100%;
}
.floating-layer .picture-box .image-viewer__img.opacity{
display: none;
}
.floating-layer .picture-box .image-viewer__img.thumbnail{
}
.floating-layer .information-box {
position: absolute;
height: 100%;
width: 360px;
padding-left: 20px;
right: 0;
top: 0;
padding-bottom: 8px;
}
.floating-layer.HideInformation .information-box {
display: none;
}
.floating-layer .information-box .el-divider {
margin: 0;
}
.floating-layer .information-box .title {
font-size: 18px;
color: var(--content-textHover);
font-weight: 700;
display: -webkit-box;
-webkit-line-clamp: 2;
overflow: hidden;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
max-height: 48px;
margin-bottom: 16px;
}
.floating-layer .information-box .operation {
padding-bottom: 16px;
margin-left: -4px;
display: flex;
}
.floating-layer .information-box .operation .circular {
color: var(--content-text);
font-size: 17px;
font-weight: 700;
text-decoration: none;
float: left;
width: 45px;
margin: 0 4px;
text-align: center;
line-height: 43px;
cursor: pointer;
background: var(--bg-header);
border: 1px solid var(--border-color-base);
border-radius: 50%;
}
.floating-layer .information-box .operation .circular.bg {
flex: auto;
border-radius: 18px;
}
.floating-layer .information-box .operation .circular:hover {
color: var(--content-textHover);
}
.floating-layer .information-box .message .color {
margin: 0 -3px;
display: flex;
}
.floating-layer .information-box .message .color>li {
height: 28px;
float: left;
padding: 0 3px 6px;
flex: 1;
max-width: 90px;
cursor: pointer;
}
.floating-layer .information-box .message .color>li.opacity {
opacity: 0.3;
}
.floating-layer .information-box .message .color>li .el-dropdown {
width: 100%;
height: 100%;
}
.floating-layer .information-box .message .color>li .bg {
height: 100%;
width: 100%;
border-radius: 4px;
border: 1px solid var(--border-color-base);
}
.floating-layer .information-box .message .label {
/* padding-bottom: 16px; */
}
.floating-layer .information-box .message .label .el-tag {
min-width: 45px;
text-align: center;
margin-bottom: 5px;
float: left;
margin-right: 5px;
background: var(--bg-header);
border: 1px solid var(--border-color-base);
color: var(--content-text);
cursor: pointer;
}
.floating-layer .information-box .message .notes {
font-size: 14px;
/* padding-bottom: 16px; */
line-height: 22px;
word-wrap: break-word;
}
.floating-layer .information-box .message .thesis-wrap {
padding-bottom: 16px;
}
.floating-layer .information-box .message .thesis-wrap .tip-title {
font-size: 16px;
font-weight: 700;
margin-bottom: 6px;
color: var(--content-textHover);
}
.floating-layer .information-box .message .link {
position: relative;
font-size: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
padding-right: 35px;
cursor: pointer;
}
.floating-layer .information-box .message .link:hover {
color: var(--content-textHover);
}
.floating-layer .information-box .message .link i {
position: absolute;
right: 0;
top: 0;
font-size: 25px;
width: 25px;
height: 25px;
bottom: 0;
margin-top: auto;
margin-bottom: auto;
cursor: pointer;
}
.floating-layer .information-box .information {
padding: 18px 0;
}
.floating-layer .information-box .information .tip {
font-size: 18px;
font-weight: 700;
padding-bottom: 16px;
color: var(--content-textHover);
}
.floating-layer .information-box .information .field {
margin-bottom: 6px;
}
.floating-layer .information-box .information .field .name {
font-size: 14px;
}
.floating-layer .information-box .information .field .record {
font-size: 14px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
color: var(--content-textMessage);
text-align: right;
}
.floating-layer .information-box .information .field .record .star {
color: var(--stars);
}
.floating-layer .information-box .information .field .record .star.active {
color: var(--starsActive);
}

1391
dzz/pichome/css/pc/index.css Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,21 @@
@font-face {
font-family: "iconfont"; /* Project id */
src: url('iconfont.ttf?t=1631936247363') format('truetype');
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-zuoyoufanzhuan_huaban1:before {
content: "\e65f";
}
.icon-chuizhifanzhuan_huaban1:before {
content: "\e660";
}

View File

@@ -1,24 +1,23 @@
<?php <?php
/* /*
* @copyright QiaoQiaoShiDai Internet Technology(Shanghai)Co.,Ltd * @copyright QiaoQiaoShiDai Internet Technology(Shanghai)Co.,Ltd
* @license https://www.oaooa.com/licenses/ * @license https://www.oaooa.com/licenses/
* *
* @link https://www.oaooa.com * @link https://www.oaooa.com
* @author zyx(zyx@oaooa.com) * @author zyx(zyx@oaooa.com)
*/ */
//此页的调用地址 index.php?mod=test;
//同目录的其他php文件调用 index.php?mod=test&op=test1;
if (!defined('IN_OAOOA')) {//所有的php文件必须加上此句防止被外部调用
if (!defined('IN_OAOOA')) {//所有的php文件必须加上此句防止被外部调用
exit('Access Denied'); exit('Access Denied');
} }
$overt = getglobal('setting/overt'); $overt = getglobal('setting/overt');
if (!$overt) { if (!$overt) {
Hook::listen('check_login');//检查是否登录,未登录跳转到登录界面 Hook::listen('check_login');//检查是否登录,未登录跳转到登录界面
} }
$operation = isset($_GET['operation']) ? trim($_GET['operation']) : '';
$operation = isset($_GET['operation']) ? trim($_GET['operation']) : ''; $opentype = isset($_GET['opentype']) ? trim($_GET['opentype']) : '';
if($operation == 'fetch'){ if($operation == 'fetch'){
$rid = isset($_GET['rid']) ? trim($_GET['rid']) : ''; $rid = isset($_GET['rid']) ? trim($_GET['rid']) : '';
if (!$rid) { if (!$rid) {
exit(json_encode(array('error' => false))); exit(json_encode(array('error' => false)));
@@ -26,8 +25,8 @@
$resourcesdata = C::t('pichome_resources')->fetch_by_rid($rid); $resourcesdata = C::t('pichome_resources')->fetch_by_rid($rid);
exit(json_encode(array('resourcesdata' => $resourcesdata))); exit(json_encode(array('resourcesdata' => $resourcesdata)));
}else{ }else{
$theme = GetThemeColor(); $theme = GetThemeColor();
include template('page/details'); include template('pc/page/details');
} }

View File

@@ -11,6 +11,18 @@
$force = isset($_GET['force']) ? intval($_GET['force']):0; $force = isset($_GET['force']) ? intval($_GET['force']):0;
$data = C::t('pichome_vapp')->fetch($appid); $data = C::t('pichome_vapp')->fetch($appid);
if(!$data) exit(json_encode(array('error'=>'no data'))); if(!$data) exit(json_encode(array('error'=>'no data')));
if($data['type'] == 0){
include_once dzz_libfile('eagleexport'); include_once dzz_libfile('eagleexport');
$eagleexport = new eagleexport($data); $eagleexport = new eagleexport($data);
$return = $eagleexport->execExport($force); $return = $eagleexport->execExport($force);
print_r($return);
}else{
include_once dzz_libfile('oaooaexport');
$oaooaexport = new oaooaexport($data);
//导入标签分类数据
$oaooaexport->exportTaggroup();
//执行导入文件
$return = $oaooaexport->initExport();
}

View File

@@ -11,6 +11,7 @@
if (!defined('IN_OAOOA')) {//所有的php文件必须加上此句防止被外部调用 if (!defined('IN_OAOOA')) {//所有的php文件必须加上此句防止被外部调用
exit('Access Denied'); exit('Access Denied');
} }
$ismobile = helper_browser::ismobile();
$overt = getglobal('setting/overt'); $overt = getglobal('setting/overt');
if(!$overt && !$overt = C::t('setting')->fetch('overt')){ if(!$overt && !$overt = C::t('setting')->fetch('overt')){
@@ -55,4 +56,9 @@
} }
$pagesetting = json_encode($pagesetting); $pagesetting = json_encode($pagesetting);
include template('page/index'); if ($ismobile) {
include template('mobile/page/index');
} else {
include template('pc/page/index');
}

View File

@@ -0,0 +1,256 @@
// (function(){
var isVoice = false;
// $(document).on('mouseenter','.bgimage-operation',function(){
// $(this).addClass('show');
// var status = $(this).data('status');
// var type = $(this).data('type');
// if(status){
// $(this).data('status',false);
// if(type == 'video'){
// handleVideo($(this));
// }
// if(type == 'audio'){
// handleMusic($(this));
// }
// }
// });
// $(document).on('mouseleave','.bgimage-operation',function(){
// var self = $(this);
// self.removeClass('show');
// });
function handleMouseenter(tage){
var find = tage.find('.bgimage-operation');
find.addClass('show');
var status = find.data('status');
var type = find.data('type');
if(status){
find.data('status',false);
if(type == 'video'){
handleVideo(find);
}
if(type == 'audio'){
handleMusic(find);
}
}
};
function handleMouseleave(tage){
tage.find('.bgimage-operation').removeClass('show');
};
function handleVideo(box){
var str = {
loading:false,
finish:false,
};
if(str.loading){
return false;
}
var realpath = box.data('playurl');
str.loading = true;
var html_box = jQuery('<div class="movies-box"><div class="html-loading"><div class="el-loading-mask" style=""><div class="el-loading-spinner"><svg viewBox="25 25 50 50" class="circular"><circle cx="50" cy="50" r="20" fill="none" class="path"></circle></svg></div></div></div></div>');
box.append(html_box);
var html_video = jQuery('<video src="'+realpath+'" class="video"></video>');
var html_progress = jQuery('<div class="progress"><div class="progress-bar" style="width: 0%;"></div></div>');
var html_time = jQuery('<div class="time"></div>');
var html_voice = jQuery('<div class="circulars voice no"><i class="ri-volume-up-line yes"></i><i class="ri-volume-mute-line no"></i></div>');
var video = html_video.get(0);
video.muted = true;
html_box.append(html_video);
video.addEventListener('canplay', function () { //加载数据
if(!str.finish){
html_box.find('.html-loading').remove();
html_box.append(html_voice);
html_box.append(html_progress);
html_box.append(html_time);
if(video.paused){
video.play();
}
str.finish = true;
}
});
video.addEventListener('timeupdate',function(){
var timeDisplay = video.currentTime;
var progre = parseInt(parseInt(timeDisplay)/parseInt(video.duration) * 100, 10);
box.find('.progress-bar').css('width',progre+'%');
var time = secondToDate(timeDisplay,video.duration);
box.find('.time').text(time);
});
html_voice.click(function(){
if(str.finish){
if(video.muted){
jQuery(this).addClass('yes').removeClass('no');
video.muted = false;
}else{
jQuery(this).addClass('no').removeClass('yes');
video.muted = true;
}
}
return false;
});
html_box.bind('mouseenter',function(e){
if(str.finish){
video.currentTime = 0;
video.play();
}
});
var moveStr = {
time:true,
isMove:false
};
html_box.bind('mousemove',function(e){
var item = jQuery(this);
if(moveStr.time){
moveStr.time = false;
setTimeout(function(){
moveStr.isMove = true;
},600);
}
if(video && moveStr.isMove){
var parentOffset = item.offset();
var relX = e.clientX - parentOffset.left;
if(relX > 0 && relX <= item.width()){
var progre = parseInt(parseInt(relX)/item.width() * 100, 10);
item.find('.progress-bar').css('width',progre+'%');
var videoStime = parseInt(progre*(parseInt(video.duration) / 100));
video.currentTime = videoStime;
var time = secondToDate(videoStime,video.duration);
item.find('.time').text(time);
if(video.paused){
video.play();
}
}
}
});
html_box.bind('mouseleave',function(){
var item = jQuery(this);
video.pause();
moveStr = {
time:true,
isMove:false
};
item.find('.progress-bar').css('width','0%');
});
};
function handleMusic(box){
var str = {
loading:false,
finish:false,
fmousemove:0,
isplay:false,
};
if(str.loading){
return false;
}
str.loading = true;
var html_box = jQuery('<div class="movies-box"><div class="html-loading"><div class="el-loading-mask" style=""><div class="el-loading-spinner"><svg viewBox="25 25 50 50" class="circular"><circle cx="50" cy="50" r="20" fill="none" class="path"></circle></svg></div></div></div></div>');
var html_time = jQuery('<div class="time"></div>');
var html_line = jQuery('<div class="line"></div>');
var html_voice = jQuery('<div class="circulars voice no"><i class="ri-pause-line yes"></i><i class="ri-play-line no"></i></div>');
box.append(html_box);
var wavesurfer = WaveSurfer.create({
container: html_box.get(0),
waveColor: '#888888',
progressColor: 'purple',
hideScrollbar:true,
height:box.closest('.each-piece').find('.el-image__inner').height(),
});
wavesurfer.load(box.data('playurl'));
wavesurfer.on("ready", function(){
if(!str.finish){
html_box.find('.html-loading').remove();
html_box.append(html_voice);
html_box.append(html_time);
html_box.append(html_line);
var timeDisplay = parseInt(wavesurfer.getCurrentTime());
var count = parseInt(wavesurfer.getDuration());
var time = secondToDate(timeDisplay,count);
html_box.find('.time').text(time);
if(str.isplay && isVoice){
wavesurfer.play();
}
str.finish = true;
}
});
wavesurfer.on("audioprocess", function(){
isVoice = true;
var timeDisplay = parseInt(wavesurfer.getCurrentTime());
var count = parseInt(wavesurfer.getDuration());
var time = secondToDate(timeDisplay,count);
html_box.find('.time').text(time);
});
wavesurfer.on("seek", function(){
if(str.isplay){
wavesurfer.play();
}
});
wavesurfer.on("play", function(){
html_voice.removeClass('no').addClass('yes');
});
wavesurfer.on("pause", function(){
html_voice.removeClass('yes').addClass('no');
});
html_voice.click(function(){
if(str.isplay && str.finish){
wavesurfer.playPause();
}
});
html_box.bind('mouseenter',function(e){
str.isplay = true;
if(str.finish && isVoice){
var imgHeight = $(this).closest('.each-piece').find('.el-image__inner').height()
wavesurfer.setHeight(imgHeight);
wavesurfer.play(0);
}
});
html_box.bind('mousemove',function(e){
if(!str.finish){
return false;
}
var clientX = e.clientX;
var parentOffset = jQuery(this).offset();
var relX = clientX - (parentOffset.left+1);
if(relX<=0){
relX = 0;
}
if(relX>=jQuery(this).width()){
relX = jQuery(this).width();
}
str.fmousemove = relX;
// if(_filemanage.view == 2){
// jQuery(this).find('.line').css('left',parseInt(relX));
// }else{
var WaveHeight = jQuery(this).find('wave').height();
jQuery(this).find('.line').css({
left:parseInt(relX),
height:WaveHeight
});
// }
});
html_box.bind('mouseleave',function(){
str.isplay = false;
if(str.finish){
wavesurfer.pause();
}
});
};
function secondToDate(result,count){
var h = Math.floor(result / 3600) < 10 ? '0'+Math.floor(result / 3600) : Math.floor(result / 3600);
var m = Math.floor((result / 60 % 60)) < 10 ? '0' + Math.floor((result / 60 % 60)) : Math.floor((result / 60 % 60));
var s = Math.floor((result % 60)) < 10 ? '0' + Math.floor((result % 60)) : Math.floor((result % 60));
if(count >= 3600){
return result = h + ":" + m + ":" + s;
}else if(count >= 60){
return result = m + ":" + s;
}else{
return result = s;
}
};
// })();

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,184 @@
var headerWatch = {
filterText(val){
var self = this;
self.$refs.tree[0].filter(val);
},
ParamsTagData(val){
var str = {};
var fstr = {};
var str1 = {};
if(this.GetParamsInit.tag.length){
for(var x in this.GetParamsInit.tag){
var p = this.GetParamsInit.tag[x];
if(fstr[p.cid]){
fstr[p.cid].text.push(p.tagname);
fstr[p.cid].data.push(p.tid);
}else{
fstr[p.cid] = {
search:'',
text:[p.tagname],
data:[p.tid]
}
}
}
}
for(var i in val){
str[val[i].cid] = {
newVal:[],
oldVal:[]
};
if(fstr[val[i].cid]){
fstr[val[i].cid].text = fstr[val[i].cid].text.join(',');
str1[val[i].cid] = fstr[val[i].cid];
}else{
str1[val[i].cid] = {
search:'',
text:'',
data:[],
};
}
}
this.modelParamsTag = str1;
this.paramsTag = str;
},
GetParamsInit:{
handler(item){
if(item){
for(var i in item){
if(i == 'tag' && item[i]){
var newArrtid = [];
var newArrtxt = [];
var classs = {};
for(var t in item[i]){
newArrtid.push(item[i][t].tid);
newArrtxt.push(item[i][t].tagname);
}
var tagfid = localStorage.getItem("tagfid");
if(tagfid){
this.tagData.checkedsFid = tagfid;
}
this.tagData.checkedsId = newArrtid;
this.tagData.checkedstxt = newArrtxt.join(',');
}
}
}
},
deep:true
},
'link.val':debounce(function(val){//链接输入
VuexStore.commit('SetParams',{key:'linkval',val:val});
if(!this.FirstLoad&&val){
VuexStore.dispatch('handleHash');
}
},800),
'desc.val':debounce(function(val){//注释输入
VuexStore.commit('SetParams',{key:'descval',val:val});
if(!this.FirstLoad&&val){
VuexStore.dispatch('handleHash');
}
},800),
'duration.start':debounce(function(val){//时长输入
if(val || this.duration.end){
var str = val+'_'+this.duration.end;
VuexStore.commit('SetParams',{key:'duration',val:str});
VuexStore.commit('SetParams',{key:'dunit',val:this.duration.dunit});
if(!this.FirstLoad){
VuexStore.dispatch('handleHash');
}
}else{
if(!this.FirstLoad){
this.handleClickDelete('duration');
}
}
},800),
'duration.end':debounce(function(val){//时长输入
if(val || this.duration.start){
var str = this.duration.start+'_'+val;
VuexStore.commit('SetParams',{key:'duration',val:str});
VuexStore.commit('SetParams',{key:'dunit',val:this.duration.dunit});
if(!this.FirstLoad){
VuexStore.dispatch('handleHash');
}
}else{
if(!this.FirstLoad){
this.handleClickDelete('duration');
}
}
},800),
'wsize.start':debounce(function(val){//尺寸宽
if(val || this.wsize.end){
var str = val+'_'+this.wsize.end;
VuexStore.commit('SetParams',{key:'wsize',val:str});
}else{
VuexStore.commit('SetParams',{key:'wsize',val:''});
}
if(!this.FirstLoad){
VuexStore.dispatch('handleHash');
}
},800),
'wsize.end':debounce(function(val){//尺寸宽
if(val || this.wsize.start){
var str = this.wsize.start+'_'+val;
VuexStore.commit('SetParams',{key:'wsize',val:str});
}else{
VuexStore.commit('SetParams',{key:'wsize',val:''});
}
if(!this.FirstLoad){
VuexStore.dispatch('handleHash');
}
},800),
'hsize.start':debounce(function(val){//尺寸高
if(val || this.hsize.end){
var str = val+'_'+this.hsize.end;
VuexStore.commit('SetParams',{key:'hsize',val:str});
}else{
VuexStore.commit('SetParams',{key:'hsize',val:''});
}
if(!this.FirstLoad){
VuexStore.dispatch('handleHash');
}
},800),
'hsize.end':debounce(function(val){//尺寸高
if(val || this.hsize.start){
var str = this.hsize.start+'_'+val;
VuexStore.commit('SetParams',{key:'hsize',val:str});
}else{
VuexStore.commit('SetParams',{key:'hsize',val:''});
}
if(!this.FirstLoad){
VuexStore.dispatch('handleHash');
}
},800),
'GetParams.shape':{
handler(val){
if(val){
var data = val.split(',');
if(data.indexOf('自定义')>-1){
data.splice(data.indexOf('自定义'),1);
this.shape.txt = data.join(',');
}else{
this.shape.txt = val;
}
}else{
this.shape.txt = '';
}
},
deep:true,
},
'shape.width':debounce(function(val){
this.handleWatchShape();
},800),
'shape.height':debounce(function(val){
this.handleWatchShape();
},800),
GetclassifyInit(val){
this.classify.text = val;
}
}

View File

@@ -0,0 +1,8 @@
/*!
* jQuery Mousewheel 3.1.13
*
* Copyright 2015 jQuery Foundation and other contributors
* Released under the MIT license.
* http://jquery.org/license
*/
!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a:a(jQuery)}(function(a){function b(b){var g=b||window.event,h=i.call(arguments,1),j=0,l=0,m=0,n=0,o=0,p=0;if(b=a.event.fix(g),b.type="mousewheel","detail"in g&&(m=-1*g.detail),"wheelDelta"in g&&(m=g.wheelDelta),"wheelDeltaY"in g&&(m=g.wheelDeltaY),"wheelDeltaX"in g&&(l=-1*g.wheelDeltaX),"axis"in g&&g.axis===g.HORIZONTAL_AXIS&&(l=-1*m,m=0),j=0===m?l:m,"deltaY"in g&&(m=-1*g.deltaY,j=m),"deltaX"in g&&(l=g.deltaX,0===m&&(j=-1*l)),0!==m||0!==l){if(1===g.deltaMode){var q=a.data(this,"mousewheel-line-height");j*=q,m*=q,l*=q}else if(2===g.deltaMode){var r=a.data(this,"mousewheel-page-height");j*=r,m*=r,l*=r}if(n=Math.max(Math.abs(m),Math.abs(l)),(!f||f>n)&&(f=n,d(g,n)&&(f/=40)),d(g,n)&&(j/=40,l/=40,m/=40),j=Math[j>=1?"floor":"ceil"](j/f),l=Math[l>=1?"floor":"ceil"](l/f),m=Math[m>=1?"floor":"ceil"](m/f),k.settings.normalizeOffset&&this.getBoundingClientRect){var s=this.getBoundingClientRect();o=b.clientX-s.left,p=b.clientY-s.top}return b.deltaX=l,b.deltaY=m,b.deltaFactor=f,b.offsetX=o,b.offsetY=p,b.deltaMode=0,h.unshift(b,j,l,m),e&&clearTimeout(e),e=setTimeout(c,200),(a.event.dispatch||a.event.handle).apply(this,h)}}function c(){f=null}function d(a,b){return k.settings.adjustOldDeltas&&"mousewheel"===a.type&&b%120===0}var e,f,g=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],h="onwheel"in document||document.documentMode>=9?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],i=Array.prototype.slice;if(a.event.fixHooks)for(var j=g.length;j;)a.event.fixHooks[g[--j]]=a.event.mouseHooks;var k=a.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var c=h.length;c;)this.addEventListener(h[--c],b,!1);else this.onmousewheel=b;a.data(this,"mousewheel-line-height",k.getLineHeight(this)),a.data(this,"mousewheel-page-height",k.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var c=h.length;c;)this.removeEventListener(h[--c],b,!1);else this.onmousewheel=null;a.removeData(this,"mousewheel-line-height"),a.removeData(this,"mousewheel-page-height")},getLineHeight:function(b){var c=a(b),d=c["offsetParent"in a.fn?"offsetParent":"parent"]();return d.length||(d=a("body")),parseInt(d.css("fontSize"),10)||parseInt(c.css("fontSize"),10)||16},getPageHeight:function(b){return a(b).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};a.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})});

View File

@@ -0,0 +1,75 @@
//监听div大小变化
(function($, h, c) {
var a = $([]),
e = $.resize = $.extend($.resize, {}),
i,
k = "setTimeout",
j = "resize",
d = j + "-special-event",
b = "delay",
f = "throttleWindow";
e[b] = 250;
e[f] = true;
$.event.special[j] = {
setup: function() {
if (!e[f] && this[k]) {
return false;
}
var l = $(this);
a = a.add(l);
$.data(this, d, {
w: l.width(),
h: l.height()
});
if (a.length === 1) {
g();
}
},
teardown: function() {
if (!e[f] && this[k]) {
return false;
}
var l = $(this);
a = a.not(l);
l.removeData(d);
if (!a.length) {
clearTimeout(i);
}
},
add: function(l) {
if (!e[f] && this[k]) {
return false;
}
var n;
function m(s, o, p) {
var q = $(this),
r = $.data(this, d);
r.w = o !== c ? o: q.width();
r.h = p !== c ? p: q.height();
n.apply(this, arguments);
}
if ($.isFunction(l)) {
n = l;
return m;
} else {
n = l.handler;
l.handler = m;
}
}
};
function g() {
i = h[k](function() {
a.each(function() {
var n = $(this),
m = n.width(),
l = n.height(),
o = $.data(this, d);
if (m !== o.w || l !== o.h) {
n.trigger(j, [o.w = m, o.h = l]);
}
});
g();
},
e[b]);
}
})(jQuery, this);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@@ -80,6 +80,6 @@
} }
else{ else{
$theme = GetThemeColor(); $theme = GetThemeColor();
include template('page/library'); include template('pc/page/library');
} }

View File

@@ -28,4 +28,4 @@ foreach($resourcesdata['foldernames'] as $fval){
$resourcesdata['foldernames'] = json_encode($foldernames); $resourcesdata['foldernames'] = json_encode($foldernames);
$theme = GetThemeColor(); $theme = GetThemeColor();
include template('page/share'); include template('pc/page/share');

View File

@@ -10,7 +10,7 @@
</div> </div>
<div class="h-right"> <div class="h-right">
<div class="r-option"> <div class="r-option">
<el-dropdown trigger="click" @command="handleavatar"> <el-dropdown v-cloak trigger="click" @command="handleavatar">
<div id="dzz_avatar_img">{eval echo avatar_block($_G[uid]);} </div> <div id="dzz_avatar_img">{eval echo avatar_block($_G[uid]);} </div>
<el-dropdown-menu slot="dropdown" style="width: 165px;"> <el-dropdown-menu slot="dropdown" style="width: 165px;">
<el-dropdown-item command="personal">个人设置</el-dropdown-item> <el-dropdown-item command="personal">个人设置</el-dropdown-item>
@@ -35,7 +35,6 @@
<script type="text/javascript"> <script type="text/javascript">
Vue.component('page-header', { Vue.component('page-header', {
template: '#PageHeader', template: '#PageHeader',
props: ['isscreenshow'],
data: function() { data: function() {
return { return {
} }

View File

@@ -8,7 +8,7 @@
</a> </a>
<div class="h-center"> <div class="h-center">
<div class="result-section"> <div class="result-section">
<div class="library-classification"> <div class="library-classification" v-if="librarys.length>1">
<span class="el-dropdown-link block" @click="handleRefreshLibrary"> <span class="el-dropdown-link block" @click="handleRefreshLibrary">
<span>{{librarysName}}</span> <span>{{librarysName}}</span>
</span> </span>
@@ -24,7 +24,7 @@
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
<div class="input-box"> <div class="input-box" :class="librarys.length<2?'radius':''">
<div class="InputKeyword" @click="ShowPopoverSearch"> <div class="InputKeyword" @click="ShowPopoverSearch">
<div class="el-popover-search"> <div class="el-popover-search">
<el-input class="search-keyword" @input="handleKeywordInput" v-model="keyword" clearable></el-input> <el-input class="search-keyword" @input="handleKeywordInput" v-model="keyword" clearable></el-input>
@@ -61,7 +61,7 @@
</div> </div>
</el-scrollbar> </el-scrollbar>
</div> </div>
<!--{template components/headerindex/searchScreen}--> <!--{template pc/components/headerindex/searchScreen}-->
</div> </div>
</div> </div>
@@ -101,7 +101,7 @@
</div> </div>
</div> </div>
<!--{template components/headerindex/screen}--> <!--{template pc/components/headerindex/screen}-->
</div> </div>
@@ -168,6 +168,7 @@
</template> </template>
<script type="text/javascript"> <script type="text/javascript">
Vue.component('page-header', { Vue.component('page-header', {
name:'PageHeader',
template: '#PageHeader', template: '#PageHeader',
props: [], props: [],
data: function() { data: function() {

View File

@@ -1,6 +1,6 @@
<template id="images"> <template id="images">
<div style="position: relative;min-height: 300px;"> <div style="position: relative;min-height: 300px;">
<components v-if="imgdatas.length" :is="GetLayout" :imgdatas="imgdatas" @handleoperation="handleoperation" ref="mychild"></components> <components v-if="imgdatas.length" :is="GetLayout" :imgdatas="imgdatas" @handleoperation="handleoperation" ref="mychild" @opentype="opentype"></components>
<div v-if="!imageLoading&&imgdatas.length==0&&!GetFirstLoading" class="el-empty"> <div v-if="!imageLoading&&imgdatas.length==0&&!GetFirstLoading" class="el-empty">
<div class="el-empty__image"> <div class="el-empty__image">
<img src="{MOD_PATH}/image/nodata.svg" /> <img src="{MOD_PATH}/image/nodata.svg" />
@@ -102,6 +102,9 @@
}, },
methods: { methods: {
opentype(val){
this.$emit('opentype',val);
},
handleScroll(){ handleScroll(){
var self = this; var self = this;
var Parameter = self.Parameter; var Parameter = self.Parameter;
@@ -150,7 +153,6 @@
} }
}, },
}, },
mounted() { mounted() {
var self = this; var self = this;
@@ -211,7 +213,7 @@
<div v-if="InformationShow.indexOf('tagging')>-1&&parseInt(item.annonationnum)>0" class="annotation">{{item.annonationnum}}</div> <div v-if="InformationShow.indexOf('tagging')>-1&&parseInt(item.annonationnum)>0" class="annotation">{{item.annonationnum}}</div>
<div class="bottom-img-message" v-if="InformationShow.length"> <div class="bottom-img-message" v-if="InformationShow.length">
<div class="name"> <div class="name" v-if="InformationShow.indexOf('name')>-1 || InformationShow.indexOf('extension')>-1">
<span v-if="InformationShow.indexOf('name')>-1">{{item.name}}</span> <span v-if="InformationShow.indexOf('name')>-1">{{item.name}}</span>
<span v-if="InformationShow.indexOf('extension')>-1" class="suffix">.{{item.ext}}</span> <span v-if="InformationShow.indexOf('extension')>-1" class="suffix">.{{item.ext}}</span>
</div> </div>
@@ -302,10 +304,19 @@
GetimgParameter(){ GetimgParameter(){
return VuexStore.getters.GetimgParameter; return VuexStore.getters.GetimgParameter;
}, },
Getinformation_Opentype(){
return VuexStore.getters.Getinformation_Opentype;
},
}, },
methods:$.extend({},ImgRowGrid,{ methods:$.extend({},ImgRowGrid,{
handleDetails(rid){ handleDetails(rid){
if(this.Getinformation_Opentype == 'new'){
window.open(SITEURL+MOD_URL+'&op=details#rid='+rid); window.open(SITEURL+MOD_URL+'&op=details#rid='+rid);
}else{
this.$emit('opentype',rid);
// window.location.href = SITEURL+MOD_URL+'&op=details#rid='+rid;
}
}, },
handleoperation(type,val){ handleoperation(type,val){
this.$emit('handleoperation',{ this.$emit('handleoperation',{
@@ -439,7 +450,6 @@
} }
}, },
watch:{ watch:{
imgdatas:{ imgdatas:{
handler(val){ handler(val){
@@ -484,6 +494,9 @@
GetScrollAppend(){ GetScrollAppend(){
return VuexStore.getters.GetScrollAppend; return VuexStore.getters.GetScrollAppend;
}, },
Getinformation_Opentype(){
return VuexStore.getters.Getinformation_Opentype;
},
}, },
created() { created() {
}, },
@@ -590,7 +603,11 @@
}) })
}, },
handleDetails(rid){ handleDetails(rid){
if(this.Getinformation_Opentype == 'new'){
window.open(SITEURL+MOD_URL+'&op=details#rid='+rid); window.open(SITEURL+MOD_URL+'&op=details#rid='+rid);
}else{
this.$emit('opentype',rid);
}
}, },
handleoperation(type,val){ handleoperation(type,val){
this.$emit('handleoperation',{ this.$emit('handleoperation',{
@@ -625,7 +642,6 @@
}, },
}, },
waterFall:{ waterFall:{
props:['imgdatas'], props:['imgdatas'],
template:`<div id="waterfallCenter"> template:`<div id="waterfallCenter">
@@ -770,13 +786,20 @@
GetScrollAppend(){ GetScrollAppend(){
return VuexStore.getters.GetScrollAppend; return VuexStore.getters.GetScrollAppend;
}, },
Getinformation_Opentype(){
return VuexStore.getters.Getinformation_Opentype;
},
}, },
created() { created() {
}, },
methods:$.extend({},ImgWaterfall,{ methods:$.extend({},ImgWaterfall,{
handleDetails(rid){ handleDetails(rid){
if(this.Getinformation_Opentype == 'new'){
window.open(SITEURL+MOD_URL+'&op=details#rid='+rid); window.open(SITEURL+MOD_URL+'&op=details#rid='+rid);
}else{
this.$emit('opentype',rid);
}
}, },
handleoperation(type,val){ handleoperation(type,val){
this.$emit('handleoperation',{ this.$emit('handleoperation',{

View File

@@ -1,5 +1,4 @@
<script type="text/javascript"> <script type="text/javascript">
var VuexStore = new Vuex.Store({ var VuexStore = new Vuex.Store({
state: { state: {
Uid:'$_G[uid]', Uid:'$_G[uid]',
@@ -9,7 +8,9 @@
information:{ information:{
show:[], show:[],
other:'', other:'',
layout:'' layout:'',
opentype:'',
opentype:''
} }
}, },
ScreenData:[], ScreenData:[],
@@ -102,7 +103,6 @@
}else{ }else{
state.imgdatas = val.data; state.imgdatas = val.data;
} }
}, },
SetShowScreen(state,val){//设置筛选显示或者隐藏 SetShowScreen(state,val){//设置筛选显示或者隐藏
state.ShowScreen = val; state.ShowScreen = val;
@@ -124,6 +124,9 @@
seTHeader_Information_Layout(state,val){//设置图片显示方式 seTHeader_Information_Layout(state,val){//设置图片显示方式
state.header.information.layout = val; state.header.information.layout = val;
}, },
seTHeader_Information_Opentype(state,val){//设置图片打开方式
state.header.information.opentype = val;
},
SetimgParameter(state,val){//设置图片参数 SetimgParameter(state,val){//设置图片参数
state.imgParameter[val.key] = val.val; state.imgParameter[val.key] = val.val;
}, },
@@ -174,6 +177,9 @@
Getinformation_other(state){//获取图片显示内容 Getinformation_other(state){//获取图片显示内容
return state.header.information.other; return state.header.information.other;
}, },
Getinformation_Opentype(state){//获取图片打开方式
return state.header.information.opentype;
},
GetimgParameter(state){//获取图片排序方式 GetimgParameter(state){//获取图片排序方式
return state.imgParameter; return state.imgParameter;
}, },
@@ -280,15 +286,20 @@
// commit('SetAppid',value.appid); // commit('SetAppid',value.appid);
for(var i in value.param){ for(var i in value.param){
if(i == 'tagdata'){ if(i == 'tagdata'){
if(state.ParamsInit.tag && state.ParamsInit.tag.length == 0){
if(value.param[i] && value.param[i].length){ if(value.param[i] && value.param[i].length){
commit('SetParamsInit',{key:'tag',val:value.param[i]}); commit('SetParamsInit',{key:'tag',val:value.param[i]});
} }
}
}else if(i == 'folderdata'){ }else if(i == 'folderdata'){
if(!state.classifyInit){
var txts = []; var txts = [];
for(var t in value.param[i]){ for(var t in value.param[i]){
txts.push(value.param[i][t]) txts.push(value.param[i][t])
} }
commit('SetclassifyInit',txts.join(',')); commit('SetclassifyInit',txts.join(','));
}
}else{ }else{
var str = { var str = {
key:i, key:i,

View File

@@ -19,10 +19,10 @@
<script src="{MOD_PATH}/js/vue/vue.js?{VERHASH}"></script> <script src="{MOD_PATH}/js/vue/vue.js?{VERHASH}"></script>
<link rel="stylesheet" href="{MOD_PATH}/css/theme/$theme/index.css?{VERHASH}"> <link rel="stylesheet" href="{MOD_PATH}/css/theme/$theme/index.css?{VERHASH}">
<link rel="stylesheet" href="{MOD_PATH}/css/theme/$theme/root.css?{VERHASH}"> <link rel="stylesheet" href="{MOD_PATH}/css/theme/$theme/root.css?{VERHASH}">
<script type="text/javascript" src="{MOD_PATH}/js/plug/element-ui.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/plug/element-ui.js?{VERHASH}"></script>
<script type="text/javascript" src="static/jquery/jquery.min.js?{VERHASH}"></script> <script type="text/javascript" src="static/jquery/jquery.min.js?{VERHASH}"></script>
<script type="text/javascript" src="static/jquery/jquery.json-2.4.min.js?{VERHASH}"></script> <script type="text/javascript" src="static/jquery/jquery.json-2.4.min.js?{VERHASH}"></script>
<script type="text/javascript" src="{MOD_PATH}/js/common.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/common.js?{VERHASH}"></script>
<link rel="stylesheet" href="{MOD_PATH}/css/common.css?{VERHASH}"> <link rel="stylesheet" href="{MOD_PATH}/css/pc/common.css?{VERHASH}">
<link rel="stylesheet" href="{MOD_PATH}/css/fonts/remixicon.css?{VERHASH}"> <link rel="stylesheet" href="{MOD_PATH}/css/fonts/remixicon.css?{VERHASH}">
<script type="text/javascript">var DZZSCRIPT='{DZZSCRIPT}',LANG='{$_G[language]}', STATICURL = 'static/', IMGDIR = '{$_G[setting][imgdir]}', VERHASH = '{VERHASH}', charset = '{CHARSET}', dzz_uid = '$_G[uid]', cookiepre = '{$_G[config][cookie][cookiepre]}', cookiedomain = '{$_G[config][cookie][cookiedomain]}', cookiepath = '{$_G[config][cookie][cookiepath]}',attackevasive = '{$_G[config][security][attackevasive]}', disallowfloat = '{$_G[setting][disallowfloat]}', REPORTURL = '$_G[currenturl_encode]', SITEURL = '$_G[siteurl]', JSPATH = '$_G[setting][jspath]',MOD_PATH='{MOD_PATH}',APP_URL='{MOD_URL}',MOD_URL='{MOD_URL}';</script> <script type="text/javascript">var DZZSCRIPT='{DZZSCRIPT}',LANG='{$_G[language]}', STATICURL = 'static/', IMGDIR = '{$_G[setting][imgdir]}', VERHASH = '{VERHASH}', charset = '{CHARSET}', dzz_uid = '$_G[uid]', cookiepre = '{$_G[config][cookie][cookiepre]}', cookiedomain = '{$_G[config][cookie][cookiedomain]}', cookiepath = '{$_G[config][cookie][cookiepath]}',attackevasive = '{$_G[config][security][attackevasive]}', disallowfloat = '{$_G[setting][disallowfloat]}', REPORTURL = '$_G[currenturl_encode]', SITEURL = '$_G[siteurl]', JSPATH = '$_G[setting][jspath]',MOD_PATH='{MOD_PATH}',APP_URL='{MOD_URL}',MOD_URL='{MOD_URL}';</script>

View File

@@ -1,6 +1,6 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/admin.css?{VERHASH}"/> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/admin.css?{VERHASH}"/>
<!--{template frame/header_simple_end}--> <!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<el-header height="auto" style="padding: 0;z-index: 10;"> <el-header height="auto" style="padding: 0;z-index: 10;">
@@ -101,7 +101,7 @@
</el-container> </el-container>
</el-container> </el-container>
</div> </div>
<!--{template components/headerAdmin/index}--> <!--{template pc/components/headerAdmin/index}-->
<script type="text/javascript"> <script type="text/javascript">
new Vue({ new Vue({
el: '#dzzoffice', el: '#dzzoffice',
@@ -199,4 +199,4 @@
}) })
</script> </script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -1,7 +1,7 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<script type="text/javascript" src="{MOD_PATH}/js/plug/sortable.min.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/plug/sortable.min.js?{VERHASH}"></script>
<link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/admin.css?{VERHASH}"/> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/admin.css?{VERHASH}"/>
<!--{template frame/header_simple_end}--> <!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<el-header height="auto" style="padding: 0;z-index: 10;"> <el-header height="auto" style="padding: 0;z-index: 10;">
@@ -44,7 +44,7 @@
</el-container> </el-container>
</el-container> </el-container>
</div> </div>
<!--{template components/headerAdmin/index}--> <!--{template pc/components/headerAdmin/index}-->
<script type="text/javascript"> <script type="text/javascript">
new Vue({ new Vue({
el: '#dzzoffice', el: '#dzzoffice',
@@ -139,4 +139,4 @@
}) })
</script> </script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -1,6 +1,6 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/admin.css?{VERHASH}"/> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/admin.css?{VERHASH}"/>
<!--{template frame/header_simple_end}--> <!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<el-header height="auto" style="padding: 0;z-index: 10;"> <el-header height="auto" style="padding: 0;z-index: 10;">
@@ -58,7 +58,7 @@
</el-container> </el-container>
</el-container> </el-container>
</div> </div>
<!--{template components/headerAdmin/index}--> <!--{template pc/components/headerAdmin/index}-->
<script type="text/javascript"> <script type="text/javascript">
new Vue({ new Vue({
el: '#dzzoffice', el: '#dzzoffice',
@@ -106,4 +106,4 @@
}) })
</script> </script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -1,6 +1,6 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/admin.css?{VERHASH}"/> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/admin.css?{VERHASH}"/>
<!--{template frame/header_simple_end}--> <!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<el-header height="auto" style="padding: 0;z-index: 10;"> <el-header height="auto" style="padding: 0;z-index: 10;">
@@ -83,6 +83,12 @@
<el-radio border label="desc">降序</el-radio> <el-radio border label="desc">降序</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="默认打开文件窗口方式:">
<el-radio-group v-model="formdata.pichomepagesetting.opentype">
<el-radio border label="new">新窗口</el-radio>
<el-radio border label="current">当前窗口</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" @click="handleSubmit" :loading="btnloading">保存更改</el-button> <el-button type="primary" @click="handleSubmit" :loading="btnloading">保存更改</el-button>
</el-form-item> </el-form-item>
@@ -95,7 +101,7 @@
</el-container> </el-container>
</el-container> </el-container>
</div> </div>
<!--{template components/headerAdmin/index}--> <!--{template pc/components/headerAdmin/index}-->
<script type="text/javascript"> <script type="text/javascript">
new Vue({ new Vue({
el: '#dzzoffice', el: '#dzzoffice',
@@ -119,6 +125,7 @@
other:'btime', other:'btime',
sort: '2', sort: '2',
desc: 'desc', desc: 'desc',
opentype:'new'
} }
} }
} }
@@ -131,6 +138,7 @@
other:'$setting[pichomepagesetting][other]', other:'$setting[pichomepagesetting][other]',
sort: '$setting[pichomepagesetting][sort]', sort: '$setting[pichomepagesetting][sort]',
desc: '$setting[pichomepagesetting][desc]', desc: '$setting[pichomepagesetting][desc]',
opentype: '$setting[pichomepagesetting][opentype]',
}; };
var oldshow = params.show; var oldshow = params.show;
var newshow = []; var newshow = [];
@@ -150,6 +158,7 @@
other:params.other?params.other:'btime', other:params.other?params.other:'btime',
sort: params.sort?params.sort:'2', sort: params.sort?params.sort:'2',
desc: params.desc?params.desc:'desc', desc: params.desc?params.desc:'desc',
opentype: params.opentype?params.opentype:'new',
}; };
this.formdata.pichomepagesetting = Newparams; this.formdata.pichomepagesetting = Newparams;
}, },
@@ -186,4 +195,4 @@
}) })
</script> </script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -1,5 +1,5 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/admin.css?{VERHASH}" /> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/admin.css?{VERHASH}" />
<style type="text/css"> <style type="text/css">
.tipTxt{ .tipTxt{
margin-left: 6px; margin-left: 6px;
@@ -12,8 +12,11 @@
.avatarstatus .img-circle{ .avatarstatus .img-circle{
border-radius: 0; border-radius: 0;
} }
.page-content .Topcarousel{
line-height: 148px;
}
</style> </style>
<!--{template frame/header_simple_end}--> <!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<el-header height="auto" style="padding: 0;z-index: 10;"> <el-header height="auto" style="padding: 0;z-index: 10;">
@@ -35,17 +38,15 @@
:before-upload="beforeLogoUpload" :before-upload="beforeLogoUpload"
:show-file-list="false"> :show-file-list="false">
<el-progress v-show="ispercentage" type="circle" :width="148" :percentage="percentage"></el-progress> <el-progress v-show="ispercentage" type="circle" :width="148" :percentage="percentage"></el-progress>
<template v-if="ruleForm.imgpath||avatarstatus==1"> <template v-if="ruleForm.imgpath||avatarstatus=='1'">
<template v-if="ruleForm.imgpath"> <template v-if="ruleForm.imgpath">
<el-image class="avatarimg" fit="contain" :src="ruleForm.imgpath"></el-image> <el-image class="avatarimg" fit="contain" :src="ruleForm.imgpath"></el-image>
</template> </template>
<template v-else> <template v-else>
<div class="avatarstatus"> <div class="avatarstatus">
{eval echo avatar_block($_G[uid]);} <img :src="'avatar.php?uid=1&random='+Math.ceil(Math.random()*100)" title="admin" class="img-circle special_avatar_class">
</div> </div>
</template> </template>
</template> </template>
<i v-else class="el-icon-plus avatar-uploader-icon"></i> <i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload> </el-upload>
@@ -95,7 +96,7 @@
</el-main> </el-main>
</el-container> </el-container>
</div> </div>
<!--{template components/headerAdmin/index}--> <!--{template pc/components/headerAdmin/index}-->
<script type="text/javascript"> <script type="text/javascript">
new Vue({ new Vue({
el: '#dzzoffice', el: '#dzzoffice',
@@ -172,6 +173,7 @@
} }
}, },
created() { created() {
// console.log(11111)
// var avatarstatus = // var avatarstatus =
}, },
@@ -252,4 +254,4 @@
}) })
</script> </script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -1,17 +1,52 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/details.css?{VERHASH}"/> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/xuanzhuan/index.css?{VERHASH}"/>
<!--{template frame/header_simple_end}--> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/details.css?{VERHASH}"/>
<style type="text/css">
.el-page-header__left{
/* position: fixed;
top: 90px;
left: 20px; */
z-index: 100;
color: var(--header-text);
margin-right: 0;
}
.el-page-header__left:hover{
color: var(--header-active);
}
.el-page-header__left .el-icon-back{
font-size: 21px;
font-weight: 700;
}
.el-page-header__left .el-page-header__title{
font-size: 16px;
font-weight: 700;
}
.el-page-header__left::after{
display: none;
}
</style>
<!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<!--{if $opentype=='current'}-->
<!--{/if}-->
<el-header height="70" style="padding: 0;z-index: 10;"> <el-header height="70" style="padding: 0;z-index: 10;">
<div id="top_header"> <div id="top_header">
<div class="header-content"> <div class="header-content">
<!--{if $opentype=='current'}-->
<div class="h-left">
<div class="el-page-header__left" @click="goBack"><i class="el-icon-back"></i><div class="el-page-header__title">返回</div></div>
</div>
<!--{else}-->
<a class="h-left" href="{MOD_URL}"> <a class="h-left" href="{MOD_URL}">
<el-image src="data/attachment/sitelogo/sitelogo.png?{VERHASH}" fit="contain"></el-image> <el-image src="data/attachment/sitelogo/sitelogo.png?{VERHASH}" fit="contain"></el-image>
<span class="text">$_G['setting'][sitename]</span> <span class="text">$_G['setting'][sitename]</span>
</a> </a>
<!--{/if}-->
<div class="h-center"> <div class="h-center">
<span>{{ImgParam.index}}&nbsp;&nbsp;/&nbsp;&nbsp;{{ImgParam.total}}</span> <span v-cloak>{{ImgParam.index}}&nbsp;&nbsp;/&nbsp;&nbsp;{{ImgParam.total}}</span>
<div class="carousel__arrow-box clearfix"> <div class="carousel__arrow-box clearfix">
<el-tooltip effect="dark" content="上一张" placement="bottom"> <el-tooltip effect="dark" content="上一张" placement="bottom">
<div @click="handleCarouselArrow('left')" class="carousel__arrow carousel__arrow--left"><i class="el-icon-arrow-left icon"></i></div> <div @click="handleCarouselArrow('left')" class="carousel__arrow carousel__arrow--left"><i class="el-icon-arrow-left icon"></i></div>
@@ -31,7 +66,8 @@
</div> </div>
</div> </div>
</div> </div>
<el-dropdown trigger="click" @command="handleImgScale">
<el-dropdown trigger="click" @command="handleImgScale" v-cloak>
<span class="text proportionnum">{{ImgParam.fproportion}}%</span> <span class="text proportionnum">{{ImgParam.fproportion}}%</span>
<el-dropdown-menu slot="dropdown" style="width: 125px;" class="proportionnum-box"> <el-dropdown-menu slot="dropdown" style="width: 125px;" class="proportionnum-box">
<el-dropdown-item command="5">5%</el-dropdown-item> <el-dropdown-item command="5">5%</el-dropdown-item>
@@ -55,25 +91,32 @@
</el-tooltip> </el-tooltip>
<span class="text" @click="handleImgOperation(2)">自适应</span> <span class="text" @click="handleImgOperation(2)">自适应</span>
<el-tooltip effect="dark" content="旋转" placement="bottom"> <el-tooltip effect="dark" content="旋转" placement="bottom">
<span class="text" @click="handleImgOperation(3)"><i class="el-icon-refresh-right icon"></i></span> <span class="text" @click="handleImgOperation(3)"><i class="el-icon-refresh-right icon"></i></span>
</el-tooltip> </el-tooltip>
<el-tooltip effect="dark" content="左右镜像" placement="bottom">
<span class="text"><i class="iconfont icon-zuoyoufanzhuan_huaban1 icon" @click="handleImgOperation(4)" style="font-size: 21px;font-weight: 500;"></i></span>
</el-tooltip>
<el-tooltip effect="dark" content="上下镜像" placement="bottom">
<span class="text"><i class="iconfont icon-chuizhifanzhuan_huaban1 icon" @click="handleImgOperation(5)" style="font-size: 21px;font-weight: 500;"></i></span>
</el-tooltip>
</div> </div>
</div> </div>
<div class="h-right"> <div class="h-right">
<div class="r-option"> <div class="r-option">
<el-tooltip effect="dark" :content="IsFullScreen?'退出全屏':'全屏'" placement="bottom"> <el-tooltip effect="dark" :content="IsFullScreen?'退出全屏':'全屏'" placement="bottom">
<div class="right-block" @click="handleFullScreen(IsFullScreen?false:true)"><i v-if="IsFullScreen" class="ri-fullscreen-exit-line"></i><i v-else class="ri-fullscreen-line"></i></div> <div class="right-block" @click="handleFullScreen(IsFullScreen?false:true)"><i v-if="IsFullScreen" v-cloak class="ri-fullscreen-exit-line"></i><i v-else class="ri-fullscreen-line"></i></div>
</el-tooltip> </el-tooltip>
<el-tooltip effect="dark" :content="HideInformation?'显示信息':'隐藏信息'" placement="bottom"> <el-tooltip effect="dark" :content="HideInformation?'显示信息':'隐藏信息'" placement="bottom">
<div class="right-block" @click="handleHideInformation(HideInformation?false:true)"> <div class="right-block" @click="handleHideInformation(HideInformation?false:true)">
<i v-if="HideInformation" class="ri-layout-right-2-line"></i><i v-else class="ri-layout-right-line"></i> <i v-if="HideInformation" v-cloak class="ri-layout-right-2-line"></i><i v-else class="ri-layout-right-line"></i>
</div> </div>
</el-tooltip> </el-tooltip>
<!--{if $_G[uid]}-->
<el-dropdown trigger="click" @command="handleavatar"> <el-dropdown trigger="click" @command="handleavatar" v-cloak>
<div id="dzz_avatar_img">{eval echo avatar_block($_G[uid]);} </div> <div id="dzz_avatar_img">{eval echo avatar_block($_G[uid]);} </div>
<el-dropdown-menu slot="dropdown" style="width: 165px;"> <el-dropdown-menu slot="dropdown" style="width: 165px;">
<el-dropdown-item command="personal">个人设置</el-dropdown-item> <el-dropdown-item command="personal">个人设置</el-dropdown-item>
@@ -88,6 +131,9 @@
<el-dropdown-item command="OutLogin">退出站点</el-dropdown-item> <el-dropdown-item command="OutLogin">退出站点</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
<!--{else}-->
<el-button type="primary" size="mini" @click="GoLogin">登录</el-button>
<!--{/if}-->
</div> </div>
</div> </div>
</div> </div>
@@ -147,7 +193,7 @@
<div class="information-box"> <div class="information-box">
<el-scrollbar class="page-component__scroll"> <el-scrollbar class="page-component__scroll">
<div class="title">{{imagesData.name}}.{{imagesData.ext}}</div> <div class="title"><span v-cloak>{{imagesData.name}}</span>.<span v-cloak>{{imagesData.ext}}</span></div>
<div class="operation clearfix" v-if="(imagesData.opentype!='video'&&imagesData.opentype!='pdf'&&imagesData.opentype!='text') || parseInt(imagesData.download) || parseInt(imagesData.share)"> <div class="operation clearfix" v-if="(imagesData.opentype!='video'&&imagesData.opentype!='pdf'&&imagesData.opentype!='text') || parseInt(imagesData.download) || parseInt(imagesData.share)">
<div v-if="parseInt(imagesData.download)" class="circular bg" @click="handleDown">立即下载</div> <div v-if="parseInt(imagesData.download)" class="circular bg" @click="handleDown">立即下载</div>
<el-tooltip v-if="imagesData.opentype!='video'&&imagesData.opentype!='pdf'&&imagesData.opentype!='text'" class="item" effect="dark" content="查看原图" placement="bottom"> <el-tooltip v-if="imagesData.opentype!='video'&&imagesData.opentype!='pdf'&&imagesData.opentype!='text'" class="item" effect="dark" content="查看原图" placement="bottom">
@@ -165,9 +211,9 @@
<div class="message"> <div class="message">
<div class="thesis-wrap" v-if="imagesData.colors && imagesData.colors.length"> <div class="thesis-wrap" v-if="imagesData.colors && imagesData.colors.length">
<div class="tip-title">颜色</div> <div class="tip-title">颜色</div>
<ul class="color clearfix"> <ul class="color clearfix" v-cloak>
<li class="color-list" v-for="citem in imagesData.colors"> <li class="color-list" v-for="citem in imagesData.colors">
<el-dropdown trigger="click" @visible-change="ShowPopoverColor(citem.val)" @command="handleCommandColor" placement="bottom"> <el-dropdown v-cloak trigger="click" @visible-change="ShowPopoverColor(citem.val)" @command="handleCommandColor" placement="bottom">
<el-tooltip :content="'#'+citem.val" effect="light" placement="top" popper-class="color-top"> <el-tooltip :content="'#'+citem.val" effect="light" placement="top" popper-class="color-top">
<div class="bg" :style="{background: '#'+citem.val}"></div> <div class="bg" :style="{background: '#'+citem.val}"></div>
</el-tooltip> </el-tooltip>
@@ -189,27 +235,27 @@
<div class="thesis-wrap" v-if="imagesData.tag && imagesData.tag.length"> <div class="thesis-wrap" v-if="imagesData.tag && imagesData.tag.length">
<div class="tip-title">标签</div> <div class="tip-title">标签</div>
<div v-if="imagesData.tag" class="label clearfix"> <div v-if="imagesData.tag" class="label clearfix" v-cloak>
<el-tag v-for="item in imagesData.tag" effect="plain" @click="handleClickTag(item.key)">{{item.val}}</el-tag> <el-tag v-for="item in imagesData.tag" effect="plain" @click="handleClickTag(item.key)">{{item.val}}</el-tag>
</div> </div>
</div> </div>
<div class="thesis-wrap" v-if="imagesData.desc"> <div class="thesis-wrap" v-if="imagesData.desc" v-cloak>
<div class="tip-title">注释</div> <div class="tip-title">注释</div>
<div v-if="imagesData.desc" class="notes">{{imagesData.desc}}</div> <div v-if="imagesData.desc" class="notes">{{imagesData.desc}}</div>
</div> </div>
<div class="thesis-wrap" v-if="imagesData.link"> <div class="thesis-wrap" v-if="imagesData.link" v-cloak>
<div class="tip-title">链接</div> <div class="tip-title">链接</div>
<p class="link"> <p class="link">
<span id="copyText" @click="handleClickLink(imagesData.link)">{{imagesData.link}}</span> <span id="copyText" @click="handleClickLink(imagesData.link)">{{imagesData.link}}</span>
<i class="ri-file-copy-line" @click="copyText"></i> <i class="ri-file-copy-line" @click="copyText"></i>
</p> </p>
</div> </div>
<div class="thesis-wrap" v-if="imagesData.fids"> <div class="thesis-wrap" v-if="imagesData.foldernames && imagesData.foldernames.length">
<div class="tip-title">分类</div> <div class="tip-title">分类</div>
<div class="label clearfix" style="padding: 0;"> <div class="label clearfix" style="padding: 0;" v-cloak>
<el-tag v-for="item in imagesData.fids" effect="plain" @click="handleClickClass(item)"> <el-tag v-for="item in imagesData.foldernames" effect="plain" @click="handleClickClass(item.key)">
{{imagesData.foldernames[item]}}</el-tag> {{item.val}}</el-tag>
</div> </div>
</div> </div>
@@ -221,7 +267,7 @@
<div class="name">评分</div> <div class="name">评分</div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="record"> <div class="record" v-cloak>
<i v-for="item in parseInt(imagesData.grade)" <i v-for="item in parseInt(imagesData.grade)"
class="ri-star-fill star active"></i> class="ri-star-fill star active"></i>
<i v-for="item in 5-parseInt(imagesData.grade)" <i v-for="item in 5-parseInt(imagesData.grade)"
@@ -234,7 +280,7 @@
<div class="name">尺寸</div> <div class="name">尺寸</div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="record">{{imagesData.width}}×{{imagesData.height}}</div> <div class="record" v-cloak>{{imagesData.width}}×{{imagesData.height}}</div>
</el-col> </el-col>
</el-row> </el-row>
<el-row type="flex" class="field"> <el-row type="flex" class="field">
@@ -242,7 +288,7 @@
<div class="name">文件大小</div> <div class="name">文件大小</div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="record">{{imagesData.fsize}}</div> <div class="record" v-cloak>{{imagesData.fsize}}</div>
</el-col> </el-col>
</el-row> </el-row>
<el-row type="flex" class="field"> <el-row type="flex" class="field">
@@ -250,7 +296,7 @@
<div class="name">类型</div> <div class="name">类型</div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="record">{{imagesData.ext}}</div> <div class="record" v-cloak>{{imagesData.ext}}</div>
</el-col> </el-col>
</el-row> </el-row>
<el-row type="flex" class="field"> <el-row type="flex" class="field">
@@ -258,7 +304,7 @@
<div class="name">创建时间</div> <div class="name">创建时间</div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="record">{{imagesData.mtime}}</div> <div class="record" v-cloak>{{imagesData.mtime}}</div>
</el-col> </el-col>
</el-row> </el-row>
<el-row type="flex" class="field"> <el-row type="flex" class="field">
@@ -266,7 +312,7 @@
<div class="name">添加时间</div> <div class="name">添加时间</div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="record">{{imagesData.btime}}</div> <div class="record" v-cloak>{{imagesData.btime}}</div>
</el-col> </el-col>
</el-row> </el-row>
<el-row type="flex" class="field"> <el-row type="flex" class="field">
@@ -274,7 +320,7 @@
<div class="name">修改时间</div> <div class="name">修改时间</div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<div class="record">{{imagesData.dateline}}</div> <div class="record" v-cloak>{{imagesData.dateline}}</div>
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
@@ -293,7 +339,7 @@
</el-main> </el-main>
</el-container> </el-container>
</div> </div>
<!--{template components/header/index}--> <!--{template pc/components/header/index}-->
<script type="text/javascript"> <script type="text/javascript">
new Vue({ new Vue({
@@ -318,10 +364,12 @@
slider:0, slider:0,
proportion:0, proportion:0,
fproportion:0, fproportion:0,
index:0,
LoadFirst:false,
scaleX:0,
scaleY:0,
rotate:0, rotate:0,
total:0, total:0,
index:0,
LoadFirst:false
}, },
} }
@@ -339,9 +387,13 @@
this.handleImgSize(val); this.handleImgSize(val);
}, },
'ImgParam.rotate':function(val){ 'ImgParam.rotate':function(val){
$('.image-viewer__img').css({ this.handleImgTransform();
transform:'rotate('+val+'deg)' },
}) 'ImgParam.scaleX':function(val){
this.handleImgTransform();
},
'ImgParam.scaleY':function(val){
this.handleImgTransform();
}, },
rids:{ rids:{
handler(data){ handler(data){
@@ -382,6 +434,22 @@
}, },
methods: { methods: {
handleImgTransform(){
var self = this;
var str = '';
if(self.ImgParam.rotate != 0){
str += ' rotate('+self.ImgParam.rotate+'deg)';
}
if(self.ImgParam.scaleX != 0){
str += ' scaleX('+self.ImgParam.scaleX+')';
}
if(self.ImgParam.scaleY != 0){
str += ' scaleY('+self.ImgParam.scaleY+')';
}
$('.image-viewer__img').css({
transform:str
})
},
handleImgSize(proportion){ handleImgSize(proportion){
var self = this; var self = this;
// if(self.ImgParam.LoadFirst){ // if(self.ImgParam.LoadFirst){
@@ -454,7 +522,10 @@
}, },
handleImgSet(){ handleImgSet(){
var self = this; var self = this;
self.ImgParam.rotate = 0; // self.ImgParam.rotate = 0;
// self.ImgParam.scaleX = 0;
// self.ImgParam.scaleY = 0;
var img = $('.image-viewer__img'); var img = $('.image-viewer__img');
var canva = $('#ImgScroll .el-scrollbar__view'); var canva = $('#ImgScroll .el-scrollbar__view');
var Bw = $('#ImgScroll').width(); var Bw = $('#ImgScroll').width();
@@ -567,11 +638,12 @@
rid:self.rid rid:self.rid
},function(json){ },function(json){
var item = json.resourcesdata; var item = json.resourcesdata;
if(item.opentype=='image' || item.opentype=='other'){ // if(item.opentype=='image' || item.opentype=='other'){
item['icondata'] = (item['icondata']); // item['icondata'] = (item['icondata']);
item['realpath'] = (item['realpath']); // item['realpath'] = (item['realpath']);
item['originalimg'] = (item['originalimg']); // item['originalimg'] = (item['originalimg']);
} // }
document.title = item.name+'-$_G[setting][sitename]';
var colors = []; var colors = [];
if(item.colors){ if(item.colors){
for(var c in item.colors){ for(var c in item.colors){
@@ -595,6 +667,18 @@
} }
} }
item.tag = tags; item.tag = tags;
var foldernames = [];
if(item.foldernames){
for(var f in item.foldernames){
var fstr = {
key:f,
val:item.foldernames[f]
};
foldernames.push(fstr);
}
}
item.foldernames = foldernames;
self.imagesData = item self.imagesData = item
self.HtmlLoading = false; self.HtmlLoading = false;
},'json'); },'json');
@@ -660,6 +744,20 @@
num=0; num=0;
} }
this.ImgParam.rotate = num; this.ImgParam.rotate = num;
}else if(type==4){
var scaleX = this.ImgParam.scaleX;
if(scaleX == 0){
this.ImgParam.scaleX = -1;
}else{
this.ImgParam.scaleX = 0;
}
}else if(type==5){
var scaleY = this.ImgParam.scaleY;
if(scaleY == 0){
this.ImgParam.scaleY = -1;
}else{
this.ImgParam.scaleY = 0;
}
} }
}, },
@@ -723,7 +821,12 @@
}, },
handleCommandColor(val){ handleCommandColor(val){
if(val == 'common'){ if(val == 'common'){
<!--{if $opentype=='current'}-->
window.parent.window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&color=' + this.ColorPopver.base;
window.parent.window.location.reload()
<!--{else}-->
window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&color=' + this.ColorPopver.base; window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&color=' + this.ColorPopver.base;
<!--{/if}-->
}else{ }else{
CopyTxt(this,val) CopyTxt(this,val)
} }
@@ -774,10 +877,21 @@
}, },
handleClickTag(tid){ handleClickTag(tid){
<!--{if $opentype=='current'}-->
window.parent.window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&tag=' + tid;
window.parent.window.location.reload()
<!--{else}-->
window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&tag=' + tid; window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&tag=' + tid;
<!--{/if}-->
}, },
handleClickClass(cid){ handleClickClass(cid){
<!--{if $opentype=='current'}-->
window.parent.window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&classify=' + cid;
window.parent.window.location.reload()
<!--{else}-->
window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&classify=' + cid; window.location.href = MOD_URL + '#appid=' + this.imagesData.appid + '&classify=' + cid;
<!--{/if}-->
}, },
handleClickLink(val){ handleClickLink(val){
window.open(val); window.open(val);
@@ -860,7 +974,11 @@
handleavatar(type) {//头像点击 handleavatar(type) {//头像点击
switch(type){ switch(type){
case 'personal': case 'personal':
<!--{if $opentype=='current'}-->
window.parent.window.location.href = MOD_URL + '&op=user&do=personal';
<!--{else}-->
window.location.href = MOD_URL + '&op=user&do=personal'; window.location.href = MOD_URL + '&op=user&do=personal';
<!--{/if}-->
break; break;
case 'help': case 'help':
window.open('https://www.yuque.com/pichome'); window.open('https://www.yuque.com/pichome');
@@ -869,10 +987,18 @@
window.open('https://support.qq.com/products/340252'); window.open('https://support.qq.com/products/340252');
break; break;
case 'setting': case 'setting':
<!--{if $opentype=='current'}-->
window.parent.window.location.href = MOD_URL + '&op=admin&do=basic';
<!--{else}-->
window.location.href = MOD_URL + '&op=admin&do=basic'; window.location.href = MOD_URL + '&op=admin&do=basic';
<!--{/if}-->
break; break;
case 'library': case 'library':
<!--{if $opentype=='current'}-->
window.parent.window.location.href = MOD_URL + '&op=library';
<!--{else}-->
window.location.href = MOD_URL + '&op=library'; window.location.href = MOD_URL + '&op=library';
<!--{/if}-->
break; break;
case 'about': case 'about':
this.$alert( this.$alert(
@@ -921,7 +1047,12 @@
} }
}, },
goBack(){
window.parent.pvue.DetailsIframe = ''
},
GoLogin(){
window.location.href = SITEURL+'user.php?mod=login';
},
}, },
mounted() { mounted() {
var self = this; var self = this;
@@ -958,5 +1089,5 @@
</script> </script>
<script type="text/javascript" src="{MOD_PATH}/js/jquery.mousewheel.min.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/jquery.mousewheel.min.js?{VERHASH}"></script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -1,20 +1,21 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/index.css?{VERHASH}"/> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/index.css?{VERHASH}"/>
<script type="text/javascript" src="{MOD_PATH}/js/vue/vuex.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/vue/vuex.js?{VERHASH}"></script>
<script type="text/javascript" src="{MOD_PATH}/js/row-grid.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/row-grid.js?{VERHASH}"></script>
<script type="text/javascript" src="{MOD_PATH}/js/waterfall.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/waterfall.js?{VERHASH}"></script>
<script type="text/javascript" src="{MOD_PATH}/js/plug/wavesurfer.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/plug/wavesurfer.js?{VERHASH}"></script>
<script type="text/javascript" src="{MOD_PATH}/js/audioPlay.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/audioPlay.js?{VERHASH}"></script>
<script type="text/javascript" src="{MOD_PATH}/js/headerWatch.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/headerWatch.js?{VERHASH}"></script>
<script type="text/javascript" src="{MOD_PATH}/js/headerMethods.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/headerMethods.js?{VERHASH}"></script>
<script type="text/javascript" src="{MOD_PATH}/js/plug/DomResize.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/plug/DomResize.js?{VERHASH}"></script>
<style type="text/css"> <style type="text/css">
.el-header{ .el-header{
border-bottom: 0; border-bottom: 0;
} }
</style> </style>
<!--{template frame/header_simple_end}--> <!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<el-header height="auto" style="padding: 0;z-index: 10;"> <el-header height="auto" style="padding: 0;z-index: 10;">
@@ -24,23 +25,28 @@
<div class="page-content"> <div class="page-content">
<el-scrollbar class="page-component__scroll body_scroll"> <el-scrollbar class="page-component__scroll body_scroll">
<div class="content" style="padding: 0px 16px 0;"> <div class="content" style="padding: 0px 16px 0;">
<images></images> <images @opentype="opentype"></images>
</div> </div>
</el-scrollbar> </el-scrollbar>
<el-backtop target=".body_scroll>.el-scrollbar__wrap"></el-backtop> <el-backtop target=".body_scroll>.el-scrollbar__wrap"></el-backtop>
</div> </div>
</el-main> </el-main>
</el-container> </el-container>
<div id="Details_Iframe" v-if="DetailsIframe">
<iframe id="iframesrc" :src="DetailsIframe" width="100%" height="100%" style="border: 0;"></iframe>
</div>
</div> </div>
<!--{template components/index/indexVuex}--> <!--{template pc/components/index/indexVuex}-->
<!--{template components/headerindex/index}--> <!--{template pc/components/headerindex/index}-->
<!--{template components/index/images}--> <!--{template pc/components/index/images}-->
<script type="text/javascript"> <script type="text/javascript">
var pvue = new Vue({ var pvue = new Vue({
el: '#dzzoffice', el: '#dzzoffice',
data: function() { data: function() {
return { return {
DetailsIframe:''
} }
}, },
watch:{ watch:{
@@ -133,14 +139,31 @@
var GetAppid = this.GetAppid?this.GetAppid:'all'; var GetAppid = this.GetAppid?this.GetAppid:'all';
var ShowScreen = sessionStorage.getItem('showscreen_'+GetAppid)? sessionStorage.getItem('showscreen_'+GetAppid):0; var ShowScreen = sessionStorage.getItem('showscreen_'+GetAppid)? sessionStorage.getItem('showscreen_'+GetAppid):0;
<!--{/if}--> <!--{/if}-->
<!--{if $_G[uid]}-->
if(pagesetting.opentype){
VuexStore.commit('seTHeader_Information_Opentype', pagesetting.opentype);
}else{
VuexStore.commit('seTHeader_Information_Opentype', 'new');
}
<!--{else}-->
VuexStore.commit('seTHeader_Information_Opentype', 'new');
<!--{/if}-->
VuexStore.commit('SetShowScreen',ShowScreen); VuexStore.commit('SetShowScreen',ShowScreen);
} }
}, },
methods:{ methods:{
opentype(rid){
var self = this;
this.DetailsIframe = SITEURL+MOD_URL+'&op=details&opentype=current#rid='+rid;
}
}, },
mounted() { mounted() {
var self = this;
} }
}) })
</script> </script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -1,5 +1,5 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<script type="text/javascript" src="{MOD_PATH}/js/plug/sortable.min.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/plug/sortable.min.js?{VERHASH}"></script>
<style type="text/css"> <style type="text/css">
.lbox{ .lbox{
padding: 30px 0; padding: 30px 0;
@@ -102,21 +102,24 @@
[v-cloak]{ [v-cloak]{
display: none; display: none;
} }
.el-progress-bar__inner{
transition: none;
}
/* .SortableBox .sortable-list .el-checkbox{ /* .SortableBox .sortable-list .el-checkbox{
min-width: 120px; min-width: 120px;
} */ } */
</style> </style>
<!--{template frame/header_simple_end}--> <!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<el-header height="70px" style="padding: 0;z-index: 10;"> <el-header height="70px" style="padding: 0;z-index: 10;">
<page-header :isscreenshow="false"></page-header> <page-header></page-header>
</el-header> </el-header>
<el-main> <el-main>
<div class="page-content"> <div class="page-content">
<el-scrollbar class="page-component__scroll"> <el-scrollbar class="page-component__scroll">
<div class="content" style="padding: 26px 16px;"> <div class="content" style="padding: 26px 16px;">
<h1 style="text-align: center;color: var(--content-textHover);">我的</h1> <h1 style="text-align: center;color: var(--content-textHover);"> 设 置</h1>
<div class="lbox" v-if="dataList.length"> <div class="lbox" v-if="dataList.length">
<div class="block" v-for="(item,index) in dataList"> <div class="block" v-for="(item,index) in dataList">
<div class="images"> <div class="images">
@@ -134,9 +137,20 @@
<div class="img-bg"></div> <div class="img-bg"></div>
<div class="img-bg"></div> <div class="img-bg"></div>
</template> </template>
<div class="progress" v-if="parseInt(item.state)==0">
<div class="progress" v-if="parseInt(item.state)==1"> <div style="width: 100%;text-align: center;">
<el-button type="primary" size="mini" @click="handleImport(index,item.appid)">点击导入</el-button>
</div>
</div>
<div class="progress" v-else-if="parseInt(item.state)==1">
<div style="width: 100%;"> <div style="width: 100%;">
<p style="margin-bottom: 5px;color: #FFFFFF;font-size: 14px;">导入中...</p>
<el-progress :text-inside="true" :stroke-width="19" :percentage="parseInt(item.percent)"></el-progress>
</div>
</div>
<div class="progress" v-else-if="parseInt(item.state)==2">
<div style="width: 100%;">
<p style="margin-bottom: 5px;color: #FFFFFF;font-size: 14px;">导入完成,校验中...</p>
<el-progress :text-inside="true" :stroke-width="19" :percentage="parseInt(item.percent)"></el-progress> <el-progress :text-inside="true" :stroke-width="19" :percentage="parseInt(item.percent)"></el-progress>
</div> </div>
</div> </div>
@@ -206,7 +220,8 @@
</el-main> </el-main>
</el-container> </el-container>
</div> </div>
<!--{template components/headerAdmin/index}--> <!--{template pc/components/headerAdmin/index}-->
<!-- 0未导入,1导入中,2校验中,3完成 -->
<script type="text/javascript"> <script type="text/javascript">
new Vue({ new Vue({
el: '#dzzoffice', el: '#dzzoffice',
@@ -415,11 +430,20 @@
}, },
handleRefresh(index,appid){ handleRefresh(index,appid){
var self = this; var self = this;
if(!self.dataList[index]['time']){ // if(!self.dataList[index]['time']){
$.post(MOD_URL+'&op=exportfile&appid='+appid); $.post(MOD_URL+'&op=exportfile&appid='+appid);
self.dataList[index].state = 1; self.dataList[index].state = 1;
self.dataList[index].percent = 0; self.dataList[index].percent = 0;
self.handleRefreshLoading(index,appid); self.handleRefreshLoading(index,appid);
// }
},
handleimplement(index,appid){
var self = this;
if(!self.dataList[index]['time']){
$.post(MOD_URL+'&op=exportfile&appid='+appid);
self.dataList[index].state = 1;
self.handleRefreshLoading(index,appid);
} }
}, },
@@ -431,11 +455,9 @@
appid:appid appid:appid
},function(data){ },function(data){
if(data.success){ if(data.success){
if(parseInt(data.data.state)==3){
if(parseInt(data.data.state)==2){
clearInterval(self.dataList[index]['time']); clearInterval(self.dataList[index]['time']);
self.dataList[index].percent = 100; self.dataList[index].percent = 100;
setTimeout(function(){ setTimeout(function(){
self.dataList[index].filenum = data.data.filenum; self.dataList[index].filenum = data.data.filenum;
self.dataList[index].percent = parseInt(data.data.percent); self.dataList[index].percent = parseInt(data.data.percent);
@@ -446,9 +468,10 @@
message:data.data.appname+' 更新完成' message:data.data.appname+' 更新完成'
},500); },500);
},500); },500);
}else{ }else{
if(parseInt(data.data.state) != self.dataList[index]['state']){
self.dataList[index].percent = 100;
}
self.dataList[index].filenum = data.data.filenum; self.dataList[index].filenum = data.data.filenum;
self.dataList[index].percent = parseInt(data.data.percent); self.dataList[index].percent = parseInt(data.data.percent);
self.dataList[index].state = parseInt(data.data.state); self.dataList[index].state = parseInt(data.data.state);
@@ -473,12 +496,15 @@
self.dataList = data.data; self.dataList = data.data;
for(var i in self.dataList){ for(var i in self.dataList){
if(parseInt(self.dataList[i].state) == 1){ if(parseInt(self.dataList[i].state) == 1){
self.handleRefresh(i,self.dataList[i].appid) self.handleimplement(i,self.dataList[i].appid)
} }
} }
},'json'); },'json');
}, },
handleImport(index,appid){
this.handleimplement(index,appid)
},
handleCheckexport(){ handleCheckexport(){
var self = this; var self = this;
$.get(MOD_URL+'&op=checkexport',function(){ $.get(MOD_URL+'&op=checkexport',function(){
@@ -493,4 +519,4 @@
}) })
</script> </script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -1,6 +1,7 @@
<!--{template frame/header_simple_start}--> <!--{template pc/frame/header_simple_start}-->
<link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/details.css?{VERHASH}"/> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/xuanzhuan/index.css?{VERHASH}"/>
<!--{template frame/header_simple_end}--> <link rel="stylesheet" type="text/css" href="{MOD_PATH}/css/pc/details.css?{VERHASH}"/>
<!--{template pc/frame/header_simple_end}-->
<div id="dzzoffice"> <div id="dzzoffice">
<el-container> <el-container>
<el-header height="70" style="padding: 0;z-index: 10;"> <el-header height="70" style="padding: 0;z-index: 10;">
@@ -57,7 +58,12 @@
<el-tooltip effect="dark" content="旋转" placement="bottom"> <el-tooltip effect="dark" content="旋转" placement="bottom">
<span class="text" @click="handleImgOperation(3)"><i class="el-icon-refresh-right icon"></i></span> <span class="text" @click="handleImgOperation(3)"><i class="el-icon-refresh-right icon"></i></span>
</el-tooltip> </el-tooltip>
<el-tooltip effect="dark" content="左右镜像" placement="bottom">
<span class="text"><i class="iconfont icon-zuoyoufanzhuan_huaban1 icon" @click="handleImgOperation(4)" style="font-size: 21px;font-weight: 500;"></i></span>
</el-tooltip>
<el-tooltip effect="dark" content="上下镜像" placement="bottom">
<span class="text"><i class="iconfont icon-chuizhifanzhuan_huaban1 icon" @click="handleImgOperation(5)" style="font-size: 21px;font-weight: 500;"></i></span>
</el-tooltip>
</div> </div>
</div> </div>
@@ -291,7 +297,7 @@
</el-main> </el-main>
</el-container> </el-container>
</div> </div>
<!--{template components/header/index}--> <!--{template pc/components/header/index}-->
<script type="text/javascript"> <script type="text/javascript">
new Vue({ new Vue({
@@ -312,7 +318,7 @@
imagesData: { imagesData: {
rid : '$resourcesdata[rid]', rid : '$resourcesdata[rid]',
appid : '$resourcesdata[appid]', appid : '$resourcesdata[appid]',
name : '$resourcesdata[type]', name : '$resourcesdata[name]',
type : '$resourcesdata[type]', type : '$resourcesdata[type]',
ext : '$resourcesdata[ext]', ext : '$resourcesdata[ext]',
height : $resourcesdata[height], height : $resourcesdata[height],
@@ -340,6 +346,8 @@
slider:0, slider:0,
proportion:0, proportion:0,
fproportion:0, fproportion:0,
scaleX:0,
scaleY:0,
rotate:0, rotate:0,
total:0, total:0,
index:0, index:0,
@@ -354,9 +362,13 @@
this.handleImgSize(val); this.handleImgSize(val);
}, },
'ImgParam.rotate':function(val){ 'ImgParam.rotate':function(val){
$('.image-viewer__img').css({ this.handleImgTransform();
transform:'rotate('+val+'deg)' },
}) 'ImgParam.scaleX':function(val){
this.handleImgTransform();
},
'ImgParam.scaleY':function(val){
this.handleImgTransform();
}, },
imagesData:{ imagesData:{
handler(dasta){ handler(dasta){
@@ -373,11 +385,26 @@
} }
}, },
created() { created() {
document.title = '$resourcesdata[name]-$_G[setting][sitename]';
}, },
methods: { methods: {
handleImgTransform(){
var self = this;
var str = '';
if(self.ImgParam.rotate != 0){
str += ' rotate('+self.ImgParam.rotate+'deg)';
}
if(self.ImgParam.scaleX != 0){
str += ' scaleX('+self.ImgParam.scaleX+')';
}
if(self.ImgParam.scaleY != 0){
str += ' scaleY('+self.ImgParam.scaleY+')';
}
$('.image-viewer__img').css({
transform:str
})
},
handleImgSize(proportion){ handleImgSize(proportion){
var self = this; var self = this;
// if(self.ImgParam.LoadFirst){ // if(self.ImgParam.LoadFirst){
@@ -391,7 +418,7 @@
if(this.imagesData.opentype == 'other'){ if(this.imagesData.opentype == 'other'){
var width = parseFloat(this.imagesData.iconwidth); var width = parseFloat(this.imagesData.iconwidth);
var height = parseFloat()(this.imagesData.iconheight); var height = parseFloat(this.imagesData.iconheight);
}else{ }else{
var width = parseFloat(this.imagesData.width); var width = parseFloat(this.imagesData.width);
var height = parseFloat(this.imagesData.height); var height = parseFloat(this.imagesData.height);
@@ -596,6 +623,20 @@
num=0; num=0;
} }
this.ImgParam.rotate = num; this.ImgParam.rotate = num;
}else if(type==4){
var scaleX = this.ImgParam.scaleX;
if(scaleX == 0){
this.ImgParam.scaleX = -1;
}else{
this.ImgParam.scaleX = 0;
}
}else if(type==5){
var scaleY = this.ImgParam.scaleY;
if(scaleY == 0){
this.ImgParam.scaleY = -1;
}else{
this.ImgParam.scaleY = 0;
}
} }
}, },
@@ -881,5 +922,5 @@
</script> </script>
<script type="text/javascript" src="{MOD_PATH}/js/jquery.mousewheel.min.js?{VERHASH}"></script> <script type="text/javascript" src="{MOD_PATH}/js/pc/jquery.mousewheel.min.js?{VERHASH}"></script>
<!--{template frame/footer_simple}--> <!--{template pc/frame/footer_simple}-->

View File

@@ -112,7 +112,7 @@
$uid = getglobal('uid'); $uid = getglobal('uid');
$userdata = C::t('user')->fetch($uid); $userdata = C::t('user')->fetch($uid);
$theme = GetThemeColor(); $theme = GetThemeColor();
include template('page/adminPersonal'); include template('pc/page/adminPersonal');
} }
} }
elseif ($do == 'uploadimg') {//上传用户头像 elseif ($do == 'uploadimg') {//上传用户头像

View File

@@ -1004,6 +1004,7 @@ CREATE TABLE `dzz_pichome_resources` (
`isdelete` tinyint(1) UNSIGNED NOT NULL DEFAULT '0' COMMENT '是否为删除状态', `isdelete` tinyint(1) UNSIGNED NOT NULL DEFAULT '0' COMMENT '是否为删除状态',
`btime` bigint(13) UNSIGNED NOT NULL COMMENT '添加时间', `btime` bigint(13) UNSIGNED NOT NULL COMMENT '添加时间',
`md5` char(32) NOT NULL DEFAULT '' COMMENT '文件md5值', `md5` char(32) NOT NULL DEFAULT '' COMMENT '文件md5值',
`lastdate` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '最后更改时间',
PRIMARY KEY (`rid`), PRIMARY KEY (`rid`),
KEY `appid` (`appid`), KEY `appid` (`appid`),
KEY `appid_2` (`appid`,`isdelete`) USING BTREE KEY `appid_2` (`appid`,`isdelete`) USING BTREE
@@ -1083,21 +1084,22 @@ CREATE TABLE `dzz_pichome_tagrelation` (
DROP TABLE IF EXISTS `dzz_pichome_vapp`; DROP TABLE IF EXISTS `dzz_pichome_vapp`;
CREATE TABLE `dzz_pichome_vapp` ( CREATE TABLE `dzz_pichome_vapp` (
`appid` char(6) NOT NULL DEFAULT '' COMMENT '库id', `appid` char(6) NOT NULL DEFAULT '' COMMENT '库id',
`uid` int(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT '用户id', `uid` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户id',
`username` char(30) NOT NULL DEFAULT '' COMMENT '用户名', `username` char(30) NOT NULL DEFAULT '' COMMENT '用户名',
`appname` varchar(255) NOT NULL DEFAULT '', `appname` varchar(255) NOT NULL DEFAULT '',
`personal` tinyint(1) UNSIGNED NOT NULL DEFAULT '1' COMMENT '0公开1私有', `personal` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '0公开1私有',
`path` blob NOT NULL COMMENT '对应目录路径', `path` blob NOT NULL COMMENT '对应目录路径',
`dateline` int(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT '更新时间', `dateline` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '更新时间',
`extra` text COMMENT '拓展数据', `extra` text COMMENT '拓展数据',
`perm` int(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT '权限值', `perm` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '权限值',
`filenum` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '文件个数', `filenum` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '文件个数',
`lastid` char(13) DEFAULT '' COMMENT '最后执行位置id', `lastid` char(13) DEFAULT '' COMMENT '最后执行位置id',
`percent` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '导入百分比', `percent` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '导入百分比',
`state` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '0未导入1导入中2导入完成', `state` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '0未导入1导入中2检校3完成',
`filter` text COMMENT '筛选项', `filter` text COMMENT '筛选项',
`share` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '分享是否开放', `share` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '分享是否开放',
`download` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否开放下载', `download` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否开放下载',
`donum` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '已导入文件数',
PRIMARY KEY (`appid`) PRIMARY KEY (`appid`)
) ENGINE=MyISAM; ) ENGINE=MyISAM;

View File

@@ -44,15 +44,11 @@ INSERT INTO `dzz_hooks` (`id`, `app_market_id`, `name`, `description`, `type`, `
(20, 8, 'systemlog', '', 1, 0, 'admin\\systemlog\\classes\\systemlog', 1, 0); (20, 8, 'systemlog', '', 1, 0, 'admin\\systemlog\\classes\\systemlog', 1, 0);
INSERT INTO `dzz_connect` VALUES('阿里云存储', '', '', 'storage', 'ALIOSS', '', 2, 'connect_storage', '', 0);
INSERT INTO `dzz_connect` VALUES('企业盘', '', '', 'local', 'dzz', '', 2, '', '', -2);
INSERT INTO `dzz_connect` VALUES('Qcos', '', '', 'storage', 'QCOS', '', 2, 'connect_storage', '', 0);
-- --
-- 转存表中的数据 `dzz_local_storage` -- 转存表中的数据 `dzz_local_storage`
-- --
INSERT INTO `dzz_local_storage` VALUES(1, '服务器磁盘', 'dzz', 1, '', 0, 0, 0, 0, 0, 0);
-- --
-- 转存表中的数据 `dzz_usergroup` -- 转存表中的数据 `dzz_usergroup`
@@ -123,7 +119,7 @@ INSERT INTO `dzz_setting` VALUES('boardlicensed', '0');
INSERT INTO `dzz_setting` VALUES('leavealert', '0'); INSERT INTO `dzz_setting` VALUES('leavealert', '0');
INSERT INTO `dzz_setting` VALUES('bbclosed', '0'); INSERT INTO `dzz_setting` VALUES('bbclosed', '0');
INSERT INTO `dzz_setting` VALUES('closedreason', '网站升级中....'); INSERT INTO `dzz_setting` VALUES('closedreason', '网站升级中....');
INSERT INTO `dzz_setting` VALUES('sitename', 'PicHome'); INSERT INTO `dzz_setting` VALUES('sitename', 'dzz');
INSERT INTO `dzz_setting` VALUES('dateconvert', '1'); INSERT INTO `dzz_setting` VALUES('dateconvert', '1');
INSERT INTO `dzz_setting` VALUES('allowshare', '1'); INSERT INTO `dzz_setting` VALUES('allowshare', '1');
@@ -163,7 +159,7 @@ INSERT INTO `dzz_setting` VALUES('defaultdepartment', '1');
INSERT INTO `dzz_setting` VALUES ('pichomefilterfileds', 'a:12:{i:0;a:3:{s:3:\"key\";s:3:\"tag\";s:4:\"text\";s:6:\"标签\";s:7:\"checked\";s:1:\"1\";}i:1;a:3:{s:3:\"key\";s:5:\"color\";s:4:\"text\";s:6:\"颜色\";s:7:\"checked\";s:1:\"1\";}i:2;a:3:{s:3:\"key\";s:4:\"link\";s:4:\"text\";s:6:\"链接\";s:7:\"checked\";s:1:\"1\";}i:3;a:3:{s:3:\"key\";s:4:\"desc\";s:4:\"text\";s:6:\"注释\";s:7:\"checked\";s:1:\"1\";}i:4;a:3:{s:3:\"key\";s:8:\"duration\";s:4:\"text\";s:6:\"时长\";s:7:\"checked\";s:1:\"1\";}i:5;a:3:{s:3:\"key\";s:4:\"size\";s:4:\"text\";s:6:\"尺寸\";s:7:\"checked\";s:1:\"1\";}i:6;a:3:{s:3:\"key\";s:3:\"ext\";s:4:\"text\";s:6:\"类型\";s:7:\"checked\";s:1:\"1\";}i:7;a:3:{s:3:\"key\";s:5:\"shape\";s:4:\"text\";s:6:\"形状\";s:7:\"checked\";s:1:\"1\";}i:8;a:3:{s:3:\"key\";s:5:\"grade\";s:4:\"text\";s:6:\"评分\";s:7:\"checked\";s:1:\"1\";}i:9;a:3:{s:3:\"key\";s:5:\"btime\";s:4:\"text\";s:12:\"添加时间\";s:7:\"checked\";s:1:\"1\";}i:10;a:3:{s:3:\"key\";s:8:\"dateline\";s:4:\"text\";s:12:\"修改日期\";s:7:\"checked\";s:1:\"1\";}i:11;a:3:{s:3:\"key\";s:5:\"mtime\";s:4:\"text\";s:12:\"创建日期\";s:7:\"checked\";s:1:\"1\";}}'); INSERT INTO `dzz_setting` VALUES ('pichomefilterfileds', 'a:12:{i:0;a:3:{s:3:\"key\";s:3:\"tag\";s:4:\"text\";s:6:\"标签\";s:7:\"checked\";s:1:\"1\";}i:1;a:3:{s:3:\"key\";s:5:\"color\";s:4:\"text\";s:6:\"颜色\";s:7:\"checked\";s:1:\"1\";}i:2;a:3:{s:3:\"key\";s:4:\"link\";s:4:\"text\";s:6:\"链接\";s:7:\"checked\";s:1:\"1\";}i:3;a:3:{s:3:\"key\";s:4:\"desc\";s:4:\"text\";s:6:\"注释\";s:7:\"checked\";s:1:\"1\";}i:4;a:3:{s:3:\"key\";s:8:\"duration\";s:4:\"text\";s:6:\"时长\";s:7:\"checked\";s:1:\"1\";}i:5;a:3:{s:3:\"key\";s:4:\"size\";s:4:\"text\";s:6:\"尺寸\";s:7:\"checked\";s:1:\"1\";}i:6;a:3:{s:3:\"key\";s:3:\"ext\";s:4:\"text\";s:6:\"类型\";s:7:\"checked\";s:1:\"1\";}i:7;a:3:{s:3:\"key\";s:5:\"shape\";s:4:\"text\";s:6:\"形状\";s:7:\"checked\";s:1:\"1\";}i:8;a:3:{s:3:\"key\";s:5:\"grade\";s:4:\"text\";s:6:\"评分\";s:7:\"checked\";s:1:\"1\";}i:9;a:3:{s:3:\"key\";s:5:\"btime\";s:4:\"text\";s:12:\"添加时间\";s:7:\"checked\";s:1:\"1\";}i:10;a:3:{s:3:\"key\";s:8:\"dateline\";s:4:\"text\";s:12:\"修改日期\";s:7:\"checked\";s:1:\"1\";}i:11;a:3:{s:3:\"key\";s:5:\"mtime\";s:4:\"text\";s:12:\"创建日期\";s:7:\"checked\";s:1:\"1\";}}');
INSERT INTO `dzz_setting` VALUES ('overt', '1'); INSERT INTO `dzz_setting` VALUES ('overt', '1');
INSERT INTO `dzz_setting` VALUES ('pichomepagesetting', 'a:6:{s:5:\"theme\";s:0:\"\";s:6:\"layout\";s:9:\"waterFall\";s:4:\"show\";s:16:\"name,other\";s:5:\"other\";s:5:\"mtime\";s:4:\"sort\";s:1:\"1\";s:4:\"desc\";s:4:\"desc\";}'); INSERT INTO `dzz_setting` VALUES ('pichomepagesetting', 'a:7:{s:5:\"theme\";s:0:\"\";s:6:\"layout\";s:9:\"waterFall\";s:4:\"show\";s:10:\"name,other\";s:5:\"other\";s:5:\"mtime\";s:4:\"sort\";s:1:\"1\";s:4:\"desc\";s:4:\"desc\";s:8:\"opentype\";s:3:\"new\";}');
-- 转存表中的数据 `dzz_imagetype` -- 转存表中的数据 `dzz_imagetype`
-- --

0
library/index.htm Normal file
View File