Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
yii2_fecshop
提交
d21458d5
Y
yii2_fecshop
项目概览
OpenDocCN
/
yii2_fecshop
通知
17
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Y
yii2_fecshop
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
d21458d5
编写于
8月 30, 2019
作者:
T
Terry
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
admin extension market manager
上级
fbe8d2dc
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
52 addition
and
66 deletion
+52
-66
app/appadmin/modules/System/controllers/ExtensionmarketController.php
.../modules/System/controllers/ExtensionmarketController.php
+6
-59
app/appadmin/theme/base/default/system/extensionmarket/manager.php
...min/theme/base/default/system/extensionmarket/manager.php
+46
-7
未找到文件。
app/appadmin/modules/System/controllers/ExtensionmarketController.php
浏览文件 @
d21458d5
...
...
@@ -231,74 +231,21 @@ class ExtensionmarketController extends SystemController
$namespace
=
Yii
::
$app
->
request
->
get
(
'namespace'
);
$packageName
=
Yii
::
$app
->
request
->
get
(
'packageName'
);
$addonName
=
Yii
::
$app
->
request
->
get
(
'addonName'
);
$folderName
=
Yii
::
$app
->
request
->
get
(
'folderName'
);
// 进行zip文件下载到指定的文件路径
$zipFilePath
=
Yii
::
$service
->
extension
->
remoteService
->
downloadAddons
(
$namespace
,
$packageName
,
$addonName
);
if
(
!
$zipFilePath
)
{
echo
json_encode
([
'statusCode'
=>
'300'
,
'message'
=>
Yii
::
$service
->
page
->
translate
->
__
(
'download remote addons fail'
),
]);
exit
;
}
// 进行zip文件的解压
$dest_dir
=
dirname
(
$zipFilePath
);
if
(
!
Yii
::
$service
->
helper
->
zipFile
->
unzip
(
$zipFilePath
,
$dest_dir
,
true
,
true
))
{
echo
json_encode
([
'statusCode'
=>
'300'
,
'message'
=>
Yii
::
$service
->
page
->
translate
->
__
(
'unzip addons fail'
),
]);
exit
;
}
// 删除zip压缩包
unlink
(
$zipFilePath
);
// 将addons信息写入数据库
/*
array(6) {
["id"]=>
string(2) "50"
["namespace"]=>
string(13) "fectfurnilife"
["package"]=>
string(7) "fecmall"
["name"]=>
string(15) "furnilife_theme"
["config_file_path"]=>
string(26) "furnilife_theme/config.php"
["version"]=>
string(5) "1.0.0"
}
*/
$data
=
Yii
::
$service
->
extension
->
remoteService
->
getAddonsInfoByNamespace
(
$namespace
);
if
(
!
is_array
(
$data
))
{
echo
json_encode
([
'statusCode'
=>
'300'
,
'message'
=>
Yii
::
$service
->
page
->
translate
->
__
(
'get remote addons info by namespace fail'
),
]);
exit
;
}
// 将远程获取的数据,保存到数据库中。
if
(
!
Yii
::
$service
->
extension
->
upgradeInit
(
$data
)){
echo
json_encode
([
'statusCode'
=>
'300'
,
'message'
=>
Yii
::
$service
->
page
->
translate
->
__
(
'init new install addon to db fail'
),
]);
exit
;
}
// 进行插件的升级
if
(
!
Yii
::
$service
->
extension
->
administer
->
upgrade
(
$namespace
))
{
$errors
=
Yii
::
$service
->
helper
->
errors
->
get
();
// 进行插件的卸载
if
(
!
Yii
::
$service
->
extension
->
administer
->
uninstall
(
$namespace
))
{
$errors
=
Yii
::
$service
->
helper
->
errors
->
get
(
','
);
echo
json_encode
([
'statusCode'
=>
'300'
,
'message'
=>
Yii
::
$service
->
page
->
translate
->
__
(
$errors
),
]);
exit
;
}
// 输
入安装
成功信息。
// 输
出卸载
成功信息。
echo
json_encode
([
'statusCode'
=>
'200'
,
'message'
=>
Yii
::
$service
->
page
->
translate
->
__
(
'addons install success'
),
'message'
=>
Yii
::
$service
->
page
->
translate
->
__
(
'addons
un
install success'
),
]);
exit
;
}
...
...
app/appadmin/theme/base/default/system/extensionmarket/manager.php
浏览文件 @
d21458d5
...
...
@@ -22,41 +22,70 @@ use fec\helpers\CRequest;
<?php
if
(
is_array
(
$addon_list
))
:
?>
<ul>
<?php
foreach
(
$addon_list
as
$addon_one
)
:
?>
<?php
$symbol
=
''
;
$val
=
''
;
$mb
=
1024
*
1024
;
if
(
$addon_one
[
'addon_info'
][
'zip_size'
]
<
$mb
)
{
$symbol
=
'KB'
;
$val
=
Yii
::
$service
->
helper
->
format
->
number_format
(
$addon_one
[
'addon_info'
][
'zip_size'
]
/
1024
);
}
else
{
$symbol
=
'MB'
;
$val
=
Yii
::
$service
->
helper
->
format
->
number_format
(
$addon_one
[
'addon_info'
][
'zip_size'
]
/
$mb
);
}
$zip_size
=
$val
.
$symbol
;
$top_version
=
$addon_one
[
'addon_info'
][
'version'
];
$canDelete
=
false
;
?>
<li
class=
"addon_li"
>
<div
class=
"addon_d"
>
<img
style=
""
src=
"
<?=
$addon_one
[
'addon_info'
][
'image'
]
?>
"
/>
<h2
style=
"margin10px auto"
>
<?=
$addon_one
[
'addon_info'
][
'name'
]
?>
</h2>
<h2
style=
""
>
<?=
$addon_one
[
'addon_info'
][
'name'
]
?>
(
<?=
$zip_size
?>
)
</h2>
</div>
<div
class=
"clear"
></div>
<div
style=
"margin-top:60px;"
>
<?php
$namespace
=
$addon_one
[
'addon_info'
][
'namespace'
];
if
(
in_array
(
$namespace
,
$installed_extensions_namespace
))
:
$canDelete
=
true
;
if
(
version_compare
(
$versionArr
[
$namespace
],
$addon_one
[
'addon_info'
][
'version'
]
,
'<'
)
)
:
?>
<a
class=
"abutton-update"
href=
"javascript:void(0)"
addonName=
"
<?=
$addon_one
[
'addon_info'
][
'name'
]
?>
"
rel=
"
<?=
$namespace
?>
"
folderName=
"
<?=
$addon_one
[
'addon_info'
][
'folder'
]
?>
"
packageName=
"
<?=
$addon_one
[
'addon_info'
][
'package'
]
?>
"
>
需要升级
</a>
<a
title=
"您的应用有新版本发布,您可以点击该按钮进行升级应用,升级之前,请务必进行文件和数据库的备份,以免造成不必要的损失,升级过程中,将会重新下载zip文件进行解压覆盖旧版本应用"
class=
"abutton-update"
href=
"javascript:void(0)"
addonName=
"
<?=
$addon_one
[
'addon_info'
][
'name'
]
?>
"
rel=
"
<?=
$namespace
?>
"
folderName=
"
<?=
$addon_one
[
'addon_info'
][
'folder'
]
?>
"
packageName=
"
<?=
$addon_one
[
'addon_info'
][
'package'
]
?>
"
>
需要升级
</a>
<?php
else
:
?>
<a
class=
"abutton-normal"
href=
"javascript:void(0)"
>
最新版本
</a>
<a
title=
"该应用已经是最新的版本了,无需升级,如果想要卸载,点击右下角卸载按钮即可"
class=
"abutton-normal"
href=
"javascript:void(0)"
>
最新版本
</a>
<?php
endif
;
?>
<?php
else
:
?>
<a
class=
"abutton"
href=
"javascript:void(0)"
addonName=
"
<?=
$addon_one
[
'addon_info'
][
'name'
]
?>
"
rel=
"
<?=
$namespace
?>
"
folderName=
"
<?=
$addon_one
[
'addon_info'
][
'folder'
]
?>
"
packageName=
"
<?=
$addon_one
[
'addon_info'
][
'package'
]
?>
"
>
点击安装
</a>
<?php
if
(
$top_version
)
:
?>
<a
title=
"点击该按钮,进行应用的在线安装"
class=
"abutton"
href=
"javascript:void(0)"
addonName=
"
<?=
$addon_one
[
'addon_info'
][
'name'
]
?>
"
rel=
"
<?=
$namespace
?>
"
folderName=
"
<?=
$addon_one
[
'addon_info'
][
'folder'
]
?>
"
packageName=
"
<?=
$addon_one
[
'addon_info'
][
'package'
]
?>
"
>
点击安装
</a>
<?php
else
:
?>
<a
title=
"您是该应用的开发者,请上传版本zip文件,通过管理员审核后菜才可以安装"
class=
"not_publish"
href=
"javascript:void(0)"
addonName=
"
<?=
$addon_one
[
'addon_info'
][
'name'
]
?>
"
rel=
"
<?=
$namespace
?>
"
folderName=
"
<?=
$addon_one
[
'addon_info'
][
'folder'
]
?>
"
packageName=
"
<?=
$addon_one
[
'addon_info'
][
'package'
]
?>
"
>
未发布
</a>
<?php
endif
;
?>
<?php
endif
;
?>
<div
class=
"version_info"
>
<div
class=
""
>
最高版本:
<?=
$addon_one
[
'addon_info'
][
'version'
]
?>
</div>
<?php
if
(
$top_version
)
:
?>
<div
class=
""
>
最高版本:
<?=
$top_version
?>
</div>
<?php
endif
;
?>
<?php
if
(
$versionArr
[
$namespace
])
:
?>
<div
style=
"margin-top:5px;"
>
当前版本:
<?=
$versionArr
[
$namespace
]
?>
</div>
<?php
endif
;
?>
</div>
</div>
<?php
if
(
$canDelete
)
:
?>
<a
href=
"javascript:void(0)"
class=
"removeAddon"
title=
"卸载应用"
addonName=
"
<?=
$addon_one
[
'addon_info'
][
'name'
]
?>
"
rel=
"
<?=
$namespace
?>
"
folderName=
"
<?=
$addon_one
[
'addon_info'
][
'folder'
]
?>
"
packageName=
"
<?=
$addon_one
[
'addon_info'
][
'package'
]
?>
"
>
<i
class=
"fa fa-trash-o"
></i>
</a>
<?php
endif
;
?>
</li>
<?php
endforeach
;
?>
</ul>
...
...
@@ -66,6 +95,9 @@ use fec\helpers\CRequest;
</div>
<style>
.addon_li
h2
{
margin10px
auto;
line-height
:
20px
;
height
:
40px
;
overflow
:
hidden
;
}
.removeAddon
{
display
:
block
;
bottom
:
10px
;
...
...
@@ -78,13 +110,14 @@ use fec\helpers\CRequest;
color
:
#333
;
}
.version_info
{
float
:
right
;
margin-right
:
10px
;
}
.addon_li
{
width
:
280px
;
height
:
39
0px
;
height
:
44
0px
;
display
:
inline-block
;
margin
:
10px
;
border
:
1px
solid
#ccc
;
...
...
@@ -105,6 +138,12 @@ use fec\helpers\CRequest;
text-align
:
center
;
}
.not_publish
{
background
:
#f0ad4e
!important
;
color
:
#fff
;
padding
:
5px
10px
;
}
.abutton
{
background
:
#009688
!important
;
color
:
#fff
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录