68 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| namespace Zotlabs\Widget;
 | |
| 
 | |
| class Rating {
 | |
| 
 | |
| 	function widget($arr) {
 | |
| 
 | |
| 
 | |
| 		$rating_enabled = get_config('system','rating_enabled');
 | |
| 		if(! $rating_enabled) {
 | |
| 			return;
 | |
| 		}
 | |
| 
 | |
| 		if($arr['target'])
 | |
| 			$hash = $arr['target'];
 | |
| 		else
 | |
| 			$hash = \App::$poi['xchan_hash'];
 | |
| 
 | |
| 		if(! $hash)
 | |
| 			return;
 | |
| 
 | |
| 		$url = '';
 | |
| 		$remote = false;
 | |
| 
 | |
| 		if(remote_channel() && ! local_channel()) {
 | |
| 			$ob = \App::get_observer();
 | |
| 			if($ob && $ob['xchan_url']) {
 | |
| 				$p = parse_url($ob['xchan_url']);
 | |
| 				if($p) {
 | |
| 					$url = $p['scheme'] . '://' . $p['host'] . (($p['port']) ? ':' . $p['port'] : '');
 | |
| 					$url .= '/rate?f=&target=' . urlencode($hash);
 | |
| 				}
 | |
| 				$remote = true;
 | |
| 			}
 | |
| 		}
 | |
| 
 | |
| 		$self = false;
 | |
| 
 | |
| 		if(local_channel()) {
 | |
| 			$channel = \App::get_channel();
 | |
| 
 | |
| 			if($hash == $channel['channel_hash'])
 | |
| 				$self = true;
 | |
| 
 | |
| 			head_add_js('ratings.js');
 | |
| 		}
 | |
| 
 | |
| 
 | |
| 		$o = '<div class="widget">';
 | |
| 		$o .= '<h3>' . t('Rating Tools') . '</h3>';
 | |
| 
 | |
| 		if((($remote) || (local_channel())) && (! $self)) {
 | |
| 			if($remote)
 | |
| 				$o .= '<a class="btn btn-block btn-primary btn-sm" href="' . $url . '"><i class="fa fa-pencil"></i> ' . t('Rate Me') . '</a>';
 | |
| 			else
 | |
| 				$o .= '<div class="btn btn-block btn-primary btn-sm" onclick="doRatings(\'' . $hash . '\'); return false;"><i class="fa fa-pencil"></i> ' . t('Rate Me') . '</div>';
 | |
| 		}
 | |
| 
 | |
| 		$o .= '<a class="btn btn-block btn-default btn-sm" href="ratings/' . $hash . '"><i class="fa fa-eye"></i> ' . t('View Ratings') . '</a>';
 | |
| 		$o .= '</div>';
 | |
| 
 | |
| 		return $o;
 | |
| 
 | |
| 	}
 | |
| }
 | |
| 
 |