diff --git a/class/core/site_api.py b/class/core/site_api.py index 5a0d499d4..f934bbd71 100755 --- a/class/core/site_api.py +++ b/class/core/site_api.py @@ -79,6 +79,29 @@ class site_api: _ret['page'] = public.getPage(_page) return public.getJson(_ret) + def getDomain(self, pid): + _list = public.M('domain').where("pid=?", (pid,)).field( + 'id,pid,name,port,addtime').select() + return public.getJson(_list) + + def getLogs(self, siteName): + logPath = public.getLogsDir() + '/' + siteName + '.log' + if not os.path.exists(logPath): + return public.returnJson(False, '日志为空') + return public.returnJson(True, public.getNumLines(logPath, 1000)) + + def getSitePhpVersion(self, siteName): + conf = public.readFile( + public.getServerDir() + '/openresty/nginx/conf/vhost/' + siteName + '.conf') + rep = "enable-php-([0-9]{2,3})\.conf" + tmp = re.search(rep, conf).groups() + data = {} + data['phpversion'] = tmp[0] + return public.getJson(data) + + def addDomain(self, domain, webname, pid): + pass + def getPhpVersion(self): phpVersions = ('00', '52', '53', '54', '55', '56', '70', '71', '72', '73', '74') @@ -138,15 +161,30 @@ class site_api: # 写入数据库 pid = siteM.add('name,path,status,ps,edate,addtime', (self.siteName, self.sitePath, '1', ps, '0000-00-00', public.getDate())) + opid = public.M('domain').where( + "name=?", (self.siteName,)).getField('pid') + if opid: + if public.M('sites').where('id=?', (opid,)).count(): + return public.returnJson(False, '您添加的域名已存在!') + public.M('domain').where('pid=?', (opid,)).delete() + + # 添加更多域名 + for domain in siteMenu['domainlist']: + sdomain = domain + swebname = self.siteName + spid = str(get.pid) + # self.addDomain(domain, webname, pid) + + public.M('domain').add('pid,name,port,addtime', + (pid, self.siteName, self.sitePort, public.getDate())) self.createRootDir(self.sitePath) - # public.M('domain').add('pid,name,port,addtime', - # (get.pid, self.siteName, self.sitePort, public.getDate())) self.nginxAddConf() data = {} data['siteStatus'] = False + public.restartWeb() return public.getJson(data) def delete(self, sid, webname): diff --git a/route/site.py b/route/site.py index c0bd20c17..282a64de9 100644 --- a/route/site.py +++ b/route/site.py @@ -31,6 +31,24 @@ def getPhpVersion(): return site_api.site_api().getPhpVersion() +@site.route('get_domain', methods=['POST']) +def getDomain(): + pid = request.form.get('pid', '').encode('utf-8') + return site_api.site_api().getDomain(pid) + + +@site.route('get_logs', methods=['POST']) +def getLogs(): + siteName = request.form.get('siteName', '').encode('utf-8') + return site_api.site_api().getLogs(siteName) + + +@site.route('get_site_php_version', methods=['POST']) +def getSitePhpVersion(): + siteName = request.form.get('siteName', '').encode('utf-8') + return site_api.site_api().getSitePhpVersion(siteName) + + @site.route('get_root_dir', methods=['POST']) def getRootDir(): data = {} diff --git a/static/app/site.js b/static/app/site.js index 9e39d1d21..cf7d9dcce 100755 --- a/static/app/site.js +++ b/static/app/site.js @@ -594,15 +594,16 @@ function syncDeleteSite(dataList,successCount,errorMsg,path){ * 域名管理 * @param {Int} id 网站ID */ -function DomainEdit(id, name,msg,status) { - $.get('/data?action=getData&table=domain&list=True&search=' + id, function(domain) { +function domainEdit(id, name, msg, status) { + $.post('/site/get_domain' ,{pid:id}, function(domain) { + var echoHtml = ""; for (var i = 0; i < domain.length; i++) { echoHtml += "" + domain[i].name + "" + domain[i].port + ""; } var bodyHtml = "\ \ - \ + \
\ \ \ @@ -630,11 +631,14 @@ function DomainEdit(id, name,msg,status) { }); $("#newdomain").on("input",function(){ var str = $(this).val(); - if(isChineseChar(str)) $('.btn-zhm').show(); - else $('.btn-zhm').hide(); + if(isChineseChar(str)) { + $('.btn-zhm').show(); + } else{ + $('.btn-zhm').hide(); + } }) //checkDomain(); - }); + },'json'); } function DomainRoot(id, name,msg) { @@ -654,7 +658,7 @@ function DomainRoot(id, name,msg) { content: "
\ \ \ - \ + \
"+lan.site.domain+""+lan.site.port+""+lan.site.operate+"
\ \ " + echoHtml + "\ @@ -731,7 +735,7 @@ function checkDomainWebsize(obj,domain){ * @param {Int} id 网站ID * @param {String} webname 主域名 */ -function DomainAdd(id, webname,type) { +function domainAdd(id, webname,type) { var Domain = $("#newdomain").val().split("\n"); var domainlist=""; @@ -748,7 +752,7 @@ function DomainAdd(id, webname,type) { var data = "domain=" + domainlist + "&webname=" + webname + "&id=" + id; $.post('/site?action=AddDomain', data, function(retuls) { layer.close(loadT); - DomainEdit(id,webname,retuls.msg,retuls.status); + domainEdit(id,webname,retuls.msg,retuls.status); }); } @@ -773,7 +777,7 @@ function delDomain(wid, wname, domain, port,type) { layer.msg(ret.msg,{icon:ret.status?1:2}) if(type == 1){ layer.close(loadT); - DomainEdit(wid,wname) + domainEdit(wid,wname) }else{ layer.closeAll(); DomainRoot(wid, wname); @@ -1019,11 +1023,10 @@ function webEdit(id,website,endTime,addtime){ +"

"+lan.site.site_menu_6+"

" +"

"+lan.site.site_menu_7+"

" +"

"+lan.site.site_menu_8+"

" - +"

"+lan.site.site_menu_9+"

" +"

"+lan.site.site_menu_10+"

" +"

"+lan.site.site_menu_11+"

" +"

"+lan.site.site_menu_12+"

" - +"

响应日志

"; + +"

响应日志

"; layer.open({ type: 1, area: '640px', @@ -1032,13 +1035,13 @@ function webEdit(id,website,endTime,addtime){ shift: 0, content: "
" +"
" - +"

"+lan.site.domain_man+"

" + +"

"+lan.site.domain_man+"

" +" "+eMenu+"" +"
" +"
" +"
" }); - DomainEdit(id,website); + domainEdit(id,website); //域名输入提示 var placeholder = "
"+lan.site.domain_help+"
"; $('#newdomain').after(placeholder); @@ -1063,9 +1066,10 @@ function webEdit(id,website,endTime,addtime){ } //取网站日志 -function GetSiteLogs(siteName){ - var loadT = layer.msg(lan.public.the,{icon:16,time:0,shade: [0.3, '#000']}); - $.post('/site?action=GetSiteLogs',{siteName:siteName},function(logs){ +function getSiteLogs(siteName){ + var loadT = layer.msg('正在处理,请稍候...',{icon:16,time:0,shade: [0.3, '#000']}); + $.post('/site/get_logs',{siteName:siteName},function(logs){ + console.log(logs); layer.close(loadT); if(logs.status !== true){ logs.msg = ''; @@ -1075,7 +1079,7 @@ function GetSiteLogs(siteName){ $("#webedit-con").html(phpCon); var ob = document.getElementById('error_log'); ob.scrollTop = ob.scrollHeight; - }); + },'json'); } @@ -2080,12 +2084,13 @@ function ChangeSaveSSL(siteName){ //PHP版本 function PHPVersion(siteName){ - $.post('/site?action=GetSitePHPVersion','siteName='+siteName,function(version){ + $.post('/site/get_site_php_version','siteName='+siteName,function(version){ + console.log(version); if(version.status === false){ layer.msg(version.msg,{icon:5}); return; } - $.post('/site?action=GetPHPVersion',function(rdata){ + $.post('/site/get_php_version',function(rdata){ var versionSelect = "
\
\ "+lan.site.php_ver+"\ @@ -2134,8 +2139,8 @@ function PHPVersion(siteName){ $('#php_w').text(''); } }) - }); - }); + },'json'); + },'json'); } //tomcat
"+lan.site.domain+""+lan.site.port+""+lan.site.operate+"