Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class BP_CubePoint_Template {
- var $current_point = -1;
- var $point_count;
- var $points;
- var $point;
- var $in_the_loop;
- var $pag_page;
- var $pag_per_page;
- var $pag_links;
- var $pag_table_links;
- function BP_CubePoint_Template( $args = '' ) {
- $this->__construct( $args);
- }
- function __construct( $args = '' ) {
- global $bp;
- $defaults = bp_cubepoint_default_query_args();
- $r = apply_filters('bp_cubepoint_template_args',wp_parse_args( $args, $defaults ));
- extract( $r , EXTR_SKIP);
- $this->pag_page = $page;
- // WP-MU FIX
- // $this->pag_per_page = $per_page;
- $cp_bp_per_page_wpmufix = get_option('bp_points_logs_per_page_cp_bp');
- $this->pag_per_page = (int)$cp_bp_per_page_wpmufix;
- $this->uid = $uid;
- /***
- * You can use the "type" variable to fetch different things to output.
- * For example on the groups template loop, you can fetch groups by "newest", "active", "alphabetical"
- * and more. This would be the "type". You can then call different functions to fetch those
- * different results.
- */
- $total = bp_cubepoint_get_point_count($r);
- $this->points = bp_cubepoint_get_points($r);
- // Item Requests
- if ( !$max || $max >= $total )
- $this->total_point_count = $total;
- else
- $this->total_point_count = $max;
- if ( !$max || $max >= count($this->points))
- $this->point_count = count($this->points);
- else
- $this->point_count = $max;
- $this->pag_links = paginate_links( array(
- 'base' => $bp->displayed_user->domain . $bp->cubepoint->slug .'/'. $bp->cubepoint->points_slug .'/%_%',
- 'format' => '%#%',
- 'total' => ceil( (int) $this->total_point_count / (int)$cp_bp_per_page_wpmufix ),
- 'current' => (int) $this->pag_page,
- 'prev_text' => '←',
- 'next_text' => '→',
- 'mid_size' => 1
- ));
- $this->pag_table_links = paginate_links( array(
- 'base' => $bp->displayed_user->domain . $bp->cubepoint->slug .'/'. $bp->cubepoint->table_slug .'/%_%',
- 'format' => '%#%',
- 'total' => ceil( (int) $this->total_point_count / (int)$cp_bp_per_page_wpmufix ),
- 'current' => (int) $this->pag_page,
- 'prev_text' => '←',
- 'next_text' => '→',
- 'mid_size' => 1
- ));
- if ($this->point_count)
- $this->point = $this->points[0];
- }
- function has_points() {
- if ( $this->current_point + 1 < $this->point_count ) {
- return true;
- } elseif ( $this->current_point + 1 == $this->point_count && $this->point_count > 0) {
- do_action('bp_cubepoint_loop_end');
- // Do some cleaning up after the loop
- $this->rewind_points();
- }
- $this->in_the_loop = false;
- return false;
- }
- function next_point() {
- $this->current_point++;
- $this->point = $this->points[$this->current_point];
- return $this->point;
- }
- function rewind_points() {
- $this->current_point = -1;
- if ( $this->point_count > 0 ) {
- $this->point = $this->points[0];
- }
- }
- function the_point() {
- global $point, $bp;
- $this->in_the_loop = true;
- $this->point = $this->next_point();
- if ( 0 == $this->current_point ) // loop has just started
- do_action('bp_cubepoint_loop_start');
- }
- }
- function bp_cubepoint_query_points( $args = '' ) {
- global $points_template;
- $points_template = new BP_CubePoint_Template( $args );
- return $points_template->has_points();
- }
- function bp_cubepoint_the_point() {
- global $points_template;
- return $points_template->the_point();
- }
- function bp_cubepoint_has_points() {
- global $points_template;
- return $points_template->has_points();
- }
- function bp_cubepoint_point_user() {
- echo bp_cubepoint_get_point_user();
- }
- function bp_cubepoint_get_point_user() {
- global $bp,$points_template;
- $user = get_userdata($points_template->point->uid);
- $source_tmp = get_userdata($points_template->point->uid);
- $source = '<a href="'.PLUGIN_DIR.'cp_about.php?u='.$source_tmp->ID.'&width=500&height=200" title="'.$source_tmp->user_login.'" class="thickbox">'.$source_tmp->user_login.'</a>';
- return apply_filters( 'bp_cubepoint_get_point_user', $source );
- }
- function bp_cubepoint_point_source() {
- echo bp_cubepoint_get_point_source();
- }
- function bp_cubepoint_get_point_source() {
- global $points_template;
- return apply_filters( 'bp_cubepoint_get_point_source', $points_template->point->source );
- }
- function bp_cubepoint_point_type() {
- echo bp_cubepoint_get_point_type();
- }
- function bp_cubepoint_get_point_type() {
- global $bp,$points_template;
- switch ($points_template->point->type) {
- case "comment":
- $source = get_comment_link(bp_cubepoint_get_point_source());
- if(bp_cubepoint_get_point_points()>0){
- $type=__('Comment Posted','cp');
- $source= '<a href="'.$source.'" />Comment #' . $result->source . '</a>';
- } else {
- $type=__('Comment Removed','cp');
- $source= 'Comment #' . bp_cubepoint_get_point_source();
- }
- break;
- case "post":
- $source = get_post(bp_cubepoint_get_point_source());
- if($source->ID!=''){
- $source= '<a href="' . $source->guid . '" title="'.$source->post_title.'">Post #'.$source->ID.'</a>' ;
- }
- else {$source= 'Post #'.bp_cubepoint_get_point_source();}
- $type=__('Published Post','cp');
- break;
- case "reg":
- $source = '';
- $type=__('Registration','cp');
- break;
- case "login":
- $source = '';
- $type=__('"Daily" Login','cp');
- break;
- case "admin":
- $type=__('Administrative','cp');
- $source_tmp = get_userdata(bp_cubepoint_get_point_source());
- $source = '<a href="'.PLUGIN_DIR.'cp_about.php?u='.$source_tmp->ID.'&width=500&height=200" title="'.$source_tmp->user_login.'" class="thickbox">'.$source_tmp->user_login.'</a>';
- break;
- case "reset":
- $type=__('Reset','cp');
- $source_tmp = get_userdata(bp_cubepoint_get_point_source());
- $source = '<a href="'.PLUGIN_DIR.'cp_about.php?u='.$source_tmp->ID.'&width=500&height=200" title="'.$source_tmp->user_login.'" class="thickbox">'.$source_tmp->user_login.'</a>';
- break;
- case "donate":
- if(bp_cubepoint_get_point_points()>0){
- $type=__('Donation from','cp');
- $source_tmp = bp_cubepoint_get_point_source();
- $source_tmp = get_userdata($source_tmp);
- $source = '<a href="'.PLUGIN_DIR.'cp_about.php?u='.$source_tmp->ID.'&width=500&height=200" title="'.$source_tmp->user_login.'" class="thickbox">'.$source_tmp->user_login.'</a>';
- } else {
- $type=__('Donation to','cp');
- $source_tmp = bp_cubepoint_get_point_source();
- $source_tmp = get_userdata($source_tmp);
- $source = '<a href="'.PLUGIN_DIR.'cp_about.php?u='.$source_tmp->ID.'&width=500&height=200" title="'.$source_tmp->user_login.'" class="thickbox">'.$source_tmp->user_login.'</a>';
- }
- break;
- default:
- $type=$points_template->point->type;
- $source = '';
- break;
- }
- // return apply_filters( 'bp_cubepoint_get_point_type', $points_template->point->type );
- return apply_filters( 'bp_cubepoint_get_point_type', $type . ' ' . $source );
- }
- function bp_cubepoint_point_points() {
- echo bp_cubepoint_get_point_points();
- }
- function bp_cubepoint_get_point_points() {
- global $points_template;
- return apply_filters( 'bp_cubepoint_get_point_points', $points_template->point->points );
- }
- function bp_cubepoint_point_timestamp() {
- echo bp_cubepoint_get_point_timestamp();
- }
- function bp_cubepoint_get_point_timestamp() {
- global $points_template;
- return apply_filters( 'bp_cubepoint_get_point_timestamp', cp_relativeTime($points_template->point->timestamp) );
- }
- function bp_cubepoint_point_id() {
- echo bp_cubepoint_get_point_id();
- }
- function bp_cubepoint_get_point_id() {
- global $points_template;
- return apply_filters( 'bp_cubepoint_get_point_id', $points_template->point->id );
- }
- function bp_cubepoint_total_point_count() {
- echo bp_cubepoint_get_total_point_count();
- }
- function bp_cubepoint_get_total_point_count() {
- global $points_template;
- return apply_filters( 'bp_cubepoint_get_total_point_count', $points_template->total_point_count );
- }
- function bp_cubepoint_point_pagination($always_show = false) {
- echo bp_cubepoint_get_point_pagination($always_show);
- }
- function bp_cubepoint_get_point_pagination($always_show = false) {
- global $points_template;
- if ($always_show || $points_template->total_point_count > $points_template->pag_per_page)
- return apply_filters( 'bp_cubepoint_get_point_pagination', $points_template->pag_links );
- }
- function bp_cubepoint_point_table_pagination($always_show = false) {
- echo bp_cubepoint_get_point_table_pagination($always_show);
- }
- function bp_cubepoint_get_point_table_pagination($always_show = false) {
- global $points_template;
- if ($always_show || $points_template->total_point_count > $points_template->pag_per_page)
- return apply_filters( 'bp_cubepoint_get_point_table_pagination', $points_template->pag_table_links );
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement