From 68803264c6476fd96311bc83937f04164348cce4 Mon Sep 17 00:00:00 2001 From: cash Date: Wed, 26 Jan 2011 11:55:03 +0000 Subject: moving ecml to plugins repository as it won't be a part of 1.8.0. It will be back though... git-svn-id: http://code.elgg.org/elgg/trunk@7938 36083f99-b078-4883-b0ff-0f9b5a30f544 --- mod/ecml/README.txt | 226 ---------------- mod/ecml/actions/save_permissions.php | 37 --- mod/ecml/ecml_functions.php | 289 -------------------- mod/ecml/graphics/dailymotion.png | Bin 179131 -> 0 bytes mod/ecml/graphics/ecml.png | Bin 341 -> 0 bytes mod/ecml/graphics/googlemaps.png | Bin 150177 -> 0 bytes mod/ecml/graphics/logo_bliptv.gif | Bin 2048 -> 0 bytes mod/ecml/graphics/logo_dailymotion.gif | Bin 2270 -> 0 bytes mod/ecml/graphics/logo_googlemaps.gif | Bin 2632 -> 0 bytes mod/ecml/graphics/logo_livevideo.gif | Bin 2234 -> 0 bytes mod/ecml/graphics/logo_redlasso.gif | Bin 2078 -> 0 bytes mod/ecml/graphics/logo_slideshare.gif | Bin 3039 -> 0 bytes mod/ecml/graphics/logo_vimeo.gif | Bin 1783 -> 0 bytes mod/ecml/graphics/logo_youtube.gif | Bin 2174 -> 0 bytes mod/ecml/graphics/redlasso_1.png | Bin 178296 -> 0 bytes mod/ecml/graphics/redlasso_2.png | Bin 162730 -> 0 bytes mod/ecml/graphics/slideshare.png | Bin 149631 -> 0 bytes mod/ecml/graphics/url_status.png | Bin 2001 -> 0 bytes mod/ecml/graphics/vimeo.png | Bin 174545 -> 0 bytes mod/ecml/graphics/youtube.png | Bin 158669 -> 0 bytes mod/ecml/languages/en.php | 92 ------- mod/ecml/manifest.xml | 13 - mod/ecml/start.php | 298 --------------------- mod/ecml/views/default/ecml/admin/css.php | 156 ----------- mod/ecml/views/default/ecml/help.php | 28 -- mod/ecml/views/default/ecml/help/blip.tv.php | 12 - mod/ecml/views/default/ecml/help/dailymotion.php | 12 - mod/ecml/views/default/ecml/help/googlemaps.php | 12 - mod/ecml/views/default/ecml/help/livevideo.php | 12 - mod/ecml/views/default/ecml/help/redlasso.php | 13 - mod/ecml/views/default/ecml/help/slideshare.php | 12 - mod/ecml/views/default/ecml/help/vimeo.php | 12 - mod/ecml/views/default/ecml/help/youtube.php | 12 - mod/ecml/views/default/ecml/input_ext.php | 10 - mod/ecml/views/default/ecml/keyword_help.php | 18 -- mod/ecml/views/default/ecml/keywords/blip.tv.php | 19 -- .../views/default/ecml/keywords/dailymotion.php | 27 -- mod/ecml/views/default/ecml/keywords/entity.php | 22 -- .../views/default/ecml/keywords/googlemaps.php | 23 -- mod/ecml/views/default/ecml/keywords/livevideo.php | 25 -- mod/ecml/views/default/ecml/keywords/redlasso.php | 23 -- .../views/default/ecml/keywords/slideshare.php | 30 --- mod/ecml/views/default/ecml/keywords/user_list.php | 43 --- mod/ecml/views/default/ecml/keywords/vimeo.php | 50 ---- mod/ecml/views/default/ecml/keywords/youtube.php | 39 --- .../views/default/embed/web_services/content.php | 220 --------------- mod/ecml/views/default/settings/ecml/edit.php | 133 --------- 47 files changed, 1918 deletions(-) delete mode 100644 mod/ecml/README.txt delete mode 100644 mod/ecml/actions/save_permissions.php delete mode 100644 mod/ecml/ecml_functions.php delete mode 100644 mod/ecml/graphics/dailymotion.png delete mode 100644 mod/ecml/graphics/ecml.png delete mode 100644 mod/ecml/graphics/googlemaps.png delete mode 100644 mod/ecml/graphics/logo_bliptv.gif delete mode 100644 mod/ecml/graphics/logo_dailymotion.gif delete mode 100644 mod/ecml/graphics/logo_googlemaps.gif delete mode 100644 mod/ecml/graphics/logo_livevideo.gif delete mode 100644 mod/ecml/graphics/logo_redlasso.gif delete mode 100644 mod/ecml/graphics/logo_slideshare.gif delete mode 100644 mod/ecml/graphics/logo_vimeo.gif delete mode 100644 mod/ecml/graphics/logo_youtube.gif delete mode 100644 mod/ecml/graphics/redlasso_1.png delete mode 100644 mod/ecml/graphics/redlasso_2.png delete mode 100644 mod/ecml/graphics/slideshare.png delete mode 100644 mod/ecml/graphics/url_status.png delete mode 100644 mod/ecml/graphics/vimeo.png delete mode 100644 mod/ecml/graphics/youtube.png delete mode 100644 mod/ecml/languages/en.php delete mode 100644 mod/ecml/manifest.xml delete mode 100644 mod/ecml/start.php delete mode 100644 mod/ecml/views/default/ecml/admin/css.php delete mode 100644 mod/ecml/views/default/ecml/help.php delete mode 100644 mod/ecml/views/default/ecml/help/blip.tv.php delete mode 100644 mod/ecml/views/default/ecml/help/dailymotion.php delete mode 100644 mod/ecml/views/default/ecml/help/googlemaps.php delete mode 100644 mod/ecml/views/default/ecml/help/livevideo.php delete mode 100644 mod/ecml/views/default/ecml/help/redlasso.php delete mode 100644 mod/ecml/views/default/ecml/help/slideshare.php delete mode 100644 mod/ecml/views/default/ecml/help/vimeo.php delete mode 100644 mod/ecml/views/default/ecml/help/youtube.php delete mode 100644 mod/ecml/views/default/ecml/input_ext.php delete mode 100644 mod/ecml/views/default/ecml/keyword_help.php delete mode 100644 mod/ecml/views/default/ecml/keywords/blip.tv.php delete mode 100644 mod/ecml/views/default/ecml/keywords/dailymotion.php delete mode 100644 mod/ecml/views/default/ecml/keywords/entity.php delete mode 100644 mod/ecml/views/default/ecml/keywords/googlemaps.php delete mode 100644 mod/ecml/views/default/ecml/keywords/livevideo.php delete mode 100644 mod/ecml/views/default/ecml/keywords/redlasso.php delete mode 100644 mod/ecml/views/default/ecml/keywords/slideshare.php delete mode 100644 mod/ecml/views/default/ecml/keywords/user_list.php delete mode 100644 mod/ecml/views/default/ecml/keywords/vimeo.php delete mode 100644 mod/ecml/views/default/ecml/keywords/youtube.php delete mode 100644 mod/ecml/views/default/embed/web_services/content.php delete mode 100644 mod/ecml/views/default/settings/ecml/edit.php diff --git a/mod/ecml/README.txt b/mod/ecml/README.txt deleted file mode 100644 index 3c18998cc..000000000 --- a/mod/ecml/README.txt +++ /dev/null @@ -1,226 +0,0 @@ -ECML - Elgg Customizable Markup Language - -CONTENTS: - 1. Overview - 2. Security - 3. Using ECML Keywords - 3.1 Utility keywords 'entity' and 'view' - 3.2 Embedded 3rd party media - 4. Custom ECML Keywords - 5. Embed support - 6. Hints and Quirks - - -1. OVERVIEW - - ECML adds support for an extensible keyword system that allows users - to quickly add elements and embed media in their content. The ECML - control panel can be used to granularly allow ECML keywords in certain - contexts and views. - - -2. SECURITY - - From the ECML control panel in the administration section the - administrator can select which sections of the site support - ECML. For each section registered to display ECML, the administrator - can select which keywords to deny. For example, this is useful to - prevent users from inserting an Elgg view into a blog page. - -3. USING ECML KEYWORDS - - All ECML keywords are surrounded by square brackets: [ and ]. - Some keywords, like views and entity lists, take optional parameters. - - Examples: - [userlist] -- Display up to 10 newest users. - [youtube src="http://www.youtube.com/watch?v=kCpjgl2baLs"] -- Embed a YouTube video. - [view src="input/text"] -- Display a textarea - - -3.1 UTILITY KEYWORDS 'entity' AND 'view' - - ECML includes a few built-in keywords to get you started. They are - mainly for embedding content from 3rd party sites, but also include - two utility views to help non-programmers quickly display content. - - The two utility keywords available are [entity] and [view]. - - [entity] - Displays a list of entities using similar arguments to the - elgg_get_entities() function. See documentation for that function for - the full list of supported arguments and default values. - - Additional / changed parameters supported by keywords: - * owner: The username owner. (You can still use owner_guid) - - Example: Displays a list of all blog posts by the user named 'admin': - [entity type=object subtype=blog owner=admin] - - Example: Displays newest group created: - [entity type=object subtype=group limit=1] - - - [view] - Displays a valid Elgg view passing any optional parameters to - the view. - - Example: Display a text input: - [view src="input/text"] - - Example: Display a textarea with a default value: - [view src="input/longtext" value="This is an example of a quoted value!"] - - -3.2 EMBEDDED 3RD PARTY MEDIA - - ECML provides support for embedding media from a few of the most common - media sites: - - * Youtube -- [youtube src="URL"] - * Vimeo -- [vimeo src="URL"] - * Slideshare -- [slideshare id="ID"] (NB: Use the "wordpress.com" embed - link) - - -4 CUSTOM ECML KEYWORDS (AKA "THE 'C' in ECML) - - Plugins can add their own ECML keywords. Each keyword must be bound to - a valid view. Almost all functionality in custom keywords could be - implemented using the 'view' keyword, but custom keywords provide a - simple way for non-techy users to include ready-made views without - the fuss of knowing what they're doing. - - To register your own ECML keywords, reply to the 'get_keywords' - hook of type 'ecml' and append to the passed array with a key that is - your keyword name and a value that is an array of a view, a description, - and usage instructions. - - Optionally, the array can pass a 'restricted' => array() value of views - that this keyword is valid in. This is not overrideable by the admin - interface and is useful for forcing security on possibly dangerous - keywords. - - Arguments passed to the keyword are accessible to the keyword view via - the $vars array. It is the responsibility of the custom view to parse - these arguments. - - The below example creates the 'buttonizer' keyword that turns the user's - text into an HTML button. It uses the view at 'buttonizer/ecml/buttonizer.' - - How a user will call the keyword: - - [buttonizer text="This is my button!"] - - How to implement this in a plugin: - - buttonizer/start.php: - register_plugin_hook('get_keywords', 'ecml', 'buttonizer_ecml_keywords'); - - function buttonizer_ecml_keywords($hook, $type, $value, $params) { - $value['buttonizer'] = array( - 'name' => 'Buttonizer', - 'view' => 'buttonizer/ecml/buttonizer', - 'description' => 'Makes your text a button! What could be better?', - 'usage' => 'Use [buttonizer text="My text"] to make "My text" a button!' - ); - - return $value; - } - - buttonizer/views/default/buttonizer/ecml/buttonizer.php: - $text = $vars['text']; - - echo elgg_view('input/button', array( - 'value' => $text, - 'type' => 'button' - )); - - This is exactly the same as saying: - - [view src="buttonizer/ecml/buttonizer" text="This is my button!"] - - or even: - - [view src="input/button" value="This is my button!" type="button"] - - but is much simpler for the user. - - -5. EMBED SUPPORT - - ECML and the Embed plugin are closely related in that Embed serves - as a sort of front end for ECML. Especially with 3rd party web - services, where URLs and embed codes vary greatly, having a system - in place that allows a user to easily generate and insert ECML - is benificial. - - Currently, only web services ECML keywords are supported in the - embed plugin. Registering a web service keyword looks like this: - - $value[youtube] = array( - 'name' => 'Youtube', - 'view' => "ecml/keywords/youtube", - 'description' => 'Embed YouTube videos', - 'usage' => 'Use src="URL".', - - // important bits - 'type' => 'web_service', - 'params' => array('src', 'width', 'height') // a list of supported params - 'embed' => 'src="%s"' // a sprintf string of the require param format. Added automatically to [keyword $here] - ); - - -6. HINTS AND QUIRKS - - * A custom keyword is slightly more complicated to implement, but is - much simpler for the end user to use. - - * A custom keyword is safer. Since ECML can be disabled for certain - views, many administrators disable the entity and view keywords in - user-accessible pages like blogs, pages, and files. - - * Custom keywords can contain only alphanumeric characters. - - * To pass a complex argument to a keyword, quote the value. - - * If making a custom keyword, avoid underscores in your params. They - look funny. - - * Are disabled keywords in comments still working? This is probably - because a parent view is including comments directly. For example: - - blog page handler: - ...logic... - echo elgg_view_entity($blog); - ...logic... - - view object/blog: - ...logic... - echo $blog; - echo elgg_view_comments($blog); - - The output of object/blog includes the output of the comments, so if - the view object/blog allows the youtube the comments will also be parsed - for ECML. The solution is to keep views for the object and comments - separate. - - blog page handler: - echo elgg_view_entity($blog); - ...logic... - echo elgg_view_comments($blog); - - view object/blog: - ...logic... - echo $blog - - Alternatively, you can keep the blog and comments in the object view, but - pull out the blog into its own view to register with ECML. - - view object/blog: - ...logic... - echo elgg_view('blog/blog', array('blog' => $blog); - ...logic... - elgg_view_comments($blog); - - view blog/blog: - ...logic... - echo $blog \ No newline at end of file diff --git a/mod/ecml/actions/save_permissions.php b/mod/ecml/actions/save_permissions.php deleted file mode 100644 index f32544d86..000000000 --- a/mod/ecml/actions/save_permissions.php +++ /dev/null @@ -1,37 +0,0 @@ -ecml_keywords; -$views = $CONFIG->ecml_parse_views; - -// the front end uses a white list but the backend uses a -// blacklist for performance and extensibility. -// gotta convert. -$perms = array(); - -foreach ($views as $view => $view_info) { - foreach ($keywords as $keyword => $keyword_info) { - - // don't need to add perms for restricted keywords - // because those perms are checked separately - if (isset($keyword_info['restricted'])) { - continue; - } - if (!isset($whitelist[$view]) || !in_array($keyword, $whitelist[$view])) { - $perms[$view][] = $keyword; - } - } -} - -if (set_plugin_setting('ecml_permissions', serialize($perms), 'ecml')) { - system_message(elgg_echo('ecml:admin:permissions_saved')); -} else { - register_error(elgg_echo('ecml:admin:cannot_save_permissions')); -} - -forward(REFERER); diff --git a/mod/ecml/ecml_functions.php b/mod/ecml/ecml_functions.php deleted file mode 100644 index 4d30ee9c7..000000000 --- a/mod/ecml/ecml_functions.php +++ /dev/null @@ -1,289 +0,0 @@ -ecml_current_view = $view; - - return preg_replace_callback(ECML_KEYWORD_REGEX, 'ecml_parse_view_match', $string); -} - -/** - * Returns ECML-style keywords found in $string. - * Doesn't validate them. - * Returns an array of keyword => arguments - * - * @param string $string - * @return array - */ -function ecml_extract_keywords($string) { - $return = array(); - - if (preg_match_all(ECML_KEYWORD_REGEX, $string, $matches)) { - foreach ($matches[1] as $i => $keyword) { - $return[] = array('keyword' => $keyword, 'params' => $matches[2][$i]); - } - } - - return $return; -} - -/** - * Parse ECML keywords - * - * @param array $matches - * @return string html - */ -function ecml_parse_view_match($matches) { - global $CONFIG; - - $view = $CONFIG->ecml_current_view; - - $keyword = trim($matches[1]); - $params_string = trim($matches[2]); - - // reject keyword if blacklisted for view or invalid - if (!ecml_is_valid_keyword($keyword, $view)) { - return $matches[0]; - } - - switch ($keyword) { - case 'entity_list': - $options = ecml_keywords_parse_entity_params($params_string); - // must use this lower-level function because I missed refactoring - // the list entity functions for relationships. - // (which, since you're here, is the only function that runs through all - // possible options for elgg_get_entities*() functions...) - $entities = elgg_get_entities_from_relationship($options); - $content = elgg_view_entity_list($entities, count($entities), $options['offset'], - $options['limit'], $options['full_view'], $options['list_type_toggle'], $options['pagination']); - break; - - case 'view': - // src is a required attribute of view - $vars = ecml_keywords_tokenize_params($params_string); - $vars['ecml_keyword'] = $keyword; - $vars['ecml_params_string'] = $params_string; - $content = elgg_view($vars['src'], $vars); - - break; - - default: - // match against custom keywords with optional args - $keyword_info = $CONFIG->ecml_keywords[$keyword]; - $vars = ecml_keywords_tokenize_params($params_string); - $vars['ecml_keyword'] = $keyword; - $vars['ecml_params_string'] = $params_string; - $content = elgg_view($keyword_info['view'], $vars); - break; - } - - // if nothing matched return the original string. - // @todo this might be undesirable. will show ugly code everywhere - // if you delete a file or something. - if (!$content) { - $content = $matches[0]; - } - - return $content; -} - -/** - * Creates an array from a name=value name2='value2' name3="value3" string. - * - * @param $string - * @return array - */ -function ecml_keywords_tokenize_params($string) { - - if (empty($string)) { - return array(); - } - - $params = array(); - $pos = 0; - $char = substr($string, $pos, 1); - - // working var for assembling name and values - $operand = $name = ''; - - while ($char !== FALSE) { - switch ($char) { - // handle quoted names/values - case '"': - case "'": - $quote = $char; - - $next_char = substr($string, ++$pos, 1); - while ($next_char != $quote) { - if ($next_char === FALSE) { - // no matching quote. bail. - return array(); - } - $operand .= $next_char; - $next_char = substr($string, ++$pos, 1); - } - break; - - case ECML_ATTR_SEPARATOR: - // normalize true and false - if ($operand == 'true'){ - $operand = TRUE; - } elseif ($operand == 'false') { - $operand = FALSE; - } - $params[$name] = $operand; - $operand = $name = ''; - break; - - case ECML_ATTR_OPERATOR: - // save name, switch to value - $name = $operand; - $operand = ''; - break; - - default: - $operand .= $char; - } - - $char = substr($string, ++$pos, 1); - } - - // need to get the last attr - if ($name && $operand) { - if ($operand == 'true'){ - $operand = TRUE; - } elseif ($operand == 'false') { - $operand = FALSE; - } - $params[$name] = $operand; - } - - return $params; - - // this is much faster, but doesn't allow quoting. -// $pairs = array_map('trim', explode(',', $string)); -// $params = array(); -// -// foreach ($pairs as $pair) { -// list($name, $value) = explode('=', $pair); -// -// $name = trim($name); -// $value = trim($value); -// -// // normalize BOOL values -// if ($value === 'true') { -// $value = TRUE; -// } elseif ($value === 'false') { -// $value = FALSE; -// } -// -// // don't check against value since a falsy/empty value is valid. -// if ($name) { -// $params[$name] = $value; -// } -// } -// -// return $params; -} - -/** - * Returns an options array suitable for using in elgg_get_entities() - * - * @param string $string "name=value, name2=value2" - * @return array - */ -function ecml_keywords_parse_entity_params($string) { - $params = ecml_keywords_tokenize_params($string); - - // handle some special cases - if (isset($params['owner'])) { - if ($user = get_user_by_username($params['owner'])) { - $params['owner_guid'] = $user->getGUID(); - } - } - - // @todo probably need to add more for - // group -> container_guid, etc - return $params; -} - -/** - * Checks granular permissions if keyword is valid for view - * - * @param unknown_type $keyword - * @param unknown_type $view - * @return bool - */ -function ecml_is_valid_keyword($keyword, $view = NULL) { - global $CONFIG; - - // this isn't even a real keyword. - if (!isset($CONFIG->ecml_keywords[$keyword])) { - return FALSE; - } - - // don't check against views. Already know it's a real one. - if (!$view) { - return TRUE; - } - - // this keyword is restricted to certain views - if (isset($CONFIG->ecml_keywords[$keyword]['restricted']) - && !in_array($view, $CONFIG->ecml_keywords[$keyword]['restricted'])) { - return FALSE; - } - - $views = $CONFIG->ecml_permissions; - - // this is a blacklist, so return TRUE by default. - $r = TRUE; - - if (isset($views[$view]) && in_array($keyword, $views[$view])) { - $r = FALSE; - } - - return $r; -} - -/** - * Grab the ECML keywords as saved in $CONFIG or regenerate. - */ -function ecml_get_keywords($recache = FALSE) { - global $CONFIG; - - if (isset($CONFIG->ecml_keywords) && !$recache) { - return $CONFIG->ecml_keywords; - } - - $keywords = elgg_trigger_plugin_hook('get_keywords', 'ecml', NULL, array()); - $CONFIG->ecml_keywords = $keywords; - return $keywords; -} - -/** - * Return basic info about the keyword. - * - * @param string $keyword - * @return array - */ -function ecml_get_keyword_info($keyword) { - global $CONFIG; - - if (isset($CONFIG->ecml_keywords[$keyword])) { - return $CONFIG->ecml_keywords[$keyword]; - } - - return FALSE; -} \ No newline at end of file diff --git a/mod/ecml/graphics/dailymotion.png b/mod/ecml/graphics/dailymotion.png deleted file mode 100644 index 67950f81c..000000000 Binary files a/mod/ecml/graphics/dailymotion.png and /dev/null differ diff --git a/mod/ecml/graphics/ecml.png b/mod/ecml/graphics/ecml.png deleted file mode 100644 index 81de57b56..000000000 Binary files a/mod/ecml/graphics/ecml.png and /dev/null differ diff --git a/mod/ecml/graphics/googlemaps.png b/mod/ecml/graphics/googlemaps.png deleted file mode 100644 index 6e4d2f490..000000000 Binary files a/mod/ecml/graphics/googlemaps.png and /dev/null differ diff --git a/mod/ecml/graphics/logo_bliptv.gif b/mod/ecml/graphics/logo_bliptv.gif deleted file mode 100644 index 13620b9fd..000000000 Binary files a/mod/ecml/graphics/logo_bliptv.gif and /dev/null differ diff --git a/mod/ecml/graphics/logo_dailymotion.gif b/mod/ecml/graphics/logo_dailymotion.gif deleted file mode 100644 index 48d4cff8d..000000000 Binary files a/mod/ecml/graphics/logo_dailymotion.gif and /dev/null differ diff --git a/mod/ecml/graphics/logo_googlemaps.gif b/mod/ecml/graphics/logo_googlemaps.gif deleted file mode 100644 index 0f8835304..000000000 Binary files a/mod/ecml/graphics/logo_googlemaps.gif and /dev/null differ diff --git a/mod/ecml/graphics/logo_livevideo.gif b/mod/ecml/graphics/logo_livevideo.gif deleted file mode 100644 index 86afeabe4..000000000 Binary files a/mod/ecml/graphics/logo_livevideo.gif and /dev/null differ diff --git a/mod/ecml/graphics/logo_redlasso.gif b/mod/ecml/graphics/logo_redlasso.gif deleted file mode 100644 index 96ac9b78c..000000000 Binary files a/mod/ecml/graphics/logo_redlasso.gif and /dev/null differ diff --git a/mod/ecml/graphics/logo_slideshare.gif b/mod/ecml/graphics/logo_slideshare.gif deleted file mode 100644 index ff082171e..000000000 Binary files a/mod/ecml/graphics/logo_slideshare.gif and /dev/null differ diff --git a/mod/ecml/graphics/logo_vimeo.gif b/mod/ecml/graphics/logo_vimeo.gif deleted file mode 100644 index 4215e74bc..000000000 Binary files a/mod/ecml/graphics/logo_vimeo.gif and /dev/null differ diff --git a/mod/ecml/graphics/logo_youtube.gif b/mod/ecml/graphics/logo_youtube.gif deleted file mode 100644 index 7cfdd054c..000000000 Binary files a/mod/ecml/graphics/logo_youtube.gif and /dev/null differ diff --git a/mod/ecml/graphics/redlasso_1.png b/mod/ecml/graphics/redlasso_1.png deleted file mode 100644 index caf3ae4f6..000000000 Binary files a/mod/ecml/graphics/redlasso_1.png and /dev/null differ diff --git a/mod/ecml/graphics/redlasso_2.png b/mod/ecml/graphics/redlasso_2.png deleted file mode 100644 index 2c7ba64a0..000000000 Binary files a/mod/ecml/graphics/redlasso_2.png and /dev/null differ diff --git a/mod/ecml/graphics/slideshare.png b/mod/ecml/graphics/slideshare.png deleted file mode 100644 index 19ecd6b75..000000000 Binary files a/mod/ecml/graphics/slideshare.png and /dev/null differ diff --git a/mod/ecml/graphics/url_status.png b/mod/ecml/graphics/url_status.png deleted file mode 100644 index 95c2b5635..000000000 Binary files a/mod/ecml/graphics/url_status.png and /dev/null differ diff --git a/mod/ecml/graphics/vimeo.png b/mod/ecml/graphics/vimeo.png deleted file mode 100644 index ae8b4086f..000000000 Binary files a/mod/ecml/graphics/vimeo.png and /dev/null differ diff --git a/mod/ecml/graphics/youtube.png b/mod/ecml/graphics/youtube.png deleted file mode 100644 index ed31af05a..000000000 Binary files a/mod/ecml/graphics/youtube.png and /dev/null differ diff --git a/mod/ecml/languages/en.php b/mod/ecml/languages/en.php deleted file mode 100644 index f56d2c1cd..000000000 --- a/mod/ecml/languages/en.php +++ /dev/null @@ -1,92 +0,0 @@ - 'ECML', - 'ecml:help' => 'ECML Help', - - // views - 'ecml:views:annotation_generic_comment' => 'Comments', - - // keywords - 'ecml:keywords:googlemaps' => 'Google Maps', - 'ecml:keywords:googlemaps:desc' => 'Embed a Google Map.', - 'ecml:keywords:googlemaps:usage' => '[googlemaps src="URL"] Use the link code from Google Maps as the src.', - 'ecml:googlemaps:view_larger_map' => 'View larger map', - - 'ecml:keywords:slideshare' => 'Slide Share', - 'ecml:keywords:slideshare:desc' => 'Embed a Slideshare slide.', - 'ecml:keywords:slideshare:usage' => '[slideshare id="slideshare_id"] Use the Wordpress.com embed code.', - - 'ecml:keywords:vimeo' => 'Vimeo', - 'ecml:keywords:vimeo:desc' => 'Embed a Vimeo video.', - 'ecml:keywords:videmo:usage' => '[videmo src="URL"] Use a standard Vimeo URL as the source.', - - 'ecml:keywords:youtube' => 'YouTube', - 'ecml:keywords:youtube:desc' => 'Embed a YouTube video.', - 'ecml:keywords:youtube:usage' => '[youtube src="URL"] Use a standard YouTube URL as the source.', - - 'ecml:keywords:blip.tv' => 'blip.tv', - 'ecml:keywords:blip.tv:desc' => 'Embed a blip.tv video.', - 'ecml:keywords:blip.tv:usage' => '[blip.tv ID] use the Wordpress.com embed code.', - - 'ecml:keywords:dailymotion' => 'Daily Motion', - 'ecml:keywords:dailymotion:desc' => 'Embed a Daily Motion video.', - 'ecml:keywords:dailymotion:usage' => '[dailymotion src="URL"] Use a standard Daily Motion URL as the source.', - - 'ecml:keywords:livevideo' => 'Live Video', - 'ecml:keywords:livevideo:desc' => 'Embed a Live Video video.', - 'ecml:keywords:livevideo:usage' => '[livevideo src="URL"] Use a standard livevideo URL as the source.', - - 'ecml:keywords:redlasso' => 'Red Lasso', - 'ecml:keywords:redlasso:desc' => 'Embed a Red Lasso video.', - 'ecml:keywords:redlasso:usage' => '[redlasso id="URL"] Use the Wordpress.com embed code.', - - // keyword help - 'ecml:keywords_title' => 'Keywords', - 'ecml:keywords_instructions' => - 'Keywords are replaced with content when viewed. They must be surrounded by - square brackets ([ and ]). You can build your own or use the ones listed below. - Hover over a keyword to read its description.', - - 'ecml:keywords_instructions_more' => - ' -

