Jump to content







Valhalla was the second Rune Pure & Tank clan in RuneScape, officially founded in early 2007, with it being in the works throughout 2006. At the time, only one other such clan existed (Higher Force); T H E Do0rs founded the clan with the vision of creating an alternative to this clan. Starting out as an east-dragons PK team, Valhalla quickly established its dominance and had many competitive rivalries in both Pre-EoC and OSRS.

In its final chapter in OSRS, Valhalla established itself as not only the best and last Rune Pure clan in game after defeating and closing its rivals, but as a force to be reckoned with in the P2P clan world amongst the biggest names in the clan world. They also maintained a thriving community, with the second most active forums below Reign of Terror's.

Presently, a "sister" clan, Avalon, exists for those still wanting to be a part of the community. In many ways, it is "the" Rune Pure & Tank community, as it is the only clan containing veterans of the original community & contains Leaders of Higher Force, Valhalla, Phalanx, and Anarchy, Empyrean of OSRS.






Register Now

When not signing into a registered account, you're missing out on several benefits:

 

- Access to view all public forum sections and posts

- Create and reply to status updates

- View others' member profiles

- Contact other members

- Create and post in your topics

- Manage your own profiles

 

.. And much more.

 

CLICK HERE NOW TO REGISTER


Posted Image


Photo

Forum game - What's hiding under Thy ctrl+v?


  • Please log in to reply
210 replies to this topic

#21
Ron

Ron

    Forum Guest
  • Posts: 2,168
  • Joined: 25-June 10
RSN: Gdz Tankr
IRC: [Ron]

Posted Image

^Rolf!!

Posted Image

Posted Image

Loyal Valhalla Member Since 2009


#22
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai
-offcam

--------

Seems like there is still a vestige of yesterday's round of HWE4 on my computer

Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service


#23
Sunnyboy

Sunnyboy

    Forum Guest
  • Posts: 1,161
  • Joined: 20-October 10
RSN: Sunnyboyy
IRC: Sunnyboy
your lying here in my arms im finding it hard to believe were in heaven love is all that

^ i seriously dont know what that is, my sister was on my comp rofl
Posted Image

Posted Image

#24
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai
http://i55.tinypic.com/2sb26g4.jpg

LOOL @ sunnyboy :P

Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service


#25
Aku

Aku

    Forum Guest
  • Posts: 359
  • Joined: 07-November 10
IRC: Aku
Posted Image
Posted Image
Posted Image

#26
Nopure

Nopure

    Legend
  • Posts: 14,681
  • Joined: 18-August 09
RSN: Nopure
Sunday -14:44 PM- ¹º¹º /names» (#vh-lobby) +Stl_Arrow +Fayy|Alex @Braves +|Gregg| +{Derik} +Richy`Radar %Hi_Im_Nate [YO]RuneScript +|Ryann|AWAY +GameShark +xBleed @X @Nopure @Sp3ed +Olaf %the_kiek +[Ron] @weak +[VH]RobQ +CreamNCake +Exultation +late_panic +CaL|45DefTanK %Markx1 +Rtjss +ARunePure @[VH]Andrew +archmage648

?

tumblr_lpormlxvxR1qg0puro1_500.gif

N1dGHwU.gif

vFARhmi.png

 


#27
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai
http://www.wcreplays...articles&id=729

Tony likes to keep order on things

Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service


#28

  • Unregistered
<?php
/**
*/

if ( ! defined( 'IN_IPB' ) )
{

exit();
}

class search_format_forums extends search_format
{
/**
* Constructor
*
* @return void
*/
public function __construct( ipsRegistry $registry )
{
/* Get class forums, used for displaying forum names on results */
if ( ipsRegistry::isClassLoaded('class_forums') !== TRUE )
{
$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'forums' ) . "/sources/classes/forums/class_forums.php", 'class_forums', 'forums' );
ipsRegistry::setClass( 'class_forums', new $classToLoad( ipsRegistry::instance() ) );
ipsRegistry::getClass('class_forums')->forumsInit();
}

parent::__construct( $registry );

/* Set up wrapper */
$this->templates = array( 'group' => 'search', 'template' => 'searchResultsAsForum' );
}

