Files
yakpanel-core/class_v2/panelModelV2/backupModel.py

84 lines
2.6 KiB
Python
Raw Normal View History

2026-04-07 02:04:22 +05:30
#coding: utf-8
#-------------------------------------------------------------------
# YakPanel
#-------------------------------------------------------------------
# Copyright (c) 2015-2099 YakPanel(www.yakpanel.com) All rights reserved.
#-------------------------------------------------------------------
# Author: cjxin <cjxin@yakpanel.com>
#-------------------------------------------------------------------
# 备份
#------------------------------
import os,sys,re,json,shutil,psutil,time
from panelModelV2.base import panelBase
import public
class main(panelBase):
def __init__(self):
pass
def get_site_backup_info(self,get):
"""
@获取网站是否开启计划任务备份
@param get['site_id'] 网站id
@return
all : 开启全部网站备份
info计划任务详情
"""
id = get.id
find = public.M('sites').where("id=?",(id,)).find()
if not find:
return public.return_message(-1, 0,public.lang("The specified website could not be found."))
result = {}
result['all'] = 0
result['info'] = False
result['status'] = True
data = public.M('crontab').where('sName=? and sType =?',(find['name'],'site')).order('id desc').select()
if len(data) > 0:
result['info'] = data[0]
data = public.M('crontab').where('sName=? and sType =?',('ALL','site')).order('id desc').select()
if len(data) > 0:
result['info'] = data[0]
result['all'] = 1
return public.return_message(0, 0, result)
def get_database_backup_info(self,get):
"""
@获取数据库是否开启计划任务备份
@param get['site_id'] 数据库id
@return
all : 开启全部数据库备份
info计划任务详情
"""
id = get.id
find = public.M('databases').where("id=?",(id,)).find()
if not find:
return public.return_message(-1, 0,public.lang("The specified database could not be found."))
result = {}
result['all'] = 0
result['info'] = False
result['status'] = True
data = public.M('crontab').where('sName=? and sType =?',(find['name'],'database')).order('id desc').select()
if len(data) > 0:
result['info'] = data[0]
data = public.M('crontab').where('sName=? and sType =?',('ALL','database')).order('id desc').select()
if len(data) > 0:
result['info'] = data[0]
result['all'] = 1
return public.return_message(0, 0, result)