r29485 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r29484‎ | r29485 | r29486 >
Date:08:47, 9 January 2008
Author:dale
Status:old
Tags:
Comment:
Better internationalization support matching SemanticForms messages implementation
(pre request of Betawiki / siebrand)
Modified paths:
  • /trunk/extensions/MetavidWiki/README (modified) (history)
  • /trunk/extensions/MetavidWiki/includes/MV_DefaultSettings.php (modified) (history)
  • /trunk/extensions/MetavidWiki/includes/MV_GlobalFunctions.php (modified) (history)
  • /trunk/extensions/MetavidWiki/includes/MV_Hooks.php (modified) (history)
  • /trunk/extensions/MetavidWiki/languages/MV_Language.php (added) (history)
  • /trunk/extensions/MetavidWiki/languages/MV_LanguageEn.php (replaced) (history)
  • /trunk/extensions/MetavidWiki/languages/MV_Messages.php (added) (history)
  • /trunk/extensions/MetavidWiki/skins/images/delete.png (added) (history)

Diff [purge]

Index: trunk/extensions/MetavidWiki/includes/MV_GlobalFunctions.php
@@ -7,6 +7,7 @@
88 *
99 */
1010 define('MV_VERSION','0.1 (pre alpha)');
 11+
1112 if ( !defined( 'MEDIAWIKI' ) ) die( 1 );
1213 /**
1314 * Switch on Metavid MediaWiki. This function must be called in LocalSettings.php
@@ -19,6 +20,10 @@
2021 require_once( dirname(__FILE__) . '/../ExtensionFunctions.php' );
2122 }
2223
 24+$wgExtensionMessagesFiles['MetavidWiki'] =$mvgIP . '/languages/MV_Messages.php';
 25+require_once($mvgIP . '/languages/MV_Language.php');
 26+
 27+
2328 //setup autoload classes:
2429 $wgAutoloadClasses['MV_Overlay'] = dirname(__FILE__) . '/MV_MetavidInterface/MV_Overlay.php';
2530 $wgAutoloadClasses['MV_Component'] = dirname(__FILE__) . '/MV_MetavidInterface/MV_Component.php';
@@ -180,9 +185,6 @@
181186 $mvNamespaceIndex = 100;
182187 }
183188
184 -
185 - mvfInitContentLanguage($wgLanguageCode);
186 -
187189 //register the namespace:MVD & Metavid
188190 define('MV_NS_STREAM', $mvNamespaceIndex);
189191 define('MV_NS_STREAM_TALK', $mvNamespaceIndex+1);
@@ -191,10 +193,13 @@
192194 define('MV_NS_MVD', $mvNamespaceIndex+4);
193195 define('MV_NS_MVD_TALK', $mvNamespaceIndex+5);
194196
 197+ mvfInitContentLanguage($wgLanguageCode);
 198+
 199+ //print_r($mvgContLang);
 200+ //print_r($mvgContLang->getNamespaces());
195201 // Register namespace identifiers
196 - if (!is_array($wgExtraNamespaces)) { $wgExtraNamespaces=array(); }
197 - $wgExtraNamespaces = $wgExtraNamespaces + $mvgContLang->getNamespaceArray();
198 -
 202+ if (!is_array($wgExtraNamespaces)) { $wgExtraNamespaces=array(); }
 203+ $wgExtraNamespaces = $wgExtraNamespaces + $mvgContLang->getNamespaces();
199204 //update the mvLastNamespaceIndex for however many name spaces are established above:
200205 $mvLastNamespaceIndex = $mvNamespaceIndex +6;
201206 }
@@ -218,12 +223,13 @@
219224
220225 if (file_exists($mvgIP . '/languages/'. $mvContLangClass . '.php')) {
221226 include_once( $mvgIP . '/languages/'. $mvContLangClass . '.php' );
 227+ //print "included: " . $mvgIP . '/languages/'. $mvContLangClass . '.php';
222228 }
223229
224230 // fallback if language not supported
225231 if ( !class_exists($mvContLangClass)) {
226232 include_once($mvgIP . '/languages/MV_LanguageEn.php');
227 - $mvContLangClass = 'SMW_LanguageEn';
 233+ $mvContLangClass = 'MV_LanguageEn';
228234 }
229235
230236 $mvgContLang = new $mvContLangClass();
@@ -244,7 +250,6 @@
245251 if (file_exists($mvgIP . '/languages/'. $mvLangClass . '.php')) {
246252 include_once( $mvgIP . '/languages/'. $mvLangClass . '.php' );
247253 }
248 -
249254 // fallback if language not supported
250255 if ( !class_exists($mvLangClass)) {
251256 global $mvgContLang;
@@ -253,27 +258,35 @@
254259 $mvgLang = new $mvLangClass();
255260 }
256261 }
257 -
258262 /**
259 - * Initialize messages. These settings must be applied later on, since
 263+ * Initialize messages - these settings must be applied later on, since
260264 * the MessageCache does not exist yet when the settings are loaded in
261265 * LocalSettings.php.
 266+ * Function based on version in ContributionScores extension
262267 */
263268 function mvfInitMessages() {
264 - global $mvgMessagesInPlace; // record whether the function was already called
265 - if ($mvgMessagesInPlace) { return; }
 269+ global $wgVersion, $wgExtensionFunctions;
 270+ if (version_compare($wgVersion, '1.11', '>=' )) {
 271+ wfLoadExtensionMessages( 'MetavidWiki' );
 272+ } else {
 273+ $wgExtensionFunctions[] = 'sffLoadMessagesManually';
 274+ }
 275+}