/**
* Parse search results
*
* @param array $r Search result
* @return array $html Blocks of HTML
*/
public function parseAndFetchHtmlBlocks( $rows )
{
/* Forum stuff */
$sub = false;
$isVnc = false;
$search_term = IPSSearchRegistry::get('in.clean_search_term');
$onlyPosts = IPSSearchRegistry::get('opt.onlySearchPosts');
$onlyTitles = IPSSearchRegistry::get('display.onlyTitles');
$noPostPreview = IPSSearchRegistry::get('opt.noPostPreview');
$results = array();
$attachPids = array();
$results = array();

/* loop and process */
foreach( $rows as $id => $data )
{
/* Reset */
$pages = 0;

/* Set up forum */
$forum = $this->registry->getClass('class_forums')->forum_by_id[ $data['forum_id'] ];

$this->last_topic = $data['tid'];

/* Various data */
$data['_last_post'] = $data['last_post'];
$data['_longTitle'] = $data['content_title'];
$data['_shortTitle'] = IPSText::truncate( $data['content_title'], 60 );
$data['last_poster'] = $data['last_poster_id'] ? IPSLib::makeProfileLink( $data['last_poster_name'], $data['last_poster_id'], $data['seo_last_name'] ) : $this->settings['guest_name_pre'] . $data['last_poster_name'] . $this->settings['guest_name_suf'];
$data['starter'] = $data['starter_id'] ? IPSLib::makeProfileLink( $data['starter_name'], $data['starter_id'], $data['seo_first_name'] ) : $this->settings['guest_name_pre'] . $data['starter_name'] . $this->settings['guest_name_suf'];
$data['last_post'] = $this->registry->getClass( 'class_localization')->getDate( $data['last_post'], 'SHORT' );

if ( isset( $data['post_date'] ) )
{
$data['_post_date'] = $data['post_date'];
$data['post_date'] = $this->registry->getClass( 'class_localization')->getDate( $data['post_date'], 'SHORT' );
}

if ( $this->memberData['is_mod'] )
{
$data['posts'] += intval($data['topic_queuedposts']);
}

if ( $data['posts'])
{
if ( (($data['posts'] + 1) % $this->settings['display_max_posts']) == 0 )
{
$pages = ($data['posts'] + 1) / $this->settings['display_max_posts'];
}
else
{
$number = ( ($data['posts'] + 1) / $this->settings['display_max_posts'] );
$pages = ceil( $number);
}
}

if ( $pages > 1 )
{
for ( $i = 0 ; $i < $pages ; ++$i )
{
$real_no = $i * $this->settings['display_max_posts'];
$page_no = $i + 1;

if ( $page_no == 4 and $pages > 4 )
{
$data['pages'][] = array( 'last' => 1,
'st' => ($pages - 1) * $this->settings['display_max_posts'],
'page' => $pages );
break;
}
else
{
$data['pages'][] = array( 'last' => 0,
'st' => $real_no,
'page' => $page_no );
}
}
}

/* For-matt some stuffs */
if ( ! $data['cache_content'] )
{
IPSText::getTextClass( 'bbcode' )->parse_smilies = $data['use_emo'];
IPSText::getTextClass( 'bbcode' )->parse_html = ( $forum['use_html'] and $this->caches['group_cache'][ $data['member_group_id'] ]['g_dohtml'] and $data['post_htmlstate'] ) ? 1 : 0;
IPSText::getTextClass( 'bbcode' )->parse_nl2br = $data['post_htmlstate'] == 2 ? 1 : 0;
IPSText::getTextClass( 'bbcode' )->parse_bbcode = $forum['use_ibc'];
IPSText::getTextClass( 'bbcode' )->parsing_section = 'topics';
IPSText::getTextClass( 'bbcode' )->parsing_mgroup = $data['member_group_id'];
IPSText::getTextClass( 'bbcode' )->parsing_mgroup_others = $data['mgroup_others'];
}
else
{
$data['post'] = '<!--cached-' . gmdate( 'r', $data['cache_updated'] ) . '-->' . $data['cache_content'];
}

$data['post'] = IPSText::searchHighlight( IPSText::getTextClass( 'bbcode' )->preDisplayParse( $data['post'] ), $search_term );

/* Has attachments */
if ( $data['topic_hasattach'] )
{
$attachPids[ $data['pid'] ] = $data['post'];
}

$rows[ $id ] = $data;
}

/* Attachments */
if ( count( $attachPids ) )
{
/* Load attachments class */
if ( ! is_object( $this->class_attach ) )
{
$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'core' ) . '/sources/classes/attach/class_attach.php', 'class_attach' );
$this->class_attach = new $classToLoad( $this->registry );
$this->class_attach->type = 'post';
$this->class_attach->init();
}

$attachHTML = $this->class_attach->renderAttachments( array( $data['pid'] => $data['post'] ), array_keys( $attachPids ) );

/* Now parse back in the rendered posts */
if( is_array($attachHTML) AND count($attachHTML) )
{
foreach( $attachHTML as $id => $_data )
{
/* Get rid of any lingering attachment tags */
if ( stristr( $_data['html'], "[attachment=" ) )
{
$_data['html'] = IPSText::stripAttachTag( $_data['html'] );
}

$rows[ $id ]['post'] = $_data['html'];
$rows[ $id ]['attachmentHtml'] = $_data['attachmentHtml'];
}
}
}

/* Go through and build HTML */
foreach( $rows as $id => $data )
{
/* Format content */
list( $html, $sub ) = $this->formatContent( $data );

$results[ $id ] = array( 'html' => $html, 'app' => $data['app'], 'type' => $data['type'], 'sub' => $sub );
}

return $results;
}

/**
* Formats the forum search result for display
*
* @param array $search_row Array of data
* @return mixed Formatted content, ready for display, or array containing a $sub section flag, and content
*/
public function formatContent( $data )
{
$onlyPosts = IPSSearchRegistry::get('opt.onlySearchPosts');
$onlyTitles = IPSSearchRegistry::get('display.onlyTitles');
$noPostPreview = IPSSearchRegistry::get('opt.noPostPreview');

/* Forum Breadcrum */
$data['_forum_trail'] = $this->registry->getClass( 'class_forums' )->forumsBreadcrumbNav( $data['forum_id'] );

/* Is it read? We don't support last_vote in search. */
$is_read = $this->registry->getClass( 'classItemMarking' )->isRead( array( 'forumID' => $data['forum_id'], 'itemID' => $data['tid'], 'itemLastUpdate' => $data['lastupdate'] ? $data['lastupdate'] : $data['updated'] ), 'forums' );

/* Has posted dot */
$show_dots = ( $this->settings['show_user_posted'] AND $this->memberData['member_id'] AND $data['_hasPosted'] ) ? 1 : 0;

/* Icon */
$data['_icon'] = $this->registry->getClass( 'class_forums' )->fetchTopicFolderIcon( $data, $show_dots, $is_read );
$data['_isRead'] = $is_read;

/* Display type */
return array( $this->registry->getClass( 'output' )->getTemplate( 'search' )->topicPostSearchResultAsForum( $data, ( $onlyTitles || $noPostPreview ) ? 1 : 0 ), 0 );
}

