function fileAddForms(desc)
{
  new Ajax.Updater('extraFileForms', ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=addFileForm", {
      method: 'post',
      parameters: {
				'md5check': ipb.vars['secure_hash'],
        'add': $('addFields').value,
        'count': $('formCount').value,
        'desc':	desc,			
			},
      insertion: 'bottom',
      onSuccess: function(t)
      {
        $('formCount').writeAttribute('value', ($('formCount').value*1) + ($('addFields').value*1))
      }
  });
}


function fileAddUploader(pos)
{       
        
  new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=addUploader",
						{
							method: 'post',
							evalJSON: 'force',
							parameters: {
								'md5check': ipb.vars['secure_hash'],
								'string': $('adduploader'+pos).value.encodeParam(),
								'serial': $('fuploader'+pos).value.encodeParam(),
							},
							onSuccess: function(t)
							{   
								if( Object.isUndefined( t.responseJSON ) )
								{	
									alert( "Bad Request: " + t.responseText );
								}
								else
                {  
								  marr = t.responseText.evalJSON();
								  if( Object.isUndefined( marr['member_id'] ) )
								  {
                    alert( marr['error'] )
                  } else {
                  
                    out = '<li class="field" id="uploader_' + pos + '_' + marr['member_id'] + '"><a href="' + ipb.vars['base_url'] + 'showuser=' + marr['member_id'] + '">' + marr['members_display_name'] + '</a>'
                    out += '&nbsp;&nbsp;&nbsp;&nbsp;<a href="#" onclick="fileRemUploader(' + pos + ',' + marr['member_id'] + ');return false;">Remove</a></li>'
                    
  								  $('uploaderlist' + pos).insert(out)
  								  $('fuploader'+pos).writeAttribute("value", marr['uploader_serial'])
  								  
								  }
								  
								}
							}
						});
						
}

function fileRemUploader(pos,id)
{ 
    new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=remUploader",
						{
							method: 'post',
							evalJSON: 'force',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'id': id,
                'serial': $('fuploader'+pos).value.encodeParam(),  
              },
							onSuccess: function(tr)
							{
								if( Object.isUndefined( tr.responseText ) )
								{		
									alert( "Bad Request" )
								}
								else
								{
								  marr = tr.responseText.evalJSON();
								  if( Object.isUndefined( marr['uploader_serial'] ) )
								  {
                    alert( marr['error'] )
                  }
								  $('uploader_' + pos + '_' + id).remove()
								  $('fuploader'+pos).writeAttribute("value", marr['uploader_serial'])
								  
								}
							},
              
    });
}

function checkAllRemQ()
{
  var checks = $('rem_queue').childElements()
  for ( var ch in checks )
  {
    checks[ch].firstDescendant().writeAttribute('checked', true)    
  } 

}

function unCheckAllRemQ()
{
  var checks = $('rem_queue').childElements()
  for ( var ch in checks )
  {
    checks[ch].firstDescendant().writeAttribute('checked', false)    
  }  

}

function removeFromQueue(pos,id)
{ 
    new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=remFromQueue",
						{
							method: 'post',
							evalJSON: 'force',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'id': id, 
              },
              onSuccess: function(t)
							{
							  $('series_row_' + pos).remove()
							},
              
    });
}

function addToQueue()
{ 
    new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=addToQueue",
						{
							method: 'post',
							evalJSON: 'force',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'id': $('add_series_id').value.encodeParam(),
                'qcount': $('queue_last').value.encodeParam(), 
              },
              onSuccess: function(t)
							{
                $('add_series').insert({before: t.responseText})
							  $('add_series_id').clear()
							  $('queue_last').writeAttribute('value', ($('queue_last').value*1) + 1)
							  
							},
              
    });
}


function addMirror(pos)
{               
    new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=addMirror",
						{
							method: 'post',
							evalJSON: 'force',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'location': $('mlocation_' + pos).value,
                'mcount': $('mlast_' + pos).value,
                'pos': pos, 
              },
              onSuccess: function(t)
							{
                $('add_mirror_form_' + pos).insert({before: t.responseText})
							  $('mlocation_' + pos ).clear()
							  $('mlast_' + pos).writeAttribute('value', ($('mlast_' + pos).value*1) + 1)
							},
              
    });

}