You can build your own keywords for views and entities.

- -

[entity: type=type, subtype=subtype, owner=username, limit=number]
- - EX: To show 5 blog posts by admin:
- [entity: type=object, subtype=blog, owner=admin, limit=5]

- -

You can also specify a valid Elgg view:
- [view: elgg_view, name=value]

- -

Ex: To show a text input with a default value:
- [view: input/text, value=This is a default value]

', - - // admin - 'ecml:admin' => 'ECML Permissions', - 'ecml:admin:instruction' => - -'ECML allows users you easily embed views, entities, and 3rd party applications into their content -on your site by using ECML keywords. There are some ECML keywords that you may want to restrict -in certain areas of your site. To disable a keyword for a section of your site, check the box in the -grid below. -', - - 'ecml:admin:permissions_saved' => 'ECML permissions saved.', - 'ecml:admin:cannot_save_permissions' => 'Cannot save ECML permissions!', - 'ecml:admin:restricted' => 'Restricted', - - // embed support - 'ecml:embed:web_services' => 'Web Services', - 'ecml:embed:instructions' => 'Select a service for instructions on how to get embed code or paste the url in directly.', - - -); - -add_translation('en', $english); \ No newline at end of file diff --git a/mod/ecml/manifest.xml b/mod/ecml/manifest.xml deleted file mode 100644 index 457c93914..000000000 --- a/mod/ecml/manifest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/mod/ecml/start.php b/mod/ecml/start.php deleted file mode 100644 index 4fa13b7c9..000000000 --- a/mod/ecml/start.php +++ /dev/null @@ -1,298 +0,0 @@ - 'Short Description') - $CONFIG->ecml_parse_views = elgg_trigger_plugin_hook('get_views', 'ecml', NULL, array()); - - foreach ($CONFIG->ecml_parse_views as $view => $desc) { - elgg_register_plugin_hook_handler('view', $view, 'ecml_parse_view'); - } - - // provide a few built-in ecml keywords. - // @todo could pull this out into an array here to save an API call. - elgg_register_plugin_hook_handler('get_keywords', 'ecml', 'ecml_keyword_hook'); - - // grab the list of keywords and their views from plugins - $CONFIG->ecml_keywords = elgg_trigger_plugin_hook('get_keywords', 'ecml', NULL, array()); - - // grab permissions for specific views/contexts - // this is a black list. - // it's more efficient to use this as a blacklist - // but probably makes more sense from a UI perspective as a whitelist. - // uses [views][view_name] = array(keywords, not, allowed) - $CONFIG->ecml_permissions = unserialize(get_plugin_setting('ecml_permissions', 'ecml')); - - // 3rd party media embed section - elgg_register_plugin_hook_handler('embed_get_sections', 'all', 'ecml_embed_web_services_hook'); - - // remove ecml when stripping tags - elgg_register_plugin_hook_handler('format', 'strip_tags', 'ecml_strip_tags'); -} - -/** - * Display a help page for valid ECML keywords on this page. - * - * @param array $page - */ -function ecml_help_page_handler($page) { - if (!isset($page[0]) || empty($page[0])) { - $content = elgg_view('ecml/help'); - $body = elgg_view_layout('one_column_with_sidebar', array('content' => $content)); - echo elgg_view_page(elgg_echo('ecml:help'), $body); - } else { - // asking for detailed help about a keyword - $keyword = $page[0]; - $content = elgg_view('ecml/keyword_help', array('keyword' => $keyword)); - - if (get_input('ajax', FALSE)) { - echo $content; - exit; - } else { - $body = elgg_view_layout('one_column_with_sidebar', array('content' => $content)); - echo elgg_view_page(elgg_echo('ecml:help'), $body); - } - } - - return TRUE; -} - -/** - * Generate ECML given a URL or embed link and service. - * Doesn't check if the resource actually exists. - * Outputs JSON. - * - * @param unknown_type $page - */ -function ecml_generate_page_handler($page) { - $service = trim(get_input('service')); - $resource = trim(get_input('resource')); - - // if standard ECML is passed, guess the service from that instead - // only support one. - if (elgg_substr($resource, 0, 1) == '[') { - if ($keywords = ecml_extract_keywords($resource)) { - $keyword = $keywords[0]['keyword']; - $ecml_info = ecml_get_keyword_info($keyword); - $html = ecml_parse_string($resource); - - echo json_encode(array( - 'status' => 'success', - 'ecml' => $resource, - 'html' => $html - )); - - exit; - } - } - - if (!$service || !$resource) { - echo json_encode(array( - 'status' => 'error', - 'message' => elgg_echo('ecml:embed:invalid_web_service_keyword') - )); - - exit; - } - - $ecml_info = ecml_get_keyword_info($service); - - if ($ecml_info) { - // don't allow embedding for restricted. - if (isset($ecml_info['restricted'])) { - $result = array( - 'status' => 'error', - 'message' => elgg_echo('ecml:embed:cannot_embed'), - ); - } else { - // @todo pull this out into a function. allow optional arguments. - $ecml = "[$service " . sprintf($ecml_info['embed_format'], $resource) . ']'; - $html = ecml_parse_string($ecml, NULL); - $result = array( - 'status' => 'success', - 'ecml' => $ecml, - 'html' => $html - ); - } - } else { - $result = array( - 'status' => 'error', - 'message' => elgg_echo('ecml:embed:invalid_web_service_keyword') - ); - } - - echo json_encode($result); - exit; -} - -/** - * Display a admin area for ECML - * - * @param array $page - */ -function ecml_admin_page_handler($page) { - admin_gatekeeper(); - elgg_set_context('admin'); - $content = elgg_view('ecml/admin/ecml_admin'); - $body = elgg_view_layout('one_column_with_sidebar', array('content' => $content)); - echo elgg_view_page(elgg_echo('ecml:admin'), $body); -} - -/** - * Parses a registered view / context for supported keywords. - * - * @param unknown_type $hook - * @param unknown_type $entity_type - * @param unknown_type $return_value - * @param unknown_type $params - * @return string - */ -function ecml_parse_view($hook, $entity_type, $return_value, $params) { - global $CONFIG; - - return ecml_parse_string($return_value, $params['view']); -} - - -/** - * Register default keywords. - * - * @param unknown_type $hook - * @param unknown_type $type - * @param unknown_type $value - * @param unknown_type $params - * @return unknown_type - */ -function ecml_keyword_hook($hook, $type, $value, $params) { - // I keep going back and forth about entity and view. They're powerful, but - // a great way to let a site get hacked if the admin doesn't lock them down. - $keywords = array( - 'youtube' => array('params' => array('src', 'width', 'height'), 'embed_format' => 'src="%s"'), - 'slideshare' => array('params' => array('id', 'width', 'height'), 'embed_format' => 'id="%s"'), - 'vimeo' => array('params' => array('src', 'width', 'height'), 'embed_format' => 'src="%s"'), - 'googlemaps' => array('params' => array('src', 'width', 'height'), 'embed_format' => 'src="%s"'), - //'scribd' - 'blip.tv' => array('params' => array('width', 'height'), 'embed_format' => '%s'), - 'dailymotion' => array('params' => array('src', 'width', 'height'), 'embed_format' => 'src="%s"'), - 'livevideo' => array('params' => array('src', 'width', 'height'), 'embed_format' => 'src="%s"'), - 'redlasso' => array('params' => array('id', 'width', 'height'), 'embed_format' => 'id="%s"'), - ); - - foreach ($keywords as $keyword => $info) { - $value[$keyword] = array( - 'name' => elgg_echo("ecml:keywords:$keyword"), - 'view' => "ecml/keywords/$keyword", - 'description' => elgg_echo("ecml:keywords:$keyword:desc"), - 'usage' => elgg_echo("ecml:keywords:$keyword:usage"), - 'type' => 'web_service', - 'params' => $info['params'], - 'embed_format' => $info['embed_format'] - ); - } - - // default entity keyword - $value['entity'] = array( - 'name' => elgg_echo('ecml:keywords:entity'), - 'view' => "ecml/keywords/entity", - 'description' => elgg_echo("ecml:keywords:entity:desc"), - 'usage' => elgg_echo("ecml:keywords:entity:usage") - ); - - return $value; -} - -/** - * Register default views to parse - * - * @param unknown_type $hook - * @param unknown_type $type - * @param unknown_type $value - * @param unknown_type $params - */ -function ecml_views_hook($hook, $type, $value, $params) { - $value['annotation/generic_comment'] = elgg_echo('ecml:views:annotation_generic_comment'); - - return $value; -} - -/** - * Show the special Web Services embed section. - * - * @param unknown_type $hook - * @param unknown_type $type - * @param unknown_type $value - * @param unknown_type $params - */ -function ecml_embed_web_services_hook($hook, $type, $value, $params) { - // we're using a view override for this section's content - // so only need to pass the name. - $value['web_services'] = array( - 'name' => elgg_echo('ecml:embed:web_services') - ); - - return $value; -} - -/** - * Remove ecml code for elgg_strip_tags() - * - * @param unknown_type $hook - * @param unknown_type $type - * @param unknown_type $value - * @param unknown_type $params - */ -function ecml_strip_tags($hook, $type, $value, $params) { - return preg_replace(ECML_KEYWORD_REGEX, '', $value); -} - -// be sure to run after other plugins -elgg_register_event_handler('init', 'system', 'ecml_init', 9999); \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/admin/css.php b/mod/ecml/views/default/ecml/admin/css.php deleted file mode 100644 index 0b018733a..000000000 --- a/mod/ecml/views/default/ecml/admin/css.php +++ /dev/null @@ -1,156 +0,0 @@ - - -.ecml_admin_table { - width:100%; -} -.ecml_admin_table td, th { - border: 1px solid gray; - text-align: center; - padding: 5px; -} -.ecml_admin_table th, .ecml_keyword_desc { - font-weight: bold; -} -.ecml_row_odd { - background-color: #EEE; -} -.ecml_row_even { - -} -.ecml_restricted { - color: #555; -} - - -/* ecml embed web services list */ -.ecml_web_service_list { - margin:0; - padding:0; -} -.ecml_web_service_list li { - list-style: none; - margin:0 0 0 0; - padding:0; - /* display:inline; */ - -} -.ecml_web_service_list li a { - display:block; - float:left; - height:41px; - width:152px; - background-position: center center; - background-repeat: no-repeat; - text-indent: -900em; - border:2px solid transparent; - margin:0 20px 10px 0; -} -.ecml_web_service_list li a.selected { - border-color:#999999; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; -} -.ecml_web_service_list li a.youtube { - background-image: url(mod/ecml/graphics/logo_youtube.gif); - width:102px; -} -.ecml_web_service_list li a.slideshare { - background-image: url(mod/ecml/graphics/logo_slideshare.gif); -} -.ecml_web_service_list li a.vimeo { - background-image: url(mod/ecml/graphics/logo_vimeo.gif); - width:130px; -} -.ecml_web_service_list li a.googlemaps { - background-image: url(mod/ecml/graphics/logo_googlemaps.gif); -} -.ecml_web_service_list li a.blip_tv { - background-image: url(mod/ecml/graphics/logo_bliptv.gif); - width:102px; -} -.ecml_web_service_list li a.dailymotion { - background-image: url(mod/ecml/graphics/logo_dailymotion.gif); -} -.ecml_web_service_list li a.livevideo { - background-image: url(mod/ecml/graphics/logo_livevideo.gif); - width:166px; -} -.ecml_web_service_list li a.redlasso { - background-image: url(mod/ecml/graphics/logo_redlasso.gif); - background-position:center 4px; - width:130px; -} - -.embed_content_section { - border:none; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - background-color:#EEEEEE; - margin:10px 0 10px 0; - padding:5px; - width:auto; -} -.ecml_generated_code { - color:#666666; - font-size:85%; - font-style:normal; - line-height: 1.3em; - margin:5px 0; -} -.ecml_embed_instructions, -.ecml_embed_preview { - background-image: url(_graphics/elgg_sprites.png); - background-repeat: no-repeat; - background-position: 0px -367px; - padding-left: 12px; -} -.ecml_embed_instructions.open, -.ecml_embed_preview.open { - background-position: 0px -388px; -} -#embed_service_url { - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - background-color:#EEEEEE; - margin:10px 0 10px 0; - padding:5px; - width:auto; -} -#web_services_resource { - width:670px; -} -#url_status { - width:30px; - height:30px; - float:right; -} -#url_status.success { - background-image: url(mod/ecml/graphics/url_status.png); - background-repeat: no-repeat; - background-position: left top; -} -#url_status.failure { - background-image: url(mod/ecml/graphics/url_status.png); - background-repeat: no-repeat; - background-position: left bottom; -} -#embed_ecml_keyword_help, -#ecml_preview { - padding:10px; -} -#ecml_preview object, -#ecml_preview embed, -#ecml_preview iframe { - width: auto; - max-height:240px; -} -#embed_submit { - margin:10px 0 0 0; -} - - - diff --git a/mod/ecml/views/default/ecml/help.php b/mod/ecml/views/default/ecml/help.php deleted file mode 100644 index 4fca93a2a..000000000 --- a/mod/ecml/views/default/ecml/help.php +++ /dev/null @@ -1,28 +0,0 @@ -ecml_keywords; -$title = elgg_echo('ecml:keywords_title'); -$instructions = elgg_echo('ecml:keywords_instructions'); -$more_info = elgg_echo('ecml:keywords_instructions_more'); - -$keywords_html = ''; -foreach ($keywords as $keyword => $info) { - $desc = htmlentities($info['description']); - $keywords_html .= " -
[$keyword]
-
$desc
"; -} - -echo " -