/**
* Formats / grabs extra data for results
* Takes an array of IDS (can be IDs from anything) and returns an array of expanded data.
*
* @return array
*/
public function processResults( $ids )
{
/* INIT */
$sort_by = IPSSearchRegistry::get('in.search_sort_by');
$sort_order = IPSSearchRegistry::get('in.search_sort_order');
$search_term = IPSSearchRegistry::get('in.clean_search_term');
$content_title_only = IPSSearchRegistry::get('opt.searchTitleOnly');
$onlyPosts = IPSSearchRegistry::get('opt.onlySearchPosts');
$order_dir = ( $sort_order == 'asc' ) ? 'asc' : 'desc';
$_post_joins = array();
$members = array();
$results = array();
$topicIds = array();
$dots = array();
$sortKey = '';
$sortType = '';
$_sdTids = array();
$_sdPids = array();

/* Set up some basic permissions */
$permissions['PostSoftDeleteSee'] = $this->registry->getClass('class_forums')->canSeeSoftDeletedPosts( 0 );
$permissions['TopicSoftDeleteSee'] = $this->registry->getClass('class_forums')->canSeeSoftDeletedTopics( 0 );
$permissions['canQueue'] = $this->registry->getClass('class_forums')->canQueuePosts( 0 );
$permissions['SoftDeleteReason'] = $this->registry->getClass('class_forums')->canSeeSoftDeleteReason( 0 );
$permissions['SoftDeleteContent'] = $this->registry->getClass('class_forums')->canSeeSoftDeleteContent( 0 );
$permissions['PostSoftDeleteRestore'] = $this->registry->getClass('class_forums')->can_Un_SoftDeletePosts( 0 );
$permissions['TopicSoftDeleteRestore'] = $this->registry->getClass('class_forums')->can_Un_SoftDeleteTopics( 0 );

/* Got some? */
if ( count( $ids ) )
{
/* Cache? */
if ( IPSContentCache::isEnabled() )
{
if ( IPSContentCache::fetchSettingValue('post') )
{
$_post_joins[] = IPSContentCache::join( 'post', 'p.pid' );
}

if ( IPSContentCache::fetchSettingValue('sig') )
{
$_post_joins[] = IPSContentCache::join( 'sig' , 'p.author_id', 'ccb', 'left', 'ccb.cache_content as cache_content_sig, ccb.cache_updated as cache_updated_sig' );
}
}

/* Sorting */
switch( $sort_by )
{
default:
case 'date':
$sortKey = ( $content_title_only ) ? 'last_post' : 'post_date';
$sortType = 'numerical';
break;
case 'title':
$sortKey = 'title';
$sortType = 'string';
break;
case 'posts':
$sortKey = 'posts';
$sortType = 'numerical';
break;
case 'views':
$sortKey = 'views';
$sortType = 'numerical';
break;
}

/* Set vars */
IPSSearch::$ask = $sortKey;
IPSSearch::$aso = strtolower( $order_dir );
IPSSearch::$ast = $sortType;


/* If we are search in titles only, then the ID array will be TIDs */
if( $content_title_only )
{
$k = 'tid';

$this->DB->build( array(
'select' => "t.*",
'from' => array( 'topics' => 't' ),
'where' => 't.tid IN( ' . implode( ',', $ids ) . ')',
'add_join' => array_merge( array( array( 'select' => 'p.*',
'from' => array( 'posts' => 'p' ),
'where' => 'p.pid=t.topic_firstpost',
'type' => 'left' ),
array( 'select' => 'm.member_id, m.members_display_name, m.members_seo_name',
'from' => array( 'members' => 'm' ),
'where' => 'm.member_id=p.author_id',
'type' => 'left' ) ), $_post_joins ) ) );
}
/* Otherwise, it's PIDs */
else
{
$k = 'pid';

$this->DB->build( array(
'select' => "p.*",
'from' => array( 'posts' => 'p' ),
'where' => 'p.pid IN( ' . implode( ',', $ids ) . ')',
'add_join' => array_merge( array( array( 'select' => 't.*',
'from' => array( 'topics' => 't' ),
'where' => 't.tid=p.topic_id',
'type' => 'left' ),
array( 'select' => 'm.member_id, m.members_display_name, m.members_seo_name',
'from' => array( 'members' => 'm' ),
'where' => 'm.member_id=p.author_id',
'type' => 'left' ) ), $_post_joins ) ) );

}

/* Grab data */
$this->DB->execute();

/* Grab the results */
while( $row = $this->DB->fetch() )
{
$_rows[ $row[ $k ] ] = $row;
}

/* Sort */
if ( count( $_rows ) )
{
usort( $_rows, array("IPSSearch", "usort") );

foreach( $_rows as $id => $row )
{
/* Prevent member from stepping on it */
$row['topic_title'] = $row['title'];

/* Got author but no member data? */
if ( ! empty( $row['author_id'] ) )
{
$members[ $row['author_id'] ] = $row['author_id'];
}

/* Topic ids? */
if ( ! empty( $row['topic_id'] ) )
{
$topicIds[ $row['topic_id'] ] = $row['topic_id'];
}

/* If we're using sphinx, check forum permissions again as the 15 minute delta rebuild could expose a moved topic before deltas rebuild.
We don't need to do this for SQL search as the results are delivered live and lets face it, we can do without the load */
if ( $this->settings['search_method'] != 'traditional' )
{
/* Can we read? */
if ( ! $this->registry->permissions->check( 'view', $this->registry->class_forums->forum_by_id[ $row['forum_id'] ] ) )
{
continue;
}

/* Can read, but is it password protected, etc? */
if ( ! $this->registry->class_forums->forumsCheckAccess( $row['forum_id'], 0, 'forum', array(), true ) )
{
continue;
}
}

$row['cleanSearchTerm'] = urlencode($search_term);
$row['topicPrefix'] = $row['pinned'] ? $this->registry->getClass('output')->getTemplate('forum')->topicPrefixWrap( $this->settings['pre_pinned'] ) : '';

$row['_isVisible'] = ( $this->registry->getClass('class_forums')->fetchHiddenTopicType( $row ) == 'visible' ) ? true : false;
$row['_isHidden'] = ( $this->registry->getClass('class_forums')->fetchHiddenTopicType( $row ) == 'hidden' ) ? true : false;
$row['_isDeleted'] = ( $this->registry->getClass('class_forums')->fetchHiddenTopicType( $row ) == 'sdelete' ) ? true : false;

$row['_p_isVisible'] = ( $this->registry->getClass('class_forums')->fetchHiddenType( $row ) == 'visible' ) ? true : false;
$row['_p_isHidden'] = ( $this->registry->getClass('class_forums')->fetchHiddenType( $row ) == 'hidden' ) ? true : false;
$row['_p_isDeleted'] = ( $this->registry->getClass('class_forums')->fetchHiddenType( $row ) == 'sdelete' ) ? true : false;

/* Hidden and we do not have permission? */
if ( $row['_isHidden'] AND ! $permissions['canQueue'] )
{
continue;
}

/* Is the topic deleted? If so, then the first post will appear as such */
if ( $row['_isDeleted'] AND $permissions['TopicSoftDeleteSee'] )
{
$row['_p_isDeleted'] = true;
$_sdPids[ $row['pid'] ] = $row['pid'];
}

/* Collect TIDS of soft deleted topics */
if ( $row['_isDeleted'] )
{
if ( $permissions['TopicSoftDeleteSee'] )
{
$_sdTids[ $row['tid'] ] = $row['tid'];
}
else
{
continue;
}
}

/* Collect TIDS of soft deleted topics */
if ( $row['_p_isDeleted'] )
{
if ( $permissions['PostSoftDeleteSee'] )
{
$_sdPids[ $row['pid'] ] = $row['pid'];
}
else
{
continue;
}
}

$results[ $row['pid'] ] = $this->genericizeResults( $row );
}
}

/* Need to load members? */
if ( count( $members ) )
{
$mems = IPSMember::load( $members, 'all' );

foreach( $results as $id => $r )
{
if ( ! empty( $r['author_id'] ) AND isset( $mems[ $r['author_id'] ] ) )
{
$mems[ $r['author_id'] ]['m_posts'] = $mems[ $r['author_id'] ]['posts'];
//unset( $mems[ $r['author_id'] ]['posts'] );
unset( $mems[ $r['author_id'] ]['last_post'] );

if ( isset( $r['cache_content_sig'] ) )
{
$mems[ $r['author_id'] ]['cache_content'] = $r['cache_content_sig'];
$mems[ $r['author_id'] ]['cache_updated'] = $r['cache_updated_sig'];
}

$_mem = IPSMember::buildDisplayData( $mems[ $r['author_id'] ], array( 'signature' => 1 ) );

unset( $_mem['cache_content'], $_mem['cache_updated'] );

$results[ $id ]['_realPosts'] = $results[ $id ]['posts'];
$results[ $id ] = array_merge( $results[ $id ], $_mem );
$results[ $id ]['posts'] = $results[ $id ]['_realPosts'];
}
}
}

/* Generate 'dot' folder icon */
if ( $this->settings['show_user_posted'] AND count( $topicIds ) )
{
$this->DB->build( array( 'select' => 'author_id, topic_id',
'from' => 'posts',
'where' => 'queued=0 AND author_id=' . $this->memberData['member_id'] . ' AND topic_id IN(' . implode( ',', $topicIds ) . ')' ) );

$this->DB->execute();

while( $p = $this->DB->fetch() )
{
$dots[ $p['topic_id'] ] = 1;
}

/* Merge into results */
foreach( $results as $id => $r )
{
if ( isset( $dots[ $r['topic_id'] ] ) )
{
$results[ $id ]['_hasPosted'] = 1;
}
}
}

/* Got any deleted items */
if ( count( $_sdTids ) )
{
$sData = IPSDeleteLog::fetchEntries( $_sdTids, 'topic', false );

if ( count( $sData ) )
{
foreach( $results as $id => $data )
{
if ( isset( $_sdTids[ $data['tid'] ] ) )
{
$results[ $id ]['sData'] = $sData[ $data['tid'] ];
$results[ $id ]['permissions'] = $permissions;
}
}
}
}

/* Got any deleted items */
if ( count( $_sdPids ) )
{
$sData = IPSDeleteLog::fetchEntries( $_sdPids, 'post', false );

if ( count( $sData ) )
{
foreach( $results as $id => $data )
{
if ( isset( $_sdPids[ $data['pid'] ] ) AND ! isset( $results[ $id ]['sData']) )
{
$results[ $id ]['sData'] = $sData[ $data['pid'] ];
$results[ $id ]['permissions'] = $permissions;
}
}
}
}
}

return $results;
}

