diff options
Diffstat (limited to 'start.php')
| -rw-r--r-- | start.php | 253 | 
1 files changed, 127 insertions, 126 deletions
@@ -1,126 +1,127 @@ -<?php
 -	/**
 -	 * Elgg Video Plugin
 -	 * This plugin allows users to create a library of videos
 -	 * 
 -	 * @package Elgg
 -	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
 -	 * @author Prateek Choudhary <synapticfield@gmail.com>
 -	 * @copyright Prateek Choudhary
 -	 */
 -		function videolist_init() {
 -			
 -			// Load system configuration
 -				global $CONFIG;
 +<?php +	/** +	 * Elgg Video Plugin +	 * This plugin allows users to create a library of videos +	 *  +	 * @package Elgg +	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 +	 * @author Prateek Choudhary <synapticfield@gmail.com> +	 * @copyright Prateek Choudhary +	 */ +		function videolist_init() { +			 +			// Load system configuration +				global $CONFIG;  			if (isloggedin())   			{  					add_menu(elgg_echo('videolist'), $CONFIG->wwwroot . "pg/videolist/owned/" . $_SESSION['user']->username);  			} -					
 +					  			// Extend system CSS with our own styles -			extend_view('css','videolist/css');
			
 -			// Load the language file - default is english
 +			extend_view('css','videolist/css'); +			 +			// Load the language file - default is english  		  register_translations($CONFIG->pluginspath . "videolist/languages/"); -			// Register a page handler, so we can have nice URLs
 +			// Register a page handler, so we can have nice URLs  			register_page_handler('videolist','videolist_page_handler');  			//extend this plugin for groups  			extend_view('groups/left_column','videolist/groupprofile_videolist'); -			 // Add a new videolist widget
 +			 // Add a new videolist widget  		  add_widget_type('videolist_view',elgg_echo("videolist:widget"),elgg_echo("videolist:widget:description"), 'profile'); -			if (is_callable('register_notification_object'))
 -				register_notification_object('object', 'videolist', elgg_echo('videolist:new'));
 +			if (is_callable('register_notification_object')) +				register_notification_object('object', 'videolist', elgg_echo('videolist:new'));  			register_plugin_hook('object:notifications','object','videolist_object_notifications_intercept');  			// Register URL handler -			register_entity_url_handler('video_url','object', 'videolist');
 +			register_entity_url_handler('video_url','object', 'videolist');  			register_entity_url_handler('video_url','object', 'watch');  			//register entity url handler  			register_entity_url_handler('videolist_url','object','videolist'); -			// Register entity type
 +			// Register entity type  		  register_entity_type('object','videolist'); - 
 -		}
 -		
 -		/**
 -		 * videolist page handler; allows the use of fancy URLs
 -		 *
 -		 * @param array $page From the page_handler function
 -		 * @return true|false Depending on success
 -		 */
 +  +		} +		 +		/** +		 * videolist page handler; allows the use of fancy URLs +		 * +		 * @param array $page From the page_handler function +		 * @return true|false Depending on success +		 */  		function videolist_page_handler($page) { -		
 -			if (isset($page[0])) {
 -				switch($page[0]) {
 +		 +			if (isset($page[0])) { +				switch($page[0]) {  					case "owned": if (isset($page[1])) set_input('username',$page[1]);  												@include(dirname(__FILE__) . "/index.php");  				  					break; -					case "search":		  @include(dirname(__FILE__) . "/world.php");
 +					case "search":		  @include(dirname(__FILE__) . "/world.php"); +										break; +					case "video":		  @include(dirname(__FILE__) . "/video.php");  										break; -					case "video":		  @include(dirname(__FILE__) . "/video.php");
 -										break;
  					case "new": if (isset($page[3])) set_input('add_videourl',$page[3]);  											if (isset($page[5])) set_input('page',$page[5]);	  											if (isset($page[1])) set_input('container',$page[1]); -										@include(dirname(__FILE__) . "/new.php");
 +										@include(dirname(__FILE__) . "/new.php");  										break;  					case "watch":	set_input('video_id',$page[1]); -												@include(dirname(__FILE__) . "/watch.php");
 +												@include(dirname(__FILE__) . "/watch.php");  										break;  					case "browse":	if (isset($page[1])) set_input('container',$page[1]);	 -												  @include(dirname(__FILE__) . "/browse.php");
 +												  @include(dirname(__FILE__) . "/browse.php");  										break;  				  default : if (isset($page[1])) set_input('username',$page[1]);  				  					@include(dirname(__FILE__) . "/index.php"); -				  					break;
 -				}
 -			// If the URL is just 'videolist/username', or just 'videolist/', load the standard index file
 +				  					break; +				} +			// If the URL is just 'videolist/username', or just 'videolist/', load the standard index file  			} else {  			  if (isset($page[1])) set_input('username',$page[1]);  				@include(dirname(__FILE__) . "/index.php"); -				return true;
 -			}
 -			
 -			return false;
 -
 -		}
 +				return true; +			} +			 +			return false; + +		} -		function videolist_pagesetup() {
 -			
 -			global $CONFIG;
 +		function videolist_pagesetup() { +			 +			global $CONFIG;  			$page_owner = page_owner_entity(); -			if ($page_owner instanceof ElggGroup && get_context() == "groups") {
 -					add_submenu_item(sprintf(elgg_echo("videolist:home"),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/owned/" . page_owner_entity()->username);
 -				}
 -			//add submenu options
 -				else if (get_context() == "videolist") {
 +			if ($page_owner instanceof ElggGroup && get_context() == "groups") { +					add_submenu_item(sprintf(elgg_echo("videolist:home"),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/owned/" . page_owner_entity()->username); +				} +			//add submenu options +				else if (get_context() == "videolist") {  						/**********************************************************************************************  						****if user is OR is not registered user then show him following page menus to choose from  						***********************************************************************************************/  					  /* -					  add_submenu_item(elgg_echo('videolist:home'),$CONFIG->wwwroot."pg/videolist/". $page_owner->username);
 +					  add_submenu_item(elgg_echo('videolist:home'),$CONFIG->wwwroot."pg/videolist/". $page_owner->username);  						add_submenu_item(elgg_echo('videolist:new'),$CONFIG->wwwroot."pg/videolist/new");  						add_submenu_item(elgg_echo('videolist:find'),$CONFIG->wwwroot."pg/videolist/search/");  						*/ -						if ((page_owner() == $_SESSION['guid'] || !page_owner()) && isloggedin()) {
 -					add_submenu_item(sprintf(elgg_echo("videolist:home"),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/owned/" . page_owner_entity()->username);
 +						if ((page_owner() == $_SESSION['guid'] || !page_owner()) && isloggedin()) { +					add_submenu_item(sprintf(elgg_echo("videolist:home"),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/owned/" . page_owner_entity()->username);  					add_submenu_item(sprintf(elgg_echo('videolist:new'),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/new/". page_owner_entity()->username); -					add_submenu_item(sprintf(elgg_echo('videolist:browsemenu'),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/browse/". page_owner_entity()->username);
 -					add_submenu_item(sprintf(elgg_echo('videolist:find'),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/search/");			
 -				} else if (page_owner() && $page_owner instanceof ElggUser) {
 -					add_submenu_item(sprintf(elgg_echo("videolist:home"),$page_owner->name), $CONFIG->wwwroot . "pg/videolist/owned/". $page_owner->username);
 -				}	
 +					add_submenu_item(sprintf(elgg_echo('videolist:browsemenu'),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/browse/". page_owner_entity()->username); +					add_submenu_item(sprintf(elgg_echo('videolist:find'),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/search/");			 +				} else if (page_owner() && $page_owner instanceof ElggUser) { +					add_submenu_item(sprintf(elgg_echo("videolist:home"),$page_owner->name), $CONFIG->wwwroot . "pg/videolist/owned/". $page_owner->username); +				}	  			}  			else if (get_context() == "groupsvideos") {  				add_submenu_item(sprintf(elgg_echo("videolist:home"),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/owned/" . page_owner_entity()->username); @@ -128,87 +129,87 @@  						add_submenu_item(sprintf(elgg_echo('videolist:browsemenu'),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/browse/". page_owner_entity()->username);  						add_submenu_item(sprintf(elgg_echo('videolist:new'),page_owner_entity()->name), $CONFIG->wwwroot . "pg/videolist/new/". page_owner_entity()->username);  					} -			}
 -		}
 +			} +		} -	  function video_url($entity) {			
 +	  function video_url($entity) {			  			global $CONFIG; -			$video_id = $entity->video_id;
 -			return $CONFIG->url . "pg/videolist/watch/" . $entity->getGUID() . "/" . $video_id;
 -			
 +			$video_id = $entity->video_id; +			return $CONFIG->url . "pg/videolist/watch/" . $entity->getGUID() . "/" . $video_id; +			  		} -		function videolist_url($videolistpage) {
 -			
 +		function videolist_url($videolistpage) { +			  			global $CONFIG;  			$owner = $videolistpage->container_guid; -			$userdata = get_entity($owner);
 -			$title = $videolistpage->title;
 +			$userdata = get_entity($owner); +			$title = $videolistpage->title;  			$title = friendly_title($title); -			return $CONFIG->url . "pg/videolist/watch/" . $videolistpage->getGUID();
 +			return $CONFIG->url . "pg/videolist/watch/" . $videolistpage->getGUID();  		} -		/**
 -	 * Event handler for videolist
 -	 *
 -	 */
 -	function videolist_object_notifications($event, $object_type, $object) {
 -		
 -		static $flag;
 -		if (!isset($flag)) $flag = 0;
 -		
 -		if (is_callable('object_notifications'))
 -		if ($object instanceof ElggObject) {
 -			if ($object->getSubtype() == 'videolist') {
 -				if ($flag == 0) {
 -					$flag = 1;
 -					object_notifications($event, $object_type, $object);
 -				}
 -			}
 -		}	
 +		/** +	 * Event handler for videolist +	 * +	 */ +	function videolist_object_notifications($event, $object_type, $object) { +		 +		static $flag; +		if (!isset($flag)) $flag = 0; +		 +		if (is_callable('object_notifications')) +		if ($object instanceof ElggObject) { +			if ($object->getSubtype() == 'videolist') { +				if ($flag == 0) { +					$flag = 1; +					object_notifications($event, $object_type, $object); +				} +			} +		}	  	} -	/**
 -	 * Intercepts the notification on an event of new video being created and prevents a notification from going out
 -	 * (because one will be sent on the annotation)
 -	 *
 -	 * @param unknown_type $hook
 -	 * @param unknown_type $entity_type
 -	 * @param unknown_type $returnvalue
 -	 * @param unknown_type $params
 -	 * @return unknown
 -	 */
 -		function videolist_object_notifications_intercept($hook, $entity_type, $returnvalue, $params) {
 -			if (isset($params)) {
 -				if ($params['event'] == 'create' && $params['object'] instanceof ElggObject) {
 -					if ($params['object']->getSubtype() == 'videolist') {
 -						return true;
 -					}
 -				}
 -			}
 -			return null;
 +	/** +	 * Intercepts the notification on an event of new video being created and prevents a notification from going out +	 * (because one will be sent on the annotation) +	 * +	 * @param unknown_type $hook +	 * @param unknown_type $entity_type +	 * @param unknown_type $returnvalue +	 * @param unknown_type $params +	 * @return unknown +	 */ +		function videolist_object_notifications_intercept($hook, $entity_type, $returnvalue, $params) { +			if (isset($params)) { +				if ($params['event'] == 'create' && $params['object'] instanceof ElggObject) { +					if ($params['object']->getSubtype() == 'videolist') { +						return true; +					} +				} +			} +			return null;  		} -		
 -		// Register a handler for adding videos
 -		register_elgg_event_handler('create', 'videolist', 'videolist_create_event_listener');
 -
 -		// Register a handler for delete videos
 +		 +		// Register a handler for adding videos +		register_elgg_event_handler('create', 'videolist', 'videolist_create_event_listener'); + +		// Register a handler for delete videos  		register_elgg_event_handler('delete', 'videolist', 'videolist_delete_event_listener'); -		
 -		// Make sure the status initialisation function is called on initialisation
 -		register_elgg_event_handler('init','system','videolist_init');
 +		 +		// Make sure the status initialisation function is called on initialisation +		register_elgg_event_handler('init','system','videolist_init');  		register_elgg_event_handler('pagesetup','system','videolist_pagesetup'); -		register_elgg_event_handler('annotate','all','videolist_object_notifications');
 +		register_elgg_event_handler('annotate','all','videolist_object_notifications'); -	// Register actions
 -		global $CONFIG;
 +	// Register actions +		global $CONFIG;  		register_action("videolist/addvideo", false, $CONFIG->pluginspath . "videolist/actions/addvideo.php");  		register_action("videolist/tubesearch", false, $CONFIG->pluginspath . "videolist/actions/tubesearch.php");  		//register_action("videolist/addcomment", false, $CONFIG->pluginspath . "videolist/actions/comments/add.php");  		register_action("videolist/remove", false, $CONFIG->pluginspath . "videolist/actions/delete.php"); -
 +  ?>  | 