266276
267 - global $wgMessageCache, $mvgContLang, $mvgLang, $wgContLang, $wgLang;
268 - // make sure that language objects exist
269 - mvfInitContentLanguage($wgContLang->getCode());
270 - mvfInitUserLanguage($wgLang->getCode());
 277+/**
 278+ * Setting of message cache for versions of MediaWiki that do not support
 279+ * wgExtensionFunctions - based on ceContributionScores() in
 280+ * ContributionScores extension
 281+ */
 282+function sffLoadMessagesManually() {
 283+ global $mvgIP, $wgMessageCache;
271284
272 - $wgMessageCache->addMessages($mvgContLang->getContentMsgArray(), $wgContLang->getCode());
273 - $wgMessageCache->addMessages($mvgLang->getUserMsgArray(), $wgLang->getCode());
274 -
275 - $mvgMessagesInPlace = true;
 285+ # add messages
 286+ require($mvgIP . '/languages/MV_Messages.php');
 287+ foreach($messages as $key => $value) {
 288+ $wgMessageCache->addMessages($messages[$key], $key);
 289+ }
276290 }
277 -
278291 /*
279292 * Ajax Hooks
280293 */
Index: trunk/extensions/MetavidWiki/includes/MV_Hooks.php
@@ -87,8 +87,8 @@
8888 //remove article with that title:
8989 MV_Index::remove_by_wiki_title($article->mTitle->getDBkey());
9090 }else if($article->mTitle->getNamespace()==MV_NS_STREAM){
91 - //remove all associative metdata and stream:
9291
 92+
9393 }
9494 return true; // always return true, in order not to stop MW's hook processing!
9595 }
Index: trunk/extensions/MetavidWiki/includes/MV_DefaultSettings.php
@@ -115,10 +115,10 @@
116116 # [metavid_live] -- used for the setting up the scripts for a live stream.
117117 # [upload_file] -- used video file uploads
118118 # [external_file] -- used to add external files via http urls (such as a file from archive.org)
119 -//$mvStreamTypePermission['metavid_file']= array('sysop', 'bot');
120 -//$mvStreamTypePermission['metavid_live']= array();
121 -//$mvStreamTypePermission['upload_file']= array();
122 -//$mvStreamTypePermission['external_file']=array();
 119+$mvStreamTypePermission['metavid_file']= array('sysop', 'bot');
 120+$mvStreamTypePermission['metavid_live']= array();
 121+$mvStreamTypePermission['upload_file']= array();
 122+$mvStreamTypePermission['external_file']=array();