/**
* Reassigns fields in a generic way for results output
*
* @param array $r
* @return array
*/
public function genericizeResults( $r )
{
$r['app'] = 'forums';
$r['content'] = $r['post'];
$r['content_title'] = $r['title'];
$r['updated'] = $r['post_date'];
$r['lastupdate'] = $r['last_post'];
$r['type_2'] = 'topic';
$r['type_id_2'] = $r['tid'];
$r['misc'] = $r['pid'];

return $r;
}
}

#29
Sunnyboy

Sunnyboy

    Forum Guest
  • Posts: 1,161
  • Joined: 20-October 10
RSN: Sunnyboyy
IRC: Sunnyboy

<?php
/**
*/

if ( ! defined( 'IN_IPB' ) )
{

exit();
}

class search_format_forums extends search_format
{
/**
* Constructor
*
* @return void
*/
public function __construct( ipsRegistry $registry )
{
/* Get class forums, used for displaying forum names on results */
if ( ipsRegistry::isClassLoaded('class_forums') !== TRUE )
{
$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'forums' ) . "/sources/classes/forums/class_forums.php", 'class_forums', 'forums' );
ipsRegistry::setClass( 'class_forums', new $classToLoad( ipsRegistry::instance() ) );
ipsRegistry::getClass('class_forums')->forumsInit();
}