$title

-

$instructions

-$more_info -
- $keywords_html -
-"; \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/help/blip.tv.php b/mod/ecml/views/default/ecml/help/blip.tv.php deleted file mode 100644 index bac4c99c3..000000000 --- a/mod/ecml/views/default/ecml/help/blip.tv.php +++ /dev/null @@ -1,12 +0,0 @@ -' . elgg_echo('ecml:keywords:blip.tv') . ''; -echo '

' . elgg_echo('ecml:keywords:blip.tv:desc') . '

'; -echo '

' . elgg_echo('ecml:keywords:blip.tv:usage') . '

'; - -?> - - \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/help/dailymotion.php b/mod/ecml/views/default/ecml/help/dailymotion.php deleted file mode 100644 index 80efa91e7..000000000 --- a/mod/ecml/views/default/ecml/help/dailymotion.php +++ /dev/null @@ -1,12 +0,0 @@ -' . elgg_echo('ecml:keywords:dailymotion') . ''; -echo '

' . elgg_echo('ecml:keywords:dailymotion:desc') . '

'; -echo '

' . elgg_echo('ecml:keywords:dailymotion:usage') . '

'; - -?> - - \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/help/googlemaps.php b/mod/ecml/views/default/ecml/help/googlemaps.php deleted file mode 100644 index d55c351fb..000000000 --- a/mod/ecml/views/default/ecml/help/googlemaps.php +++ /dev/null @@ -1,12 +0,0 @@ -' . elgg_echo('ecml:keywords:googlemaps') . ''; -echo '

