X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=0.2.1%2Finc%2Flibs%2Fadmins_functions.php;h=e3e1ca6311bb8585b1664e954c2b7fffcb61bcea;hp=f2b881080ee89228bf072e2213fe5220699a8646;hb=7bc25dd08431c94ce9edca131d56c1a36b13c28a;hpb=157ee010917df5ca07e6d31b42f67417b2516d74 diff --git a/0.2.1/inc/libs/admins_functions.php b/0.2.1/inc/libs/admins_functions.php index f2b881080e..e3e1ca6311 100644 --- a/0.2.1/inc/libs/admins_functions.php +++ b/0.2.1/inc/libs/admins_functions.php @@ -1,197 +1,197 @@ -= "0.1.2") - { - // Load only from array when there are lines! - if (count($ADMINS_ACLS) > 0) - { - // Load ACL from array - foreach ($ADMINS_ACLS['admin_id'] as $id=>$aid_acls) - { - if ($aid == $aid_acls) - { - // Okay, one line was found! - if ((!empty($act)) && ($ADMINS_ACLS['action_menu'][$id] == $act)) - { - // Main menu line found - $acl_mode = $ADMINS_ACLS['access_mode'][$id]; - $lines = 1; - } - elseif ((!empty($wht)) && ($ADMINS_ACLS['what_menu'][$id] == $wht)) - { - // Check sub menu - $acl_mode = $ADMINS_ACLS['access_mode'][$id]; - $lines = 1; - } - if ($lines == 1) - { - // Count cache hits - $CONFIG['cache_hits']++; - break; - } - } - } - - // No ACL found? - if ($acl_mode == "failed") - { - $acl_mode = ""; - $lines = 0; - } - } - else - { - // No lines here - $lines = 0; - } - } - else - { - // Old version, so load it from database - if (!empty($act)) - { - // Main menu - $result = SQL_QUERY_ESC("SELECT access_mode FROM "._MYSQL_PREFIX."_admins_acls WHERE admin_id=%d AND action_menu='%s' LIMIT 1", - array(bigintval($aid), $act), __FILE__, __LINE__); - } - elseif (!empty($wht)) - { - // Sub menu - $result = SQL_QUERY_ESC("SELECT access_mode FROM "._MYSQL_PREFIX."_admins_acls WHERE admin_id=%d AND what_menu='%s' LIMIT 1", - array(bigintval($aid), $wht), __FILE__, __LINE__); - } - - // Get number of lines - $lines = SQL_NUMROWS($result); - - // Load ACL - list($acl_mode) = SQL_FETCHROW($result); - SQL_FREERESULT($result); - } - - // Check ACL and (maybe) allow - if ((($default == "allow") && ($lines == 0)) || (($default == "deny") && ($lines == "1") && ($acl_mode == "allow")) || (($lines == 0) && ($parent))) $ret = true; - - // Return value - return $ret; -} -// Create email link to admins's account -function ADMINS_CREATE_EMAIL_LINK($email, $mod="admin") -{ - $locked = " AND status='CONFIRMED'"; - if (IS_ADMIN()) $locked = ""; - if (strpos("@", $email) > 0) - { - // Create email link - $result = SQL_QUERY_ESC("SELECT id -FROM "._MYSQL_PREFIX."_admins -WHERE email='%s'".$locked." LIMIT 1", - array($email), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == 1) - { - // Load userid - list($uid) = SQL_FETCHROW($result); - - // Rewrite email address to contact link - $email = URL."/modules.php?module=".$mod."&what=user_contct&u_id=".bigintval($uid); - } - - // Free memory - SQL_FREERESULT($result); - } - elseif (bigintval($email) > 0) - { - // Direct ID given - $email = URL."/modules.php?module=".$mod."&what=admins_contct&admin=".bigintval($email); - } - - // Return rewritten (?) email address - return $email; -} -// -?> += "0.1.2") + { + // Load only from array when there are lines! + if (count($ADMINS_ACLS) > 0) + { + // Load ACL from array + foreach ($ADMINS_ACLS['admin_id'] as $id=>$aid_acls) + { + if ($aid == $aid_acls) + { + // Okay, one line was found! + if ((!empty($act)) && ($ADMINS_ACLS['action_menu'][$id] == $act)) + { + // Main menu line found + $acl_mode = $ADMINS_ACLS['access_mode'][$id]; + $lines = 1; + } + elseif ((!empty($wht)) && ($ADMINS_ACLS['what_menu'][$id] == $wht)) + { + // Check sub menu + $acl_mode = $ADMINS_ACLS['access_mode'][$id]; + $lines = 1; + } + if ($lines == 1) + { + // Count cache hits + $CONFIG['cache_hits']++; + break; + } + } + } + + // No ACL found? + if ($acl_mode == "failed") + { + $acl_mode = ""; + $lines = 0; + } + } + else + { + // No lines here + $lines = 0; + } + } + else + { + // Old version, so load it from database + if (!empty($act)) + { + // Main menu + $result = SQL_QUERY_ESC("SELECT access_mode FROM "._MYSQL_PREFIX."_admins_acls WHERE admin_id=%d AND action_menu='%s' LIMIT 1", + array(bigintval($aid), $act), __FILE__, __LINE__); + } + elseif (!empty($wht)) + { + // Sub menu + $result = SQL_QUERY_ESC("SELECT access_mode FROM "._MYSQL_PREFIX."_admins_acls WHERE admin_id=%d AND what_menu='%s' LIMIT 1", + array(bigintval($aid), $wht), __FILE__, __LINE__); + } + + // Get number of lines + $lines = SQL_NUMROWS($result); + + // Load ACL + list($acl_mode) = SQL_FETCHROW($result); + SQL_FREERESULT($result); + } + + // Check ACL and (maybe) allow + if ((($default == "allow") && ($lines == 0)) || (($default == "deny") && ($lines == "1") && ($acl_mode == "allow")) || (($lines == 0) && ($parent))) $ret = true; + + // Return value + return $ret; +} +// Create email link to admins's account +function ADMINS_CREATE_EMAIL_LINK($email, $mod="admin") +{ + $locked = " AND status='CONFIRMED'"; + if (IS_ADMIN()) $locked = ""; + if (strpos("@", $email) > 0) + { + // Create email link + $result = SQL_QUERY_ESC("SELECT id +FROM "._MYSQL_PREFIX."_admins +WHERE email='%s'".$locked." LIMIT 1", + array($email), __FILE__, __LINE__); + if (SQL_NUMROWS($result) == 1) + { + // Load userid + list($uid) = SQL_FETCHROW($result); + + // Rewrite email address to contact link + $email = URL."/modules.php?module=".$mod."&what=user_contct&u_id=".bigintval($uid); + } + + // Free memory + SQL_FREERESULT($result); + } + elseif (bigintval($email) > 0) + { + // Direct ID given + $email = URL."/modules.php?module=".$mod."&what=admins_contct&admin=".bigintval($email); + } + + // Return rewritten (?) email address + return $email; +} +// +?>