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> |