'import_url_mode': 'api',
'target_title':null,
+
+ //edit tools (can be an array of tools or keyword 'all')
+ 'enabled_tools' : 'all',
+
'target_textbox':null,
'target_render_area': null, //where output render should go:
},
init_modal:function(){
js_log("init_modal");
- var _this = this;
- _this.target_container = '#rsd_modal_target';
+ var _this = this;
//add the parent target_container if not provided or missing
if(!_this.target_container || $j(_this.target_container).length==0){
+ _this.target_container = '#rsd_modal_target';
$j('body').append('<div id="rsd_modal_target" style="position:absolute;top:3em;left:0px;bottom:3em;right:0px;" title="' + gM('mwe-add_media_wizard') + '" ></div>');
//js_log('appended: #rsd_modal_target' + $j(_this.target_container).attr('id'));
//js_log('added target id:' + $j(_this.target_container).attr('id'));
'control_ct' : 'clip_edit_ctrl',
'media_type' : mediaType,
'p_rsdObj' : _this,
- 'controlActionsCb' : _this.getClipEditControlActions( cp )
+ 'controlActionsCb' : _this.getClipEditControlActions( cp ),
+ 'enabled_tools' : _this.enabled_tools
};
//set the base clip edit lib class req set:
var clibs = ['mvClipEdit'];
}
js_log('getPaging:'+ cp_id + ' len: ' + cp.sObj.num_results);
var to_num = ( cp.limit > cp.sObj.num_results )?
- (cp.offset + cp.sObj.num_results):
- (cp.offset + cp.limit);
+ (parseInt( cp.offset ) + parseInt( cp.sObj.num_results ) ):
+ ( parseInt( cp.offset ) + parseInt( cp.limit) );
var out = '';
//@@todo we should instead support the wiki number format template system instead of inline calls
- if( cp.sObj.num_results > cp.limit){
- out+= gM('rsd_results_desc_total', [(cp.offset+1), to_num, $mw.lang.formatNumber( cp.sObj.num_results )] );
- }else{
- out+= gM('rsd_results_desc', [(cp.offset+1), to_num]);
+ if( cp.sObj.num_results != 0 ){
+ if( cp.sObj.num_results > cp.limit){
+ out+= gM( 'rsd_results_desc_total', [(cp.offset+1), to_num, $mw.lang.formatNumber( cp.sObj.num_results )] );
+ }else{
+ out+= gM( 'rsd_results_desc', [(cp.offset+1), to_num] );
+ }
}
//check if we have more results (next prev link)
if( cp.offset >= cp.limit )
out+=' <a href="#" id="rsd_pnext">' + gM('rsd_results_next') + ' ' + cp.limit + '</a>';
$j(target).html(out);
+
//set bindings
$j('#rsd_pnext').click(function(){
cp.offset += cp.limit;
_this.runSearch( false );
});
+
$j('#rsd_pprev').click(function(){
cp.offset -= cp.limit;
if(cp.offset<0)
'p_seqObj': null, //parent sequence Object
'controlActionsCb' : null, //the object that configures control Action callbacks
-
+
+ //The set of tools to enable (by default 'all' else an array of tools from mvClipEdit.toolset list below:
+ 'enabled_tools': 'all',
'edit_action': null, //the requested edit action
'profile': 'inpage' //the given profile either "inpage" or "sequence"
}
selTool:null, //selected tool
crop: null, //the crop values
base_img_src:null,
-
+ toolset : ['crop', 'layout'],
+
init:function( iObj){
//init object:
for(var i in default_clipedit_values){
this.media_type = 'template';
}
}
-
//display control:
if(this.profile == 'sequence'){
this.doEditTypesMenu();
//copy over the desc text to the resource object
_this.rObj['inlineDesc']= $j('#mv_inline_img_desc').val();
},
+ appendTool: function( $target, tool_id ){
+ var _this = this;
+ switch(tool_id){
+ case 'layout':
+ $target.append( ''+
+ '<span style="float:left;">Layout:</span>' +
+ '<input type="radio" name="mv_layout" id="mv_layout_left" style="float:left"><div id="mv_layout_left_img" title="'+gM('mwe-layout_left')+'"/>'+
+ '<input type="radio" name="mv_layout" id="mv_layout_right" style="float:left"><div id="mv_layout_right_img" title="'+gM('mwe-layout_left')+'"/>'+
+ '<hr style="clear:both" /><br>'
+ );
+ //make sure the default is reflected:
+ if( ! _this.rObj.layout )
+ _this.rObj.layout = 'right';
+ $j('#mv_layout_' + _this.rObj.layout)[0].checked = true;
+
+ //left radio click
+ $j('#mv_layout_left,#mv_layout_left_img').click(function(){
+ $j('#mv_layout_right')[0].checked = false;
+ $j('#mv_layout_left')[0].checked = true;
+ _this.rObj.layout = 'left';
+ });
+ //right radio click
+ $j('#mv_layout_right,#mv_layout_right_img').click(function(){
+ $j('#mv_layout_left')[0].checked = false;
+ $j('#mv_layout_right')[0].checked = true;
+ _this.rObj.layout = 'right';
+ });
+ break;
+ case 'crop':
+ $target.append( ''+
+ '<div class="mv_edit_button mv_crop_button_base" id="mv_crop_button" alt="crop" title="'+gM('mwe-crop')+'"/>'+
+ '<a href="#" class="mv_crop_msg">' + gM('mwe-crop') + '</a> '+
+ '<span style="display:none" class="mv_crop_msg_load">' + gM('mwe-loading_txt') + '</span> '+
+ '<a href="#" style="display:none" class="mv_apply_crop">' + gM('mwe-apply_crop') + '</a> '+
+ '<a href="#" style="display:none" class="mv_reset_crop">' + gM('mwe-reset_crop') + '</a> '+
+ '<hr style="clear:both"/><br>'
+ );
+ //add binding:
+ $j('#mv_crop_button,.mv_crop_msg,.mv_apply_crop').click(function(){
+ js_log('click:mv_crop_button: base width: ' + _this.rObj.width + ' bh: ' + _this.rObj.height);
+ if($j('#mv_crop_button').hasClass('mv_crop_button_selected')){
+ _this.applyCrop();
+ }else{
+ js_log('click:turn on');
+ _this.enableCrop();
+ }
+ });
+ $j('.mv_reset_crop').click(function(){
+ $j('.mv_apply_crop,.mv_reset_crop').hide();
+ $j('.mv_crop_msg').show();
+ $j('#mv_crop_button').removeClass('mv_crop_button_selected').addClass('mv_crop_button_base').attr('title',gM('mwe-crop'));
+ _this.rObj.crop=null;
+ $j('#' + _this.clip_disp_ct ).empty().html(
+ '<img src="' + _this.rObj.edit_url + '" id="rsd_edit_img">'
+ );
+ });
+ break;
+ case 'scale':
+ /*scale:
+ '<div class="mv_edit_button mv_scale_button_base" id="mv_scale_button" alt="crop" title="'+gM('mwe-scale')+'"></div>'+
+ '<a href="#" class="mv_scale_msg">' + gM('mwe-scale') + '</a><br>'+
+ '<a href="#" style="display:none" class="mv_apply_scale">' + gM('mwe-apply_scale') + '</a> '+
+ '<a href="#" style="display:none" class="mv_reset_scale">' + gM('mwe-reset_scale') + '</a><br> '+
+
+ */
+ break;
+ }
+ },
setUpImageCtrl:function(){
var _this = this;
+ var $tool_target = $j('#'+this.control_ct);
//by default apply Crop tool
- $j('#'+this.control_ct).html(
- '<h3>Edit tools</h3>' +
- '<div class="mv_edit_button mv_crop_button_base" id="mv_crop_button" alt="crop" title="'+gM('mwe-crop')+'"/>'+
- '<a href="#" class="mv_crop_msg">' + gM('mwe-crop') + '</a> '+
- '<span style="display:none" class="mv_crop_msg_load">' + gM('mwe-loading_txt') + '</span> '+
- '<a href="#" style="display:none" class="mv_apply_crop">' + gM('mwe-apply_crop') + '</a> '+
- '<a href="#" style="display:none" class="mv_reset_crop">' + gM('mwe-reset_crop') + '</a> '+
- '<hr style="clear:both"/><br>'+
- '<span style="float:left;">Layout:</span>' +
- '<input type="radio" name="mv_layout" id="mv_layout_left" style="float:left"><div id="mv_layout_left_img" title="'+gM('mwe-layout_left')+'"/>'+
- '<input type="radio" name="mv_layout" id="mv_layout_right" style="float:left"><div id="mv_layout_right_img" title="'+gM('mwe-layout_left')+'"/>'+
- '<hr style="clear:both" /><br>' +
- _this.getInsertDescHtml()
- );
- //add the actions to the 'button bar'
- _this.updateInsertControlActions()
-
- /*scale:
- '<div class="mv_edit_button mv_scale_button_base" id="mv_scale_button" alt="crop" title="'+gM('mwe-scale')+'"></div>'+
- '<a href="#" class="mv_scale_msg">' + gM('mwe-scale') + '</a><br>'+
- '<a href="#" style="display:none" class="mv_apply_scale">' + gM('mwe-apply_scale') + '</a> '+
- '<a href="#" style="display:none" class="mv_reset_scale">' + gM('mwe-reset_scale') + '</a><br> '+
-
- */
- //add bindings:
-
- //make sure the default is reflected:
- if( ! _this.rObj.layout )
- _this.rObj.layout = 'right';
- $j('#mv_layout_' + _this.rObj.layout)[0].checked = true;
-
- //left radio click
- $j('#mv_layout_left,#mv_layout_left_img').click(function(){
- $j('#mv_layout_right')[0].checked = false;
- $j('#mv_layout_left')[0].checked = true;
- _this.rObj.layout = 'left';
- });
- //right radio click
- $j('#mv_layout_right,#mv_layout_right_img').click(function(){
- $j('#mv_layout_left')[0].checked = false;
- $j('#mv_layout_right')[0].checked = true;
- _this.rObj.layout = 'right';
- });
- $j('#mv_crop_button,.mv_crop_msg,.mv_apply_crop').click(function(){
- js_log('click:mv_crop_button: base width: ' + _this.rObj.width + ' bh: ' + _this.rObj.height);
- if($j('#mv_crop_button').hasClass('mv_crop_button_selected')){
- _this.applyCrop();
- }else{
- js_log('click:turn on');
- _this.enableCrop();
+ if( _this.enabled_tools == 'all' || _this.enabled_tools.length > 0){
+ $tool_target.append( '<h3>Edit tools</h3>' );
+ for( var i in _this.toolset ){
+ var toolid = _this.toolset[i];
+ if( $j.inArray( toolid, _this.enabled_tools) != -1 || _this.enabled_tools=='all')
+ _this.appendTool( $tool_target, toolid );
}
- });
- $j('.mv_reset_crop').click(function(){
- $j('.mv_apply_crop,.mv_reset_crop').hide();
- $j('.mv_crop_msg').show();
- $j('#mv_crop_button').removeClass('mv_crop_button_selected').addClass('mv_crop_button_base').attr('title',gM('mwe-crop'));
- _this.rObj.crop=null;
- $j('#' + _this.clip_disp_ct ).empty().html(
- '<img src="' + _this.rObj.edit_url + '" id="rsd_edit_img">'
- );
- });
+ }
+ //add the insert description text field:
+ $tool_target.append( _this.getInsertDescHtml() );
+ //add the actions to the 'button bar'
+ _this.updateInsertControlActions();
},
applyVideoAdj:function(){
js_log('applyVideoAdj::');
"mwe-menu_btn" : "Menu",
"mwe-close_btn" : "Close",
"mwe-ogg-player-vlc-mozilla" : "VLC plugin",
- "mwe-ogg-player-videoElement" : "Native Ogg video support",
+ "mwe-ogg-player-videoElement" : "Native Ogg video",
"mwe-ogg-player-vlc-activex" : "VLC ActiveX",
"mwe-ogg-player-oggPlugin" : "Generic Ogg plugin",
"mwe-ogg-player-quicktime-mozilla" : "QuickTime plugin",
"mwe-do_not_warn_again" : "Dismiss for now.",
"mwe-playerselect" : "Players",
"mwe-read_before_embed" : "<a href=\"http:\/\/mediawiki.org\/wiki\/Security_Notes_on_Remote_Embedding\" target=\"_new\">Read this<\/a> before embedding.",
- "mwe-embed_site_or_blog" : "Embed on your site or blog",
+ "mwe-embed_site_or_blog" : "Embed on a page",
"mwe-related_videos" : "Related videos",
"mwe-seeking" : "seeking",
"mwe-copy-code" : "Copy code"
var _this = this;
//load the roe if available (to populate out download options:
function getShowVideoDownload(){
- var out='<div style="color:white">' +
- '<b style="color:white;">'+gM('mwe-download_segment')+'</b><br>';
- out+='<blockquote style="background:#000">'+
- gM('mwe-download_right_click') + '</blockquote><br>';
+ var out='<div style="color:white">';
var dl_list='';
var dl_txt_list='';
$j.each(_this.media_element.getSources(), function(index, source){
}
if(typeof this_seq.amw_conf != 'undefined')
$j.extend(iObj, this_seq.amw_conf);
+
+
//inherit the remoteSearchDriver properties:n
var tmpRSD = new remoteSearchDriver( iObj );
for(var i in tmpRSD){
}else{
this[i] = tmpRSD[i];
}
- }
+ }
//extend parent_do_refresh_timeline actions:
if(!this.pSeq.parent_do_refresh_timeline){
this.pSeq.parent_do_refresh_timeline = this.pSeq.do_refresh_timeline;
//setup parent bindings:
this.parent_addResultBindings();
- //add an aditional click binding
+ //Add an additional click binding
$j('.rsd_res_item').click(function(){
js_log('SeqRemoteSearch: rsd_res_item: click (remove sequence_add_target)');
_this.sequence_add_target =false;
});
- //add an additional drag binding
+ //Add an additional drag binding
$j( '.rsd_res_item' ).draggable('destroy').draggable({
helper:function(){
return $j( this ).clone().appendTo('body').css({'z-index':9999}).get(0);
if(tClip)
var target_order = tClip.order;
}
- //@@todo show wating of sorts.
+ //@@todo show watting of sorts.
//get target order:
var cat = rObj;
//don't resize to default (full screen behavior)
_this.dmodalCss = {};
//open up a new target_contaienr:
- if($j('#seq_resource_import').length == 0)
+ if( $j('#seq_resource_import').length == 0 )
$j('body').append('<div id="seq_resource_import" style="position:relative"></div>');
$j('#seq_resource_import').dialog('destroy').dialog({