Ejemplo n.º 1
0
 public function __construct()
 {
     global $globals;
     parent::__construct();
     $this->register_function('list_all_my_groups', 'list_all_my_groups');
     $this->register_modifier('cat_pp', 'cat_pp');
     $this->assign('it_is_xnet', true);
     global $globals;
     $this->assign('is_logged', S::logged());
     if ($globals->asso('id')) {
         $this->assign('asso', $globals->asso());
         $this->setType($globals->asso('cat'));
         $this->assign('is_admin', may_update());
         $this->assign('is_member', is_member());
     }
     if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false) {
         $this->addJsLink('json2.js');
     }
     $this->addJsLink('jquery.xorg.js');
     $this->addJsLink('overlib.js');
     $this->addJsLink('core.js');
     $this->addJsLink('xorg.js');
     if ($globals->core->sentry_js_dsn) {
         $this->addJsLink('raven.min.js');
     }
     $this->setTitle('Les associations polytechniciennes');
 }
Ejemplo n.º 2
0
function tags_editpost_end()
{
    global $mybb, $db, $lang, $templates, $thread, $post, $tags, $tags_value;
    if ($mybb->settings['tags_enabled'] == 0 || tags_in_disforum($thread['fid']) || $mybb->settings['tags_groups'] != -1 && !is_member($mybb->settings['tags_groups'])) {
        return;
    }
    $lang->load('tags');
    if ($thread['firstpost'] != $mybb->get_input('pid', 1)) {
        return;
    }
    $tags_value = $mybb->get_input('tags');
    if (!$tags_value) {
        $bad_tags = tags_getbads(true, false);
        $query = $db->simple_select('tags', '*', "tid='{$thread['tid']}'{$bad_tags}");
        $thread['tags'] = array();
        while ($tag = $db->fetch_array($query)) {
            if (!in_array($tag['name'], $thread['tags']) && $tag['name'] != '') {
                array_push($thread['tags'], $tag['name']);
            }
        }
        $tags_value = implode(',', $thread['tags']);
    }
    $tags_value = htmlspecialchars_uni(tags_string2tag($tags_value));
    eval('$tags = "' . $templates->get('tags_input') . '";');
}
Ejemplo n.º 3
0
function tags_validate(&$datahandler)
{
    global $mybb, $db, $thread, $lang;
    if ($mybb->settings['tags_enabled'] == 0 || tags_in_disforum($datahandler->fid) || $mybb->settings['tags_groups'] != -1 && !is_member($mybb->settings['tags_groups'])) {
        return;
    }
    $lang->load('tags');
    $mybb->settings['tags_max_thread'] = (int) $mybb->settings['tags_max_thread'];
    if ($mybb->get_input('tags') != '' && ($datahandler->action == 'thread' || is_array($thread) && $datahandler->data['pid'] == $thread['firstpost'])) {
        $tags_value = $mybb->get_input('tags');
        $tags_value = tags_string2tag($tags_value);
        $tags = explode(',', $tags_value);
        if (count($tags) > $mybb->settings['tags_max_thread'] && $mybb->settings['tags_max_thread'] > 0) {
            $lang->many_tags = $lang->sprintf($lang->many_tags, $mybb->settings['tags_max_thread']);
            $datahandler->set_error($lang->many_tags);
            return;
        }
        foreach ($tags as $tag) {
            if (my_strlen($tag) > 0 && my_strlen($tag) < $mybb->settings['tags_minchars']) {
                $datahandler->set_error($lang->tags_too_short);
                return;
            } elseif (my_strlen($tag) > $mybb->settings['tags_maxchars'] && $mybb->settings['tags_maxchars'] > 0) {
                $datahandler->set_error($lang->tags_too_long);
                return;
            }
        }
    }
}
Ejemplo n.º 4
0
function tags_newthread_start()
{
    global $mybb, $db, $templates, $tags, $tags_value, $lang, $fid;
    if ($mybb->settings['tags_enabled'] == 0 || tags_in_disforum($fid) || $mybb->settings['tags_groups'] != -1 && !is_member($mybb->settings['tags_groups'])) {
        return;
    }
    $lang->load('tags');
    $tags_value = $mybb->get_input('tags');
    $tags_value = htmlspecialchars_uni(tags_string2tag($tags_value));
    eval('$tags = "' . $templates->get('tags_input') . '";');
}
Ejemplo n.º 5
0
 public function startAvailableAuth()
 {
     if (!S::logged() && Get::has('auth')) {
         if (!$this->start(AUTH_PASSWD)) {
             return false;
         }
     }
     global $globals;
     if (!S::logged() && $globals->xnet->auth_baseurl) {
         // prevent connection to be linked to disconnection
         if (($i = strpos($_SERVER['REQUEST_URI'], 'exit')) !== false) {
             $returl = "http://{$_SERVER['SERVER_NAME']}" . substr($_SERVER['REQUEST_URI'], 0, $i);
         } else {
             $returl = "http://{$_SERVER['SERVER_NAME']}{$_SERVER['REQUEST_URI']}";
         }
         $url = $globals->xnet->auth_baseurl;
         $url .= "?session=" . session_id();
         $url .= "&challenge=" . S::v('challenge');
         $url .= "&pass="******"&url=" . urlencode($returl);
         S::set('loginX', $url);
     }
     if (S::logged() && $globals->asso()) {
         $perms = S::v('perms');
         $perms->rmFlag('groupadmin');
         $perms->rmFlag('groupmember');
         $perms->rmFlag('groupannu');
         if (may_update()) {
             $perms->addFlag('groupadmin');
             $perms->addFlag('groupmember');
             $perms->addFlag('groupannu');
         }
         if (is_member()) {
             $perms->addFlag('groupmember');
             if ($globals->asso('pub') != 'private') {
                 $perms->addFlag('groupannu');
             }
         } else {
             if ($globals->asso('pub') == 'public') {
                 $perms->addFlag('groupannu');
             }
         }
         if ($globals->asso('cat') == 'Promotions') {
             $perms->addFlag('groupannu');
         }
         S::set('perms', $perms);
     }
     return true;
 }
Ejemplo n.º 6
0
 /**
  * Verify thread prefix.
  *
  * @return boolean True when valid, false when not valid.
  */
 function verify_prefix()
 {
     $prefix =& $this->data['prefix'];
     $prefix_cache = build_prefixes();
     // If a valid prefix isn't supplied, don't assign one.
     if (empty($prefix)) {
         $prefix = 0;
     } else {
         $prefix_cache = build_prefixes($prefix);
         if (empty($prefix_cache)) {
             $this->set_error('invalid_prefix');
             return false;
         }
         if ($prefix_cache['groups'] != "-1") {
             if (!empty($this->data['edit_uid'])) {
                 // Post is being edited
                 $user = get_user($this->data['edit_uid']);
             } else {
                 $user = get_user($this->data['uid']);
             }
             if (!is_member($prefix_cache['groups'], array('usergroup' => $user['usergroup'], 'additionalgroups' => $user['additionalgroups']))) {
                 $this->set_error('invalid_prefix');
                 return false;
             }
         }
         if ($prefix_cache['forums'] != "-1") {
             // Decide whether this prefix can be used in our forum
             $forums = explode(",", $prefix_cache['forums']);
             if (!in_array($this->data['fid'], $forums)) {
                 $this->set_error('invalid_prefix');
                 return false;
             }
         }
     }
     // Does this forum require a prefix?
     $forum = get_forum($this->data['fid']);
     if ($forum['requireprefix'] == 1) {
         $num_prefixes = false;
         // Go through each of our prefixes and decide if there are any possible prefixes to use.
         if (!empty($this->data['edit_uid'])) {
             // Post is being edited
             $user = get_user($this->data['edit_uid']);
         } else {
             $user = get_user($this->data['uid']);
         }
         $prefix_cache = build_prefixes();
         if (!empty($prefix_cache)) {
             foreach ($prefix_cache as $required) {
                 if ($required['forums'] != "-1") {
                     // Decide whether this prefix can be used in our forum
                     $forums = explode(",", $required['forums']);
                     if (!in_array($forum['fid'], $forums)) {
                         continue;
                     }
                 }
                 if ($required['groups'] != "-1") {
                     if (!is_member($required['groups'], array('usergroup' => $user['usergroup'], 'additionalgroups' => $user['additionalgroups']))) {
                         $num_prefixes = true;
                     }
                 } else {
                     $num_prefixes = true;
                 }
             }
         }
         if ($prefix == 0 && $num_prefixes) {
             $this->set_error('require_prefix');
             return false;
         }
     }
     return true;
 }
