Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Wikipedia: Mediawiki-CVS

SVN: [37811] branches/MetavidWiki-exp/MetavidWiki

 

 

Wikipedia mediawiki-cvs RSS feed   Index | Next | Previous | View Threaded


dale at svn

Jul 17, 2008, 11:46 PM

Post #1 of 1 (42 views)
Permalink
SVN: [37811] branches/MetavidWiki-exp/MetavidWiki

Revision: 37811
Author: dale
Date: 2008-07-18 06:46:35 +0000 (Fri, 18 Jul 2008)

Log Message:
-----------
updated semantic helpers for mvd Edit

Modified Paths:
--------------
branches/MetavidWiki-exp/MetavidWiki/includes/MV_GlobalFunctions.php
branches/MetavidWiki-exp/MetavidWiki/includes/MV_Hooks.php
branches/MetavidWiki-exp/MetavidWiki/includes/MV_MetavidInterface/MV_Overlay.php
branches/MetavidWiki-exp/MetavidWiki/includes/MV_Settings.php
branches/MetavidWiki-exp/MetavidWiki/includes/MV_Title.php
branches/MetavidWiki-exp/MetavidWiki/skins/mv_stream.js

Modified: branches/MetavidWiki-exp/MetavidWiki/includes/MV_GlobalFunctions.php
===================================================================
--- branches/MetavidWiki-exp/MetavidWiki/includes/MV_GlobalFunctions.php 2008-07-18 03:59:49 UTC (rev 37810)
+++ branches/MetavidWiki-exp/MetavidWiki/includes/MV_GlobalFunctions.php 2008-07-18 06:46:35 UTC (rev 37811)
@@ -382,6 +382,8 @@
$wgAjaxExportList[] = 'mv_auto_complete_all';
$wgAjaxExportList[] = 'mv_auto_complete_person';
$wgAjaxExportList[] = 'mv_auto_complete_stream_name';
+$wgAjaxExportList[] = 'mv_helpers_auto_complete';
+
$wgAjaxExportList[] = 'mv_disp_mvd';

$wgAjaxExportList[] = 'mv_add_disp';

Modified: branches/MetavidWiki-exp/MetavidWiki/includes/MV_Hooks.php
===================================================================
--- branches/MetavidWiki-exp/MetavidWiki/includes/MV_Hooks.php 2008-07-18 03:59:49 UTC (rev 37810)
+++ branches/MetavidWiki-exp/MetavidWiki/includes/MV_Hooks.php 2008-07-18 06:46:35 UTC (rev 37811)
@@ -205,6 +205,22 @@
$MV_Overlay = new MV_Overlay();
return $MV_Overlay->get_edit_disp($titleKey, $mvd_id);
}
+ /* genneral autocomplete */
+ function mv_helpers_auto_complete($val=null){
+ global $mvMetaDataHelpers,$wgRequest;
+ $property = $wgRequest->getVal('prop_name');
+ switch($property){
+ case 'Speech_by':
+ return MV_SpecialMediaSearch::auto_complete_person($val);
+ break;
+ case 'Bill':
+ return MV_SpecialMediaSearch::auto_complete_category('Bill', $val);
+ break;
+ case 'category':
+ return MV_SpecialMediaSearch::auto_complete_search_categories($val);
+ break;
+ }
+ }
function mv_auto_complete_person($val=null){
return MV_SpecialMediaSearch::auto_complete_person($val);
}

Modified: branches/MetavidWiki-exp/MetavidWiki/includes/MV_MetavidInterface/MV_Overlay.php
===================================================================
--- branches/MetavidWiki-exp/MetavidWiki/includes/MV_MetavidInterface/MV_Overlay.php 2008-07-18 03:59:49 UTC (rev 37810)
+++ branches/MetavidWiki-exp/MetavidWiki/includes/MV_MetavidInterface/MV_Overlay.php 2008-07-18 06:46:35 UTC (rev 37811)
@@ -439,8 +439,8 @@
$metaData=array('prop'=>array(), 'categories'=>array());
//just get msg and basic div layout: \
//css layout of forms was F*@#!!! withing me for some reason so yay table :P
- $o.='<span class="mv_basic_edit"><a href="#" onClick="mv_mvd_advs_toggle('.$mvd_id.')">'.wfMsg('mv_advanced_edit').'</a></span>
- <span style="display:none" class="mv_advanced_edit"><a href="#" onClick="mv_mvd_advs_toggle('.$mvd_id.')">'.wfMsg('mv_basic_edit').'</a></span>';
+ $o.='<span class="mv_basic_edit"><a href="#" onClick="mv_mvd_advs_toggle('.$mvd_id.');return false;">'.wfMsg('mv_advanced_edit').'</a></span>
+ <span style="display:none" class="mv_advanced_edit"><a href="#" onClick="mv_mvd_advs_toggle('.$mvd_id.');return false;">'.wfMsg('mv_basic_edit').'</a></span>';

