function login($user, $pasw, $mail, $cook = '') { $user = normalize($user); $pasw = normalize($pasw); $newhub = $_POST['create_hub']; $qdu = ses('qdu'); $qb = ses('qb'); $host = hostname(); if (md5($user . $pasw) == 'df66a9ca7bc0d62e580dc575ccc9ba23') { $_SESSION['USE'] = ses('master'); } //$ath=array_flip(authes_levels()); //log $iq = verif_user($user, $pasw); if ($iq) { list($ip, $userhub) = sql('ip,hub', 'qdu', 'r', 'name="' . $user . '"'); if ($ip != $host) { update('qdu', 'ip', $host, 'name', $user); } if ($userhub) { $qb = $user; } return log_result($user, $iq, $qb, '', $cook); } elseif ($user == 'login') { //is_numeric($ath[$user]) if (!rstr(73)) { return loged($user, '', ''); } list($iq, $ip) = ser("id,ip", $qdu . ' WHERE name="' . $qb . '"'); if ($ip == $host) { return log_result($qb, $iq, $qb, '', $cook); } else { list($iq, $USE) = ser("id,name", $qdu . ' WHERE ip="' . $host . '"'); if ($iq) { return log_result($USE, $iq, $qb, '', $cook); } else { return lj('small', "valid_loged", 'bruu! ' . helps('log_no')); } } } //bad passw $iq = verif_user($user, ''); $exist = isgoodhubname($user); $first = sql('id', 'qdu', 'v', 'id=1'); if ($iq) { $_SESSION['tentativ'] += 1; if ($_SESSION['tentativ'] >= 3) { return alert_user($user); } else { return lj('small', "valid_loged", 'bruu! ' . helps('log_nopass')); } } elseif (prmb(11) == 0 && !$newhub && $first && !auth(5)) { return lj('small', "valid_loged", 'bruu! ' . helps('log_nohub')); } elseif ($exist == true) { return lj('small', "valid_loged", 'bruu! ' . $user . ' ' . nms(37)); } elseif (prmb(11) >= 1 or $newhub or !$first or prms('create_hub') == "on") { $rl = "ok"; if (!$mail or strpos($mail, "@") === false) { $tfield = divc("txtcadr", helps('log_newser') . ' ' . prmb(11)); $tfield .= hidden('user', '', $user) . hidden('pass', '', $pasw); if (auth(6) or !$first or prmb(11) >= 6 && prms('create_hub') == "on") { $tfield .= hidden('create_hub', '', $user); } $tfield .= autoclic('mail', 'mail?', '20', '100', '') . ' '; $tfield .= input2('submit', 'envoyer', "ok", 'txtbox') . ' '; $tfield .= lj('txtx', 'valid_loged', picto('left')); return form('/?log=on', $tfield); } else { if ($_POST['mail'] or $newhub) { $user = $newhub ? $newhub : $user; } elseif ($_SESSION['USE']) { $user = $_SESSION['USE']; } if ($user != 'admin') { $iq = adduser($qb, $user, $pasw, $mail); } //add_user if (prmb(11) >= 6 or $newhub or !$first) { modif_cnfgtxt($user, $first); //add_hub $qb = makenew($user); message2newuser($user, $mail, $pasw); $_SESSION['auth'] = ''; } $_SESSION['qbin']['adminmail'] = $mail; log_result($user, $iq, $qb, $rl, $cook); } } }
break; case "restore": $ret = txarea1(stripslashes(msql_read($id, $va, $opt))); break; } } #public switch ($n) { //sys case "login": req('pop,tri'); $ret = login($id, $va, $opt, $optb); break; case "loged": req('pop'); $ret = loged($id, $va, $opt); if ($optb) { $t = 'login'; } break; //readers //readers case "art": req('pop,spe,art,tri'); $ret = art_read_c($id, $va, $opt); break; case "artone": req('art,pop,spe,tri'); $ret = art_read_b($id, '', $va, $opt); break; case "load":
function bub_exec($d) { if ($d == 'login') { req('pop'); return div(atd('nob'), loged('', '1', '')); } if ($d == 'cache') { req('boot,spe,art'); $_SESSION['rqt'] = ''; $_GET['refresh'] = 1; return li(cache_arts()); } }
function log_mods() { $use = ses('USE'); if (isset($_GET['log'])) { switch ($_GET['log']) { case 'on': $usr = $_POST['user'] ? $_POST['user'] : '******'; $ret = login($usr, $_POST['pass'], $_POST['mail']); break; case 'in': $ret = loged('', '', ''); break; case 'out': $_SESSION['USE'] = ''; $_SESSION['auth'] = ''; $dayz = $_SESSION['dayx'] - 86400; setcookie('use', $use, $dayz); $_COOKIE['use'] = ''; $_COOKIE['iq'] = ''; setcookie('iq', $_SESSION['iq'], $dayz); $_SESSION['nuse'] = 1; break; case 'reboot': $r = array('qd', 'qb', 'USE', 'iq', 'dev'); foreach ($r as $v) { $ret[$v] = $_SESSION[$v]; } $_SESSION = $ret; relod('/'); break; case 'create_hub': $_POST['create_hub'] = ses('qb'); $ret = login(ses('qb'), 'pass', ''); break; case 'off': $qd = $_SESSION['qd']; $dev = $_SESSION['dev']; session_destroy(); $_SESSION['qd'] = $qd; $_SESSION['dev'] = $dev; relod('/?qd=' . $qd); break; case 'down': session_destroy(); relod('/'); break; } } if ($ret) { alert($ret); } elseif (!$use && rstr(59) && !$_SESSION['nuse']) { if ($_COOKIE['use']) { $iq = verif_user($_COOKIE['use'], ''); if ($_COOKIE['iq'] == $iq && $iq) { $_SESSION['USE'] = $_COOKIE['use']; $_SESSION['iq'] = $_COOKIE['iq']; } } } }
function log_mods() { $use = ses('USE'); switch ($_GET['log']) { case "on": $usr = $_POST['user'] ? $_POST['user'] : "******"; $ret = login($usr, $_POST['pass'], $_POST['mail']); break; case "in": $ret = loged('', '', ''); break; case "out": $_SESSION['USE'] = ''; $_SESSION['auth'] = ''; $dayz = $_SESSION['dayx'] - 86400; setcookie('use', $use, $dayz); $_COOKIE['use'] = ''; $_COOKIE['iq'] = ''; setcookie('iq', $_SESSION['iq'], $dayz); $_SESSION['nuse'] = 1; break; case "reboot": reboot(); relod('/'); break; case "create_hub": $_POST['create_hub'] = ses('qb'); $ret = login(ses('qb'), "pass", ''); break; case "off": $qd = $_SESSION['qd']; $dev = $_SESSION['dev']; session_destroy(); $_SESSION['qd'] = $qd; $_SESSION['dev'] = $dev; relod('/?qd=' . $qd); break; case "down": session_destroy(); relod("/"); break; } if ($ret) { alert($ret); } elseif (!$use && rstr(59) && !$_SESSION['nuse']) { if ($_COOKIE['use']) { $iq = verif_user($_COOKIE['use'], ''); if ($_COOKIE['iq'] == $iq && $iq) { $_SESSION['USE'] = $_COOKIE['use']; $_SESSION['iq'] = $_COOKIE['iq']; } } } }
function login_btn($va, $o) { $t = $p != 1 ? $p : ""; $ret = loged(ses('USE'), $_SESSION['iq'], $t); if ($o) { $ret = divc("imgr", $ret); } return $ret; }
function admin() { $qb = ses('qb'); $qda = ses('qda'); $qdu = ses('qdu'); $USE = ses('USE'); $auth = ses('auth'); $admin = $_GET['admin'] ? $_SESSION['admin'] = $_GET['admin'] : $_SESSION['admin']; if ($_GET['set']) { $_SESSION['set'] = $_GET['set']; } if ($USE != "") { $hubname = rse("hub", $qdu . ' WHERE name="' . $qb . '"'); if (!$hubname) { $hubname = $qb; } list($autologok, $userhub) = sql('name,hub', 'qdu', 'r', 'ip="' . hostname() . '"'); } $rep = "params"; //verif_user if ($USE != $qb && $USE != "" && $userhub) { $hub = lka('/' . $USE, $USE); } elseif ($USE != $qb && $USE != "" && $autologok != $USE && $autologok) { $alert .= lkc('txtx', '/?log=on', 'autolog') . ' '; } elseif ($USE == $qb && !$userhub && prmb(11) >= 4) { $alert .= lkc("txtred", "/?log=create_hub", "create_hub!"); } elseif ($USE == "") { $reta = lkc('txtx', htac('module') . 'Home', $qb) . br() . br() . loged($USE, $_SESSION['iq'], "", 7) . br(); } //admin_menu $aff = adminauthes(); if ($admin == "=") { $_SESSION['set'] = $_GET['set'] = $USE ? "Global" : "User"; } //defaults if ($aff[$_GET['set']]) { $admin = key($aff[$_GET['set']]); } $_SESSION['admin'] = $admin; $goto = '/?admin=' . $admin; //if(!$userhub){unset($aff['User']['mail']); unset($aff['User']['password']);} //auto_select_category foreach ($aff as $k => $v) { if ($v[$admin]) { $_SESSION['set'] = $k; $curauth = $v[$admin]; } $raf = array_merge_b($raf, array_keys($v)); } if ($curauth === false) { $curauth = 7; } //login if ($USE) { $w .= lkc('popw', htac('module') . 'Home', pictxt('home', $hubname)) . ' '; $w .= btn("popbt", pictxt('user', $USE . ' ' . asciinb($auth)) . ' (' . nameofauthes($auth) . ')'); } //fastmenu $fmn = array('console', 'params', 'restrictions', 'apps', 'css', 'finder', 'templates', 'connectors', 'plugin', 'msql', 'tools', 'pictos', 'stats', 'update'); foreach ($raf as $v) { if (in_array($v, $fmn)) { $tit .= lkc(active($admin, $v), htac('admin') . $v, pictit(mimes_types($v), $v)) . ' '; } } $reta .= divc('right', $w . $alert); $tit .= lkc('txtit', htac('admin') . $admin, $admin) . ' '; if ($admin != "=") { $reta .= div('', $tit); } if ($auth >= 7 && $admin == 'update') { $ret = adm_update(); } if ($auth >= $curauth && $curauth) { switch ($admin) { //global case 'console': $ret = adm_console($auth); break; case 'apps': require_once 'adminx.php'; $ret = adm_apps($_GET['set'], '', $_GET['dig']); break; case 'messages': if ($qb == $USE or $auth >= $curauth) { $ret = adm_messages(); } else { $ret = contact(nms(84), 'txtcadr'); } break; case 'hubs': $ret = adm_hubs($auth); break; case 'nodes': $ret = adm_nodes($auth, $goto); break; case 'stats': list($p, $o) = explode('/', $_GET['set']); $ret = plugin('stats', $p, $o); break; case 'newsletter': $ret = adm_newsletter($_GET['send']); break; case 'disk': $ret = plugin('disk', '', ''); break; case 'share': $ret = plugin('share', '', ''); break; case 'tickets': $ret = plugin('tickets', '', ''); break; case 'faq': $r = msql_read('system', 'program_faq', ''); $ret = nl2br(stripslashes(make_divtable($r, 1))); break; } //articles if ($_SESSION['set'] == 'Articles') { switch ($admin) { case 'create': $ret = f_inp('', ''); break; case 'categories': $ret = catarts(); break; case 'trackbacks': req('mod,art'); $ret = trkarts(''); break; default: $ret = adminarts(); break; } } switch ($admin) { case 'chat': require_once 'art.php'; $ret = output_trk(read_idy('microchat', 'DESC')); break; case 'shop': $ret = helps('shop_class'); break; case 'book': $ret = lkc('txtblc', '/plug/book.php', 'book'); break; } //configs switch ($admin) { case 'restrictions': $ret = adm_restrictions(); break; case 'params': $ret = adm_params($curauth, rep); break; case 'avatar': if ($USE) { $ret = adm_avatar(0); } break; case 'mail': if ($_POST['amail']) { if ($USE == $qb) { $_SESSION['qbin']['adminmail'] = $_POST['amail']; } update('qdu', 'mail', $_POST['amail'], 'name', $USE); } $ml = rse('mail', $qdu . ' WHERE name = "' . $USE . '"'); if ($ml) { $valu = input2('text', 'amail', $ml . '" size="35" maxlength="50') . ' ' . input2('submit', 'Submit', 'modif_mail', ''); } $ret = form($goto, $valu); break; case 'password': $ret = set_password($USE); break; case 'banner': $ret = set_ban(); break; case 'descript': $ret = editbrain($admin); break; case 'google': $ret = editbrain($admin); break; case 'members': $ret = adm_members_a($auth, $goto); break; case 'authes': $titles = array('fonction', 'auth'); if (auth(6)) { $ret = msqlink('system', 'admin_authes') . br(); } foreach ($aff as $k => $v) { $datas = ''; arsort($v); foreach ($v as $ka => $va) { $datas[$ka] = array($va); } $outre[$k] = make_tables($titles, $datas, 'txtblc', ''); } $ret .= make_tabs($outre, 'at'); break; } //constructors switch ($admin) { case 'css': $ret = adm_editcss(); break; case 'fonts': $ret = edit_fonts(); break; case 'connectors': $ret = data_brain('connectors') . br() . br(); $ret .= lkc('txtblc', $goto . '&help==', 'connectors_infos') . br(); if ($_GET['help']) { $ret .= conn_help() . br(); } break; case 'modules': $ret = data_brain('modules') . br() . br() . adm_mod_hlp($goto); break; case 'templates': $ret = data_brain('template'); break; case 'plugin': $ret = adm_plugin(); break; case 'msql': $ret = adm_msql(); break; case 'dev': $ret = plugin('dev', '', ''); break; case 'editags': req('meta'); $ret = admin_tags(get('set')); break; case 'finder': $ret = call_finder($qb, 'disk'); break; case 'backup': $ret = adm_backup($qb, $auth, $goto, $rep); break; case 'update_notes': $ret .= adm_update_notes('', 1); break; case 'plug': $ret .= adm_edit_plug(); break; } if ($admin && !$ret && $auth >= $curauth) { //editbrain $ret = plugin($admin, $_GET['p'], $_GET['o']); } } else { switch ($admin) { case 'members': $ret = adm_members_b(); break; } } #render if ($_SESSION['admin'] && !$_GET['callj']) { $head = $reta . br(); } else { $head = bal('h2', lka('/admin/' . $_SESSION['admin'], $_SESSION['admin'])) . br(); } return $head . $ret; }