首页
Portal
业界资讯
社区
BBS
我的家园
Space
个人空间
导读
Guide
登录
/
注册
用户名
Email
自动登录
找回密码
密码
登录
注册
搜索
搜索
本版
帖子
用户
本版
帖子
用户
帖子
好友
道具
勋章
收藏
任务
淘帖
门户
导读
设置
我的收藏
退出
腾讯QQ
微信登录
首页
›
≡≡网络技术≡≡
›
PHP语言
›
Veno-File-Manager (VFM4)云盘游客文件分享按钮不显示解 ...
返回列表
CMS
Veno-File-Manager (VFM4)云盘游客文件分享按钮不显示解决办法
[ 复制链接 ]
灰儿
2022-9-3 18:20:59
Veno-File-Manager (VFM4)云盘游客文件分享按钮不显示的原因及解决办法
自定义配置文件:
'sendfiles_enable_guest' => true,
复制代码
解决方法:
打开 class.gatekeeper.php 文件,查找 isAllowed($action) 对象方法,相关代码如下:
/**
* Check if target action is allowed
*
* @param string $action action to check
*
* @return true/false
*/
public function isAllowed($action)
{
global $setUp;
if ($action && $this->isAccessAllowed()) {
$role = $this->getUserInfo('role');
$role = $role == null ? 'guest' : $role;
// $role = 'guest' ;
if ($role == 'superadmin') {
return true;
}
$base_actions = array(
'view_enable',
'viewdirs_enable',
'download_enable',
);
// Base actions true for all except Guest and User
if (in_array($action, $base_actions) && $role !== 'guest' && $role !== 'user') {
return true;
}
$role_ext = $role == 'admin' ? '' : '_'.$role;
return $setUp->getConfig($action.$role_ext);
}
return false;
}
复制代码
把其中的 $role = $role == null ? 'guest' : $role; 三目运算符条件判断改动一下,修改后代码为:
$role = !$this-> isUserLoggedIn() ? 'guest' : $role;
复制代码
如果使用if语句重写,代码为:
// $role = $role == null ? 'guest' : $role;
if (!$this-> isUserLoggedIn()) {
$role = 'guest';
} else {
$role = $role;
}
复制代码
修改行整段代码如下:
/**
* Check if target action is allowed
*
* @param string $action action to check
*
* @return true/false
*/
public function isAllowed($action)
{
global $setUp;
if ($action && $this->isAccessAllowed()) {
$role = $this->getUserInfo('role');
// $role = $role == null ? 'guest' : $role;
$role = !$this-> isUserLoggedIn() ? 'guest' : $role;
if ($role == 'superadmin') {
return true;
}
$base_actions = array(
'view_enable',
'viewdirs_enable',
'download_enable',
);
// Base actions true for all except Guest and User
if (in_array($action, $base_actions) && $role !== 'guest' && $role !== 'user') {
return true;
}
$role_ext = $role == 'admin' ? '' : '_'.$role;
return $setUp->getConfig($action.$role_ext);
}
return false;
}
复制代码
同时,也要在 getUserInfo() 对象方法中,加入未登录用户(游客)可访问公共目录(public_dirs)内容,把游客访问目录限制在指定目录内,添加后代码如下:
/**
* Get user info ('name', 'role', 'dir', 'email')
*
* @param int $info index of corresponding user info
*
* @return info requested
*/
public function getUserInfo($info)
{
global $setUp;
if ($this->isUserLoggedIn()
&& isset($_SESSION['vfm_user_name'])
&& strlen($_SESSION['vfm_user_name']) > 0
) {
$username = $_SESSION['vfm_user_name'];
$curruser = $this->getCurrentUser($username);
if (isset($curruser[$info]) && strlen($curruser[$info]) > 0) {
return $curruser[$info];
}
}
//游客可访问公共目录(public_dirs)内容
else {
$public_dirs = $setUp->getConfig('public_dirs');
$public_dirs = '["' . join('","', array_values($public_dirs) ) . '"]';
return $public_dirs;
}
return null;
}
复制代码
相关文件:
根目录/vfm-admin/class/class.gatekeeper.php //控制认证(用户状态及相关权限)的类
根目录/vfm-admin/template/list-files.php //条件判断是否显示分享按钮模版文件
根目录/vfm-admin/template/modals.php //条件判断是否有分享权限功能模版文件
根目录/vfm-admin/config.php //自定义设置文件
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
回复
本版积分规则
回帖后跳转到最后一页
灰儿
管理员
9840篇
主题总数
7
总热度
提问
+关注
产品动态
2024-05-14
泛微E10(e-cology)文件存储位置与打开方式
2024-05-14
神州数码云科(DCN) DCME-320路由器关闭互联网22、23、53端口方法
2024-05-13
关于webapp与WEB-INF的记录
2024-05-13
泛微(weaver)e-cology_V10公文管理,上传套红模板教程
2024-05-13
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
2024-05-13
核心路由器十项性能指标
2024-05-11
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
2024-05-10
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
热点推荐
1
泛微E10(e-cology)文件存储位置与打开方式
2
神州数码云科(DCN) DCME-320路由器关闭互联网22、23、53端口方法
3
关于webapp与WEB-INF的记录
4
泛微(weaver)e-cology_V10公文管理,上传套红模板教程
5
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
6
核心路由器十项性能指标
7
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
8
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
热门板块
PC操作系统
启动和引导
手机操作系统
硬件相关
办公软件
多媒体技术
产品动态
2024-05-14
泛微E10(e-cology)文件存储位置与打开方式
2024-05-14
神州数码云科(DCN) DCME-320路由器关闭互联网22、23、53端口方法
2024-05-13
关于webapp与WEB-INF的记录
2024-05-13
泛微(weaver)e-cology_V10公文管理,上传套红模板教程
2024-05-13
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
2024-05-13
核心路由器十项性能指标
2024-05-11
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
2024-05-10
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
热点推荐
1
泛微E10(e-cology)文件存储位置与打开方式
2
神州数码云科(DCN) DCME-320路由器关闭互联网22、23、53端口方法
3
关于webapp与WEB-INF的记录
4
泛微(weaver)e-cology_V10公文管理,上传套红模板教程
5
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
6
核心路由器十项性能指标
7
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
8
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
热门板块
PC操作系统
启动和引导
手机操作系统
硬件相关
办公软件
多媒体技术
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言
了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言
了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。