' . elgg_echo('ecml:keywords:googlemaps:desc') . '

'; -echo '

' . elgg_echo('ecml:keywords:googlemaps:usage') . '

'; - -?> - - \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/help/livevideo.php b/mod/ecml/views/default/ecml/help/livevideo.php deleted file mode 100644 index 1343a34da..000000000 --- a/mod/ecml/views/default/ecml/help/livevideo.php +++ /dev/null @@ -1,12 +0,0 @@ -' . elgg_echo('ecml:keywords:livevideo') . ''; -echo '

' . elgg_echo('ecml:keywords:livevideo:desc') . '

'; -echo '

' . elgg_echo('ecml:keywords:livevideo:usage') . '

'; - -?> - - \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/help/redlasso.php b/mod/ecml/views/default/ecml/help/redlasso.php deleted file mode 100644 index 07b497913..000000000 --- a/mod/ecml/views/default/ecml/help/redlasso.php +++ /dev/null @@ -1,13 +0,0 @@ -' . elgg_echo('ecml:keywords:redlasso') . ''; -echo '

' . elgg_echo('ecml:keywords:redlasso:desc') . '

'; -echo '

' . elgg_echo('ecml:keywords:redlasso:usage') . '

'; - -?> - - - diff --git a/mod/ecml/views/default/ecml/help/slideshare.php b/mod/ecml/views/default/ecml/help/slideshare.php deleted file mode 100644 index 45ada4b54..000000000 --- a/mod/ecml/views/default/ecml/help/slideshare.php +++ /dev/null @@ -1,12 +0,0 @@ -' . elgg_echo('ecml:keywords:slideshare') . ''; -echo '