Ejemplo n.º 7
0
function ougc_agi_run(&$post)
{
    global $mybb, $memprofile, $templates;
    $br_postbit = '';
    $br_profile = '<br />';
    $var = 'memprofile';
    $postbit_tmpl = 'member_profile';
    if (!empty($post)) {
        if ($mybb->settings['postlayout'] != 'classic') {
            $br_postbit = '<br />';
            $br_profile = '';
        }
        $var = 'post';
        $postbit_tmpl = $mybb->settings['postlayout'] == 'classic' ? 'postbit_classic' : 'postbit';
    }
    if (empty(${$var}) || $mybb->settings['ougc_agi_groups'] == -1) {
        return;
    }
    ${$var}['ougc_agi'] = '';
    static $uidscache = array();
    if (!isset($uidscache[${$var}['uid']])) {
        ${$var}['additionalgroups'] = explode(',', ${$var}['additionalgroups']);
        if (!empty(${$var}['displaygroup'])) {
            ${$var}['usergroup'] = ${$var}['displaygroup'];
        }
        foreach (${$var}['additionalgroups'] as $key => $val) {
            if ($val == ${$var}['usergroup']) {
                unset(${$var}['additionalgroups'][$key]);
            }
        }
        $uidscache[${$var}['uid']] = (array) ${$var}['additionalgroups'];
    }
    $usergroups = $uidscache[${$var}['uid']];
    $usergroups_cache = $mybb->cache->read('usergroups');
    foreach ($usergroups as $group) {
        if (is_member($mybb->settings['ougc_agi_groups'], array('usergroup' => $group))) {
            continue;
        }
        ${$var}['ougc_agi_' . $group] = '';
        $displaygroup = $usergroups_cache[$group];
        if (!empty($displaygroup['image'])) {
            $language = $mybb->settings['bblanguage'];
            if (!empty($mybb->user['language'])) {
                $language = $mybb->user['language'];
            }
            $usertitle = htmlspecialchars_uni($displaygroup['usertitle'] ? $displaygroup['usertitle'] : $displaygroup['title']);
            $image = str_replace(array('{lang}', '{theme}'), array($language, $theme['imgdir']), htmlspecialchars_uni($displaygroup['image']));
            $tmpl = isset($templates->cache['ougcagi_' . $group]) ? 'ougcagi_' . $group : 'ougcagi';
            if (my_strpos($templates->cache[$postbit_tmpl], '{$' . $var . '[\'ougc_agi_' . $group . '\']}') !== false) {
                eval('$' . $var . '[\'ougc_agi_' . $group . '\'] .= "' . $templates->get($tmpl) . '";');
                continue;
            }
            eval('$' . $var . '[\'ougc_agi\'] .= "' . $templates->get($tmpl) . '";');
        }
    }
}
Ejemplo n.º 8
0
/**
 * Check whether we can show the Purge Spammer Feature
 *
 * @param int $post_count The users post count
 * @param int $usergroup The usergroup of our user
 * @param int $uid The uid of our user
 * @return boolean Whether or not to show the feature
 */
function purgespammer_show($post_count, $usergroup, $uid)
{
    global $mybb, $cache;
    // only show this if the current user has permission to use it and the user has less than the post limit for using this tool
    $bangroup = $mybb->settings['purgespammerbangroup'];
    $usergroups = $cache->read('usergroups');
    return $mybb->user['uid'] != $uid && is_member($mybb->settings['purgespammergroups']) && !is_super_admin($uid) && !$usergroups[$usergroup]['cancp'] && !$usergroups[$usergroup]['canmodcp'] && !$usergroups[$usergroup]['issupermod'] && (str_replace($mybb->settings['thousandssep'], '', $post_count) <= $mybb->settings['purgespammerpostlimit'] || $mybb->settings['purgespammerpostlimit'] == 0) && !is_member($bangroup, $uid) && !$usergroups[$usergroup]['isbannedgroup'];
}
 public function member_profile_start()
 {
     global $mybb;
     if (!$mybb->settings['mppermissionsenabled'] || !$mybb->usergroup['canviewprofiles']) {
         return;
     }
     $memprofile = false;
     $uid = $mybb->get_input('uid', 1);
     if ($uid) {
         $memprofile = get_user($uid);
     } elseif ($mybb->user['uid']) {
         $memprofile = $mybb->user;
     }
     if ($mybb->settings['mppermissionsgroups'] != -1 && !is_member($mybb->settings['mppermissionsgroups'], array('usergroup' => $memprofile['usergroup'], 'additionalgroups' => $memprofile['additionalgroups']))) {
         return;
     }
     if (!$memprofile || !$memprofile['myprofilepermissions'] || $mybb->user['uid'] == $memprofile['uid'] || $mybb->usergroup['caneditprofiles']) {
         return;
     }
     require_once MYBB_ROOT . 'inc/functions_modcp.php';
     if (modcp_can_manage_user($memprofile['uid'])) {
         return;
     }
     if ($memprofile['myprofilepermissions'] == 1 || !$memprofile['buddylist'] && !$memprofile['ignorelist']) {
         error_no_permission();
     }
     if (my_strpos(',' . $memprofile['ignorelist'] . ',', ',' . $mybb->user['uid'] . ',') !== false) {
         error_no_permission();
     }
     if (!my_strpos(',' . $memprofile['buddylist'] . ',', ',' . $mybb->user['uid'] . ',') !== false) {
         error_no_permission();
     }
 }