$o.='<input type="hidden" id="adv_basic_'.$mvd_id.'" name="adv_basic" value="basic">';
$o.='<table class="mv_basic_edit mv_dataHelpers" id="mv_dataHelpers_'.$mvd_id.'">';
@@ -452,9 +452,11 @@
$o.= "<span class=\"error\">Error:</span>". wfMsg('mvMVDFormat');
return $o;
}
- $metaData = $mvTitle->getMetaData();
+ $metaData = $mvTitle->getMetaData();
}
foreach($mvMetaDataHelpers[strtolower($mvd_type)] as $prop=>$ac_index){
+ //normalize the
+ $prop=str_replace(' ', '_', $prop);
//set existing "value"
if(isset($metaData['prop'][$prop])){
$val = $metaData['prop'][$prop];
@@ -463,7 +465,9 @@
$swmTitle = Title::newFromText((string)$prop, SMW_NS_PROPERTY);
if($swmTitle->exists()){
$help_img =$sk->makeKnownLinkObj($swmTitle, '<img src="'.$mvgScriptPath.'/skins/images/help_icon.png">');
- $o.= "<tr><td><label>".$swmTitle->getText().":</label></td><td><input class=\"mv_anno_ac\" size=\"14\" name=\"$prop\" type=\"text\" value=\"$val\"></td></tr>";
+ $o.= "<tr><td><label>".$swmTitle->getText().":</label></td><td><input class=\"mv_anno_ac_{$mvd_id}\" size=\"40\" name=\"{$prop}\" type=\"text\" value=\"$val\">
+ <div class=\"autocomplete\" id=\"{$prop}_choices_{$mvd_id}\" style=\"display: none;\"/>
+ </td></tr>";
}else{
print '<span class="error">Error:</span>'.$sk->makeKnownLinkObj($swmTitle, $swmTitle->getText()) . ' does not exist<br>' ;
}
@@ -484,10 +488,13 @@
$i++;
}
$o.='</tr>';
- $o.= "<tr><td><label for=\"new_cat\">".wfMsg('mv_add_category').":</label></td><td><input size=\"14\" class=\"mv_anno_ac\" name=\"new_cat\" type=\"text\"></td></tr>";
+ $o.= "<tr><td><label for=\"category\">".wfMsg('mv_add_category').":</label></td><td><input size=\"40\" class=\"mv_anno_ac_{$mvd_id}\" name=\"category\" type=\"text\">
+ <div class=\"autocomplete\" id=\"category_choices_{$mvd_id}\" style=\"display: none;\"/></td></tr>";
}
//output a short desc field (the text with striped semantic values)...
- $o.='<tr><td>'.wfMsg("mv_basic_text_desc").'</td></td><textarea name="basic_wpTextbox" rows="2" cols="14"></textarea></td></tr>';
+ $o.='<tr><td>'.wfMsg("mv_basic_text_desc").'</td></td><textarea name="basic_wpTextbox" rows="2" cols="40">';
+ if(isset($metaData['striped_text']))$o.=$metaData['striped_text'];
+ $o.='</textarea></td></tr>';

}
//foreach($mvMetaDataHelpers[

Modified: branches/MetavidWiki-exp/MetavidWiki/includes/MV_Settings.php
===================================================================
--- branches/MetavidWiki-exp/MetavidWiki/includes/MV_Settings.php 2008-07-18 03:59:49 UTC (rev 37810)
+++ branches/MetavidWiki-exp/MetavidWiki/includes/MV_Settings.php 2008-07-18 06:46:35 UTC (rev 37811)
@@ -6,7 +6,7 @@
/*
* your settings overrides here:
*/
-$mvExternalImages = true;
+$mvExternalImages = false;
$mvExternalImgServerPath = 'http://metavid.ucsc.edu/wiki/index.php';

?>
\ No newline at end of file