' . elgg_echo('ecml:keywords:slideshare:desc') . '

'; -echo '

' . elgg_echo('ecml:keywords:slideshare:usage') . '

'; - -?> - - \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/help/vimeo.php b/mod/ecml/views/default/ecml/help/vimeo.php deleted file mode 100644 index e5f6ae28a..000000000 --- a/mod/ecml/views/default/ecml/help/vimeo.php +++ /dev/null @@ -1,12 +0,0 @@ -' . elgg_echo('ecml:keywords:vimeo') . ''; -echo '

' . elgg_echo('ecml:keywords:vimeo:desc') . '

'; -echo '

' . elgg_echo('ecml:keywords:vimeo:usage') . '

'; - -?> - - \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/help/youtube.php b/mod/ecml/views/default/ecml/help/youtube.php deleted file mode 100644 index 53be4a3c0..000000000 --- a/mod/ecml/views/default/ecml/help/youtube.php +++ /dev/null @@ -1,12 +0,0 @@ -' . elgg_echo('ecml:keywords:youtube') . ''; -echo '

' . elgg_echo('ecml:keywords:youtube:desc') . '

'; -echo '

' . elgg_echo('ecml:keywords:youtube:usage') . '

'; - -?> - - \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/input_ext.php b/mod/ecml/views/default/ecml/input_ext.php deleted file mode 100644 index d5da6dd13..000000000 --- a/mod/ecml/views/default/ecml/input_ext.php +++ /dev/null @@ -1,10 +0,0 @@ - -ECML \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keyword_help.php b/mod/ecml/views/default/ecml/keyword_help.php deleted file mode 100644 index 6f9021fdd..000000000 --- a/mod/ecml/views/default/ecml/keyword_help.php +++ /dev/null @@ -1,18 +0,0 @@ - 'embed')); - $link_href = elgg_http_add_url_query_elements($src, array('source' => 'embed')); - - echo " -