123123
124124 $wgGroupPermissions['user']['mv_delete_mvd'] = true;
125125 $wgGroupPermissions['sysop']['mv_edit_stream']=true;
Index: trunk/extensions/MetavidWiki/languages/MV_Messages.php
@@ -0,0 +1,201 @@
 2+<?php
 3+/*
 4+ * MV_Messages.php Created on Jan 8, 2008
 5+ *
 6+ * Internationalization file for MetavidWiki extension
 7+ */
 8+ $messages = array();
 9+
 10+ /** English
 11+ * @author Michael Dale
 12+ */
 13+$messages['en'] = array(
 14+ 'metavid' => 'Metavid Page',
 15+ 'mv_missing_stream' => 'Missing Stream: $1',
 16+
 17+ #stream/files key descriptions:
 18+ 'mv_ogg_low_quality' =>'Web Stremable ogg theora, hosted on metavid',
 19+ 'mv_ogg_high_quality' =>'High Quality ogg theora, hosted on metavid',
 20+ 'mv_archive_org_link' =>'Links into Archive.org mpeg2 originals',
 21+
 22+ 'mv_error_stream_missing' =>'<span class="error">Error: There is no video stream associated with this metadata.</span><br> Please report this to the site adimistrator.<br> <i>stream metadata interface is disabled</i>',
 23+
 24+ #add/edit stream text:
 25+ 'mv_stream_meta' =>'Stream Page',
 26+ 'mv_add_stream' =>'Metavd Add Stream',
 27+ 'mv_edit_stream' =>'Metavid Edit Stream',
 28+ 'mv_add_stream_page' =>'Mv Add Stream',
 29+ 'mv_edit_strea_docu' =>'<p>Edit stream <b>admin</b> <br> for normal user view/edit see $1 page',
 30+ 'mv_add_stream_docu' =>'<p>Add a new Stream with the field below.</p><p> More information is given on the <a href="$1">help page for add stream</a>.</p>',
 31+ 'mv_add_stream_submit' =>'Add stream',
 32+ 'mv_no_stream_files' =>'No Existing Stream files',
 33+ 'mv_edit_stream_files' =>'Edit stream files',
 34+ 'mv_path_type_url_anx' =>'full media url ',
 35+ 'mv_path_type_wiki_title' =>'wiki media title',
 36+ 'mv_path_type_label' =>'path type',
 37+ 'mv_base_offset_label' =>'base offset',
 38+ 'mv_duration_label' =>'duration',
 39+ 'mv_file_desc_label' =>'stream desc msg',
 40+ 'mv_delete_stream_file' =>'delete stream file reference',
 41+ 'mv_save_changes' =>'Save Changes',
 42+ 'mv_file_with_same_desc' =>'Error: stream file with same description key <i>$1</i> already present',
 43+ 'mv_updated_stream_files' =>'Updated Stream Files Record',
 44+ 'mv_removed_file_stream' =>'Removed Stream file: $1',
 45+ 'mv_missing_stream_text' =>'The stream you requested <b>$1</b> is not available.<br>'.
 46+ 'You may want to check the <a href="$2">Stream List</a><br>'.
 47+ 'Or you many want to <a href="$3">Add The Stream</a> ',
 48+
 49+ 'mv_add_stream_file' =>'Add Stream File',
 50+ 'mv_media_path' =>'media path',
 51+ 'mv_file_list' =>'Stream Files',
 52+ 'mv_label_stream_name' =>'Stream Name',
 53+ 'mv_label_stream_desc' =>'Stream Description',
 54+ 'add_stream_permission' =>'You lack permission to add a new stream ',
 55+ 'edit_stream_missing' => 'Missing stream name',
 56+ 'mv_stream_already_exists' =>'The stream <a href="$2">$1</a> already exists',
 57+ 'mv_summary_add_stream' =>'stream added by form',
 58+ 'mv_error_stream_insert' =>'failed to insert stream',
 59+ 'mv_redirect_and_delete_reason' =>'removed redirect page',
 60+ 'mv_remove_reason' =>'Reason For deletion:',
 61+ 'mv_stream_delete_warrning' =>'<b>Removing this Stream will also remove $1 pieces of assocative metadata</b><br>',
 62+
 63+ #stream type
 64+ 'mv_label_stream_type' =>'Stream Type',
 65+ 'mv_metavid_file' =>'Existing File on Server',
 66+ 'mv_metavid_live' =>'Set Up Live Stream',
 67+ 'mv_upload_file' =>'Upload file',
 68+ 'mv_external_file' =>'External File',
 69+ 'mv_stream_delete_warning' =>'Deleting this Stream will additionally remove $1 pages of metadata',
 70+
 71+ #tools
 72+ 'mv_tool_search' =>'Search',
 73+ 'mv_tool_search_title' =>'Search within this Stream',
 74+ 'mv_tool_navigate' =>'Navigate',
 75+ 'mv_tool_navigate_title' =>'Navigate the full stream',
 76+ 'mv_tool_export' =>'Export',
 77+ 'mv_tool_export_title' =>'Export Stream Metadata',
 78+ 'mv_tool_embed' =>'Embed',
 79+ 'mv_tool_embed_title' =>'Embed options for the current requested segment',
 80+ 'mv_tool_overlay' =>'Template Overlays',
 81+ 'mv_tool_overlay_title' =>'Template based metadata Overlays',
 82+ 'mv_results_found_for' =>'Search Results <b>$1</b> to <b>$2</b> of <b>$3</b> for:',
 83+
 84+ #mvd types:
 85+ 'ht_en' =>'Transcript',
 86+ 'ht_en_desc' =>'English transcripts. This overlay type is for text which spoken in the video stream. Links can be added, but all text should be what is spoken in the video stream.',
 87+ 'anno_en' =>'Annotations and Categories',
 88+ 'anno_en_desc' =>'English categorizations and annotations. This overlay can be used to \"tag\"/Categorize sections of video or to add annotative information that is not spoken text',
 89+
 90+
 91+ 'mv_data_page_title' =>'$1 for $2 from $3 ',
 92+ 'mv_time_separator' =>' to ',
 93+
 94+ # Messages for Special List stream
 95+ 'mv_list_streams' =>'Metavid List Streams',
 96+ 'mv_list_streams_page' =>'Mv List Streams',
 97+ 'mv_list_streams_docu' => 'The following streams exist:',
 98+ 'mv_list_streams_none' => 'No streams exist',
 99+
 100+ #messages for metavid export feed:
 101+ 'mvvideofeed' => 'Metavid Video Feed Export',
 102+ 'video_feed_cat' =>'Video Feed for Category:',
 103+ 'mv_cat_search_note' =>'Note: Categories only lists top level categories, for all metadata in category ranges search for $1',
 104+
 105+ # Messages for MV_DataPage
 106+ 'mv_mvd_linkback' =>'Part of stream $1 <br>Jump to Stream View: $2<br>',
 107+
 108+ #messages for MVD pages
 109+ 'mvBadMVDtitle' =>'missing type, stream missing, or not valid time format',
 110+ 'mvMVDFormat' => 'MVD title should be of format: mvd:type:stream_name/start_time/end_time',
 111+
 112+ #messeges for interface mvd pages:
 113+ 'mv_play' =>'Play',
 114+ 'mv_edit' =>'Edit',
 115+ 'mv_history' =>'History',
 116+ 'mv_history_title' =>'Edit and Video Alignment History',
 117+ 'mv_edit_title' =>'Edit Text',
 118+ 'mv_edit_adjust_title' =>'Edit Text and Video Alignment',
 119+ 'mv_remove' =>'remove',
 120+ 'mv_remove_title' =>'remove this meta data segment',
 121+ 'mv_adjust' =>'adjust',
 122+ 'mv_adjust_submit' =>'Save Adjustment',
 123+ 'mv_adjust_title' =>'Adjust Start and End time',
 124+ 'mv_adjust_preview' =>'Preview Adjustment',
 125+ 'mv_adjust_preview_stop' =>'Stop Preview',
 126+ 'mv_adjust_default_reason' =>'metavid interface adjust',
 127+ 'mv_adjust_old_title_missing'=>'The page you are tyring to move from ($1) does not exist',
 128+ 'mv_adjust_ok_move' =>'Success, adjusting...',
 129+
 130+ 'mv_start_desc' =>'Start Time',
 131+ 'mv_end_desc' =>'End Time',
 132+
 133+ #search
 134+ 'mediasearch' =>'Media Search',
 135+ 'mv_search_sel_t' =>'Select Search Type',
 136+ 'mv_run_search' =>'Run Search',
 137+ 'mv_add_filter' =>'Add Filter',
 138+ 'mv_search_match' =>'Search Text',
 139+ 'mv_search_spoken_by' =>'Spoken By',
 140+ 'mv_search_category' =>'Category',
 141+ 'mv_search_smw_property' =>'Semantic Properties',
 142+ 'mv_search_smw_property_numeric'=>'Numeric Semantic Value',
 143+ 'mv_search_and' =>'and',
 144+ 'mv_search_or' =>'or',
 145+ 'mv_search_not' =>'not',
 146+ 'mv_search_stream_name' =>'Stream Name',
 147+ 'mv_stream_name' =>'stream name',
 148+
 149+
 150+ 'mv_match' =>'match',
 151+ 'mv_spoken_by' =>'spoken by',
 152+ 'mv_category' =>'category',
 153+
 154+
 155+ 'mv_search_no_results' =>'No media matches ',
 156+ 'mv_media_matches' =>'Media matches ',
 157+ 'mv_remove_filter' =>'remove filter',
 158+ 'mv_advaced_search' =>'Advanced Media Search',
 159+ 'mv_expand_play' =>'Expand and Play in-line',
 160+ 'mv_view_in_stream_interface'=>'View in Stream Interface',
 161+ 'mv_view_wiki_page' =>'View wiki page',
 162+ 'mv_error_mvd_not_found' =>'Error mvd not found',
 163+ 'mv_match_text' =>' ~ $1 matches ',
 164+
 165+ #sequence text:
 166+ 'mv_edit_sequence' =>'Editing Sequence:$1',
 167+ 'mv_sequence_player_title' =>'sequence player',
 168+
 169+ 'mv_save_sequence' =>'Save Sequence',
 170+ 'mv_sequence_page_desc' =>'Save The Current Sequence',
 171+ 'mv_sequence_add' =>'Add clips',
 172+ 'mv_sequence_add_manual' =>'Add By Name',
 173+ 'mv_sequence_add_manual_desc'=>'Add clips by Stream Name',
 174+ 'mv_sequence_add_search' =>'Add By Search',
 175+ 'mv_sequence_add_search_desc'=>'Add clips by Media Search',
 176+ 'mv_seq_add_end' =>'Add to End of Sequence',
 177+
 178+ 'mv_sequence_timeline' =>'Sequence Timeline:',
 179+ 'mv_edit_sequence_desc_help'=>'Sequence Description<br>',
 180+ 'mv_edithelpsequence' =>'Help:Sequence_Editing',
 181+ 'mv_seq_summary' =>'Sequence Edit Summary',
 182+ 'mv_add_clip_by_name' =>'Add Clip By Name',
 183+
 184+
 185+
 186+ #mv tools
 187+ 'mv_export_cmml' =>'export cmml',
 188+ 'mv_search_stream' =>'Search Stream',
 189+ 'mv_navigate_stream' =>'Navigate Full Stream',
 190+ 'mv_embed_options' =>'Embed Options',
 191+ 'mv_overlay' =>'Overlay Controls',
 192+ 'mv_stream_tool_heading' =>'Stream Tools',
 193+ 'mv_tool_missing' =>'tool request ($1) does not exist',
 194+ 'mv_bad_tool_request' =>'bad tool line should be form: tool_name|tool_display_name',
 195+
 196+ #msg for overlay interface:
 197+ 'mv_search_stream' =>'Search Stream',
 198+ 'mv_search_stream_title' =>'Search the Current Stream',
 199+ 'mv_new_ht_en' =>'New Transcript',
 200+ 'mv_new_anno_en' =>'New Tag or Annotation',
 201+);
 202+?>