parent::__construct( $registry );

/* Set up wrapper */
$this->templates = array( 'group' => 'search', 'template' => 'searchResultsAsForum' );
}

/**
* Parse search results
*
* @param array $r Search result
* @return array $html Blocks of HTML
*/
public function parseAndFetchHtmlBlocks( $rows )
{
/* Forum stuff */
$sub = false;
$isVnc = false;
$search_term = IPSSearchRegistry::get('in.clean_search_term');
$onlyPosts = IPSSearchRegistry::get('opt.onlySearchPosts');
$onlyTitles = IPSSearchRegistry::get('display.onlyTitles');
$noPostPreview = IPSSearchRegistry::get('opt.noPostPreview');
$results = array();
$attachPids = array();
$results = array();

/* loop and process */
foreach( $rows as $id => $data )
{
/* Reset */
$pages = 0;

/* Set up forum */
$forum = $this->registry->getClass('class_forums')->forum_by_id[ $data['forum_id'] ];

$this->last_topic = $data['tid'];

/* Various data */
$data['_last_post'] = $data['last_post'];
$data['_longTitle'] = $data['content_title'];
$data['_shortTitle'] = IPSText::truncate( $data['content_title'], 60 );
$data['last_poster'] = $data['last_poster_id'] ? IPSLib::makeProfileLink( $data['last_poster_name'], $data['last_poster_id'], $data['seo_last_name'] ) : $this->settings['guest_name_pre'] . $data['last_poster_name'] . $this->settings['guest_name_suf'];
$data['starter'] = $data['starter_id'] ? IPSLib::makeProfileLink( $data['starter_name'], $data['starter_id'], $data['seo_first_name'] ) : $this->settings['guest_name_pre'] . $data['starter_name'] . $this->settings['guest_name_suf'];
$data['last_post'] = $this->registry->getClass( 'class_localization')->getDate( $data['last_post'], 'SHORT' );

if ( isset( $data['post_date'] ) )
{
$data['_post_date'] = $data['post_date'];
$data['post_date'] = $this->registry->getClass( 'class_localization')->getDate( $data['post_date'], 'SHORT' );
}

if ( $this->memberData['is_mod'] )
{
$data['posts'] += intval($data['topic_queuedposts']);
}

if ( $data['posts'])
{
if ( (($data['posts'] + 1) % $this->settings['display_max_posts']) == 0 )
{
$pages = ($data['posts'] + 1) / $this->settings['display_max_posts'];
}
else
{
$number = ( ($data['posts'] + 1) / $this->settings['display_max_posts'] );
$pages = ceil( $number);
}
}

if ( $pages > 1 )
{
for ( $i = 0 ; $i < $pages ; ++$i )
{
$real_no = $i * $this->settings['display_max_posts'];
$page_no = $i + 1;

if ( $page_no == 4 and $pages > 4 )
{
$data['pages'][] = array( 'last' => 1,
'st' => ($pages - 1) * $this->settings['display_max_posts'],
'page' => $pages );
break;
}
else
{
$data['pages'][] = array( 'last' => 0,
'st' => $real_no,
'page' => $page_no );
}
}
}

/* For-matt some stuffs */
if ( ! $data['cache_content'] )
{
IPSText::getTextClass( 'bbcode' )->parse_smilies = $data['use_emo'];
IPSText::getTextClass( 'bbcode' )->parse_html = ( $forum['use_html'] and $this->caches['group_cache'][ $data['member_group_id'] ]['g_dohtml'] and $data['post_htmlstate'] ) ? 1 : 0;
IPSText::getTextClass( 'bbcode' )->parse_nl2br = $data['post_htmlstate'] == 2 ? 1 : 0;
IPSText::getTextClass( 'bbcode' )->parse_bbcode = $forum['use_ibc'];
IPSText::getTextClass( 'bbcode' )->parsing_section = 'topics';
IPSText::getTextClass( 'bbcode' )->parsing_mgroup = $data['member_group_id'];
IPSText::getTextClass( 'bbcode' )->parsing_mgroup_others = $data['mgroup_others'];
}
else
{
$data['post'] = '<!--cached-' . gmdate( 'r', $data['cache_updated'] ) . '-->' . $data['cache_content'];
}

$data['post'] = IPSText::searchHighlight( IPSText::getTextClass( 'bbcode' )->preDisplayParse( $data['post'] ), $search_term );

/* Has attachments */
if ( $data['topic_hasattach'] )
{
$attachPids[ $data['pid'] ] = $data['post'];
}

$rows[ $id ] = $data;
}

/* Attachments */
if ( count( $attachPids ) )
{
/* Load attachments class */
if ( ! is_object( $this->class_attach ) )
{
$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'core' ) . '/sources/classes/attach/class_attach.php', 'class_attach' );
$this->class_attach = new $classToLoad( $this->registry );
$this->class_attach->type = 'post';
$this->class_attach->init();
}

$attachHTML = $this->class_attach->renderAttachments( array( $data['pid'] => $data['post'] ), array_keys( $attachPids ) );

/* Now parse back in the rendered posts */
if( is_array($attachHTML) AND count($attachHTML) )
{
foreach( $attachHTML as $id => $_data )
{
/* Get rid of any lingering attachment tags */
if ( stristr( $_data['html'], "[attachment=" ) )
{
$_data['html'] = IPSText::stripAttachTag( $_data['html'] );
}

$rows[ $id ]['post'] = $_data['html'];
$rows[ $id ]['attachmentHtml'] = $_data['attachmentHtml'];
}
}
}

