pull/109/head
Mr Chen 6 years ago
parent 812ad14374
commit 3ba534e41f
  1. 23
      class/core/public.py
  2. BIN
      plugins/readme/ico.png
  3. 57
      plugins/readme/index.html
  4. 20
      plugins/readme/index.py
  5. 15
      plugins/readme/info.json
  6. 30
      plugins/readme/install.sh
  7. 17
      route/static/app/soft.js

@ -793,16 +793,19 @@ def checkCert(certPath='ssl/certificate.pem'):
return False return False
return True return True
# 获取面板地址
# def getPanelAddr(): def getPathSize(path):
# import web # 取文件或目录大小
# protocol = 'https://' if os.path.exists("data/ssl.pl") else 'http://' if not os.path.exists(path):
# h = web.ctx.host.split(':') return 0
# try: if not os.path.isdir(path):
# result = protocol + h[0] + ':' + h[1] return os.path.getsize(path)
# except: size_total = 0
# result = protocol + h[0] + ':' + readFile('data/port.pl').strip() for nf in os.walk(path):
# return result for f in nf[2]:
filename = nf[0] + '/' + f
size_total += os.path.getsize(filename)
return size_total
def toSize(size): def toSize(size):

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

@ -1,57 +0,0 @@
<div class="bt-form">
<div class="bt-w-main">
<div class="bt-w-menu">
<p class="bgw" onclick="readme();">插件说明</p>
<p onclick="infojson();">INFO说明</p>
<p onclick="indexPy();">index.py说明</p>
</div>
<div class="bt-w-con pd15">
<div class="soft-man-con v0">
<div><p>在每一个插件中,都必须包含一个info.json文件,格式如下:</p><br/></div>
<div>123</div>
</div>
<div class="soft-man-con v1">
<div><p>在每一个插件中,都必须包含一个info.json文件,格式如下:</p><br/></div>
<div><pre>{
"title": "插件开发说明",
"tip": "soft",
"name": "readme",
"type": "扩展",
"ps": "(mdserver-web)插件产开发说明,每个版本可能有所变化!",
"versions": "0.1",
"shell": "install.sh",
"checks": "server/readme",
"path": "server/readme",
"author": "mdserver-web",
"home": "github.com/midoks/mdserver-web",
"date": "2018-11-30",
"pid": "5"
}</pre></div>
</div>
<div class="soft-man-con v2">
<div><p>在每一个插件中,都必须包含一个index.py文件</p><br/></div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
function readme() {
$('.bt-w-main .soft-man-con').hide();
$('.bt-w-main .v0').show();
}
function infojson() {
$('.bt-w-main .soft-man-con').hide();
$('.bt-w-main .v1').show();
}
function indexPy() {
$('.bt-w-main .soft-man-con').hide();
$('.bt-w-main .v2').show();
}
</script>

@ -1,20 +0,0 @@
# coding: utf-8
import time
import random
import os
import json
import re
import sys
sys.path.append(os.getcwd() + "/class/core")
import public
def status():
return 'start'
if __name__ == "__main__":
func = sys.argv[1]
if func == 'status':
print status()

@ -1,15 +0,0 @@
{
"title":"开发说明",
"tip":"soft",
"name":"readme",
"type":"扩展",
"ps":"[mdserver-web]插件产开发说明,每个版本可能有所变化!",
"versions": "0.1",
"shell":"install.sh",
"checks":"server/readme",
"path":"server/readme",
"author":"mdserver-web",
"home":"https://github.com/midoks/mdserver-web",
"date":"2018-11-30",
"pid":"5"
}

@ -1,30 +0,0 @@
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
curPath=`pwd`
rootPath=$(dirname "$curPath")
rootPath=$(dirname "$rootPath")
serverPath=$(dirname "$rootPath")
install_tmp=${rootPath}/tmp/bt_install.pl
Install_readme()
{
mkdir -p ${serverPath}/readme
echo "${1}" > ${serverPath}/readme/version.pl
echo '安装完成' > $install_tmp
}
Uninstall_readme()
{
rm -rf ${serverPath}/readme
echo '卸载完成' > $install_tmp
}
action=$1
if [ "${1}" == 'install' ];then
Install_readme $2
else
Uninstall_readme $2
fi