Index: trunk/extensions/MetavidWiki/languages/MV_Language.php
@@ -0,0 +1,68 @@
 2+<?php
 3+/*
 4+ * MV_Language.php Created on Jan 8, 2008
 5+ *
 6+ * All Metavid Wiki code is Released under the GPL2
 7+ * for more info visit http:/metavid.ucsc.edu/code
 8+ *
 9+ * @author Michael Dale
 10+ * @email dale@ucsc.edu
 11+ * @url http://metavid.ucsc.edu
 12+ */
 13+ /**
 14+ * Base class for all language classes - a truncated version of Semantic
 15+ * MediaWiki's 'SMW_Language' class
 16+ */
 17+abstract class MV_Language {
 18+
 19+ // arrays for the names of special properties and namespaces -
 20+ // all messages are stored in MV_Messages.php
 21+ protected $m_SpecialProperties;
 22+ protected $m_Namespaces;
 23+
 24+ // By default, every language has English-language aliases for
 25+ // special properties and namespaces
 26+ /*protected $m_SpecialPropertyAliases = array(
 27+ 'Has default form' => SF_SP_HAS_DEFAULT_FORM,
 28+ 'Has alternate form' => SF_SP_HAS_ALTERNATE_FORM
 29+ );*/
 30+
 31+ protected $m_NamespaceAliases = array(
 32+ 'Stream' => MV_NS_STREAM,
 33+ 'Stream_talk' => MV_NS_STREAM_TALK,
 34+ 'Sequence' => MV_NS_SEQUENCE,
 35+ 'Sequence_talk' => MV_NS_SEQUENCE_TALK,
 36+ 'MVD' => MV_NS_MVD,
 37+ 'MVD_talk' => MV_NS_MVD_TALK
 38+ );
 39+
 40+ /**
 41+ * Function that returns an array of namespace identifiers.
 42+ */
 43+ function getNamespaces() {
 44+ return $this->m_Namespaces;
 45+ }
 46+
 47+ /**
 48+ * Function that returns an array of namespace aliases, if any.
 49+ */
 50+ function getNamespaceAliases() {
 51+ return $this->m_NamespaceAliases;
 52+ }
 53+
 54+ /**
 55+ * Function that returns the labels for the special properties.
 56+ */
 57+ function getSpecialPropertiesArray() {
 58+ return $this->m_SpecialProperties;
 59+ }
 60+
 61+ /**
 62+ * Aliases for special properties, if any.
 63+ */
 64+ function getSpecialPropertyAliases() {
 65+ return $this->m_SpecialPropertyAliases;
 66+ }
 67+
 68+}
 69+?>