/* Go through and build HTML */
foreach( $rows as $id => $data )
{
/* Format content */
list( $html, $sub ) = $this->formatContent( $data );

$results[ $id ] = array( 'html' => $html, 'app' => $data['app'], 'type' => $data['type'], 'sub' => $sub );
}

return $results;
}

/**
* Formats the forum search result for display
*
* @param array $search_row Array of data
* @return mixed Formatted content, ready for display, or array containing a $sub section flag, and content
*/
public function formatContent( $data )
{
$onlyPosts = IPSSearchRegistry::get('opt.onlySearchPosts');
$onlyTitles = IPSSearchRegistry::get('display.onlyTitles');
$noPostPreview = IPSSearchRegistry::get('opt.noPostPreview');

/* Forum Breadcrum */
$data['_forum_trail'] = $this->registry->getClass( 'class_forums' )->forumsBreadcrumbNav( $data['forum_id'] );

/* Is it read? We don't support last_vote in search. */
$is_read = $this->registry->getClass( 'classItemMarking' )->isRead( array( 'forumID' => $data['forum_id'], 'itemID' => $data['tid'], 'itemLastUpdate' => $data['lastupdate'] ? $data['lastupdate'] : $data['updated'] ), 'forums' );

/* Has posted dot */
$show_dots = ( $this->settings['show_user_posted'] AND $this->memberData['member_id'] AND $data['_hasPosted'] ) ? 1 : 0;

/* Icon */
$data['_icon'] = $this->registry->getClass( 'class_forums' )->fetchTopicFolderIcon( $data, $show_dots, $is_read );
$data['_isRead'] = $is_read;

/* Display type */
return array( $this->registry->getClass( 'output' )->getTemplate( 'search' )->topicPostSearchResultAsForum( $data, ( $onlyTitles || $noPostPreview ) ? 1 : 0 ), 0 );
}

