/**
  * View Bossprogress page
  * @param viewNavigation $Navigation
  */
 public function buildpage(viewNavigation $Navigation)
 {
     global $phpbb_root_path, $phpEx, $user, $template, $config;
     $igame = new \bbdkp\controller\games\Game();
     $igame->game_id = $Navigation->getGameId();
     $igame->Get();
     $Guild = new \bbdkp\controller\guilds\Guilds($Navigation->getGuildId());
     $bp = new \bbdkp\controller\Raids\GuildProgress();
     $data = $bp->GetProgress($Guild);
     $numzones = 0;
     foreach ($data as $zone_id => $zone) {
         $numzones += 1;
     }
     $start = request_var('start', 0);
     $template->assign_vars(array('S_STYLE' => $config['bbdkp_zone_style'], 'S_BPSHOW' => true, 'GAMELOGO' => $phpbb_root_path . 'images/bbdkp/gameworld/' . $Guild->game_id . '/' . $Guild->game_id . '.png', 'F_BP' => \append_sid("{$phpbb_root_path}dkp.{$phpEx}", 'page=bossprogress&guild_id=' . $Navigation->getGuildId()), 'GAME_ID' => $Navigation->getGameId(), 'GAME_NAME' => $igame->getName(), 'GUILD_ID' => $Guild->guildid, 'PAGE_NUMBER' => \on_page($numzones, 2, $start), 'PAGINATION' => \generate_pagination(append_sid("{$phpbb_root_path}dkp.{$phpEx}", "page=bossprogress&guild_id=" . $Guild->guildid), $numzones, 2, $start, true), 'U_BPIMG' => "{$phpbb_root_path}images/bbdkp/gameworld/{$Navigation->getGameId()}/{$Navigation->getGameId()}.png"));
     $i = 0;
     $j = 0;
     //loop the zones
     foreach ($data as $zone_id => $zone) {
         $i += 1;
         if ($i >= $start) {
             $j += 1;
             //show max 2 zones per page
             if ($j <= 2) {
                 $template->assign_block_vars('zone', array('ZONE_NAME' => $zone['zonename'], 'ZONE_ID' => $zone['zoneid'], 'ZONE_PROGRESSIMG' => $zone['zoneimage'], 'ZONE_BACKGROUNDIMG' => $zone['zonebackground'], 'ZONECOMPLETE' => $zone['zonecomplete'], 'ZONESTATS' => $zone['zonestats']));
                 foreach ($zone['bosses'] as $boss_id => $boss) {
                     $killdate = '';
                     if ($boss['bosskilldate'] != '') {
                         $killdate = date($config['bbdkp_date_format'], $boss['bosskilldate']);
                         // convert UNIX timestamp to PHP DateTime
                     }
                     if ($boss['bosskilled'] == 0) {
                         $bossimg = "{$phpbb_root_path}images/bbdkp/gameworld/" . $Guild->game_id . '/bosses/' . $boss['imagename'] . '_b.png';
                     } else {
                         $bossimg = "{$phpbb_root_path}images/bbdkp/gameworld/" . $Guild->game_id . '/bosses/' . $boss['imagename'] . '.png';
                     }
                     $template->assign_block_vars('zone.boss', array('BOSS_NAME' => $boss['bossname'], 'BOSS_IMAGENAME' => $bossimg, 'BOSS_ID' => $boss['id'], 'BOSS_WEBID' => $boss['webid'], 'BOSS_TYPE' => $boss['type'], 'BOSS_URL' => sprintf($igame->getBossbaseurl(), $boss['webid']), 'BOSS_URLVIEW' => $phpbb_root_path . "images/bbdkp/icons/view.gif", 'BOSS_KILLED' => $boss['bosskilled'] == 1 ? 'checked="checked"' : '', 'BOSS_SHOW' => $boss['bossshow'] == 1 ? "checked=checked" : '', 'BOSS_KILLDATE' => $killdate, 'BOSS_COUNTER' => $boss['bosscounter'], 'S_BOSS_KILLED' => $boss['bosskilled']));
                 }
             }
         }
     }
     page_header($user->lang['MENU_BOSS']);
 }
