diff options
| -rw-r--r-- | lib/videolist.php | 86 | ||||
| -rw-r--r-- | start.php | 2 | ||||
| -rw-r--r-- | views/default/forms/videolist/add.php | 84 | ||||
| -rw-r--r-- | views/default/forms/videolist/edit.php | 5 | 
4 files changed, 92 insertions, 85 deletions
| diff --git a/lib/videolist.php b/lib/videolist.php new file mode 100644 index 000000000..50f83c923 --- /dev/null +++ b/lib/videolist.php @@ -0,0 +1,86 @@ +<?php + +function video_youtube_parse_url($url) { +	if (!preg_match('/(http:\/\/)([a-zA-Z]{2,3}\.)(youtube\.com\/)(.*)/', $url, $matches)) { +	return false; +	} + +	$domain = $matches[2] . $matches[3]; +	$path = $matches[4]; + +	if (!preg_match('/^(watch\?v=)([a-zA-Z0-9_-]*)(&.*)?$/',$path, $matches)) { +	return false; +	} + +	$hash = $matches[2]; +	return $domain . 'v/' . $hash; +} + +function video_vimeo_parse_url($url) { +	if (!preg_match('/(http:\/\/)([a-zA-Z]{2,3}\.)(vimeo\.com\/)(.*)/', $url, $matches)) { +		return false; +	} + +	$domain = $matches[2] . $matches[3]; +	$path = $matches[4]; + +	$hash = $matches[2]; + +	return $domain . '/' . $hash; +} + +function video_metacafe_parse_url($url) { +	if (!preg_match('/(http:\/\/)([a-zA-Z]{2,3}\.)(metacafe\.com\/)(.*)/', $url, $matches)) { +		return false; +	} + +	$domain = $matches[2] . $matches[3]; +	$path = $matches[4]; + +	$hash = $matches[2]; + +	return $domain . '/' . $hash; +} + +if(isset($confirm_action) && ($confirm_action == 'add_video')) { +	if(isset($title_videourl) && ($title_videourl != '')) { +		if($Pagecontainer != "youtube" || $Pagecontainer != "vimeo" || $Pagecontainer != "metacafe"){ +			if(preg_match("/youtube/i", $title_videourl)) { +				$Pagecontainer = "youtube"; +			} + +			if(preg_match("/vimeo/i", $title_videourl)) { +				$Pagecontainer = "vimeo"; +			} + +			if(preg_match("/metacafe/i", $title_videourl)) { +				$Pagecontainer = "metacafe"; +			} +		} +		if($Pagecontainer == "youtube") { +			$is_valid_video = video_youtube_parse_url($title_videourl); +		} else if($Pagecontainer == "vimeo") { +			$is_valid_video = video_vimeo_parse_url($title_videourl); +			$is_valid_video = $get_addvideourl; +		} else if($Pagecontainer == "metacafe"){ +			$is_valid_video = video_metacafe_parse_url($title_videourl); +			$is_valid_video = $get_addvideourl; +		} + +		if($is_valid_video) { +			$error['no-video'] = 1; +			$_SESSION['candidate_profile_video'] = $is_valid_video; +			$_SESSION['candidate_profile_video_access_id'] = $access_id; +			$_SESSION['videolisttags'] = $tags; +			$_SESSION['Pagecontainer'] = $Pagecontainer; +			$_SESSION['container_guid'] = $container_guid; +			$url = "action/videolist/add?__elgg_ts={$timestamp}&__elgg_token={$token}"; +			forward($url); +		} +		else +			$error['no-video'] = 0; +	} +	else { +		$error['no-video'] = 0; +	} +} @@ -12,6 +12,8 @@  elgg_register_event_handler('init', 'system', 'videolist_init');  function videolist_init() { +	 +	elgg_register_library('elgg:videolist', elgg_get_plugins_path() . 'videolist/lib/videolist.php');  	// add a site navigation item  	$item = new ElggMenuItem('videolist', elgg_echo('videolist'), 'videolist/all'); diff --git a/views/default/forms/videolist/add.php b/views/default/forms/videolist/add.php index 2ee5d9c2e..b03c18341 100644 --- a/views/default/forms/videolist/add.php +++ b/views/default/forms/videolist/add.php @@ -53,90 +53,6 @@ if (!empty($get_addvideourl) && ($Pagecontainer == "youtube")) {  $tags = get_input('videolisttags'); -function video_youtube_parse_url($url) { -	if (!preg_match('/(http:\/\/)([a-zA-Z]{2,3}\.)(youtube\.com\/)(.*)/', $url, $matches)) { -	return false; -	} - -	$domain = $matches[2] . $matches[3]; -	$path = $matches[4]; - -	if (!preg_match('/^(watch\?v=)([a-zA-Z0-9_-]*)(&.*)?$/',$path, $matches)) { -	return false; -	} - -	$hash = $matches[2]; -	return $domain . 'v/' . $hash; -} - -function video_vimeo_parse_url($url) { -	if (!preg_match('/(http:\/\/)([a-zA-Z]{2,3}\.)(vimeo\.com\/)(.*)/', $url, $matches)) { -		return false; -	} - -	$domain = $matches[2] . $matches[3]; -	$path = $matches[4]; - -	$hash = $matches[2]; - -	return $domain . '/' . $hash; -} - -function video_metacafe_parse_url($url) { -	if (!preg_match('/(http:\/\/)([a-zA-Z]{2,3}\.)(metacafe\.com\/)(.*)/', $url, $matches)) { -		return false; -	} - -	$domain = $matches[2] . $matches[3]; -	$path = $matches[4]; - -	$hash = $matches[2]; - -	return $domain . '/' . $hash; -} - -if(isset($confirm_action) && ($confirm_action == 'add_video')) { -	if(isset($title_videourl) && ($title_videourl != '')) { -		if($Pagecontainer != "youtube" || $Pagecontainer != "vimeo" || $Pagecontainer != "metacafe"){ -			if(preg_match("/youtube/i", $title_videourl)) { -				$Pagecontainer = "youtube"; -			} - -			if(preg_match("/vimeo/i", $title_videourl)) { -				$Pagecontainer = "vimeo"; -			} - -			if(preg_match("/metacafe/i", $title_videourl)) { -				$Pagecontainer = "metacafe"; -			} -		} -		if($Pagecontainer == "youtube") { -			$is_valid_video = video_youtube_parse_url($title_videourl); -		} else if($Pagecontainer == "vimeo") { -			$is_valid_video = video_vimeo_parse_url($title_videourl); -			$is_valid_video = $get_addvideourl; -		} else if($Pagecontainer == "metacafe"){ -			$is_valid_video = video_metacafe_parse_url($title_videourl); -			$is_valid_video = $get_addvideourl; -		} - -		if($is_valid_video) { -			$error['no-video'] = 1; -			$_SESSION['candidate_profile_video'] = $is_valid_video; -			$_SESSION['candidate_profile_video_access_id'] = $access_id; -			$_SESSION['videolisttags'] = $tags; -			$_SESSION['Pagecontainer'] = $Pagecontainer; -			$_SESSION['container_guid'] = $container_guid; -			$url = "action/videolist/add?__elgg_ts={$timestamp}&__elgg_token={$token}"; -			forward($url); -		} -		else -			$error['no-video'] = 0; -	} -	else { -		$error['no-video'] = 0; -	} -}  $body = '<form action="'.$_SERVER['php_self'].'" method="post" id="add_video_form">';  $body .= elgg_view('input/hidden',array('internalname'=>'video_action', 'value'=>'add_video')); diff --git a/views/default/forms/videolist/edit.php b/views/default/forms/videolist/edit.php index 7d7901bcd..9bcc64a7a 100644 --- a/views/default/forms/videolist/edit.php +++ b/views/default/forms/videolist/edit.php @@ -2,6 +2,9 @@  /**  * Elgg Video Plugin > Edit view  */ + +elgg_load_library('elgg:videolist'); +  // Make sure we're logged in (send us to the front page if not)  gatekeeper();  $page_owner = page_owner_entity(); @@ -40,4 +43,4 @@ if($owner instanceof ElggGroup){  		<input type="submit" value="<?php echo elgg_echo("save"); ?>" />  	</p> -</form>
\ No newline at end of file +</form> | 