/**
* Formats / grabs extra data for results
* Takes an array of IDS (can be IDs from anything) and returns an array of expanded data.
*
* @return array
*/
public function processResults( $ids )
{
/* INIT */
$sort_by = IPSSearchRegistry::get('in.search_sort_by');
$sort_order = IPSSearchRegistry::get('in.search_sort_order');
$search_term = IPSSearchRegistry::get('in.clean_search_term');
$content_title_only = IPSSearchRegistry::get('opt.searchTitleOnly');
$onlyPosts = IPSSearchRegistry::get('opt.onlySearchPosts');
$order_dir = ( $sort_order == 'asc' ) ? 'asc' : 'desc';
$_post_joins = array();
$members = array();
$results = array();
$topicIds = array();
$dots = array();
$sortKey = '';
$sortType = '';
$_sdTids = array();
$_sdPids = array();

/* Set up some basic permissions */
$permissions['PostSoftDeleteSee'] = $this->registry->getClass('class_forums')->canSeeSoftDeletedPosts( 0 );
$permissions['TopicSoftDeleteSee'] = $this->registry->getClass('class_forums')->canSeeSoftDeletedTopics( 0 );
$permissions['canQueue'] = $this->registry->getClass('class_forums')->canQueuePosts( 0 );
$permissions['SoftDeleteReason'] = $this->registry->getClass('class_forums')->canSeeSoftDeleteReason( 0 );
$permissions['SoftDeleteContent'] = $this->registry->getClass('class_forums')->canSeeSoftDeleteContent( 0 );
$permissions['PostSoftDeleteRestore'] = $this->registry->getClass('class_forums')->can_Un_SoftDeletePosts( 0 );
$permissions['TopicSoftDeleteRestore'] = $this->registry->getClass('class_forums')->can_Un_SoftDeleteTopics( 0 );

/* Got some? */
if ( count( $ids ) )
{
/* Cache? */
if ( IPSContentCache::isEnabled() )
{
if ( IPSContentCache::fetchSettingValue('post') )
{
$_post_joins[] = IPSContentCache::join( 'post', 'p.pid' );
}

if ( IPSContentCache::fetchSettingValue('sig') )
{
$_post_joins[] = IPSContentCache::join( 'sig' , 'p.author_id', 'ccb', 'left', 'ccb.cache_content as cache_content_sig, ccb.cache_updated as cache_updated_sig' );
}
}

/* Sorting */
switch( $sort_by )
{
default:
case 'date':
$sortKey = ( $content_title_only ) ? 'last_post' : 'post_date';
$sortType = 'numerical';
break;
case 'title':
$sortKey = 'title';
$sortType = 'string';
break;
case 'posts':
$sortKey = 'posts';
$sortType = 'numerical';
break;
case 'views':
$sortKey = 'views';
$sortType = 'numerical';
break;
}

/* Set vars */
IPSSearch::$ask = $sortKey;
IPSSearch::$aso = strtolower( $order_dir );
IPSSearch::$ast = $sortType;


/* If we are search in titles only, then the ID array will be TIDs */
if( $content_title_only )
{
$k = 'tid';

$this->DB->build( array(
'select' => "t.*",
'from' => array( 'topics' => 't' ),
'where' => 't.tid IN( ' . implode( ',', $ids ) . ')',
'add_join' => array_merge( array( array( 'select' => 'p.*',
'from' => array( 'posts' => 'p' ),
'where' => 'p.pid=t.topic_firstpost',
'type' => 'left' ),
array( 'select' => 'm.member_id, m.members_display_name, m.members_seo_name',
'from' => array( 'members' => 'm' ),
'where' => 'm.member_id=p.author_id',
'type' => 'left' ) ), $_post_joins ) ) );
}
/* Otherwise, it's PIDs */
else
{
$k = 'pid';

$this->DB->build( array(
'select' => "p.*",
'from' => array( 'posts' => 'p' ),
'where' => 'p.pid IN( ' . implode( ',', $ids ) . ')',
'add_join' => array_merge( array( array( 'select' => 't.*',
'from' => array( 'topics' => 't' ),
'where' => 't.tid=p.topic_id',
'type' => 'left' ),
array( 'select' => 'm.member_id, m.members_display_name, m.members_seo_name',
'from' => array( 'members' => 'm' ),
'where' => 'm.member_id=p.author_id',
'type' => 'left' ) ), $_post_joins ) ) );

}

/* Grab data */
$this->DB->execute();

/* Grab the results */
while( $row = $this->DB->fetch() )
{
$_rows[ $row[ $k ] ] = $row;
}

/* Sort */
if ( count( $_rows ) )
{
usort( $_rows, array("IPSSearch", "usort") );

foreach( $_rows as $id => $row )
{
/* Prevent member from stepping on it */
$row['topic_title'] = $row['title'];

/* Got author but no member data? */
if ( ! empty( $row['author_id'] ) )
{
$members[ $row['author_id'] ] = $row['author_id'];
}

/* Topic ids? */
if ( ! empty( $row['topic_id'] ) )
{
$topicIds[ $row['topic_id'] ] = $row['topic_id'];
}

/* If we're using sphinx, check forum permissions again as the 15 minute delta rebuild could expose a moved topic before deltas rebuild.
We don't need to do this for SQL search as the results are delivered live and lets face it, we can do without the load */
if ( $this->settings['search_method'] != 'traditional' )
{
/* Can we read? */
if ( ! $this->registry->permissions->check( 'view', $this->registry->class_forums->forum_by_id[ $row['forum_id'] ] ) )
{
continue;
}

/* Can read, but is it password protected, etc? */
if ( ! $this->registry->class_forums->forumsCheckAccess( $row['forum_id'], 0, 'forum', array(), true ) )
{
continue;
}
}

$row['cleanSearchTerm'] = urlencode($search_term);
$row['topicPrefix'] = $row['pinned'] ? $this->registry->getClass('output')->getTemplate('forum')->topicPrefixWrap( $this->settings['pre_pinned'] ) : '';

$row['_isVisible'] = ( $this->registry->getClass('class_forums')->fetchHiddenTopicType( $row ) == 'visible' ) ? true : false;
$row['_isHidden'] = ( $this->registry->getClass('class_forums')->fetchHiddenTopicType( $row ) == 'hidden' ) ? true : false;
$row['_isDeleted'] = ( $this->registry->getClass('class_forums')->fetchHiddenTopicType( $row ) == 'sdelete' ) ? true : false;

$row['_p_isVisible'] = ( $this->registry->getClass('class_forums')->fetchHiddenType( $row ) == 'visible' ) ? true : false;
$row['_p_isHidden'] = ( $this->registry->getClass('class_forums')->fetchHiddenType( $row ) == 'hidden' ) ? true : false;
$row['_p_isDeleted'] = ( $this->registry->getClass('class_forums')->fetchHiddenType( $row ) == 'sdelete' ) ? true : false;

/* Hidden and we do not have permission? */
if ( $row['_isHidden'] AND ! $permissions['canQueue'] )
{
continue;
}

/* Is the topic deleted? If so, then the first post will appear as such */
if ( $row['_isDeleted'] AND $permissions['TopicSoftDeleteSee'] )
{
$row['_p_isDeleted'] = true;
$_sdPids[ $row['pid'] ] = $row['pid'];
}

/* Collect TIDS of soft deleted topics */
if ( $row['_isDeleted'] )
{
if ( $permissions['TopicSoftDeleteSee'] )
{
$_sdTids[ $row['tid'] ] = $row['tid'];
}
else
{
continue;
}
}

/* Collect TIDS of soft deleted topics */
if ( $row['_p_isDeleted'] )
{
if ( $permissions['PostSoftDeleteSee'] )
{
$_sdPids[ $row['pid'] ] = $row['pid'];
}
else
{
continue;
}
}

$results[ $row['pid'] ] = $this->genericizeResults( $row );
}
}

/* Need to load members? */
if ( count( $members ) )
{
$mems = IPSMember::load( $members, 'all' );

foreach( $results as $id => $r )
{
if ( ! empty( $r['author_id'] ) AND isset( $mems[ $r['author_id'] ] ) )
{
$mems[ $r['author_id'] ]['m_posts'] = $mems[ $r['author_id'] ]['posts'];
//unset( $mems[ $r['author_id'] ]['posts'] );
unset( $mems[ $r['author_id'] ]['last_post'] );

if ( isset( $r['cache_content_sig'] ) )
{
$mems[ $r['author_id'] ]['cache_content'] = $r['cache_content_sig'];
$mems[ $r['author_id'] ]['cache_updated'] = $r['cache_updated_sig'];
}

$_mem = IPSMember::buildDisplayData( $mems[ $r['author_id'] ], array( 'signature' => 1 ) );

unset( $_mem['cache_content'], $_mem['cache_updated'] );

$results[ $id ]['_realPosts'] = $results[ $id ]['posts'];
$results[ $id ] = array_merge( $results[ $id ], $_mem );
$results[ $id ]['posts'] = $results[ $id ]['_realPosts'];
}
}
}

/* Generate 'dot' folder icon */
if ( $this->settings['show_user_posted'] AND count( $topicIds ) )
{
$this->DB->build( array( 'select' => 'author_id, topic_id',
'from' => 'posts',
'where' => 'queued=0 AND author_id=' . $this->memberData['member_id'] . ' AND topic_id IN(' . implode( ',', $topicIds ) . ')' ) );

$this->DB->execute();

while( $p = $this->DB->fetch() )
{
$dots[ $p['topic_id'] ] = 1;
}

/* Merge into results */
foreach( $results as $id => $r )
{
if ( isset( $dots[ $r['topic_id'] ] ) )
{
$results[ $id ]['_hasPosted'] = 1;
}
}
}

/* Got any deleted items */
if ( count( $_sdTids ) )
{
$sData = IPSDeleteLog::fetchEntries( $_sdTids, 'topic', false );

if ( count( $sData ) )
{
foreach( $results as $id => $data )
{
if ( isset( $_sdTids[ $data['tid'] ] ) )
{
$results[ $id ]['sData'] = $sData[ $data['tid'] ];
$results[ $id ]['permissions'] = $permissions;
}
}
}
}

/* Got any deleted items */
if ( count( $_sdPids ) )
{
$sData = IPSDeleteLog::fetchEntries( $_sdPids, 'post', false );

if ( count( $sData ) )
{
foreach( $results as $id => $data )
{
if ( isset( $_sdPids[ $data['pid'] ] ) AND ! isset( $results[ $id ]['sData']) )
{
$results[ $id ]['sData'] = $sData[ $data['pid'] ];
$results[ $id ]['permissions'] = $permissions;
}
}
}
}
}

return $results;
}

