test / bt-source /panel /class /wptoolkitModel /toolkitModel.py
GGSheng's picture
feat: deploy Gemma 4 to hf space
08c964e verified
import json
import os
from types import MethodType
from flask import request
from wptoolkitModel.base import wpbase
import requests
import panelSite
import public_wp as public
from wptoolkitModel import one_key_wp_v2, base
class main(wpbase):
def __init__(self, get=None):
super(main, self).__init__(get)
# 入口函数 处理dict_obj
def api(self, get):
query = request.args
if not query.get("action"):
return public.returnMsg(False, "参数错误")
action = query['action']
get = public.to_dict_obj(vars(get))
method = getattr(self, action)
try:
return method(get)
except public.HintException as e:
return public.return_message(-1, 0, str(e))
# 新增站点
def AddWPSite(self, get):
public.set_module_logs('wp_toolkit', 'AddWPSite', 1)
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().AddWPSite(get)
# 重置Wordpress管理员账号密码
def reset_wp_password(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().reset_wp_password(get)
# 检查Wordpress版本更新
def is_update(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().is_update(get)
# 清除Wordpress Nginx fastcgi cache
def purge_all_cache(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().purge_all_cache(get)
# 设置Wordpress Nginx fastcgi cache
def set_fastcgi_cache(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().set_fastcgi_cache(get)
# 更新Wordpress到最新版本
def update_wp(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().update_wp(get)
# 获取可用的语言列表
def get_language(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().get_language(get)
# 获取可用的WP安装版本
def get_wp_versions(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().get_wp_available_versions(get)
# 获取WP Toolkit配置信息
def get_wp_configurations(self, args):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().get_wp_configurations(args)
# 保存WP Toolkit配置
def save_wp_configurations(self, args):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().save_wp_configurations(args)
# 获取wp 安全模块配置
def get_wp_security_info(self, get):
from wp_toolkit import wp_security
result = wp_security().get_security_info(get)
get.name = get.site_name
# 取防盗链配置
from panelSite import panelSite
hotlink = panelSite().GetSecurity(get)
print(hotlink)
try:
result['msg']['hotlink_status'] = 1 if hotlink['status'] else 0
except:
pass
return result
# 开启WP 文件防护
def open_wp_file_protection(self, get):
from wp_toolkit import wp_security
return wp_security().open_file_protection(get)
# 关闭WP 文件防护
def close_wp_file_protection(self, get):
from wp_toolkit import wp_security
return wp_security().close_file_protection(get)
# 获取WP 文件防护
def get_wp_file_info(self, get):
from wp_toolkit import wp_security
return wp_security().get_file_info(get)
# 开启WP 防火墙防护
def open_wp_firewall_protection(self, get):
from wp_toolkit import wp_security
return wp_security().open_firewall_protection(get)
# 关闭WP 防火墙防护
def close_wp_firewall_protection(self, get):
from wp_toolkit import wp_security
return wp_security().close_firewall_protection(get)
def deploy_wp(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().deploy_wp(get)
def get_wp_username(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().get_wp_username(get)
def reset_wp_db(self, get):
import one_key_wp_v2 as one_key_wp
return one_key_wp.one_key_wp().reset_wp_db(get)
# 备份WP站点
def wp_backup(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('bak_type').Require().Integer('>', 0),
])
from wp_toolkit import wpbackup
bak_obj = wpbackup(args.s_id)
bak_type = int(args.bak_type)
if bak_type == 1:
ok, msg = bak_obj.backup_files()
elif bak_type == 2:
ok, msg = bak_obj.backup_database()
elif bak_type == 3:
ok, msg = bak_obj.backup_full()
else:
return public.fail_v2('备份类型无效 {}', (bak_type,))
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 还原WP站点
def wp_restore(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('bak_id').Require().Integer('>', 0),
])
from wp_toolkit import wpbackup
bak_id = int(args.bak_id)
bak_obj = wpbackup(wpbackup.retrieve_site_id_with_bak_id(bak_id))
ok, msg = bak_obj.restore_with_backup(bak_id)
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# WP备份列表
def wp_backup_list(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('p').Integer('>', 0),
public.Param('limit').Integer('>', 0),
public.Param('tojs').Regexp(r"^[\w\.\-]+$"),
public.Param('result').Regexp(r"^[\d\,]+$"),
])
from wp_toolkit import wpbackup
bak_obj = wpbackup(args.s_id)
return public.success_v2(bak_obj.backup_list(args))
# 删除WP站点备份
def wp_remove_backup(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('bak_id').Require().Integer('>', 0),
])
from wp_toolkit import wpbackup
bak_id = int(args.bak_id)
bak_obj = wpbackup(wpbackup.retrieve_site_id_with_bak_id(bak_id))
ok, msg = bak_obj.remove_backup(bak_id)
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
def migrate_site_to_wptoolkit(self, args: public.dict_obj):
public.set_module_logs('wp_toolkit', 'migrate_site_to_wptoolkit', 1)
from wp_toolkit import wpmigration
ok, msg = wpmigration(args.site_id).migrate_site_to_wptoolkit(args)
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 从 [网站管理] 迁移到 [WP Toolkit]
def wp_migrate_from_website_to_wptoolkit(self, args: public.dict_obj):
from wp_toolkit import wpmigration
ok, msg = wpmigration.migrate_aap_from_website_to_wptoolkit()
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 查询可从 [网站管理] 迁移到 [WP Toolkit] 的网站列表
def wp_can_migrate_from_website_to_wptoolkit(self, args: public.dict_obj):
from wp_toolkit import wpmigration
return public.success_v2(wpmigration.can_migrations_of_aap_website())
# 从aapanel WP备份中创建WP站点
def wp_create_with_aap_bak(self, args: public.dict_obj):
from wp_toolkit import wpbackup
ok, msg = wpbackup.wp_deploy_with_aap_bak(args)
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 从plesk/cpanel WP备份中创建WP站点
def wp_create_with_plesk_or_cpanel_bak(self, args: public.dict_obj):
from wp_toolkit import wpbackup
ok, msg = wpbackup.wp_deploy_with_plesk_or_cpanel_bak(args)
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 克隆WP站点
def wp_clone(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
])
from wp_toolkit import wpbackup
ok, msg = wpbackup(args.s_id).clone(args)
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# Wordpress完整性校验
def wp_integrity_check(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
])
from wp_toolkit import wpmgr
ok, msg = wpmgr(args.s_id).integrity_check()
if not ok:
_return = public.fail_v2(msg)
else:
_return = public.success_v2(msg)
_return['data'] = {}
_return['data']['msg'] = _return['msg']
return _return
# 重新下载并安装Wordpress(仅限框架文件,不会删除新文件)
def wp_reinstall_files(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
])
from wp_toolkit import wpmgr
ok, msg = wpmgr(args.s_id).reinstall_package()
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 获取可安装的插件列表
def wp_plugin_list(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Integer('>', 0).Filter(int),
public.Param('keyword'),
public.Param('p').Integer('>', 0).Filter(int),
public.Param('p_size').Integer('>', 0).Filter(int),
public.Param('set_id').Integer('>', 0).Filter(int),
])
from wp_toolkit import wpmgr
if 's_id' in args:
ok, msg = wpmgr(args.s_id).search_plugins(args.get('keyword', ''), args.get('p', 1), args.get('p_size', 20))
else:
ok, msg = wpmgr.query_plugins(args.get('keyword', ''), args.get('p', 1), args.get('p_size', 20),
args.get('set_id', None))
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 安装插件
def wp_install_plugin(self, args: public.dict_obj):
public.set_module_logs('wp_toolkit', 'wp_install_plugin', 1)
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('slug').Require().SafePath(),
])
from wp_toolkit import wpmgr
ok, msg = wpmgr(args.s_id).install_plugin(args.slug)
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 已安装插件列表
def wp_installed_plugins(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('force_check_updates').Integer('in', [0, 1]),
])
from wp_toolkit import wpmgr
res = wpmgr(args.s_id).installed_plugins(bool(int(args.get('force_check_updates', 0))))
if isinstance(res, str):
return public.fail_v2(res)
return public.success_v2(res)
# 更新插件
def wp_update_plugin(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('plugin_file').Require().SafePath(),
])
from wp_toolkit import wpmgr
ok, msg = wpmgr(args.s_id).update_plugin(args.plugin_file)
if not ok:
return public.fail_v2(msg)
return public.success_v2('更新成功')
# 开启/关闭插件自动更新
def wp_set_plugin_auto_update(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('plugin_file').Require().SafePath(),
public.Param('enable').Require().Integer('in', [0, 1]),
])
from wp_toolkit import wpmgr
wpmgr_obj = wpmgr(args.s_id)
if int(args.enable) == 1:
fn = wpmgr_obj.enable_plugin_auto_update
else:
fn = wpmgr_obj.disable_plugin_auto_update
ok, msg = fn(args.plugin_file)
if not ok:
return public.fail_v2(msg)
return public.success_v2('自动更新设置修改成功')
# 激活/禁用插件
def wp_set_plugin_status(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('plugin_file').Require().SafePath(),
public.Param('activate').Require().Integer('in', [0, 1]),
])
from wp_toolkit import wpmgr
wpmgr_obj = wpmgr(args.s_id)
if int(args.activate) == 1:
fn = wpmgr_obj.activate_plugins
errmsg = public.lang("激活失败,请稍后重试。")
else:
fn = wpmgr_obj.deactivate_plugins
errmsg = public.lang("禁用失败,请稍后重试。")
if not fn(args.plugin_file):
return public.fail_v2(errmsg)
return public.success_v2('插件状态修改成功')
# 卸载插件
def wp_uninstall_plugin(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('plugin_file').Require().SafePath(),
])
from wp_toolkit import wpmgr
ok, msg = wpmgr(args.s_id).uninstall_plugin(args.plugin_file)
if not ok:
return public.fail_v2(msg)
return public.success_v2('卸载成功')
# 获取可安装的主题列表
def wp_theme_list(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Integer('>', 0).Filter(int),
public.Param('keyword'),
public.Param('p').Integer('>', 0).Filter(int),
public.Param('p_size').Integer('>', 0).Filter(int),
public.Param('set_id').Integer('>', 0).Filter(int),
])
from wp_toolkit import wpmgr
if 's_id' in args:
ok, msg = wpmgr(args.s_id).search_themes(args.get('keyword', ''), args.get('p', 1), args.get('p_size', 20))
else:
ok, msg = wpmgr.query_themes(args.get('keyword', ''), args.get('p', 1), args.get('p_size', 20),
args.get('set_id', None))
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 安装主题
def wp_install_theme(self, args: public.dict_obj):
public.set_module_logs('wp_toolkit', 'wp_install_theme', 1)
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('slug').Require(),
])
from wp_toolkit import wpmgr
ok, msg = wpmgr(args.s_id).install_theme(args.slug)
if not ok:
return public.fail_v2(msg)
return public.success_v2(msg)
# 已安装主题列表
def wp_installed_themes(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('force_check_updates').Integer('in', [0, 1]),
])
from wp_toolkit import wpmgr
res = wpmgr(args.s_id).installed_themes(bool(int(args.get('force_check_updates', 0))))
if isinstance(res, str):
return public.fail_v2(res)
return public.success_v2(res)
# 更新主题
def wp_update_theme(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('stylesheet').Require(),
])
from wp_toolkit import wpmgr
ok, msg = wpmgr(args.s_id).update_theme(args.stylesheet)
if not ok:
return public.fail_v2(msg)
return public.success_v2('更新成功')
# 开启/关闭主题自动更新
def wp_set_theme_auto_update(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('stylesheet').Require(),
public.Param('enable').Require().Integer('in', [0, 1]),
])
from wp_toolkit import wpmgr
wpmgr_obj = wpmgr(args.s_id)
if int(args.enable) == 1:
fn = wpmgr_obj.enable_theme_auto_update
else:
fn = wpmgr_obj.disable_theme_auto_update
ok, msg = fn(args.stylesheet)
if not ok:
return public.fail_v2(msg)
return public.success_v2('自动更新设置修改成功')
# 切换主题
def wp_switch_theme(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('stylesheet').Require(),
])
from wp_toolkit import wpmgr
if not wpmgr(args.s_id).switch_theme(args.stylesheet):
return public.fail_v2('主题切换失败请稍后重试')
return public.success_v2('切换成功')
# 卸载主题
def wp_uninstall_theme(self, args: public.dict_obj):
# 参数校验
args.validate([
public.Param('s_id').Require().Integer('>', 0),
public.Param('stylesheet').Require(),
])
from wp_toolkit import wpmgr
ok, msg = wpmgr(args.s_id).uninstall_theme(args.stylesheet)
if not ok:
return public.fail_v2(msg)
return public.success_v2('卸载成功')
# 获取所有WP站点
def wp_all_sites(self, args: public.dict_obj):
from wp_toolkit import wpmgr
return public.success_v2(wpmgr.all_sites())
# 获取WP整合包列表
def wp_set_list(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('keyword'),
public.Param('p').Filter(int),
public.Param('p_size').Filter(int),
])
from wp_toolkit import wp_sets
return public.success_v2(
wp_sets().fetch_list(args.get('keyword', ''), args.get('p', 1), args.get('p_size', 20)))
# 新建WP整合包
def wp_create_set(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('name').Require(),
])
from wp_toolkit import wp_sets
if wp_sets().create_set(args.name) < 1:
raise public.HintException(public.lang("创建失败"))
return public.success_v2('创建成功')
# 删除WP整合包
def wp_remove_set(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('set_id').Require().Regexp(r'^\d+(?:,\d+)*$'),
])
from wp_toolkit import wp_sets
if not wp_sets().remove_set(list(map(lambda x: int(x), str(args.set_id).split(',')))):
raise public.HintException(public.lang("删除失败"))
return public.success_v2('删除成功')
# 获取WP整合包中的插件列表or主题列表
def wp_get_items_from_set(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('set_id').Require().Integer('>', 0).Filter(int),
public.Param('type').Require().Integer('in', [1, 2]).Filter(int),
])
from wp_toolkit import wp_sets
return public.success_v2(wp_sets().get_items(args.set_id, args.type))
# 添加插件or主题到WP整合包中
def wp_add_items_to_set(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('set_id').Require().Integer('>', 0).Filter(int),
public.Param('items').Require().Array(),
public.Param('type').Require().Integer('in', [1, 2]).Filter(int),
])
from wp_toolkit import wp_sets
typ = int(args.type)
# 添加插件
if typ == 1:
ok, msg = wp_sets().add_plugins(int(args.set_id), json.loads(args.items))
# 添加主题
elif typ == 2:
ok, msg = wp_sets().add_themes(int(args.set_id), json.loads(args.items))
# 无效类型
else:
raise public.HintException(public.lang("无效类型"))
if not ok:
raise public.HintException(msg)
return public.success_v2('添加成功')
# 将插件or主题从WP整合包中移除
def wp_remove_items_from_set(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('item_ids').Require().Regexp(r'^\d+(?:,\d+)*$'),
public.Param('type').Require().Integer('in', [1, 2]).Filter(int),
])
from wp_toolkit import wp_sets
item_ids = list(map(lambda x: int(x), str(args.item_ids).split(',')))
typ = int(args.type)
# 删除插件
if typ == 1:
ok = wp_sets().remove_plugins(item_ids)
# 删除主题
elif typ == 2:
ok = wp_sets().remove_themes(item_ids)
# 无效类型
else:
raise public.HintException(public.lang("无效类型"))
if not ok:
raise public.HintException(public.lang("删除失败"))
return public.success_v2('删除成功')
# 更改WP整合包中插件or主题的激活状态
def wp_update_item_state_with_set(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('item_ids').Require().Regexp(r'^\d+(?:,\d+)*$'),
public.Param('state').Require().Integer('in', [0, 1]),
public.Param('type').Require().Integer('in', [1, 2]).Filter(int),
])
from wp_toolkit import wp_sets
item_ids = list(map(lambda x: int(x), str(args.item_ids).split(',')))
state = int(args.state)
typ = int(args.type)
# 删除插件
if typ == 1:
ok = wp_sets().update_plugins_state(state, item_ids)
# 删除主题
elif typ == 2:
ok = wp_sets().update_theme_state(state, item_ids[0])
# 无效类型
else:
raise public.HintException(public.lang("无效类型"))
if not ok:
raise public.HintException(public.lang("修改失败"))
return public.success_v2('修改成功')
# 通过WP整合包安装插件&主题
def wp_install_with_set(self, args: public.dict_obj):
public.set_module_logs('wp_toolkit', 'wp_install_with_set', 1)
# 校验参数
args.validate([
public.Param('set_id').Require().Integer('>', 0),
public.Param('site_ids').Require().Regexp(r'^\d+(?:,\d+)*$'),
])
from wp_toolkit import wp_sets
set_id = int(args.set_id)
site_ids = list(map(lambda x: int(x), str(args.site_ids).split(',')))
ok, msg = wp_sets().install(set_id, site_ids)
if not ok:
return public.returnMsg(False, msg)
return public.success_v2(msg)
# *********** WP Toolkit Remote --Begin-- *************
# TODO 新增远程WP站点
def wp_remote_add(self, args: public.dict_obj):
public.set_module_logs('wp_toolkit', 'wp_remote_add', 1)
# 校验参数
args.validate([
public.Param('login_url').Require().Url(),
public.Param('username').Require(),
public.Param('password').Require(),
])
try:
from wp_toolkit import wpmgr_remote
wpmgr_remote().add(args.login_url, args.username, args.password)
except Exception as e:
return public.returnMsg(False, str(e))
return public.success_v2('Success')
# TODO 新增远程WP站点(手动安装)
def wp_remote_add_manually(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('login_url').Require().Url(),
public.Param('security_key').Require(),
public.Param('security_token').Require(),
])
from wp_toolkit import wpmgr_remote
wpmgr_remote().add_manually(args.login_url, args.security_key, args.security_token)
return public.success_v2('添加成功')
# TODO 删除远程WP站点
def wp_remote_remove(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('remote_id').Require().Integer('>', 0),
])
from wp_toolkit import wpmgr_remote
if not wpmgr_remote(args.remote_id).remove():
raise public.HintException(public.lang('Remove wordpress remote site failed'))
return public.success_v2('Success')
# TODO 获取远程WP站点列表
def wp_remote_sites(self, args: public.dict_obj):
# 校验参数
args.validate([
public.Param('keyword'),
public.Param('p').Filter(int),
public.Param('p_size').Filter(int),
])
from wp_toolkit import wpmgr_remote
return public.success_v2(wpmgr_remote().list(args.get('keyword', ''), args.get('p', 1), args.get('p_size', 20)))
# *********** WP Toolkit Remote --End-- *************
@staticmethod
def test_domains_api(get):
try:
domains = json.loads(get.domains.strip())
except (json.JSONDecodeError, AttributeError, KeyError):
return public.return_message(-1, 0, public.lang("参数错误"))
try:
from panel_dns_api_v2 import DnsMager
public.print_log("开始测试域名解析---- {}")
# public.print_log("开始测试域名解析---- {}".format(domains[0]))
return DnsMager().test_domains_api(domains)
except:
pass
public.return_message(0, 0, "")
def site_rname(self, get):
try:
if not (hasattr(get, "id") and hasattr(get, "rname")):
return public.return_message(-1, 0, public.lang("parameter error"))
id = get.id
rname = get.rname
data = public.M('sites').where("id=?", (id,)).select()
if not data:
return public.return_message(-1, 0, public.lang("The site does not exist!"))
data = data[0]
name = data['rname'] if 'rname' in data.keys() and data.get('rname', '') else data['name']
if 'rname' not in data.keys():
public.M('sites').execute("ALTER TABLE 'sites' ADD 'rname' text DEFAULT ''", ())
public.M('sites').where('id=?', data['id']).update({'rname': rname})
# public.write_log_gettext('Site manager', 'Website [{}] renamed: [{}]'.format(name, rname))
return public.return_message(0, 0, public.lang("Website [{}] renamed: [{}]", name, rname))
except:
return public.return_message(-1, 0, traceback.format_exc())
# Wordpress 漏洞扫描
def wordpress_vulnerabilities_scan(self, get):
from wp_toolkit import wordpress_scan
if 'path' not in get: public.return_message(0, 0, public.lang("Parameter error"))
return public.return_message(0, 0, wordpress_scan.wordpress_scan().scan(get.path))
def wordpress_vulnerabilities_time(self, get):
from wp_toolkit import wordpress_scan
return public.return_message(0, 0, wordpress_scan.wordpress_scan().get_vlu_time())
def ignore_vuln(self, get):
from wp_toolkit import wordpress_scan
return wordpress_scan.wordpress_scan().ignore_vuln(get)
def get_ignore_vuln(self, get):
from wp_toolkit import wordpress_scan
return wordpress_scan.wordpress_scan().get_ignore_vuln(get)
def set_auth_scan(self, get):
if 'path' not in get: public.return_message(0, 0, public.lang("Parameter error"))
from wp_toolkit import wordpress_scan
return wordpress_scan.wordpress_scan().set_auth_scan(get.path)
def get_auth_scan_status(self, get):
if 'path' not in get: public.return_message(0, 0, public.lang("Parameter error"))
from wp_toolkit import wordpress_scan
return wordpress_scan.wordpress_scan().get_auth_scan_status(get.path)
def auto_login(self, get):
if get.site_type == "local":
from wp_toolkit import wpmgr
return wpmgr(get.site_id).auto_login()
elif get.site_type.lower() == 'remote':
from wp_toolkit import wpmgr_remote
return wpmgr_remote(get.site_id).auto_login()
else:
return public.returnMsg(False, "错误的类型")