-"; -} \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/dailymotion.php b/mod/ecml/views/default/ecml/keywords/dailymotion.php deleted file mode 100644 index 4060d6117..000000000 --- a/mod/ecml/views/default/ecml/keywords/dailymotion.php +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - -

-"; -} \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/entity.php b/mod/ecml/views/default/ecml/keywords/entity.php deleted file mode 100644 index 73491f6a3..000000000 --- a/mod/ecml/views/default/ecml/keywords/entity.php +++ /dev/null @@ -1,22 +0,0 @@ - $entity->getURL(), - 'title' => $entity->title, - 'text' => $entity->title, - 'class' => "embeded_file link", - // abusing the js attribute - 'js' => "style=\"background-image:url({$entity->getIcon('tiny')})\"" - - )); -} else { - echo elgg_echo('ecml:entity:invalid'); -} \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/googlemaps.php b/mod/ecml/views/default/ecml/keywords/googlemaps.php deleted file mode 100644 index 2e13f9f43..000000000 --- a/mod/ecml/views/default/ecml/keywords/googlemaps.php +++ /dev/null @@ -1,23 +0,0 @@ - 'embed')); - $link_href = elgg_http_add_url_query_elements($src, array('source' => 'embed')); - - echo " - -
-" . elgg_echo('ecml:googlemaps:view_larger_map') . " -"; -} \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/livevideo.php b/mod/ecml/views/default/ecml/keywords/livevideo.php deleted file mode 100644 index b445f4575..000000000 --- a/mod/ecml/views/default/ecml/keywords/livevideo.php +++ /dev/null @@ -1,25 +0,0 @@ - - -