/**
* Reassigns fields in a generic way for results output
*
* @param array $r
* @return array
*/
public function genericizeResults( $r )
{
$r['app'] = 'forums';
$r['content'] = $r['post'];
$r['content_title'] = $r['title'];
$r['updated'] = $r['post_date'];
$r['lastupdate'] = $r['last_post'];
$r['type_2'] = 'topic';
$r['type_id_2'] = $r['tid'];
$r['misc'] = $r['pid'];

return $r;
}
}


that fucked up my whole screen
Posted Image

Posted Image

#30
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai
lolgf sunny

Here is my paste:


Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service


#31
Im from 05

Im from 05

    Forum Guest
  • Posts: 60
  • Joined: 12-April 11
RSN: Im from 05
IRC: Im from 05
Age: 15
TheWillpower.org
~~~~~~~~~~~~~~~~
you have been warned.

Edited by Im from 05, 20 April 2011 - 08:02 PM.

Posted Image

Don't mess with me.

#32
Sunnyboy

Sunnyboy

    Forum Guest
  • Posts: 1,161
  • Joined: 20-October 10
RSN: Sunnyboyy
IRC: Sunnyboy
<@Aku> thats all I got jagex, fuck sake
(20:18:10) <@a9ag> inb4Idieonfi
Posted Image

Posted Image

#33
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai
harsh


:imhappyforyou:

Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service


#34
Spaz4010

Spaz4010

    Special Guest
  • Posts: 252
  • Joined: 25-September 10
RSN: Spaz4010
IRC: Spaz
Posted Image
Posted Image

#35
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai
http://www.teamliqui...ms/TeamLiquidTV

oh, what

Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service


#36
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai
Posted Image

Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service


#37
Fay

Fay

    Forum Guest
  • Posts: 872
  • Joined: 23-July 10
RSN: <<None anymore!>> :D
if(inventory.isFull()){
            if (objects.getNearest(bank) != null & inventory.isFull()) {
                RSObject object = objects.getNearest(bank);
                if (calc.tileOnScreen(object.getLocation())) {
                    if (getMyPlayer().getAnimation() == -1) {
                        object.doAction("Bank");
                        sleep(2000, 2500);
                    }
                } else if (!calc.tileOnScreen(object.getLocation())) {
                    camera.turnTo(object.getLocation());
                    walking.walkTileMM(objects.getNearest(bank).getLocation());
                    sleep(800, 1000);
                } else {
                    sleep(500, 800);
                }
                sleep(800, 1200);
            }
        }else {
            walking.walkTo(new RSTile(x, y)); // walks back to a location from a bank
            sleep(786, 1479);

Was scripting some bawts & helping out a mate with a banking method, ugly but works >:D

Posted Image

Proud (Former) Untrimmed Prayer Zerker :D


#38
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai
http://www.teamliqui...topic_id=223517

if(inventory.isFull()){
            if (objects.getNearest(bank) != null & inventory.isFull()) {
                RSObject object = objects.getNearest(bank);
                if (calc.tileOnScreen(object.getLocation())) {
                    if (getMyPlayer().getAnimation() == -1) {
                        object.doAction("Bank");
                        sleep(2000, 2500);
                    }
                } else if (!calc.tileOnScreen(object.getLocation())) {
                    camera.turnTo(object.getLocation());
                    walking.walkTileMM(objects.getNearest(bank).getLocation());
                    sleep(800, 1000);
                } else {
                    sleep(500, 800);
                }
                sleep(800, 1200);
            }
        }else {
            walking.walkTo(new RSTile(x, y)); // walks back to a location from a bank
            sleep(786, 1479);

Was scripting some bawts & helping out a mate with a banking method, ugly but works >:D

Breaking rules? Naughty naughty!

Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service


#39
Fay

Fay

    Forum Guest
  • Posts: 872
  • Joined: 23-July 10
RSN: <<None anymore!>> :D
Pft, one would assume it is not I who are breaking the rules, just assisting those who wish to do so :D

Posted Image

Proud (Former) Untrimmed Prayer Zerker :D


#40
Nose

Nose

    Honored Ex-VH
  • Posts: 6,742
  • Joined: 26-June 10
RSN: Isak
IRC: Nose_of_Sai

Pft, one would assume it is not I who are breaking the rules, just assisting those who wish to do so :D

One could argue they are the same thing :P

Disciple of Hafen Slawkenbergius, Prof. emeritus, dr.nasus

 

lHKIC.png

Spoiler

Click here for Yellowpillow and Nose of Sai's questing service





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users