Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -213,3 +213,5 @@ pip-log.txt

# Mr Developer
.mr.developer.cfg

.idea
2 changes: 1 addition & 1 deletion sql/osadmin_v2.1.0.sql
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ CREATE TABLE IF NOT EXISTS `osa_menu_url` (
`menu_name` varchar(50) NOT NULL,
`menu_url` varchar(255) NOT NULL,
`module_id` int(11) NOT NULL,
`is_show` tinyint(4) NOT NULL COMMENT '是否在sidebar里出现',
`is_show` tinyint(4) NOT NULL COMMENT '是否在 sidebar 里出现',
`online` int(11) NOT NULL DEFAULT '1' COMMENT '在线状态,还是下线状态,即可用,不可用。',
`shortcut_allowed` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '是否允许快捷访问',
`menu_desc` varchar(255) DEFAULT NULL,
Expand Down
77 changes: 39 additions & 38 deletions uploads/ajax/shortcut.php
Original file line number Diff line number Diff line change
@@ -1,47 +1,48 @@
<?php
require ('../include/init.inc.php');
require('../include/init.inc.php');
$method = $menu_id = '';
extract ( $_GET, EXTR_IF_EXISTS );
extract($_GET, EXTR_IF_EXISTS);
$current_user_info = UserSession::getSessionInfo();
$user_id = $current_user_info['user_id'];
$shortcuts = $current_user_info['shortcuts'];

if($method=="add"){
if ($method == "add") {

$shortcut_arr = explode(',',$shortcuts);
if(!in_array($menu_id,$shortcut_arr)){
$shortcut_arr[]=$menu_id;
asort($shortcut_arr);
}
$shortcuts = implode(',',$shortcut_arr);
$update_data = array ('shortcuts' => $shortcuts );

$result = User::updateUser ( $user_id,$update_data );
if($result !==false ){
$ret = json_encode(array("result"=>"1","msg"=>"添加成功"));
UserSession::reload();
}else{
$ret = json_encode(array("result"=>"0","msg"=>"oOops!"));
}

echo $ret;
}else if($method=="del"){
$shortcut_arr = explode(',', $shortcuts);
if (!in_array($menu_id, $shortcut_arr)) {
$shortcut_arr[] = $menu_id;
asort($shortcut_arr);
}
$shortcuts = implode(',', $shortcut_arr);
$update_data = array('shortcuts' => $shortcuts);

$shortcut_arr = explode(',',$shortcuts);
$idx = array_search($menu_id,$shortcut_arr);
if($idx !==false ){
unset($shortcut_arr[$idx]);
}
$shortcuts = implode(',',$shortcut_arr);
$update_data = array ('shortcuts' => $shortcuts );

$result = User::updateUser ( $user_id,$update_data );
if($result !==false ){
$ret = json_encode(array("result"=>"1","msg"=>"删除成功"));
UserSession::reload();
}else{
$ret = json_encode(array("result"=>"0","msg"=>"oOops!"));
}
echo $ret;
$result = User::updateUser($user_id, $update_data);
if ($result !== false) {
$ret = json_encode(array("result" => "1", "msg" => "添加成功"));
UserSession::reload();
} else {
$ret = json_encode(array("result" => "0", "msg" => "oOops!"));
}

echo $ret;
} else {
if ($method == "del") {

$shortcut_arr = explode(',', $shortcuts);
$idx = array_search($menu_id, $shortcut_arr);
if ($idx !== false) {
unset($shortcut_arr[$idx]);
}
$shortcuts = implode(',', $shortcut_arr);
$update_data = array('shortcuts' => $shortcuts);

$result = User::updateUser($user_id, $update_data);
if ($result !== false) {
$ret = json_encode(array("result" => "1", "msg" => "删除成功"));
UserSession::reload();
} else {
$ret = json_encode(array("result" => "0", "msg" => "oOops!"));
}
echo $ret;
}
}
?>
28 changes: 17 additions & 11 deletions uploads/include/class/Base.class.php
Original file line number Diff line number Diff line change
@@ -1,13 +1,19 @@
<?php
if(!defined('ACCESS')) {exit('Access denied.');}
class Base {
protected static $table_prefix = OSA_TABLE_PREFIX;
protected static $db_container = array();
public static function __instance($database=OSA_DB_ID){
if( @self::$db_container[$database] == null ){
self::$db_container[$database] = new Medoo( $database );
return self::$db_container[$database];
}
return self::$db_container[$database];
}
if (!defined('ACCESS')) {
exit('Access denied.');
}

class Base
{
protected static $table_prefix = OSA_TABLE_PREFIX;
protected static $db_container = array();

public static function __instance($database = OSA_DB_ID)
{
if (@self::$db_container[$database] == null) {
self::$db_container[$database] = new Medoo($database);
return self::$db_container[$database];
}
return self::$db_container[$database];
}
}
62 changes: 33 additions & 29 deletions uploads/include/class/GroupRole.class.php
Original file line number Diff line number Diff line change
@@ -1,30 +1,34 @@
<?php
class GroupRole {
public static function getGroupRoles($group_id) {
if (! $group_id || ! is_numeric ( $group_id )) {
return false;
}
$data = Module::getAllModules (1);
//用户组的权限
foreach ( $data as $k => $module ) {
$list = MenuUrl::getListByModuleId ($module ['module_id'] ,"role");
foreach ( $list as $menu ) {
$data [$k] ['menu_info'][$menu ['menu_id']] = $menu ['menu_name'];
}
}


return $data;
}

public static function getGroupForOptions() {
$group_list = UserGroup::getAllGroup ();

foreach ( $group_list as $group ) {
$group_options_array [$group ['group_id']] = $group ['group_name'];
}

return $group_options_array;
}

}

class GroupRole
{
public static function getGroupRoles($group_id)
{
if (!$group_id || !is_numeric($group_id)) {
return false;
}
$data = Module::getAllModules(1);
//用户组的权限
foreach ($data as $k => $module) {
$list = MenuUrl::getListByModuleId($module ['module_id'], "role");
foreach ($list as $menu) {
$data [$k] ['menu_info'][$menu ['menu_id']] = $menu ['menu_name'];
}
}


return $data;
}

public static function getGroupForOptions()
{
$group_list = UserGroup::getAllGroup();

foreach ($group_list as $group) {
$group_options_array [$group ['group_id']] = $group ['group_name'];
}

return $group_options_array;
}

}
Loading