-"; -} \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/redlasso.php b/mod/ecml/views/default/ecml/keywords/redlasso.php deleted file mode 100644 index 462865bec..000000000 --- a/mod/ecml/views/default/ecml/keywords/redlasso.php +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - -"; -} \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/slideshare.php b/mod/ecml/views/default/ecml/keywords/slideshare.php deleted file mode 100644 index 34db6aed5..000000000 --- a/mod/ecml/views/default/ecml/keywords/slideshare.php +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - -"; -} \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/user_list.php b/mod/ecml/views/default/ecml/keywords/user_list.php deleted file mode 100644 index b1c398e2e..000000000 --- a/mod/ecml/views/default/ecml/keywords/user_list.php +++ /dev/null @@ -1,43 +0,0 @@ - 'user', - 'limit' => $limit -); - -if ($only_with_avatars == TRUE) { - $options['metadata_name_value_pairs'] = array('name' => 'icontime', 'operand' => '!=', 'value' => 0); -} - -switch ($list_type) { - case 'newest': - $options['order_by'] = 'e.time_created DESC'; - break; - - case 'online': - // show people with a last action of < 10 minutes. - $last_action = time() - 10 * 60; - $options['joins'] = array("JOIN {$vars['config']->dbprefix}users_entity ue on ue.guid = e.guid"); - $options['wheres'] = array("ue.last_action > $last_action"); - break; - - case 'random': - $options['order_by'] = 'RAND()'; - break; - - default: - break; -} - -$users = elgg_get_entities_from_metadata($options); - -echo elgg_view_entity_list($users, count($users), 0, $limit, FALSE, FALSE, FALSE); \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/vimeo.php b/mod/ecml/views/default/ecml/keywords/vimeo.php deleted file mode 100644 index 263eb3740..000000000 --- a/mod/ecml/views/default/ecml/keywords/vimeo.php +++ /dev/null @@ -1,50 +0,0 @@ - $vid, 'server' => 'vimeo.com'); - - $params = array( - 'show_title' => 1, - 'show_byline' => 1, - 'show_portrait' => 0, - 'color' => '', - 'fullscreen' => 1 - ); - - foreach ($params as $param => $default) { - $query[$param] = (isset($vars[$param])) ? $vars[$param] : $default; - } - - $query_str = http_build_query($query); - $movie_url .= $query_str; - - echo " - - - - - - - - "; -} \ No newline at end of file diff --git a/mod/ecml/views/default/ecml/keywords/youtube.php b/mod/ecml/views/default/ecml/keywords/youtube.php deleted file mode 100644 index c212f6841..000000000 --- a/mod/ecml/views/default/ecml/keywords/youtube.php +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - "; -} \ No newline at end of file diff --git a/mod/ecml/views/default/embed/web_services/content.php b/mod/ecml/views/default/embed/web_services/content.php deleted file mode 100644 index 9e7ffbbb4..000000000 --- a/mod/ecml/views/default/embed/web_services/content.php +++ /dev/null @@ -1,220 +0,0 @@ - ECML converter for supported 3rd party services. - * - * Tries to automatically detect which site/ecml to use. - * Will highlight the correct one. - * If can find none, will show an error. - * Lets users click to force an ECML keyword, but will display a warning. - * - */ - -$internal_name = elgg_get_array_value('internal_name', $vars); - -$keywords = ecml_get_keywords(); -elgg_sort_3d_array_by_value($keywords, 'name'); - -$keyword_js_array = array(); -$keywords_html = ""; - -$keywords_js = json_encode($keyword_js_array); - -$input = elgg_view('input/text', array( - 'internalid' => 'web_services_resource' -)); - -$embed = elgg_view('input/submit', array( - 'name' => 'buggy', - 'internalid' => 'embed_submit', - 'type' => 'button', - 'value' => elgg_echo('embed:embed'), - 'class' => 'elgg-submit-button disabled', - 'disabled' => TRUE -)); - -echo '