@ -381,6 +381,7 @@ function importPlugin(file){
type: "POST", type: "POST",
data: formData, data: formData,
processData: false, processData: false,
dataType:'json',
contentType: false, contentType: false,
success: function (data) { success: function (data) {
if (data.status === false) { if (data.status === false) {
@ -405,21 +406,21 @@ function importPlugin(file){
<p><b>名称</b>'+ data.title + '</p>\ <p><b>名称</b>'+ data.title + '</p>\
<p><b>版本</b>' + data.versions +'</p>\ <p><b>版本</b>' + data.versions +'</p>\
<p><b>描述</b>' + data.ps + '</p>\ <p><b>描述</b>' + data.ps + '</p>\
<p><b>大小</b>' + bt.format_size(data.size, true) + '</p>\ <p><b>大小</b>' + toSize(data.size) + '</p>\
<p><b>作者</b>' + data.author + '</p>\ <p><b>作者</b>' + data.author + '</p>\
<p><b>来源</b><a class="btlink" href="'+data.home+'" target="_blank">' + data.home + '</a></p>\ <p><b>来源</b><a class="btlink" href="'+data.home+'" target="_blank">' + data.home + '</a></p>\
</div>\ </div>\
<ul class="help-info-text c7">\ <ul class="help-info-text c7">\
<li style="color:red;">此为第三方开发的插件宝塔无法验证其可靠性!</li>\ <li style="color:red;">此为第三方开发的插件无法验证其可靠性!</li>\
<li>安装过程可能需要几分钟时间请耐心等候!</li>\ <li>安装过程可能需要几分钟时间请耐心等候!</li>\
<li>如果已存在此插件将被替换!</li>\ <li>如果已存在此插件将被替换!</li>\
</ul>\ </ul>\
<div class="bt-form-submit-btn"><button type="button" class="btn btn-sm btn-danger mr5" onclick="layer.closeAll()">取消</button><button type="button" class="btn btn-sm btn-success" onclick="importPluginInstall(\''+ data.name + '\',\'' + data.tmp_path +'\')"></button></div>\ <div class="bt-form-submit-btn"><button type="button" class="btn btn-sm btn-danger mr5" onclick="layer.closeAll()">取消</button><button type="button" class="btn btn-sm btn-success" onclick="importPluginInstall(\''+ data.name + '\',\'' + data.tmp_path +'\')"></button></div>\
</div>' </div>'
}); });
},
error: function (responseStr) { },error: function (responseStr) {
layer.msg('上传失败2!', { icon: 2 }); layer.msg('上传失败2!:' + responseStr, { icon: 2 });
} }
}); });
} }
@ -427,13 +428,13 @@ function importPlugin(file){
function importPluginInstall(plugin_name, tmp_path) { function importPluginInstall(plugin_name, tmp_path) {
layer.msg('正在安装,这可能需要几分钟时间...', { icon: 16, time: 0, shade: [0.3, '#000'] }); layer.msg('正在安装,这可能需要几分钟时间...', { icon: 16, time: 0, shade: [0.3, '#000'] });
$.post('/plugin?action=input_zip', { plugin_name: plugin_name, tmp_path: tmp_path }, function (rdata) { $.post('/plugins/input_zip', { plugin_name: plugin_name, tmp_path: tmp_path }, function (rdata) {
layer.closeAll() layer.closeAll()
if (rdata.status) { if (rdata.status) {
soft.get_list(); getSList(true);
} }
setTimeout(function () { layer.msg(rdata.msg, { icon: rdata.status ? 1 : 2 }) }, 1000); setTimeout(function () { layer.msg(rdata.msg, { icon: rdata.status ? 1 : 2 }) }, 1000);
}); },'json');
} }
$(function() { $(function() {

Loading…
Cancel
Save