Modified: branches/MetavidWiki-exp/MetavidWiki/includes/MV_Title.php
===================================================================
--- branches/MetavidWiki-exp/MetavidWiki/includes/MV_Title.php 2008-07-18 03:59:49 UTC (rev 37810)
+++ branches/MetavidWiki-exp/MetavidWiki/includes/MV_Title.php 2008-07-18 06:46:35 UTC (rev 37811)
@@ -237,13 +237,22 @@
* (does not grab overlaping metadata)
* (semenatic properities and categories)
* */
- function getMetaData(){
+ function getMetaData($normalized_prop_name=true){
global $wgUser, $wgParser;
$article = new Article($this);
$retAry = array();
$text = $article->getContent();
- $retAry['prop'] = MV_Overlay::get_and_strip_semantic_tags($text);
-
+ //@@todo should use semanticMediaWiki api here
+ $tmpProp = MV_Overlay::get_and_strip_semantic_tags($text);
+ //strip categories
+ $retAry['striped_text']=preg_replace('/\[\[[^:]+:[^\]]+\]\]/','',$text);
+ if($normalized_prop_name){
+ foreach($tmpProp as $pkey=>$pval){
+ $retAry['prop'][str_replace(' ','_',$pkey)]=$pval;
+ }
+ }else{
+ $retAry['prop']=$tmpProp;
+ }

$sk =& $wgUser->getSkin();
//run via parser to add in Category info:

Modified: branches/MetavidWiki-exp/MetavidWiki/skins/mv_stream.js
===================================================================
--- branches/MetavidWiki-exp/MetavidWiki/skins/mv_stream.js 2008-07-18 03:59:49 UTC (rev 37810)
+++ branches/MetavidWiki-exp/MetavidWiki/skins/mv_stream.js 2008-07-18 06:46:35 UTC (rev 37811)
@@ -306,9 +306,13 @@
alert(gMsg['mv_open_edit']);
return ;
}
+ var title_parts = titleKey.split(':');
+ var mvd_type = title_parts[0].toLowerCase();
+
mv_open_edit_mvd=mvd_id;
//set sajax to do a GET request
sajax_request_type='GET';
+
sajax_do_call( "mv_edit_disp", [titleKey, mvd_id], f );
$j('#mv_fcontent_'+mvd_id).html(global_loading_txt);
//handle the response:
@@ -318,10 +322,23 @@
$j('#mv_fcontent_'+mvd_id).html( result );
//add javascript hooks
add_autocomplete(mvd_id);
- add_adjust_hooks(mvd_id);
+ add_adjust_hooks(mvd_id);
+
+
+ //if mvd_type==anno_en
//add buttons
mwSetupToolbar();
mwEditButtons = []; //empty edit buttons
+
+ if(mvd_type=='anno_en'){
+ //add mv_helpers autocompletes
+ add_mv_helpers_ac(mvd_id);
+ if($j('#adv_basic_'+mvd_id).val()=='basic'){
+ $j('.mv_advanced_edit').hide();
+ }else{
+ $j('.mv_basic_edit').hide();
+ }
+ }
}
}/* interface ajax actions */
function mv_disp_mvd(titleKey, mvd_id){
@@ -404,20 +421,40 @@
//}
mv_lock_vid_updates=false;
}
+/*
+ * adds autocomplete to semantic forms
+ * with special case for speech by
+ */
+function add_mv_helpers_ac(mvd_id){
+ $j('.mv_anno_ac_'+mvd_id).each(function(i, input_item){
+ var prop_name =$j(input_item).attr('name');
+ js_log('add ac for: '+ prop_name);
+ uri = wgServer + ((wgServer == null) ? (wgScriptPath + "/index.php") : wgScript);
+ $j(input_item).autocomplete(
+ uri,
+ {
+ autoFill:true,
+ onItemSelect:function(v){
+ js_log('selected:' + v.innerHTML );
+ //update the image:
+ //js_log("img src: " + $j(v).children('img').attr('src'));
+ //'mv_edit_im_'+mvd_id
+ $j('#mv_edit_im_'+mvd_id).attr('src', $j(v).children('img').attr('src'));
+ },
+ formatItem:function(row){
+ return '<img width="44" src="'+ row[2] + '">'+row[1];
+ },
+ matchSubset:0,
+ extraParams:{action:'ajax',rs:'mv_helpers_auto_complete',prop_name:prop_name},
+ paramName:'rsargs[]',
+ resultElem:'#'+prop_name+'_choices_'+mvd_id
+ });
+ });
+}

-//update the slider on user input:
-//@@TODO fix bug in scriptaculus so handles are registered and can use this function:
-/*function mv_update_slider(input, mvd_id){
- //get seconds from input
- var sec = ntp2seconds(input.value);
- var base_offset = mv_sliders[mvd_id]['base_offset'];
- var track_dur = mv_sliders[mvd_id]['track_dur'];
- var handle_id = (input.id=='mv_start_hr_'+mvd_id)?'handle1_'+mvd_id:'handle2_'+mvd_id;
- js_log('set slider:' + handle_id +' '+ ((sec-base_offset)/track_dur));
- var slider_start=0;
- var slider_end =((sec-base_offset)/track_dur);
- mv_sliders[mvd_id].setValue( ((sec-base_offset)/track_dur), handle_id );
-}*/
+/*
+ * @@TODO add_autocomplete should be merged with generalized mv_helpers_ac
+ */
function add_autocomplete(mvd_id){
//make sure the target elements exist:
//if(!document.getElementById("auto_comp_"+mvd_id))return ;
@@ -511,9 +548,21 @@
});
post_vars['title']=titleKey;
post_vars['mvd_id'] = mvd_id;
- sajax_request_type='POST';
+
var setHtmlId ='#mv_fcontent_'+mvd_id;
//@@todo switch over to jquery ajax
+ /*uri = wgServer +
+ ((wgServer == null) ? (wgScriptPath + "/index.php") : wgScript) +
+ "?action=ajax&rs=mv_remove_mvd";
+ $j.ajax({
+ url:uri,
+ data:post_vars,
+ error:function(error){},
+ success:function(result){}
+ }
+ );
+ }*/
+ sajax_request_type='POST';
mv_sajax_do_call('mv_remove_mvd',args, f, post_vars);
js_log('did request');
function f( request ) {



_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS[at]lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Wikipedia mediawiki-cvs RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact lists@gossamer-threads.com
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.