Index: trunk/extensions/MetavidWiki/languages/MV_LanguageEn.php
@@ -12,256 +12,16 @@
1313 */
1414 if ( !defined( 'MEDIAWIKI' ) ) die( 1 );
1515
16 -class MV_LanguageEn {
1716
18 -/* private */ var $mvContentMessages = array(
19 - 'mv_missing_stream_text'=>'The stream you requested <b>$1</b> is not available.<br>
20 - You may want to check the <a href="$2">Stream List</a><br>
21 - Or you many want to <a href="$3">Add The Stream</a> '
22 -);
 17+class MV_LanguageEn extends MV_Language {
2318
24 -/* private */ var $mvUserMessages = array(
25 - 'metavid' => 'Metavid Page',
26 - 'mv_missing_stream' => 'Missing Stream: $1',
27 -
28 - #stream/files key descriptions:
29 - 'mv_ogg_low_quality'=>'Web Stremable ogg theora, hosted on metavid',
30 - 'mv_ogg_high_quality'=>'High Quality ogg theora, hosted on metavid',
31 - 'mv_archive_org_link'=>'Links into Archive.org mpeg2 originals',
32 -
33 - 'mv_error_stream_missing'=>'<span class="error">Error: There is no video stream associated with this metadata.</span><br> Please report this to the site adimistrator.<br> <i>stream metadata interface is disabled</i>',
34 -
35 - #add/edit stream text:
36 - 'mv_stream_meta'=>'Stream Page',
37 - 'mv_add_stream'=>'Metavd Add Stream',
38 - 'mv_edit_stream'=>'Metavid Edit Stream',
39 - 'mv_add_stream_page'=>'Mv Add Stream',
40 - 'mv_edit_strea_docu'=>'<p>Edit stream <b>admin</b> <br> for normal user view/edit see $1 page',
41 - 'mv_add_stream_docu' => '<p>Add a new Stream with the field below.</p><p> More information is given on the <a href="$1">help page for add stream</a>.</p>',
42 - 'mv_add_stream_submit'=>'Add stream',
43 - 'mv_no_stream_files' =>'No Existing Stream files',
44 - 'mv_edit_stream_files'=>'Edit stream files',
45 - 'mv_path_type_url_anx'=>'full media url ',
46 - 'mv_path_type_wiki_title'=>'wiki media title',
47 - 'mv_path_type_label'=>'path type',
48 - 'mv_base_offset_label'=>'base offset',
49 - 'mv_duration_label'=>'duration',
50 - 'mv_file_desc_label'=>'stream desc msg',
51 - 'mv_delete_stream_file'=>'delete stream file reference',
52 - 'mv_save_changes'=>'Save Changes',
53 - 'mv_file_with_same_desc'=>'Error: stream file with same description key <i>$1</i> already present',
54 - 'mv_updated_stream_files'=>'Updated Stream Files Record',
55 - 'mv_removed_file_stream'=>'Removed Stream file: $1',
56 -
57 - 'mv_add_stream_file'=>'Add Stream File',
58 - 'mv_media_path'=>'media path',
59 - 'mv_file_list'=>'Stream Files',
60 - 'mv_label_stream_name'=>'Stream Name',
61 - 'mv_label_stream_desc'=>'Stream Description',
62 - 'add_stream_permission'=>'You lack permission to add a new stream ',
63 - 'edit_stream_missing' => 'Missing stream name',
64 - 'mv_stream_already_exists'=>'The stream <a href="$2">$1</a> already exists',
65 - 'mv_summary_add_stream'=>'stream added by form',
66 - 'mv_error_stream_insert'=>'failed to insert stream',
67 - 'mv_redirect_and_delete_reason'=>'removed redirect page',
68 - 'mv_remove_reason'=>'Reason For deletion:',
69 - 'mv_stream_delete_warrning'=>'<b>Removing this Stream will also remove $1 pieces of assocative metadata</b><br>',
70 -
71 - #stream type
72 - 'mv_label_stream_type'=>'Stream Type',
73 - 'mv_metavid_file'=>'Existing File on Server',
74 - 'mv_metavid_live'=>'Set Up Live Stream',
75 - 'mv_upload_file'=>'Upload file',
76 - 'mv_external_file'=>'External File',
77 - 'mv_stream_delete_warning'=>'Deleting this Stream will additionally remove $1 pages of metadata',
78 -
79 - #tools
80 - 'mv_tool_search'=>'Search',
81 - 'mv_tool_search_title'=>'Search within this Stream',
82 - 'mv_tool_navigate'=>'Navigate',
83 - 'mv_tool_navigate_title'=>'Navigate the full stream',
84 - 'mv_tool_export'=>'Export',
85 - 'mv_tool_export_title'=>'Export Stream Metadata',
86 - 'mv_tool_embed'=>'Embed',
87 - 'mv_tool_embed_title'=>'Embed options for the current requested segment',
88 - 'mv_tool_overlay'=>'Template Overlays',
89 - 'mv_tool_overlay_title'=>'Template based metadata Overlays',
90 - 'mv_results_found_for'=>'Search Results <b>$1</b> to <b>$2</b> of <b>$3</b> for:',
91 -
92 - #mvd types:
93 - 'ht_en'=>'Transcript',
94 - 'ht_en_desc'=>'English transcripts. This overlay type is for text which spoken in the video stream. Links can be added, but all text should be what is spoken in the video stream.',
95 - 'anno_en'=>'Annotations and Categories',
96 - 'anno_en_desc'=>'English categorizations and annotations. This overlay can be used to \"tag\"/Categorize sections of video or to add annotative information that is not spoken text',
97 -
98 -
99 - 'mv_data_page_title'=>'$1 for $2 from $3 ',
100 - 'mv_time_separator'=>' to ',
101 -
102 - # Messages for Special List stream
103 - 'mv_list_streams' =>'Metavid List Streams',
104 - 'mv_list_streams_page'=>'Mv List Streams',
105 - 'mv_list_streams_docu' => 'The following streams exist:',
106 - 'mv_list_streams_none' => 'No streams exist',
107 -
108 - #messages for metavid export feed:
109 - 'mvvideofeed'=> 'Metavid Video Feed Export',
110 - 'video_feed_cat'=>'Video Feed for Category:',
111 - 'mv_cat_search_note'=>'Note: Categories only lists top level categories, for all metadata in category ranges search for $1',
112 -
113 - # Messages for MV_DataPage
114 - 'mv_mvd_linkback'=>'Part of stream $1 <br>Jump to Stream View: $2<br>',
115 -
116 - #messages for MVD pages
117 - 'mvBadMVDtitle'=>'missing type, stream missing, or not valid time format',
118 - 'mvMVDFormat' => 'MVD title should be of format: mvd:type:stream_name/start_time/end_time',
119 -
120 - #messeges for interface mvd pages:
121 - 'mv_play'=>'Play',
122 - 'mv_edit'=>'Edit',
123 - 'mv_history'=>'History',
124 - 'mv_history_title'=>'Edit and Video Alignment History',
125 - 'mv_edit_title'=>'Edit Text',
126 - 'mv_edit_adjust_title'=>'Edit Text and Video Alignment',
127 - 'mv_remove'=>'remove',
128 - 'mv_remove_title'=>'remove this meta data segment',
129 - 'mv_adjust'=>'adjust',
130 - 'mv_adjust_submit'=>'Save Adjustment',
131 - 'mv_adjust_title'=>'Adjust Start and End time',
132 - 'mv_adjust_preview'=>'Preview Adjustment',
133 - 'mv_adjust_preview_stop'=>'Stop Preview',
134 - 'mv_adjust_default_reason'=>'metavid interface adjust',
135 - 'mv_adjust_old_title_missing'=>'The page you are tyring to move from ($1) does not exist',
136 - 'mv_adjust_ok_move'=>'Success, adjusting...',
137 -
138 - 'mv_start_desc'=>'Start Time',
139 - 'mv_end_desc'=>'End Time',
140 -
141 - #search
142 - 'mediasearch'=>'Media Search',
143 - 'mv_search_sel_t'=>'Select Search Type',
144 - 'mv_run_search'=>'Run Search',
145 - 'mv_add_filter'=>'Add Filter',
146 -
147 - 'mv_search_match'=>'Search Text',
148 - 'mv_search_spoken_by'=>'Spoken By',
149 - 'mv_search_category'=>'Category',
150 - 'mv_search_smw_property'=>'Semantic Properties',
151 - 'mv_search_smw_property_numeric'=>'Numeric Semantic Value',
152 - 'mv_search_and'=>'and',
153 - 'mv_search_or'=>'or',
154 - 'mv_search_not'=>'not',
155 - 'mv_search_stream_name'=>'Stream Name',
156 - 'mv_stream_name'=>'stream name',
157 -
158 -
159 - 'mv_match'=>'match',
160 - 'mv_spoken_by'=>'spoken by',
161 - 'mv_category'=>'category',
162 -
163 -
164 - 'mv_search_no_results'=>'No media matches ',
165 - 'mv_media_matches'=>'Media matches ',
166 - 'mv_remove_filter'=>'remove filter',
167 - 'mv_advaced_search'=>'Advanced Media Search',
168 - 'mv_expand_play'=>'Expand and Play in-line',
169 - 'mv_view_in_stream_interface'=>'View in Stream Interface',
170 - 'mv_view_wiki_page'=>'View wiki page',
171 - 'mv_error_mvd_not_found'=>'Error mvd not found',
172 - 'mv_match_text'=>' ~ $1 matches ',
173 -
174 - #sequence text:
175 - 'mv_edit_sequence'=>'Editing Sequence:$1',
176 - 'mv_sequence_player_title'=>'sequence player',
177 -
178 - 'mv_save_sequence'=>'Save Sequence',
179 - 'mv_sequence_page_desc'=>'Save The Current Sequence',
180 - 'mv_sequence_add'=>'Add clips',
181 - 'mv_sequence_add_manual'=>'Add By Name',
182 - 'mv_sequence_add_manual_desc'=>'Add clips by Stream Name',
183 - 'mv_sequence_add_search'=>'Add By Search',
184 - 'mv_sequence_add_search_desc'=>'Add clips by Media Search',
185 - 'mv_seq_add_end'=>'Add to End of Sequence',
186 -
187 - 'mv_sequence_timeline'=>'Sequence Timeline:',
188 - 'mv_edit_sequence_desc_help'=>'Sequence Description<br>',
189 - 'mv_edithelpsequence'=>'Help:Sequence_Editing',
190 - 'mv_seq_summary'=>'Sequence Edit Summary',
191 - 'mv_add_clip_by_name'=>'Add Clip By Name',
192 -
193 -
194 -
195 - #mv tools
196 - 'mv_export_cmml'=>'export cmml',
197 - 'mv_search_stream'=>'Search Stream',
198 - 'mv_navigate_stream'=>'Navigate Full Stream',
199 - 'mv_embed_options'=>'Embed Options',
200 - 'mv_overlay'=>'Overlay Controls',
201 - 'mv_stream_tool_heading'=>'Stream Tools',
202 - 'mv_tool_missing'=>'tool request ($1) does not exist',
203 - 'mv_bad_tool_request'=>'bad tool line should be form: tool_name|tool_display_name',
204 -
205 - #msg for overlay interface:
206 - 'mv_search_stream'=>'Search Stream',
207 - 'mv_search_stream_title'=>'Search the Current Stream',
208 - 'mv_new_ht_en'=>'New Transcript',
209 - 'mv_new_anno_en'=>'New Tag or Annotation',
210 -
211 -);
212 -
213 -/* private */ var $mvDatatypeLabels = array(
214 -
215 -);
216 -
217 -/* private */ var $mvSpecialProperties = array(
218 -
219 -);
220 -
221 -
222 - /**
223 - * Function that returns the namespace identifiers.
224 - *
225 - */
226 - function getNamespaceArray() {
227 - return array(
228 - MV_NS_STREAM => 'Stream',
229 - MV_NS_STREAM_TALK => 'Stream_talk',
230 - MV_NS_SEQUENCE => 'Sequence',
231 - MV_NS_SEQUENCE_TALK => 'Sequence_talk',
232 - MV_NS_MVD => 'MVD',
233 - MV_NS_MVD_TALK => 'MVD_talk'
234 - );
235 - }
236 -
237 - /**
238 - * Function that returns the localized label for a datatype.
239 - */
240 - function getDatatypeLabel($msgid) {
241 - return $this->mvDatatypeLabels[$msgid];
242 - }
243 -
244 - /**
245 - * Function that returns the labels for the special relations and attributes.
246 - */
247 - function getSpecialPropertiesArray() {
248 - return $this->mvSpecialProperties;
249 - }
250 -
251 - /**
252 - * Function that returns all content messages (those that are stored
253 - * in some article, and can thus not be translated to individual users).
254 - */
255 - function getContentMsgArray() {
256 - return $this->mvContentMessages;
257 - }
258 -
259 - /**
260 - * Function that returns all user messages (those that are given only to
261 - * the current user, and can thus be given in the individual user language).
262 - */
263 - function getUserMsgArray() {
264 - return $this->mvUserMessages;
265 - }
 19+ var $m_Namespaces = array(
 20+ MV_NS_STREAM => 'Stream',
 21+ MV_NS_STREAM_TALK => 'Stream_talk',
 22+ MV_NS_SEQUENCE => 'Sequence',
 23+ MV_NS_SEQUENCE_TALK => 'Sequence_talk',
 24+ MV_NS_MVD => 'MVD',
 25+ MV_NS_MVD_TALK => 'MVD_talk'
 26+ );
26627 }
267 -
26828 ?>
Index: trunk/extensions/MetavidWiki/skins/images/delete.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes on: trunk/extensions/MetavidWiki/skins/images/delete.png
___________________________________________________________________
Added: svn:mime-type
26929 + application/octet-stream
Index: trunk/extensions/MetavidWiki/README
@@ -1,14 +1,18 @@
22 Early version of the metavid wiki extension. More documentation to follow.
33
 4+== Disclaimer ==
 5+Metavid Wiki is still under development.
 6+For more info come by #metavid or email dale@ucsc.edu
 7+
48 ==Short technical Description==
59 Metavid builds off of semantic mediaWiki but is not dependent on it. Its
6 -just a matter of how structured you want your metadata ;) Also needs
7 -the parserFunctions extension as well as ExtensionFunctions.php
 10+just a matter of how structured you want your metadata ;) Also metavid Wiki
 11+needs the parserFunctions extension as well as ExtensionFunctions.php
812
913 Metavid Wiki adds the following namespaces:
1014 MV_NS_STREAM : The base namespace for media with temporal meta data.
1115 It manages stream file sets, and top level metadata for the stream.
12 -MV_NS_MVD : The namespace for temporal metadata. Nodes in this namespace
 16+MV_NS_MVD : The namespace for temporal metadata. Pages in this namespace
1317 follow the following format Stream_Name:mvd_type:time_start/time_end
1418 MV_NS_SEQUENCE : The namespace for view/editing sequences/playlists.
1519
@@ -25,6 +29,7 @@
2630 html5 video tag. Mv_embed also supports basic sequences via rss, xspf,
2731 m3u or custom inline format and includes a basic sequence editor.
2832
 33+==Install:==
2934
3035 ==add to local settings.php ==
3136 ParserFunctions are necessary

Status & tagging log