' . elgg_echo('ecml:embed:instructions') . '

'; - -echo $keywords_html; - -echo ""; - -echo "
"; -echo "
"; - -echo ""; - -echo "
"; -echo $embed; - -?> - - \ No newline at end of file diff --git a/mod/ecml/views/default/settings/ecml/edit.php b/mod/ecml/views/default/settings/ecml/edit.php deleted file mode 100644 index 8c1a3b4a1..000000000 --- a/mod/ecml/views/default/settings/ecml/edit.php +++ /dev/null @@ -1,133 +0,0 @@ -ecml_parse_views; -$keywords = $vars['config']->ecml_keywords; -$perms = $vars['config']->ecml_permissions; - -ksort($views); -ksort($keywords); - -echo '

' . elgg_echo('ecml:admin:instruction') . '

'; - -// yes I'm using a table because this is table. -$form_body = <<<___END - - - -___END; - -foreach ($views as $view => $view_desc) { - $form_body .= ""; - $n++; -} -$form_body .= ''; - -$odd = 'odd'; -foreach ($keywords as $keyword => $keyword_info) { - $keyword_desc = $keyword_info['description']; - if (isset($keyword_info['restricted'])) { - $restricted = elgg_echo('ecml:admin:restricted'); - $form_body .= " - - - "; - } else { - $form_body .= " - - - "; - } - foreach ($views as $view => $view_info) { - // if this is restricted and we're not on the specified view don't allow changes - // since we don't save this, no need to pass a name - if (isset($keyword_info['restricted'])) { - $checked = (in_array($view, $keyword_info['restricted'])) ? 'checked="checked"' : ''; - $form_body .= ""; - } else { - $checked = (!in_array($keyword, $perms[$view])) ? 'checked="checked"' : ''; - - // ooook. input/checkboxes isn't overly useful. - // do it ourself. - $form_body .= ""; - } - } - $form_body .= ''; - - $odd = ($odd == 'odd') ? 'even' : 'odd'; -} - -$form_body .= '
 $view_desc
$keyword ($restricted)
$keyword
'; - -echo $form_body; - -?> - -- cgit v1.2.3