function removeMirror(pos1,pos2)
{
   $('mirror_row_' + pos1 + '_' + pos2).remove()
}


function addExtraTitle()
{               
    new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=addTitle",
						{
							method: 'post',
							evalJSON: 'force',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'title': $('etitle').value,
                'tcount': $('tlast').value, 
              },
              onSuccess: function(t)
							{
                $('add_title_form').insert({before: t.responseText})
							  $('etitle').clear()
							  $('tlast').writeAttribute('value', ($('tlast').value*1) + 1)
							},
              
    });

}

function removeExtraTitle(pos)
{
   $('title_row_' + pos).remove()
}

var popup;
var posval;

function showBrokenData(id,mirror,pos)
{  
    posval = pos; 

    // Pre-make popup
		popup = new ipb.Popup('broken_popup', { type: 'pane', modal: true, hideAtStart: true, w: '600px' } );
		
		// Lets get the form
		new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=getBroken",
						{
							method: 'post',
							evalJSON: 'force',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'id': id,
                'mirror': mirror,
              },
							onSuccess: function(t)
							{
									popup.update( t.responseText );
									popup.positionPane();
									popup.show();
									

							}
						}
					);				
}

function alterBroken(id,type)
{
  if(type == '4') {
    popup.hide();
  } else {
    // Lets get the form
		new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=getBroken",
						{
							method: 'post',
							evalJSON: 'force',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'id': id,
                'type': type,
              },
							onSuccess: function(t)
							{
							  if(t.responseText != 'removed') {
									popup.update( t.responseText );
								} else {
                  popup.hide();
                  $('broken_link_'+posval).remove();
                }
							}
						}
					);
  
  
  }


}


function showReport(id)
{   
  new Ajax.Updater('blist_' + id, ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=showReport", {
      method: 'post',
      parameters: {
				'md5check': ipb.vars['secure_hash'],
			  'file_id': id,				
			},
      insertion: 'after',
  });
	$('broken_link_' + id).writeAttribute("onclick", "hideReport(" + id + ");return false;")
}

function hideReport(id)
{
  $('broken_info_' + id).remove()
	$('broken_link_' + id).writeAttribute("onclick", "showReport(" + id + ");return false;")
}	

function reserveBrok(id)
{
  new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=resBroken",
						{
							method: 'post',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'id': id,
                'type': 'reserve',
              },
							onSuccess: function(t)
							{
                $('blist_'+id).writeAttribute("class", "broken_my_reserved");
                $("broken_reserve_" + id).update("UnReserve");
                $("broken_reserve_" + id).writeAttribute("onclick", "unReserveBrok(" + id + ");return false;")
							}
						}
					);
         
}

function unReserveBrok(id)
{
   new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=manager&do=resBroken",
						{
							method: 'post',
							parameters: {
							  'md5check': ipb.vars['secure_hash'],
                'id': id,
                'type': 'unreserve',
              },
							onSuccess: function(t)
							{
                $('blist_'+id).writeAttribute("class", "broken_" + t.responseText);
                $("broken_reserve_" + id).update("Reserve");
                $("broken_reserve_" + id).writeAttribute("onclick", "reserveBrok(" + id + ");return false;")
							}
						}
					);

}	

function seriesSearch(type)
{ 
  new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=searches&do=seriesSearch", {
      method: 'post',
      parameters: {
				'md5check': ipb.vars['secure_hash'],
			  'type': type,
        'string': $('search_string').value.encodeParam(),				
			},
			onSuccess: function(t)
			{
			  $('search_ul').update(t.responseText)
			}
  });
}	

function filesSearch(type)
{ 
  new Ajax.Request( ipb.vars['base_url'] + "app=filesystem&module=ajax&section=searches&do=filesSearch", {
      method: 'post',
      parameters: {
				'md5check': ipb.vars['secure_hash'],
        'string': $('search_string').value.encodeParam(),				
			},
			onSuccess: function(t)
			{
			  $('search_ul').update(t.responseText)
			}
  });
}	