Ejemplo n.º 10
0
     }
     $returndatemonthsel = array();
     foreach (range(1, 12) as $month) {
         $returndatemonthsel[$month] = '';
     }
     $returndatemonthsel[$returndate[1]] = "selected";
     eval("\$awaysection = \"" . $templates->get("usercp_profile_away") . "\";");
 }
 // Custom profile fields baby!
 $altbg = "trow1";
 $requiredfields = $customfields = '';
 $mybb->input['profile_fields'] = $mybb->get_input('profile_fields', MyBB::INPUT_ARRAY);
 $pfcache = $cache->read('profilefields');
 if (is_array($pfcache)) {
     foreach ($pfcache as $profilefield) {
         if (!is_member($profilefield['editableby']) || $profilefield['postnum'] && $profilefield['postnum'] > $mybb->user['postnum']) {
             continue;
         }
         $profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
         $profilefield['name'] = htmlspecialchars_uni($profilefield['name']);
         $profilefield['description'] = htmlspecialchars_uni($profilefield['description']);
         $thing = explode("\n", $profilefield['type'], "2");
         $type = $thing[0];
         if (isset($thing[1])) {
             $options = $thing[1];
         } else {
             $options = array();
         }
         $field = "fid{$profilefield['fid']}";
         $select = '';
         if ($errors) {
Ejemplo n.º 11
0
function ougc_pages_init()
{
    global $mybb;
    global $templatelist, $ougc_pages;
    global $category, $page, $session;
    global $plugins;
    /*if(THIS_SCRIPT == 'portal.php' && !$mybb->settings['ougc_pages_portal'] || THIS_SCRIPT == 'pages.php' && $mybb->settings['ougc_pages_portal'])
    	{
    		return;
    	}*/
    if (THIS_SCRIPT != 'pages.php') {
        return;
    }
    if (isset($templatelist)) {
        $templatelist .= ',';
    } else {
        $templatelist = '';
    }
    $templatelist .= 'ougcpages, ougcpages_wrapper, ougcpages_navigation, ougcpages_category_list_item, ougcpages_category_list, ougcpages_navigation_previous, ougcpages_navigation_next';
    $is_page = $mybb->get_input('page') && !empty($mybb->cache->cache['ougc_pages']['pages'][$mybb->get_input('page')]);
    if ($mybb->get_input('page')) {
        if (!empty($mybb->cache->cache['ougc_pages']['pages'][$mybb->get_input('page')])) {
            if ($page = $ougc_pages->get_page_by_url($mybb->get_input('page'))) {
                #$templatelist .= ', ougcpages_page'.$page['pid'];
                if ($category = $ougc_pages->get_category($page['cid'])) {
                    #$templatelist .= ', ougcpages_category'.$category['cid'];
                } else {
                    $ougc_pages->invalid_category = true;
                }
            } else {
                $ougc_pages->invalid_page = true;
            }
        } else {
            $ougc_pages->invalid_page = true;
        }
    } elseif ($mybb->get_input('category')) {
        if ($category = $ougc_pages->get_category_by_url($mybb->get_input('category'))) {
            #$templatelist .= ', ougcpages_category'.$category['cid'];
        } else {
            $ougc_pages->invalid_category = true;
        }
    }
    if (!empty($category)) {
        // Save three queries if no permission check is necessary
        if ($category['groups'] == '') {
            $ougc_pages->no_permission = true;
        } elseif ($category['groups'] != -1) {
            $ougc_pages->init_session();
            is_member($category['groups']) or $ougc_pages->no_permission = true;
        }
    }
    if (!empty($page)) {
        if (!$page['wol'] && !defined('NO_ONLINE')) {
            define('NO_ONLINE', 1);
        }
        // Save three queries if no permission check is necessary
        if (!$ougc_pages->no_permission) {
            if ($page['groups'] == '') {
                $ougc_pages->no_permission = true;
            } elseif ($page['groups'] != -1) {
                $ougc_pages->init_session();
                is_member($page['groups']) or $ougc_pages->no_permission = true;
            }
        }
        if ($page['php'] && !$ougc_pages->no_permission) {
            if ($page['init']) {
                ougc_pages_execute();
            }
            $plugins->add_hook('global_end', 'ougc_pages_execute');
        }
    }
    /*if(THIS_SCRIPT == 'portal.php')
    	{
    		$plugins->add_hook('portal_start', 'ougc_pages_portal_start', 999999999);
    		$plugins->add_hook('portal_end', 'ougc_pages_portal_end');
    	}*/
}
Ejemplo n.º 12
0
<div class="page">
  <div class="cadre main txtcenter">
    <h2 class="exergue">Administration</h2>
    <?php 
header('Content-type: text/html; charset=utf-8');
/* ici on gère l'affichage général en php  ainsi que les requêtes adressées en n2 et leurs confirmations en n3 */
is_member();
aint_connected();
if (isset($_POST['deleteresa']) && !empty($_POST['resa'])) {
    foreach ($_POST['resa'] as $x => $y) {
        $suppressresa = $pdo->query("DELETE FROM resa WHERE NumResa ='{$y}'");
    }
    echo "<p class='warning'>Suppression bien prise en compte</p>";
}
if (isset($_POST['modif']) && isset($_POST['select_user'])) {
    $user_id = $_POST['select_user'];
    foreach ($_POST['changer'] as $x => $y) {
        if ($x == "DLast_adh") {
            $date = new DateTime($y);
            $y = $date->format('Y-m-d');
        }
        if (!empty($y)) {
            $req5 = $pdo->prepare("UPDATE `users` SET `{$x}` = '{$y}' WHERE `users`.`Num_adh` = {$user_id}");
            $req5->execute();
        }
    }
    echo "<p class='warning'>Modification bien prise en compte</p>";
}
if (isset($_POST['modifcourt']) && isset($_POST['select_court'])) {
    $court_id = $_POST['select_court'];
Ejemplo n.º 13
0
<?php

require_once 'includes/all.php';
if (!is_logged_in()) {
    header("Location: signin.php");
    exit(0);
}
$db = connect_db();
if (!is_member($db, get_logged_in_user_id(), $_REQUEST['group_id'])) {
    header("Status: 403 Forbidden");
    exit("403 Forbidden");
}
$errors = array();
if (isset($_POST['Day'])) {
    if ($_POST['Day'] === '') {
        $errors[] = "please enter a date";
    } elseif (!preg_match("/^\\d\\d\\d\\d-\\d\\d-\\d\\d\$/", $_POST['Day'])) {
        $errors[] = "date must be in YYYY-MM-DD format";
    }
}
if (isset($_POST['STime'])) {
    if ($_POST['STime'] === '') {
        $errors[] = "please enter a starting time";
    } elseif (!preg_match("/^\\d\\d:\\d\\d\$/", $_POST['STime'])) {
        $errors[] = "starting time must be in HH:MM format";
    }
}
if (isset($_POST['ETime'])) {
    if ($_POST['ETime'] === '') {
        // fine
    } elseif (!preg_match("/^\\d\\d:\\d\\d\$/", $_POST['ETime'])) {
Ejemplo n.º 14
0
// Load the theme
// 1. Check cookies
if (!$mybb->user['uid'] && !empty($mybb->cookies['mybbtheme'])) {
    $mybb->user['style'] = (int) $mybb->cookies['mybbtheme'];
}
// 2. Load style
if (isset($mybb->user['style']) && (int) $mybb->user['style'] != 0) {
    $loadstyle = "tid='" . (int) $mybb->user['style'] . "'";
} else {
    $loadstyle = "def='1'";
}
// Load basic theme information that we could be needing.
if ($loadstyle != "def='1'") {
    $query = $db->simple_select('themes', 'name, tid, properties, allowedgroups', $loadstyle, array('limit' => 1));
    $theme = $db->fetch_array($query);
    if (isset($theme['tid']) && !is_member($theme['allowedgroups']) && $theme['allowedgroups'] != 'all') {
        if (isset($mybb->cookies['mybbtheme'])) {
            my_unsetcookie('mybbtheme');
        }
        $loadstyle = "def='1'";
    }
}
if ($loadstyle == "def='1'") {
    if (!$cache->read('default_theme')) {
        $cache->update_default_theme();
    }
    $theme = $cache->read('default_theme');
}
// No theme was found - we attempt to load the master or any other theme
if (!isset($theme['tid']) || isset($theme['tid']) && !$theme['tid']) {
    // Missing theme was from a user, run a query to set any users using the theme to the default
Ejemplo n.º 15
0
 /**
  * Verifies if a style is valid for this user or not.
  *
  * @return boolean True when valid, false when invalid.
  */
 function verify_style()
 {
     global $lang;
     $user =& $this->data;
     if ($user['style']) {
         $theme = get_theme($user['style']);
         if (empty($theme) || !is_member($theme['allowedgroups'], $user) && $theme['allowedgroups'] != 'all') {
             $this->set_error('invalid_style');
             return false;
         }
     }
     return true;
 }
function may_email()
{
    return !is_guest() || (is_member() || is_unit());
    // members, units  allowed
}
Ejemplo n.º 17
0
                 $lang->purgespammer_purge_desc = $lang->sprintf($lang->purgespammer_purge_desc, $lang->purgespammer_delete);
             }
             eval("\$purgespammer = \"" . $templates->get('moderation_purgespammer') . "\";");
             output_page($purgespammer);
         }
     }
     break;
 default:
     require_once MYBB_ROOT . "inc/class_custommoderation.php";
     $custommod = new CustomModeration();
     $tool = $custommod->tool_info($mybb->get_input('action', MyBB::INPUT_INT));
     if ($tool !== false) {
         // Verify incoming POST request
         verify_post_check($mybb->get_input('my_post_key'));
         $options = my_unserialize($tool['threadoptions']);
         if (!is_member($tool['groups'])) {
             error_no_permission();
         }
         if (!empty($options['confirmation']) && empty($mybb->input['confirm'])) {
             add_breadcrumb($lang->confirm_execute_tool);
             $lang->confirm_execute_tool_desc = $lang->sprintf($lang->confirm_execute_tool_desc, htmlspecialchars_uni($tool['name']));
             $modtype = $mybb->get_input('modtype');
             $inlinetype = $mybb->get_input('inlinetype');
             $searchid = $mybb->get_input('searchid');
             $url = htmlspecialchars_uni($mybb->get_input('url'));
             $plugins->run_hooks('moderation_confirmation');
             eval('$page = "' . $templates->get('moderation_confirmation') . '";');
             output_page($page);
             exit;
         }
         if ($tool['type'] == 't' && $mybb->get_input('modtype') == 'inlinethread') {
Ejemplo n.º 18
0
function get_event_detail($eid, $item_id = false, $asso_id = null)
{
    global $globals;
    if (is_null($asso_id)) {
        $asso_id = $globals->asso('id');
    }
    if (!$item_id) {
        $where = '';
        $group_by = 'e.eid';
    } else {
        $where = XDB::format(' AND ei.item_id = {?}', $item_id);
        $group_by = 'ei.item_id';
    }
    $evt = XDB::fetchOneAssoc('SELECT  SUM(nb) AS nb_tot, COUNT(DISTINCT ep.uid) AS nb, e.*, SUM(IF(nb > 0, 1, 0)) AS user_count,
                                       IF(e.deadline_inscription,
                                          e.deadline_inscription >= LEFT(NOW(), 10),
                                          1) AS inscr_open,
                                       LEFT(e.debut, 10) AS first_day, LEFT(e.fin, 10) AS last_day,
                                       LEFT(NOW(), 10) AS now,
                                       ei.titre, e.subscription_notification
                                 FROM  group_events             AS e
                           INNER JOIN  group_event_items        AS ei ON (e.eid = ei.eid)
                            LEFT JOIN  group_event_participants AS ep ON(e.eid = ep.eid AND ei.item_id = ep.item_id)
                                WHERE  (e.eid = {?} OR e.short_name = {?}) AND e.asso_id = {?}' . $where . '
                             GROUP BY  ' . $group_by, $eid, $eid, $asso_id);
    if (!$evt) {
        return null;
    }
    if ($GLOBALS['IS_XNET_SITE'] && $evt['accept_nonmembre'] == 0 && !is_member() && !may_update()) {
        return false;
    }
    if (!$item_id) {
        /* Don't try to be to smart here, in case we're getting the global summary, we cannot have
         * a general formula to estimate the total number of comers since 'moments' may (or may not be)
         * disjuncted. As a consequence, we can only provides the number of user having fullfiled the
         * registration procedure.
         */
        $evt['user_count'] = $evt['nb_tot'] = $evt['nb'];
        $evt['titre'] = '';
        $evt['item_id'] = 0;
        $evt['csv_name'] = urlencode($evt['intitule']);
    } else {
        $evt['csv_name'] = urlencode($evt['intitule'] . '.' . $evt['titre']);
    }
    $evt['moments'] = XDB::fetchAllAssoc('SELECT  titre, details, montant, ei.item_id, nb,
                                                  ep.paid, FIND_IN_SET(\'notify_payment\', ep.flags) AS notify_payment
                                            FROM  group_event_items        AS ei
                                       LEFT JOIN  group_event_participants AS ep ON (ep.eid = ei.eid AND ep.item_id = ei.item_id
                                                                                                             AND uid = {?})
                                           WHERE  ei.eid = {?}', S::i('uid'), $evt['eid']);
    $evt['topay'] = 0;
    $evt['paid'] = 0;
    $evt['notify_payment'] = false;
    foreach ($evt['moments'] as $m) {
        $evt['topay'] += $m['nb'] * $m['montant'];
        if ($m['montant']) {
            $evt['money'] = true;
        }
        $evt['paid'] += $m['paid'];
        $evt['notify_payment'] = $evt['notify_payment'] || $m['notify_payment'];
    }
    $montant = XDB::fetchOneCell('SELECT  SUM(amount) AS sum_amount
                                    FROM  payment_transactions AS t
                                   WHERE  status = "confirmed" AND ref = {?} AND uid = {?}', $evt['paiement_id'], S::v('uid'));
    $evt['telepaid'] = $montant;
    $evt['paid'] += $montant;
    $evt['organizer'] = User::getSilent($evt['uid']);
    $evt['date'] = make_event_date($evt['debut'], $evt['fin']);
    $evt['show_participants'] = $evt['show_participants'] && $GLOBALS['IS_XNET_SITE'] && (is_member() || may_update());
    return $evt;
}
Ejemplo n.º 19
0
session_start();
if (isset($_POST["submit"])) {
    $fname = $_POST["fname"];
    $lname = $_POST["lname"];
    $degree = $_POST["degree"];
    $rollno = $_POST["rollno"];
    $batch = $_POST["batch"];
    $email = $_POST["email"];
    $gender = $_POST["gender"];
    $dob = $_POST["dob"];
    $username = $_POST["username"];
    $password = $_POST["password"];
    if ($rollno != "" and $fname != "" and $lname != "" and $username != "" and $password != "" and $dob != "" and $gender != "" and $email != "" and $batch != "" and $degree != "") {
        include "db.php";
        $connectionStatu = connect_db();
        $member = is_member($connectionStatu, $username);
        if (!$member) {
            $status = signup_user($connectionStatu, $fname, $lname, $rollno, $username, $degree, $batch, $gender, $dob, $email, $password);
            /*echo print_r($status);exit;*/
            if ($status == true) {
                header("Location: signup.php?id=success&v=You are signed up successfully!!");
            } else {
                header("Location: signup.php?id=error&v=Error: An error has occured. Cannot sign up");
            }
        } else {
            header("Location: signup.php?id=error&v=Error: Username:{$username} already exists");
        }
    } else {
        header("Location: signup.php?id=error&v=Error: All fields mandatory");
    }
} else {
Ejemplo n.º 20
0
    }
} elseif ($mybb->input['action'] == "imcenter") {
    $mybb->input['imtype'] = $mybb->get_input('imtype');
    if ($mybb->input['imtype'] != "aim" && $mybb->input['imtype'] != "skype" && $mybb->input['imtype'] != "yahoo") {
        error($lang->error_invalidimtype);
    }
    $uid = $mybb->get_input('uid', MyBB::INPUT_INT);
    $user = get_user($uid);
    if (!$user) {
        error($lang->error_invaliduser);
    }
    if (empty($user[$mybb->input['imtype']])) {
        error($lang->error_invalidimtype);
    }
    $settingkey = 'allow' . $mybb->input['imtype'] . 'field';
    if (!is_member($mybb->settings[$settingkey], $user)) {
        error_no_permission();
    }
    // Build IM navigation bar
    $navigationbar = $navsep = $imtype = $imtype_lang = '';
    if ($user['aim']) {
        $imtype = "aim";
        $imtype_lang = $lang->aol_im;
        eval("\$navigationbar .= \"" . $templates->get("misc_imcenter_nav") . "\";");
        $navsep = ' - ';
    }
    if ($user['skype']) {
        $imtype = "skype";
        $imtype_lang = $lang->skype;
        eval("\$navigationbar .= \"" . $templates->get("misc_imcenter_nav") . "\";");
        $navsep = ' - ';
Ejemplo n.º 21
0
 static function access_mod_own()
 {
     $array = self::settings_get_csv('groups_mod_own');
     return $array[0] == -1 || is_member($array);
 }
Ejemplo n.º 22
0
function automedia_embedly()
{
    global $mybb, $headerinclude, $footer, $lang, $templates, $am_embedly_script, $am_embedly_head;
    $am_head = '';
    $am_head_embedly = '';
    $am_embedly_script = '';
    $this_scripts = array('usercp.php', 'showthread.php', 'private.php', 'newthread.php', 'newreply.php', 'editpost.php', 'calendar.php', 'portal.php', 'modcp.php', 'printthread.php');
    // Don't load the templates everywhere
    if (!in_array(THIS_SCRIPT, $this_scripts) && !defined("IN_ARCHIVE")) {
        return;
    }
    /**
     * Get the settings for the forums
     **/
    if ($mybb->settings['av_forums'] != -1) {
        global $fid;
        if (isset($fid)) {
            $avfid = (int) $fid;
        } else {
            $avfid = $mybb->get_input('fid', 1);
            if ($mybb->version > "1.8.0") {
                $avfid = $mybb->get_input('fid', MyBB::INPUT_INT);
            }
        }
        // Find the set fid's in settings
        $fids = explode(',', $mybb->settings['av_forums']);
        if (!in_array($avfid, $fids)) {
            return;
        }
    }
    /**
     *Get the settings for the usergroups
     **/
    // Find the excluded groups in settings
    if ($mybb->settings['av_groups'] != '' && $mybb->usergroup['cancp'] != 1) {
        if (is_member($mybb->settings['av_groups']) || $mybb->settings['av_groups'] == -1) {
            return;
        }
    }
    // Check settings and permissions
    if ($mybb->settings['av_enable'] == 1 && $mybb->user['uid'] != 0 && $mybb->user['automedia_use'] != 'N' || $mybb->settings['av_enable'] == 1 && $mybb->user['uid'] == 0 && $mybb->settings['av_guest'] == 1) {
        eval("\$am_head = \"" . $templates->get("automedia_head") . "\";");
        $headerinclude .= $am_head;
        // Embed.ly jQuery
        if ($mybb->settings['av_embedly'] == 1 && !empty($mybb->settings['av_embedly_key']) && $mybb->settings['av_embedly_key'] != "") {
            if (!isset($lang->av_click)) {
                $lang->load("automedia");
            }
            // Set sanitized variables
            $mybb->settings['av_embedly_key'] = htmlspecialchars_uni($mybb->settings['av_embedly_key']);
            $mybb->settings['av_width'] = (int) $mybb->settings['av_width'];
            $mybb->settings['av_height'] = (int) $mybb->settings['av_height'];
            $modalwidth = (int) $mybb->settings['av_width'] + 50;
            // Add script to headerinclude
            eval("\$am_embedly_head = \"" . $templates->get("automedia_head_embedly") . "\";");
            if ($mybb->settings['av_embedly_click'] == 'modal') {
                // Show media as modal popup
                if ($mybb->settings['av_embedly_card'] != 1) {
                    eval("\$am_embedly_script = \"" . $templates->get("automedia_embedly_modal") . "\";");
                } else {
                    eval("\$am_embedly_script = \"" . $templates->get("automedia_embedly_modal_card") . "\";");
                }
            } elseif ($mybb->settings['av_embedly_click'] == 'button') {
                if ($mybb->settings['av_embedly_card'] != 1) {
                    eval("\$am_embedly_script = \"" . $templates->get("automedia_embedly_button") . "\";");
                } else {
                    eval("\$am_embedly_script = \"" . $templates->get("automedia_embedly_button_card") . "\";");
                }
            } else {
                if ($mybb->settings['av_embedly_card'] != 1) {
                    eval("\$am_embedly_script = \"" . $templates->get("automedia_embedly_direct") . "\";");
                } else {
                    eval("\$am_embedly_script = \"" . $templates->get("automedia_embedly_direct_card") . "\";");
                }
            }
            $headerinclude = $headerinclude . '<!--embedlyhead-->';
            $footer = $footer . '<!--embedlyfooter-->';
            // Add embedly scripts in archive mode
            if (defined('IN_ARCHIVE')) {
                echo '<script type="text/javascript" src="' . $mybb->asset_url . '/jscripts/jquery.js?ver=1800"></script>
					<script type="text/javascript" src="' . $mybb->asset_url . '/jscripts/jquery.plugins.min.js?ver=1800"></script>';
                echo $am_embedly_head;
                echo $am_embedly_script;
            }
            // Add embedly scripts in printthread
            if (THIS_SCRIPT == 'printthread.php') {
                global $postrows;
                $postrows = $postrows . '
				<script type="text/javascript" src="' . $mybb->asset_url . '/jscripts/jquery.js?ver=1800"></script>
				<script type="text/javascript" src="' . $mybb->asset_url . '/jscripts/jquery.plugins.min.js?ver=1800"></script>' . $am_embedly_head . $am_embedly_script;
            }
        }
    }
}
Ejemplo n.º 23
0
/**
 * Build a post bit
 *
 * @param array $post The post data
 * @param int $post_type The type of post bit we're building (1 = preview, 2 = pm, 3 = announcement, else = post)
 * @return string The built post bit
 */
function build_postbit($post, $post_type = 0)
{
    global $db, $altbg, $theme, $mybb, $postcounter, $profile_fields;
    global $titlescache, $page, $templates, $forumpermissions, $attachcache;
    global $lang, $ismod, $inlinecookie, $inlinecount, $groupscache, $fid;
    global $plugins, $parser, $cache, $ignored_users, $hascustomtitle;
    $hascustomtitle = 0;
    // Set default values for any fields not provided here
    foreach (array('pid', 'aid', 'pmid', 'posturl', 'button_multiquote', 'subject_extra', 'attachments', 'button_rep', 'button_warn', 'button_purgespammer', 'button_pm', 'button_pubkey', 'button_reply_pm', 'button_replyall_pm', 'button_forward_pm', 'button_delete_pm', 'replink', 'warninglevel') as $post_field) {
        if (empty($post[$post_field])) {
            $post[$post_field] = '';
        }
    }
    // Set up the message parser if it doesn't already exist.
    if (!$parser) {
        require_once MYBB_ROOT . "inc/class_parser.php";
        $parser = new postParser();
    }
    if (!function_exists("purgespammer_show")) {
        require_once MYBB_ROOT . "inc/functions_user.php";
    }
    $unapproved_shade = '';
    if (isset($post['visible']) && $post['visible'] == 0 && $post_type == 0) {
        $altbg = $unapproved_shade = 'unapproved_post';
    } elseif (isset($post['visible']) && $post['visible'] == -1 && $post_type == 0) {
        $altbg = $unapproved_shade = 'unapproved_post deleted_post';
    } elseif ($altbg == 'trow1') {
        $altbg = 'trow2';
    } else {
        $altbg = 'trow1';
    }
    $post['fid'] = $fid;
    switch ($post_type) {
        case 1:
            // Message preview
            global $forum;
            $parser_options['allow_html'] = $forum['allowhtml'];
            $parser_options['allow_mycode'] = $forum['allowmycode'];
            $parser_options['allow_smilies'] = $forum['allowsmilies'];
            $parser_options['allow_imgcode'] = $forum['allowimgcode'];
            $parser_options['allow_videocode'] = $forum['allowvideocode'];
            $parser_options['me_username'] = $post['username'];
            $parser_options['filter_badwords'] = 1;
            $id = 0;
            break;
        case 2:
            // Private message
            global $message, $pmid;
            $idtype = 'pmid';
            $parser_options['allow_html'] = $mybb->settings['pmsallowhtml'];
            $parser_options['allow_mycode'] = $mybb->settings['pmsallowmycode'];
            $parser_options['allow_smilies'] = $mybb->settings['pmsallowsmilies'];
            $parser_options['allow_imgcode'] = $mybb->settings['pmsallowimgcode'];
            $parser_options['allow_videocode'] = $mybb->settings['pmsallowvideocode'];
            $parser_options['me_username'] = $post['username'];
            $parser_options['filter_badwords'] = 1;
            $id = $pmid;
            break;
        case 3:
            // Announcement
            global $announcementarray, $message;
            $parser_options['allow_html'] = $announcementarray['allowhtml'];
            $parser_options['allow_mycode'] = $announcementarray['allowmycode'];
            $parser_options['allow_smilies'] = $announcementarray['allowsmilies'];
            $parser_options['allow_imgcode'] = 1;
            $parser_options['allow_videocode'] = 1;
            $parser_options['me_username'] = $post['username'];
            $parser_options['filter_badwords'] = 1;
            $id = $announcementarray['aid'];
            break;
        default:
            // Regular post
            global $forum, $thread, $tid;
            $oldforum = $forum;
            $id = (int) $post['pid'];
            $idtype = 'pid';
            $parser_options['allow_html'] = $forum['allowhtml'];
            $parser_options['allow_mycode'] = $forum['allowmycode'];
            $parser_options['allow_smilies'] = $forum['allowsmilies'];
            $parser_options['allow_imgcode'] = $forum['allowimgcode'];
            $parser_options['allow_videocode'] = $forum['allowvideocode'];
            $parser_options['filter_badwords'] = 1;
            if (!$post['username']) {
                $post['username'] = $lang->guest;
            }
            if ($post['userusername']) {
                $parser_options['me_username'] = $post['userusername'];
            } else {
                $parser_options['me_username'] = $post['username'];
            }
            break;
    }
    if (!$postcounter) {
        // Used to show the # of the post
        if ($page > 1) {
            if (!$mybb->settings['postsperpage'] || (int) $mybb->settings['postsperpage'] < 1) {
                $mybb->settings['postsperpage'] = 20;
            }
            $postcounter = $mybb->settings['postsperpage'] * ($page - 1);
        } else {
            $postcounter = 0;
        }
        $post_extra_style = "border-top-width: 0;";
    } elseif ($mybb->input['mode'] == "threaded") {
        $post_extra_style = "border-top-width: 0;";
    } else {
        $post_extra_style = "margin-top: 5px;";
    }
    if (!$altbg) {
        // Define the alternate background colour if this is the first post
        $altbg = "trow1";
    }
    $postcounter++;
    // Format the post date and time using my_date
    //$post['postdate'] = my_date('relative', $post['dateline']);
    $post['postdate'] = date('Y-m-d', $post['dateline']);
    // Dont want any little 'nasties' in the subject
    $post['subject'] = $parser->parse_badwords($post['subject']);
    // Pm's have been htmlspecialchars_uni()'ed already.
    if ($post_type != 2) {
        $post['subject'] = htmlspecialchars_uni($post['subject']);
    }
    if (empty($post['subject'])) {
        $post['subject'] = '&nbsp;';
    }
    $post['author'] = $post['uid'];
    $post['subject_title'] = $post['subject'];
    // Get the usergroup
    if ($post['userusername']) {
        if (!$post['displaygroup']) {
            $post['displaygroup'] = $post['usergroup'];
        }
        $usergroup = $groupscache[$post['displaygroup']];
    } else {
        $usergroup = $groupscache[1];
    }
    if (!is_array($titlescache)) {
        $cached_titles = $cache->read("usertitles");
        if (!empty($cached_titles)) {
            foreach ($cached_titles as $usertitle) {
                $titlescache[$usertitle['posts']] = $usertitle;
            }
        }
        if (is_array($titlescache)) {
            krsort($titlescache);
        }
        unset($usertitle, $cached_titles);
    }
    // Work out the usergroup/title stuff
    $post['groupimage'] = '';
    if (!empty($usergroup['image'])) {
        $language = $mybb->settings['bblanguage'];
        if (!empty($mybb->user['language'])) {
            $language = $mybb->user['language'];
        }
        $usergroup['image'] = str_replace("{lang}", $language, $usergroup['image']);
        $usergroup['image'] = str_replace("{theme}", $theme['imgdir'], $usergroup['image']);
        eval("\$post['groupimage'] = \"" . $templates->get("postbit_groupimage") . "\";");
        if ($mybb->settings['postlayout'] == "classic") {
            $post['groupimage'] .= "<br />";
        }
    }
    if ($post['userusername']) {
        // This post was made by a registered user
        $post['username'] = $post['userusername'];
        $post['profilelink_plain'] = get_profile_link($post['uid']);
        $post['username_formatted'] = format_name($post['username'], $post['usergroup'], $post['displaygroup']);
        $post['profilelink'] = build_profile_link($post['username_formatted'], $post['uid']);
        if (trim($post['usertitle']) != "") {
            $hascustomtitle = 1;
        }
        if ($usergroup['usertitle'] != "" && !$hascustomtitle) {
            $post['usertitle'] = $usergroup['usertitle'];
        } elseif (is_array($titlescache) && !$usergroup['usertitle']) {
            reset($titlescache);
            foreach ($titlescache as $key => $titleinfo) {
                if ($post['postnum'] >= $key) {
                    if (!$hascustomtitle) {
                        $post['usertitle'] = $titleinfo['title'];
                    }
                    $post['stars'] = $titleinfo['stars'];
                    $post['starimage'] = $titleinfo['starimage'];
                    break;
                }
            }
        }
        $post['usertitle'] = htmlspecialchars_uni($post['usertitle']);
        if ($usergroup['stars']) {
            $post['stars'] = $usergroup['stars'];
        }
        if (empty($post['starimage'])) {
            $post['starimage'] = $usergroup['starimage'];
        }
        if ($post['starimage'] && $post['stars']) {
            // Only display stars if we have an image to use...
            $post['starimage'] = str_replace("{theme}", $theme['imgdir'], $post['starimage']);
            $post['userstars'] = '';
            for ($i = 0; $i < $post['stars']; ++$i) {
                eval("\$post['userstars'] .= \"" . $templates->get("postbit_userstar", 1, 0) . "\";");
            }
            $post['userstars'] .= "<br />";
        }
        $postnum = $post['postnum'];
        $post['postnum'] = my_number_format($post['postnum']);
        $post['threadnum'] = my_number_format($post['threadnum']);
        // Determine the status to show for the user (Online/Offline/Away)
        /*
        $timecut = TIME_NOW - $mybb->settings['wolcutoff'];
        if($post['lastactive'] > $timecut && ($post['invisible'] != 1 || $mybb->usergroup['canviewwolinvis'] == 1) && $post['lastvisit'] != $post['lastactive'])
        {
        	eval("\$post['onlinestatus'] = \"".$templates->get("postbit_online")."\";");
        }
        else
        {
        	if($post['away'] == 1 && $mybb->settings['allowaway'] != 0)
        	{
        		eval("\$post['onlinestatus'] = \"".$templates->get("postbit_away")."\";");
        	}
        	else
        	{
        		eval("\$post['onlinestatus'] = \"".$templates->get("postbit_offline")."\";");
        	}
        }
        */
        // Show as always offline
        eval("\$post['onlinestatus'] = \"" . $templates->get("postbit_offline") . "\";");
        $post['useravatar'] = '';
        if (isset($mybb->user['showavatars']) && $mybb->user['showavatars'] != 0 || $mybb->user['uid'] == 0) {
            $useravatar = format_avatar($post['avatar'], $post['avatardimensions'], $mybb->settings['postmaxavatarsize']);
            eval("\$post['useravatar'] = \"" . $templates->get("postbit_avatar") . "\";");
        }
        $post['button_find'] = '';
        if ($mybb->usergroup['cansearch'] == 1) {
            eval("\$post['button_find'] = \"" . $templates->get("postbit_find") . "\";");
        }
        if ($mybb->settings['enablepms'] == 1 && $post['receivepms'] != 0 && $mybb->usergroup['cansendpms'] == 1 && my_strpos("," . $post['ignorelist'] . ",", "," . $mybb->user['uid'] . ",") === false) {
            //eval("\$post['button_pm'] = \"".$templates->get("postbit_pm")."\";");
        }
        $post['button_rep'] = '';
        if ($post_type != 3 && $mybb->settings['enablereputation'] == 1 && $mybb->settings['postrep'] == 1 && $mybb->usergroup['cangivereputations'] == 1 && $usergroup['usereputationsystem'] == 1 && ($mybb->settings['posrep'] || $mybb->settings['neurep'] || $mybb->settings['negrep']) && $post['uid'] != $mybb->user['uid'] && $post['visible'] == 1) {
            if (!$post['pid']) {
                $post['pid'] = 0;
            }
            eval("\$post['button_rep'] = \"" . $templates->get("postbit_rep_button") . "\";");
        }
        if ($post['website'] != "" && !is_member($mybb->settings['hidewebsite']) && $usergroup['canchangewebsite'] == 1) {
            $post['website'] = htmlspecialchars_uni($post['website']);
            eval("\$post['button_www'] = \"" . $templates->get("postbit_www") . "\";");
        } else {
            $post['button_www'] = "";
        }
        if ($post['hideemail'] != 1 && $mybb->usergroup['cansendemail'] == 1) {
            eval("\$post['button_email'] = \"" . $templates->get("postbit_email") . "\";");
        } else {
            $post['button_email'] = "";
        }
        $post['userregdate'] = $lang->na;
        //my_date($mybb->settings['regdateformat'], $post['regdate']);
        // Work out the reputation this user has (only show if not announcement)
        if ($post_type != 3 && $usergroup['usereputationsystem'] != 0 && $mybb->settings['enablereputation'] == 1) {
            $post['userreputation'] = get_reputation($post['reputation'], $post['uid']);
            eval("\$post['replink'] = \"" . $templates->get("postbit_reputation") . "\";");
        }
        // Showing the warning level? (only show if not announcement)
        if ($post_type != 3 && $mybb->settings['enablewarningsystem'] != 0 && $usergroup['canreceivewarnings'] != 0 && ($mybb->usergroup['canwarnusers'] != 0 || $mybb->user['uid'] == $post['uid'] && $mybb->settings['canviewownwarning'] != 0)) {
            if ($mybb->settings['maxwarningpoints'] < 1) {
                $mybb->settings['maxwarningpoints'] = 10;
            }
            $warning_level = round($post['warningpoints'] / $mybb->settings['maxwarningpoints'] * 100);
            if ($warning_level > 100) {
                $warning_level = 100;
            }
            $warning_level = get_colored_warning_level($warning_level);
            // If we can warn them, it's not the same person, and we're in a PM or a post.
            if ($mybb->usergroup['canwarnusers'] != 0 && $post['uid'] != $mybb->user['uid'] && ($post_type == 0 || $post_type == 2)) {
                eval("\$post['button_warn'] = \"" . $templates->get("postbit_warn") . "\";");
                $warning_link = "warnings.php?uid={$post['uid']}";
            } else {
                $post['button_warn'] = '';
                $warning_link = "usercp.php";
            }
            eval("\$post['warninglevel'] = \"" . $templates->get("postbit_warninglevel") . "\";");
        }
        if ($post_type != 3 && $post_type != 1 && purgespammer_show($post['postnum'], $post['usergroup'], $post['uid'])) {
            eval("\$post['button_purgespammer'] = \"" . $templates->get('postbit_purgespammer') . "\";");
        }
        // Display profile fields on posts - only if field is filled in
        if (is_array($profile_fields)) {
            foreach ($profile_fields as $field) {
                $fieldfid = "fid{$field['fid']}";
                if (!empty($post[$fieldfid])) {
                    $post['fieldvalue'] = '';
                    $post['fieldname'] = htmlspecialchars_uni($field['name']);
                    $thing = explode("\n", $field['type'], "2");
                    $type = trim($thing[0]);
                    $useropts = explode("\n", $post[$fieldfid]);
                    if (is_array($useropts) && ($type == "multiselect" || $type == "checkbox")) {
                        foreach ($useropts as $val) {
                            if ($val != '') {
                                eval("\$post['fieldvalue_option'] .= \"" . $templates->get("postbit_profilefield_multiselect_value") . "\";");
                            }
                        }
                        if ($post['fieldvalue_option'] != '') {
                            eval("\$post['fieldvalue'] .= \"" . $templates->get("postbit_profilefield_multiselect") . "\";");
                        }
                    } else {
                        $field_parser_options = array("allow_html" => $field['allowhtml'], "allow_mycode" => $field['allowmycode'], "allow_smilies" => $field['allowsmilies'], "allow_imgcode" => $field['allowimgcode'], "allow_videocode" => $field['allowvideocode'], "filter_badwords" => 1);
                        if ($customfield['type'] == "textarea") {
                            $field_parser_options['me_username'] = $post['username'];
                        } else {
                            $field_parser_options['nl2br'] = 0;
                        }
                        if ($mybb->user['showimages'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0) {
                            $field_parser_options['allow_imgcode'] = 0;
                        }
                        $post['fieldvalue'] = $parser->parse_message($post[$fieldfid], $field_parser_options);
                    }
                    eval("\$post['profilefield'] .= \"" . $templates->get("postbit_profilefield") . "\";");
                }
            }
        }
        eval("\$post['user_details'] = \"" . $templates->get("postbit_author_user") . "\";");
    } else {
        // Message was posted by a guest or an unknown user
        $post['profilelink'] = format_name($post['username'], 1);
        if ($usergroup['usertitle']) {
            $post['usertitle'] = $usergroup['usertitle'];
        } else {
            $post['usertitle'] = $lang->guest;
        }
        $post['usertitle'] = htmlspecialchars_uni($post['usertitle']);
        $usergroup['title'] = $lang->na;
        $post['userregdate'] = $lang->na;
        $post['postnum'] = $lang->na;
        $post['button_profile'] = '';
        $post['button_email'] = '';
        $post['button_www'] = '';
        $post['signature'] = '';
        $post['button_pm'] = $lang->na;
        $post['button_find'] = '';
        $post['onlinestatus'] = '';
        $post['replink'] = '';
        eval("\$post['user_details'] = \"" . $templates->get("postbit_author_guest") . "\";");
    }
    $post['button_edit'] = '';
    $post['button_quickdelete'] = '';
    $post['button_quickrestore'] = '';
    $post['button_quote'] = '';
    $post['button_quickquote'] = '';
    $post['button_report'] = '';
    $post['button_reply_pm'] = '';
    $post['button_replyall_pm'] = '';
    $post['button_forward_pm'] = '';
    $post['button_delete_pm'] = '';
    // For private messages, fetch the reply/forward/delete icons
    if ($post_type == 2 && $post['pmid']) {
        global $replyall;
        eval("\$post['button_reply_pm'] = \"" . $templates->get("postbit_reply_pm") . "\";");
        eval("\$post['button_forward_pm'] = \"" . $templates->get("postbit_forward_pm") . "\";");
        eval("\$post['button_delete_pm'] = \"" . $templates->get("postbit_delete_pm") . "\";");
        if ($replyall == true) {
            eval("\$post['button_replyall_pm'] = \"" . $templates->get("postbit_replyall_pm") . "\";");
        }
    }
    $post['editedmsg'] = '';
    if (!$post_type) {
        // Figure out if we need to show an "edited by" message
        if ($post['edituid'] != 0 && $post['edittime'] != 0 && $post['editusername'] != "" && ($mybb->settings['showeditedby'] != 0 && $usergroup['cancp'] == 0 || $mybb->settings['showeditedbyadmin'] != 0 && $usergroup['cancp'] == 1)) {
            //$post['editdate'] = my_date('relative', $post['edittime']);
            $post['editdate'] = $lang->na;
            $post['editnote'] = $lang->sprintf($lang->postbit_edited, $post['editdate']);
            $post['editedprofilelink'] = build_profile_link($post['editusername'], $post['edituid']);
            $editreason = "";
            if ($post['editreason'] != "") {
                $post['editreason'] = $parser->parse_badwords($post['editreason']);
                $post['editreason'] = htmlspecialchars_uni($post['editreason']);
                eval("\$editreason = \"" . $templates->get("postbit_editedby_editreason") . "\";");
            }
            eval("\$post['editedmsg'] = \"" . $templates->get("postbit_editedby") . "\";");
        }
        $time = TIME_NOW;
        if (is_moderator($fid, "caneditposts") || $forumpermissions['caneditposts'] == 1 && $mybb->user['uid'] == $post['uid'] && $thread['closed'] != 1 && $mybb->usergroup['edittimelimit'] == 0 && $mybb->user['uid'] != 0) {
            eval("\$post['button_edit'] = \"" . $templates->get("postbit_edit") . "\";");
        }
        // Quick Delete button
        $can_delete_thread = $can_delete_post = 0;
        if ($mybb->user['uid'] == $post['uid'] && $thread['closed'] == 0) {
            if ($forumpermissions['candeletethreads'] == 1 && $postcounter == 1) {
                $can_delete_thread = 1;
            } else {
                if ($forumpermissions['candeleteposts'] == 1 && $postcounter != 1) {
                    $can_delete_post = 1;
                }
            }
        }
        $postbit_qdelete = $postbit_qrestore = '';
        if ($mybb->user['uid'] != 0) {
            if ((is_moderator($fid, "candeleteposts") || is_moderator($fid, "cansoftdeleteposts") || $can_delete_post == 1) && $postcounter != 1) {
                $postbit_qdelete = $lang->postbit_qdelete_post;
                $display = '';
                if ($post['visible'] == -1) {
                    $display = "none";
                }
                eval("\$post['button_quickdelete'] = \"" . $templates->get("postbit_quickdelete") . "\";");
            } else {
                if ((is_moderator($fid, "candeletethreads") || is_moderator($fid, "cansoftdeletethreads") || $can_delete_thread == 1) && $postcounter == 1) {
                    $postbit_qdelete = $lang->postbit_qdelete_thread;
                    $display = '';
                    if ($post['visible'] == -1) {
                        $display = "none";
                    }
                    eval("\$post['button_quickdelete'] = \"" . $templates->get("postbit_quickdelete") . "\";");
                }
            }
            // Restore Post
            if (is_moderator($fid, "canrestoreposts") && $postcounter != 1) {
                $display = "none";
                if ($post['visible'] == -1) {
                    $display = '';
                }
                $postbit_qrestore = $lang->postbit_qrestore_post;
                eval("\$post['button_quickrestore'] = \"" . $templates->get("postbit_quickrestore") . "\";");
            } else {
                if (is_moderator($fid, "canrestorethreads") && $postcounter == 1) {
                    $display = "none";
                    if ($post['visible'] == -1) {
                        $display = "";
                    }
                    $postbit_qrestore = $lang->postbit_qrestore_thread;
                    eval("\$post['button_quickrestore'] = \"" . $templates->get("postbit_quickrestore") . "\";");
                }
            }
        }
        // Inline moderation stuff
        if ($ismod) {
            if (isset($mybb->cookies[$inlinecookie]) && my_strpos($mybb->cookies[$inlinecookie], "|" . $post['pid'] . "|")) {
                $inlinecheck = "checked=\"checked\"";
                $inlinecount++;
            } else {
                $inlinecheck = "";
            }
            eval("\$post['inlinecheck'] = \"" . $templates->get("postbit_inlinecheck") . "\";");
            if ($post['visible'] == 0) {
                $invisiblepost = 1;
            }
        } else {
            $post['inlinecheck'] = "";
        }
        $post['postlink'] = get_post_link($post['pid'], $post['tid']);
        $post_number = my_number_format($postcounter);
        eval("\$post['posturl'] = \"" . $templates->get("postbit_posturl") . "\";");
        global $forum, $thread;
        if ($forum['open'] != 0 && ($thread['closed'] != 1 || is_moderator($forum['fid'], "canpostclosedthreads")) && ($thread['uid'] == $mybb->user['uid'] || $forumpermissions['canonlyreplyownthreads'] != 1)) {
            eval("\$post['button_quote'] = \"" . $templates->get("postbit_quote") . "\";");
        }
        if ($forumpermissions['canpostreplys'] != 0 && ($thread['uid'] == $mybb->user['uid'] || $forumpermissions['canonlyreplyownthreads'] != 1) && ($thread['closed'] != 1 || is_moderator($fid, "canpostclosedthreads")) && $mybb->settings['multiquote'] != 0 && $forum['open'] != 0 && !$post_type) {
            eval("\$post['button_multiquote'] = \"" . $templates->get("postbit_multiquote") . "\";");
        }
        if ($mybb->user['uid'] != "0") {
            eval("\$post['button_report'] = \"" . $templates->get("postbit_report") . "\";");
        }
    } elseif ($post_type == 3) {
        if ($mybb->usergroup['canmodcp'] == 1 && $mybb->usergroup['canmanageannounce'] == 1 && is_moderator($fid, "canmanageannouncements")) {
            eval("\$post['button_edit'] = \"" . $templates->get("announcement_edit") . "\";");
            eval("\$post['button_quickdelete'] = \"" . $templates->get("announcement_quickdelete") . "\";");
        }
    }
    $post['iplogged'] = '';
    $show_ips = $mybb->settings['logip'];
    //$ipaddress = my_inet_ntop($db->unescape_binary($post['ipaddress']));
    $ipaddress = '127.0.0.1';
    // Show post IP addresses... PMs now can have IP addresses too as of 1.8!
    if ($post_type == 2) {
        $show_ips = $mybb->settings['showpmip'];
    }
    if (!$post_type || $post_type == 2) {
        if ($show_ips != "no" && !empty($post['ipaddress'])) {
            if ($show_ips == "show") {
                eval("\$post['iplogged'] = \"" . $templates->get("postbit_iplogged_show") . "\";");
            } else {
                if ($show_ips == "hide" && (is_moderator($fid, "canviewips") || $mybb->usergroup['issupermod'])) {
                    $action = 'getip';
                    if ($post_type == 2) {
                        $action = 'getpmip';
                    }
                    eval("\$post['iplogged'] = \"" . $templates->get("postbit_iplogged_hiden") . "\";");
                }
            }
        }
    }
    if (isset($post['smilieoff']) && $post['smilieoff'] == 1) {
        $parser_options['allow_smilies'] = 0;
    }
    if ($mybb->user['showimages'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0) {
        $parser_options['allow_imgcode'] = 0;
    }
    if ($mybb->user['showvideos'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestvideos'] != 1 && $mybb->user['uid'] == 0) {
        $parser_options['allow_videocode'] = 0;
    }
    // If we have incoming search terms to highlight - get it done.
    if (!empty($mybb->input['highlight'])) {
        $parser_options['highlight'] = $mybb->input['highlight'];
        $post['subject'] = $parser->highlight_message($post['subject'], $parser_options['highlight']);
    }
    $post['message'] = $parser->parse_message($post['message'], $parser_options);
    // Validate key
    $keyinfo = user_key_info($post['uid']);
    $post['signstatus'];
    if ($keyinfo['status'] == "OK") {
        $post['signstatus'] = "<span style=\"color: #07a407;\" title=\"Fingerprint: {$keyinfo['fingerprint']}\">✓ podpisano przez {$post['profilelink']}</span>";
    }
    // Jid link
    $ujid = user_jid($post['uid']);
    $post['jidlink'] = $ujid;
    // User key
    $post['userpubkey'] = $keyinfo['key'];
    if ($keyinfo['key'] != "") {
        eval("\$post['button_pubkey'] = \"" . $templates->get("postbit_pubkey") . "\";");
    } else {
        $post['button_pubkey'];
    }
    $post['attachments'] = '';
    if ($mybb->settings['enableattachments'] != 0) {
        get_post_attachments($id, $post);
    }
    if (isset($post['includesig']) && $post['includesig'] != 0 && $post['username'] && $post['signature'] != "" && ($mybb->user['uid'] == 0 || $mybb->user['showsigs'] != 0) && ($post['suspendsignature'] == 0 || $post['suspendsignature'] == 1 && $post['suspendsigtime'] != 0 && $post['suspendsigtime'] < TIME_NOW) && $usergroup['canusesig'] == 1 && ($usergroup['canusesigxposts'] == 0 || $usergroup['canusesigxposts'] > 0 && $postnum > $usergroup['canusesigxposts']) && !is_member($mybb->settings['hidesignatures'])) {
        $sig_parser = array("allow_html" => $mybb->settings['sightml'], "allow_mycode" => $mybb->settings['sigmycode'], "allow_smilies" => $mybb->settings['sigsmilies'], "allow_imgcode" => $mybb->settings['sigimgcode'], "me_username" => $post['username'], "filter_badwords" => 1);
        if ($usergroup['signofollow']) {
            $sig_parser['nofollow_on'] = 1;
        }
        if ($mybb->user['showimages'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestimages'] != 1 && $mybb->user['uid'] == 0) {
            $sig_parser['allow_imgcode'] = 0;
        }
        $post['signature'] = $parser->parse_message($post['signature'], $sig_parser);
        eval("\$post['signature'] = \"" . $templates->get("postbit_signature") . "\";");
    } else {
        $post['signature'] = "";
    }
    $icon_cache = $cache->read("posticons");
    if (isset($post['icon']) && $post['icon'] > 0 && $icon_cache[$post['icon']]) {
        $icon = $icon_cache[$post['icon']];
        $icon['path'] = htmlspecialchars_uni($icon['path']);
        $icon['path'] = str_replace("{theme}", $theme['imgdir'], $icon['path']);
        $icon['name'] = htmlspecialchars_uni($icon['name']);
        eval("\$post['icon'] = \"" . $templates->get("postbit_icon") . "\";");
    } else {
        $post['icon'] = "";
    }
    $post_visibility = $ignore_bit = '';
    switch ($post_type) {
        case 1:
            // Message preview
            $post = $plugins->run_hooks("postbit_prev", $post);
            break;
        case 2:
            // Private message
            $post = $plugins->run_hooks("postbit_pm", $post);
            break;
        case 3:
            // Announcement
            $post = $plugins->run_hooks("postbit_announcement", $post);
            break;
        default:
            // Regular post
            $post = $plugins->run_hooks("postbit", $post);
            // Is this author on the ignore list of the current user? Hide this post
            if (is_array($ignored_users) && $post['uid'] != 0 && isset($ignored_users[$post['uid']]) && $ignored_users[$post['uid']] == 1) {
                $ignored_message = $lang->sprintf($lang->postbit_currently_ignoring_user, $post['username']);
                eval("\$ignore_bit = \"" . $templates->get("postbit_ignored") . "\";");
                $post_visibility = "display: none;";
            }
            break;
    }
    if ($mybb->settings['postlayout'] == "classic") {
        eval("\$postbit = \"" . $templates->get("postbit_classic") . "\";");
    } else {
        eval("\$postbit = \"" . $templates->get("postbit") . "\";");
    }
    $GLOBALS['post'] = "";
    return $postbit;
}
Ejemplo n.º 24
0
     wrap_session_register("admin_user");
 } elseif ($_SESSION['BUDDY_LIST_EMAILS_SEND']) {
     // check if this user has any pending buddies - we only want to do this for non-admins and if buddy lists are switched on
     $_SESSION['number_pending_buddies'] = pending_buddies($_REQUEST['username']);
 }
 // set some session info about their privileges
 // can block book?
 if (can_block_book($_REQUEST['username'])) {
     wrap_session_register("block_book");
 }
 //booking credits remaining
 $_SESSION['booking_credits'] = remaining_booking_credits($_REQUEST['username']);
 // Member check
 // check if the user is a member or not - but only if they are not an admin as this flag is not used for admins
 if (!wrap_session_is_registered("admin_user")) {
     $_SESSION['is_member'] = is_member($_REQUEST['username']);
 }
 //can they view other users bookings?
 if (is_admin($_REQUEST['username'])) {
     //admins can always see everyone elses bookings
     $_SESSION['SHOW_USER_DETAILS'] = true;
 } else {
     //how about regular users? This will depend on the site wide value set by an admin
     $result = wrap_db_query("SELECT function_value FROM " . SETTINGS_TABLE . " WHERE name = 'user_details_viewing' LIMIT 0,1 ;");
     if ($result) {
         if ($fields = wrap_db_fetch_array($result)) {
             //change 1's and 0's to true and false
             if ($fields['function_value'] == "1") {
                 $_SESSION['SHOW_USER_DETAILS'] = true;
             } else {
                 $_SESSION['SHOW_USER_DETAILS'] = false;
Ejemplo n.º 25
0
 /**
  * Verifies if a profile fields are filled in correctly.
  *
  * @return boolean True when valid, false when invalid.
  */
 function verify_profile_fields()
 {
     global $db, $cache;
     $user =& $this->data;
     $profile_fields =& $this->data['profile_fields'];
     // Loop through profile fields checking if they exist or not and are filled in.
     $userfields = array();
     $comma = '';
     // Fetch all profile fields first.
     $pfcache = $cache->read('profilefields');
     if (is_array($pfcache)) {
         // Then loop through the profile fields.
         foreach ($pfcache as $profilefield) {
             if (isset($this->data['profile_fields_editable']) || isset($this->data['registration']) && ($profilefield['required'] == 1 || $profilefield['registration'] == 1)) {
                 $profilefield['editableby'] = -1;
             }
             if (!is_member($profilefield['editableby'], array('usergroup' => $user['usergroup'], 'additionalgroups' => $user['additionalgroups']))) {
                 continue;
             }
             // Does this field have a minimum post count?
             if (!isset($this->data['profile_fields_editable']) && !empty($profilefield['postnum']) && $profilefield['postnum'] > $user['postnum']) {
                 continue;
             }
             $profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
             $thing = explode("\n", $profilefield['type'], "2");
             $type = trim($thing[0]);
             $field = "fid{$profilefield['fid']}";
             if (!isset($profile_fields[$field])) {
                 $profile_fields[$field] = '';
             }
             // If the profile field is required, but not filled in, present error.
             if ($type != "multiselect" && $type != "checkbox") {
                 if (trim($profile_fields[$field]) == "" && $profilefield['required'] == 1 && !defined('IN_ADMINCP') && THIS_SCRIPT != "modcp.php") {
                     $this->set_error('missing_required_profile_field', array($profilefield['name']));
                 }
             } elseif (($type == "multiselect" || $type == "checkbox") && $profile_fields[$field] == "" && $profilefield['required'] == 1 && !defined('IN_ADMINCP') && THIS_SCRIPT != "modcp.php") {
                 $this->set_error('missing_required_profile_field', array($profilefield['name']));
             }
             // Sort out multiselect/checkbox profile fields.
             $options = '';
             if (($type == "multiselect" || $type == "checkbox") && is_array($profile_fields[$field])) {
                 $expoptions = explode("\n", $thing[1]);
                 $expoptions = array_map('trim', $expoptions);
                 foreach ($profile_fields[$field] as $value) {
                     if (!in_array(htmlspecialchars_uni($value), $expoptions)) {
                         $this->set_error('bad_profile_field_values', array($profilefield['name']));
                     }
                     if ($options) {
                         $options .= "\n";
                     }
                     $options .= $db->escape_string($value);
                 }
             } elseif ($type == "select" || $type == "radio") {
                 $expoptions = explode("\n", $thing[1]);
                 $expoptions = array_map('trim', $expoptions);
                 if (!in_array(htmlspecialchars_uni($profile_fields[$field]), $expoptions) && trim($profile_fields[$field]) != "") {
                     $this->set_error('bad_profile_field_values', array($profilefield['name']));
                 }
                 $options = $db->escape_string($profile_fields[$field]);
             } else {
                 if ($profilefield['maxlength'] > 0 && my_strlen($profile_fields[$field]) > $profilefield['maxlength']) {
                     $this->set_error('max_limit_reached', array($profilefield['name'], $profilefield['maxlength']));
                 }
                 if (!empty($profilefield['regex']) && !preg_match("#" . $profilefield['regex'] . "#i", $profile_fields[$field])) {
                     $this->set_error('bad_profile_field_value', array($profilefield['name']));
                 }
                 $options = $db->escape_string($profile_fields[$field]);
             }
             $user['user_fields'][$field] = $options;
         }
     }
     return true;
 }
Ejemplo n.º 26
0
function register_new_member(Member $member)
{
    if (!is_member($member->email)) {
        $connection = connect();
        $member->password = md5($member->password);
        $sql = "INSERT INTO team_members (member_id, first_name, last_name, email, password, dob, official_dob, reset_code) VALUES (NULL, '" . $member->first_name . "', '" . $member->last_name . "', '" . $member->email . "' , '" . $member->password . "', '3000-01-01', '" . $member->official_dob . "','" . get_uuid() . "')";
        $result = $connection->query($sql);
        disconnect($connection);
        if ($result == true) {
            $member_id_result = query_sql("SELECT `member_id` FROM `team_members` WHERE `email` = '" . $member->email . "'");
            $member_id = get_query_result($member_id_result, 'member_id');
            $result = array("registered" => true, "status_code" => 200, "member_id" => $member_id);
        } else {
            $result = array("registered" => false, "status_code" => 401, "error" => "Registration failed due to internal error");
        }
    } else {
        $result = array("registered" => false, "status_code" => 409, "error" => "Member already Registered");
    }
    return $result;
}
Ejemplo n.º 27
0
function is_member($a, $lat)
{
    return empty($lat) ? false : (eq(car($lat), $a) ? true : is_member($a, cdr($lat)));
}
Ejemplo n.º 28
0
if (isset($style['style']) && $style['style'] > 0) {
    $style['style'] = (int) $style['style'];
    // This theme is forced upon the user, overriding their selection
    if ($style['overridestyle'] == 1 || !isset($mybb->user['style'])) {
        $loadstyle = "tid = '{$style['style']}'";
    }
}
// After all of that no theme? Load the board default
if (empty($loadstyle)) {
    $loadstyle = "def='1'";
}
// Fetch the theme to load from the cache
if ($loadstyle != "def='1'") {
    $query = $db->simple_select('themes', 'name, tid, properties, stylesheets, allowedgroups', $loadstyle, array('limit' => 1));
    $theme = $db->fetch_array($query);
    if (isset($theme['tid']) && !$load_from_forum && !is_member($theme['allowedgroups']) && $theme['allowedgroups'] != 'all') {
        if ($load_from_user == 1) {
            $db->update_query('users', array('style' => 0), "style='{$mybb->user['style']}' AND uid='{$mybb->user['uid']}'");
        }
        if (isset($mybb->cookies['mybbtheme'])) {
            my_unsetcookie('mybbtheme');
        }
        $loadstyle = "def='1'";
    }
}
if ($loadstyle == "def='1'") {
    if (!$cache->read('default_theme')) {
        $cache->update_default_theme();
    }
    $theme = $cache->read('default_theme');
    $load_from_forum = $load_from_user = 0;
Ejemplo n.º 29
0
     $warning_level = get_colored_warning_level($warning_level);
     if ($mybb->usergroup['canwarnusers'] != 0 && $memprofile['uid'] != $mybb->user['uid']) {
         eval("\$warn_user = \"" . $templates->get("member_profile_warn") . "\";");
         $warning_link = "warnings.php?uid={$memprofile['uid']}";
     }
     eval("\$warning_level = \"" . $templates->get("member_profile_warninglevel") . "\";");
 }
 $bgcolor = $alttrow = 'trow1';
 $customfields = $profilefields = '';
 $query = $db->simple_select("userfields", "*", "ufid = '{$uid}'");
 $userfields = $db->fetch_array($query);
 // If this user is an Administrator or a Moderator then we wish to show all profile fields
 $pfcache = $cache->read('profilefields');
 if (is_array($pfcache)) {
     foreach ($pfcache as $customfield) {
         if ($mybb->usergroup['cancp'] != 1 && $mybb->usergroup['issupermod'] != 1 && $mybb->usergroup['canmodcp'] != 1 && !is_member($customfield['viewableby'])) {
             continue;
         }
         $thing = explode("\n", $customfield['type'], "2");
         $type = trim($thing[0]);
         $customfieldval = $customfield_val = '';
         $field = "fid{$customfield['fid']}";
         if (isset($userfields[$field])) {
             $useropts = explode("\n", $userfields[$field]);
             $customfieldval = $comma = '';
             if (is_array($useropts) && ($type == "multiselect" || $type == "checkbox")) {
                 foreach ($useropts as $val) {
                     if ($val != '') {
                         eval("\$customfield_val .= \"" . $templates->get("member_profile_customfields_field_multi_item") . "\";");
                     }
                 }
Ejemplo n.º 30
0
         $tyl_title_display = "";
         $tyl_title_display_collapsed = "display: none;";
         $tyl_data_display = "";
         $tyl_expcolimg = "collapse.png";
         eval("\$tyl_expcol = \"" . $templates->get("thankyoulike_expcollapse", 1, 0) . "\";");
     } else {
         $tyl_title_display = "";
         $tyl_title_display_collapsed = "display: none;";
         $tyl_data_display = "";
         $tyl_expcolimg = "";
         $tyl_expcol = "";
         $lang->tyl_title_collapsed = "";
     }
 }
 $button_tyl = '';
 if ($tyled && $mybb->settings[$prefix . 'removing'] != "1" || !is_moderator($post['fid'], "caneditposts") && $thread['closed'] == 1 && $mybb->settings[$prefix . 'closedthreads'] != "1" || $post['uid'] == $mybb->user['uid'] || is_member($mybb->settings[$prefix . 'hideforgroups']) || $mybb->settings[$prefix . 'hideforgroups'] == "-1") {
     // Show no button for poster or user who has already thanked/liked or removing is disabled.
     $button_tyl = '';
 } else {
     if ($tyled && $mybb->settings[$prefix . 'removing'] == "1" && ($mybb->settings[$prefix . 'firstall'] == "first" && $thread['firstpost'] == $post['pid'] || $mybb->settings[$prefix . 'firstall'] == "all")) {
         // Show remove button if removing already thanked/liked and removing enabled and is either the first post in thread if setting is for first or setting is all
         eval("\$button_tyl = \"" . $templates->get("thankyoulike_button_del") . "\";");
     } else {
         if ($mybb->settings[$prefix . 'firstall'] == "first" && $thread['firstpost'] == $post['pid'] || $mybb->settings[$prefix . 'firstall'] == "all") {
             if ((my_strpos($mybb->settings[$prefix . 'firstalloverwrite'], $post['fid']) !== false || $mybb->settings[$prefix . 'firstalloverwrite'] == "-1") && $thread['firstpost'] != $post['pid']) {
                 eval("\$button_tyl = \"" . $templates->get("thankyoulike_button_add") . "\";");
             } else {
                 // Same as above but show add button
                 eval("\$button_tyl = \"" . $templates->get("thankyoulike_button_add") . "\";");
             }
         }