Example #2
0
 public function buildpage(viewNavigation $Navigation)
 {
     global $config, $phpbb_root_path, $phpEx, $user, $template;
     $classes = array();
     $members = new \bbdkp\controller\members\Members();
     $members->game_id = $Navigation->getGameId();
     $start = request_var('start', 0);
     $mode = request_var('rosterlayout', 0);
     $member_filter = utf8_normalize_nfc(request_var('member_name', '', true));
     $url = append_sid("{$phpbb_root_path}dkp.{$phpEx}", 'page=roster&amp;rosterlayout=' . $mode . '&amp;guild_id=' . $Navigation->getGuildId());
     $characters = $members->getmemberlist($start, $mode, $Navigation->getQueryByArmor(), $Navigation->getQueryByClass(), $Navigation->getFilter(), $Navigation->getGameId(), $Navigation->getGuildId(), $Navigation->getClassId(), $Navigation->getRaceId(), $Navigation->getLevel1(), $Navigation->getLevel2(), false, $member_filter, 0);
     $rosterlayoutlist = array(0 => $user->lang['ARM_STAND'], 1 => $user->lang['ARM_CLASS']);
     foreach ($rosterlayoutlist as $lid => $lname) {
         $template->assign_block_vars('rosterlayout_row', array('VALUE' => $lid, 'SELECTED' => $lid == $mode ? ' selected="selected"' : '', 'OPTION' => $lname));
     }
     if ($mode == 0) {
         /*
          * Displays the listing
          */
         // use pagination
         foreach ($characters[0] as $char) {
             $template->assign_block_vars('members_row', array('MEMBER_ID' => $char['member_id'], 'U_VIEW_MEMBER' => append_sid("{$phpbb_root_path}dkp.{$phpEx}", 'page=member&amp;' . URI_NAMEID . '=' . $char['member_id'] . '&amp;' . URI_DKPSYS . '=' . 0), 'GAME' => $char['game_id'], 'COLORCODE' => $char['colorcode'], 'CLASS' => $char['class_name'], 'NAME' => $char['member_name'], 'RACE' => $char['race_name'], 'RANK' => $char['member_rank'], 'LVL' => $char['member_level'], 'ARMORY' => $char['member_armory_url'], 'PHPBBUID' => $char['username'], 'PORTRAIT' => $char['member_portrait_url'], 'ACHIEVPTS' => $char['member_achiev'], 'CLASS_IMAGE' => $char['class_image'], 'RACE_IMAGE' => $char['race_image']));
         }
         $rosterpagination = $Navigation->generate_pagination2($url . '&amp;o=' . $characters[1]['uri']['current'], $characters[2], $config['bbdkp_user_llimit'], $start, true, 'start');
         // add navigationlinks
         $navlinks_array = array(array('DKPPAGE' => $user->lang['MENU_ROSTER'], 'U_DKPPAGE' => $url));
         foreach ($navlinks_array as $name) {
             $template->assign_block_vars('dkpnavlinks', array('DKPPAGE' => $name['DKPPAGE'], 'U_DKPPAGE' => $name['U_DKPPAGE']));
         }
         $template->assign_vars(array('ROSTERPAGINATION' => $rosterpagination, 'O_NAME' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][0], 'O_CLASS' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][2], 'O_RANK' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][3], 'O_LEVEL' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][4], 'O_PHPBB' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][5], 'O_ACHI' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][6]));
         // add template constants
         $template->assign_vars(array('S_RSTYLE' => '0', 'S_SHOWACH' => $config['bbdkp_show_achiev'], 'LISTMEMBERS_FOOTCOUNT' => 'Total members : ' . $characters[2], 'S_DISPLAY_ROSTERLISTING' => true));
     } elseif ($mode == 1) {
         //display grid
         $classgroup = $members->get_classes($Navigation->getFilter(), $Navigation->getQueryByArmor(), $Navigation->getClassId(), $Navigation->getGameId(), $Navigation->getGuildId(), $Navigation->getRaceId(), $Navigation->getLevel1(), $Navigation->getLevel2());
         if (count($classgroup) > 0) {
             foreach ($classgroup as $row1) {
                 $classes[$row1['class_id']]['name'] = $row1['class_name'];
                 $classes[$row1['class_id']]['imagename'] = $row1['imagename'];
                 $classes[$row1['class_id']]['colorcode'] = $row1['colorcode'];
             }
             foreach ($classes as $classid => $class) {
                 $classimgurl = $phpbb_root_path . "images/bbdkp/roster_classes/" . $class['imagename'] . '.png';
                 $classcolor = $class['colorcode'];
                 $template->assign_block_vars('class', array('CLASSNAME' => $class['name'], 'CLASSIMG' => $classimgurl, 'COLORCODE' => $classcolor));
                 $classmembers = 1;
                 foreach ($characters[0] as $row2) {
                     if ($row2['member_class_id'] == $classid) {
                         $template->assign_block_vars('class.members_row', array('MEMBER_ID' => $row2['member_id'], 'GAME' => $row2['game_id'], 'COLORCODE' => $row2['colorcode'], 'CLASS' => $row2['class_name'], 'NAME' => $row2['member_name'], 'RACE' => $row2['race_name'], 'RANK' => $row2['member_rank'], 'LVL' => $row2['member_level'], 'ARMORY' => $row2['member_armory_url'], 'PHPBBUID' => $row2['username'], 'PORTRAIT' => $row2['member_portrait_url'], 'ACHIEVPTS' => $row2['member_achiev'], 'CLASS_IMAGE' => $row2['class_image'], 'RACE_IMAGE' => $row2['race_image']));
                         $classmembers++;
                     }
                 }
             }
             $rosterpagination = $Navigation->generate_pagination2($url . '&amp;o=' . $characters[1]['uri']['current'], count($characters[0]), $config['bbdkp_user_llimit'], $start, true, 'start');
             if (isset($characters[1]) && sizeof($characters[1]) > 0) {
                 $template->assign_vars(array('ROSTERPAGINATION' => $rosterpagination, 'U_LIST_MEMBERS0' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][0], 'U_LIST_MEMBERS1' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][1], 'U_LIST_MEMBERS2' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][2], 'U_LIST_MEMBERS3' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][3], 'U_LIST_MEMBERS4' => $url . '&amp;' . URI_ORDER . '=' . $characters[1]['uri'][4]));
             }
             // add template constants
             $template->assign_vars(array('S_SHOWACH' => $config['bbdkp_show_achiev'], 'LISTMEMBERS_FOOTCOUNT' => 'Total members : ' . count($characters[0]), 'S_DISPLAY_ROSTERGRID' => true));
         }
         // add menu navigationlinks
         $navlinks_array = array(array('DKPPAGE' => $user->lang['MENU_ROSTER'], 'U_DKPPAGE' => $url));
         foreach ($navlinks_array as $name) {
             $template->assign_block_vars('dkpnavlinks', array('DKPPAGE' => $name['DKPPAGE'], 'U_DKPPAGE' => $name['U_DKPPAGE']));
         }
         $template->assign_vars(array('S_RSTYLE' => '1'));
     }
     $template->assign_vars(array('MEMBER_NAME' => $member_filter, 'S_MULTIGAME' => sizeof($Navigation->games) > 1 ? true : false, 'S_DISPLAY_ROSTER' => true, 'F_ROSTER' => $url, 'S_GAME' => $members->game_id));
     $header = $user->lang['GUILDROSTER'];
     page_header($header);
 }