﻿/*                                                                                                                                                      
Copyright (c) 2007-2008 v0rbis @ infocom
version: 0.0.2                                                                                                                                        
*/ 

<!--

var browser;// = navigator.appName;

var timer;
var kbcode='';

var _ajaxEventEnabled=0;

var opera = Boolean(window["opera"]);        
var MSIE=false;
if(document.all && !opera) MSIE=true;

if(opera) browser="Opera";
if(MSIE) browser="IE";
if(navigator.userAgent.substr(0,3)=="Moz") browser="Mozilla";


// url randomization --- no-cache trick
function r(){ return Math.random(100000);}

// check for valid reg value
function reg_valid(cValue)
{
    return cValue.match(/^[a-zA-Z0-9\._\-]{3,}$/);
}

function url_valid(cValue)
{
    return cValue.match(/^[^'&%#!@`\\/\+\*]{3,}$/);
}

// check for valid email value
function email_valid(cValue)
{
  return cValue.match(/^[a-zA-Z0-9_\-]+[a-zA-Z0-9\.\-]*@[a-zA-Z0-9_\.]+[.\-]+[a-zA-Z]+$/);
// return cValue.match(/^.+@.+\\.\\w+$/);
}

function getparam()
{
 var re=new RegExp("\\?[a-z_]+=([0-9]+)","i");
 re.exec(window.location);

 return RegExp.$1;
}


function bookmark()
{
var title="Stockerhelp.ru - Помощь фотографам"
var url="http://www.stockerhelp.ru"

if (window.sidebar) window.sidebar.addPanel(title, url,"");

else if( window.opera && window.print )
{
var mbm = document.createElement('a');
mbm.setAttribute('rel','sidebar');
mbm.setAttribute('href',url);
mbm.setAttribute('title',title);
mbm.click();
}

else if( document.all ) window.external.AddFavorite( url, title);

}

function popup(header, body)
{
   $.facebox(body);
}



// hide - h, show - s objects
function hideshow(h,s)
{  
 h.style.display="none";
 s.style.display="block";
} 
function hideshow_(h,s)
{  
 $("#"+h).css({display:"none"});
 $("#"+s).css({display:"block"});
 $("#"+s).focus();
} 

// hide 
function hide(h)
{  
 h.style.display="none";
} 
// show
function show(s)
{  
 s.style.display="block";
} 

function focus(o)
{
 o.focus();
}

function writeAddress(name, domain, txt)
{
name = name.replace(/@/g, "")
name = name.replace(/\./g, "")

domain = domain.replace(/@/g, "")
domain = domain.replace(/\./g, "")
domain = domain.replace(/!/g, ".")

document.write('<a href="mailto:' + name + '@' + domain + '">' + txt + '</a>')
}

function toggle(t)
{  
 if($("#"+t).css("display")=="block") $("#"+t).css({display:"none"}); else $("#"+t).css({display:"block"});
} 

function toggle_(el)
{
 if(el.style.display=="inline") el.style.display="none"; else el.style.display="inline";
}

$(document).bind("ajaxError", function()
{ 
 //  popup("Ошибка","Повторите запрос позже ");
});

$(document).ready(function($) {  $('a[rel*=facebox]').facebox() ; })

function loading(el,text,x,y)
{
    $(el).html('<div style="position: relative; top:'+y+'px; left:'+x+'px;"><img src="'+siteRoot+'i/loading.gif" alt="'+text+'"/><br/>'+text+'</div>');  
}

function init_context_menu()
{
 $('#file-manager > span').contextMenu('fm-menu', {
      bindings: {

        'delete-item': function(t) 
        {

          var el=t.id.split("_");
        

          if($("#"+t.id+" > .selected-file").attr("id")!=undefined) {el=($("#"+t.id+" > .selected-file").attr("id")).split("_")};

          
          if(el[0]=="file") 
          {
             
           /*   
           $("#file-manager > span").removeClass("selected-file");
           $("#file-manager > span > span").removeClass("selected-file");
           $("#file_"+el[1]).addClass("selected-file");
           */
               
                    
           function mycallbackform(v,m){if(v=="1") remove_file(el[1]);}
          
           $.prompt("Уверены в том, что хотите удалить фото из Вашей библиотеки?",{ callback: mycallbackform,  buttons: { yes: '1', no: '0' }});            
            
          }
          
          if(el[0]=="dir") 
          {
           /*
           $("#file-manager > span").removeClass("selected-file");
           $("#file-manager > span > span").removeClass("selected-file");
           $("#dir_"+el[1]).addClass("selected-file");   
           */
          
          
           function mycallbackform2(v,m){if(v=="1") remove_dir(el[1]);}
          
           $.prompt("Уверены в том, что хотите удалить этот каталог вместе с содержимым из Вашей библиотеки?",{ callback: mycallbackform2,  buttons: { yes: '1', no: '0' }});            
            
          }
          

          return true;

        },
        'rename-item': function(t) 
        {

          var el=t.id.split("_");
        

          if($("#"+t.id+" > .selected-file").attr("id")!=undefined) {el=($("#"+t.id+" > .selected-file").attr("id")).split("_")};
                   
          
          if(el[0]=="file") 
          {
               
           function mycallbackform(v,m){if(v=="1") rename_file(el[1],m.children('#file_name').val());}
          
           $.prompt('Новое имя фотографии: <input type="text" size="30" id="file_name" name="file_name" value="'+$.trim($("#file_"+el[1]).text())+'"/>',{ callback: mycallbackform,  buttons: { rename: '1', cancel: '0' }});            
           
          }
          
          if(el[0]=="dir") 
          {
          
           function mycallbackform2(v,m){if(v=="1") rename_dir(el[1],m.children('#dir_name').val());}
          
           $.prompt('Новое имя каталога: <input type="text" size="30" id="dir_name" name="dir_name" value="'+$.trim($("#dir_"+el[1]).text())+'"/>',{ callback: mycallbackform2,  buttons: { rename: '1', cancel: '0' }});            
            
          }
          

          return true;

        },
        
          'create-catalogue': function(e) 
        {

          var el=e.id.split("_")[1];
                  
          function mycallbackform(v,m){if(v=="1") {create_catalogue(m.children('#cat_form').serialize());} }
          
          $.prompt('Название каталога: <form name="cat_form" action="javascript:create_catalogue($(\'#cat_form\').serialize())" id="cat_form"><input type="hidden" name="parent" value="'+el+'"/><input type="text" size="30" id="cat_name" name="cat_name"/></form>',{ callback: mycallbackform,  buttons: { create: '1', cancel: '0' }});            
          
        },

        
        
        /*'close': function(t){return false;},*/

        'catme': function(e,t,c){move_file(e.id,c.id);}

      }

    }); 
    
 $('#file-manager').contextMenu('cat-menu', {
      bindings: {

        'create-catalogue': function(e) 
        {

          function mycallbackform(v,m){if(v=="1") {create_catalogue(m.children('#cat_form').serialize());} }
          
          $.prompt('Название каталога: <form name="cat_form" action="javascript:create_catalogue($(\'#cat_form\').serialize())" id="cat_form"><input type="text" size="30" id="cat_name" name="cat_name"/></form>',{ callback: mycallbackform,  buttons: { create: '1', cancel: '0' }});            
          
//          $("#cat_name").bind("keypress",function 
        }
        /*,
        
        'close': function(t){return false;}*/
      }

    });  
    
 $('#log-manager > span').contextMenu('log-menu', {
      bindings: {

        'delete-log': function(e) 
        {
           var el=e.id.split("_");
           
           function mycallbackform2(v,m){if(v=="1") remove_log(el[1]);}
          
           $.prompt("Уверены в том, что хотите удалить журнал истории?",{ callback: mycallbackform2,  buttons: { yes: '1', no: '0' }});            
           return true;         
              
        }
      }

    });  
    
    

}


$(document).ready(function($) 
{

   init_context_menu();             
        
   var elem="";
   
   elem+='<select id="fm_types" onchange="filemanager_reload(this.value)">';
   
   elem+='<option value="">Все</option>';
   elem+='<option value="0">Новые</option>'; 
   elem+='<option value="1">Готовые для загрузки</option>';  
   elem+='<option value="2">Загруженные на стоковые фотобанки</option>';
   elem+='<option value="3">Удаленные из библиотеки StockerHelp</option>';
   
   
   elem+='</select>';
   
   elem+='<img id="reloader" src="./i/reload.gif" alt="обновить список файлов" class="force_pointer" title="обновить список файлов" onclick="filemanager_reload($(\'#fm_types\').val())" />';
   elem+='<div id="pcntr">&nbsp;</div>';
    
     
   
   $("#file-manager-filter").html(elem);    
   
   $(document).bind("keydown", function(e){kbcode=e.which;});
   $(document).bind("keyup", function(e){kbcode='';});
   
   $(document).bind("onSelectStart", function(){alert('1');});
   
   $(document).bind("ajaxError", function(evt,req,sets)
   {
    
     if(_ajaxEventEnabled==1) 
     {
      var err;
      switch(req.status)
      {
         case 404: err="Документ не найден"; break;
         case 500: err="Ошибка сервера"; break;         
      
         default:  err=req.status;
      }
      
      popup('Ошибка','При запросе произошла следующая ошибка:<br/> <i>'+err+'</i>'); 
     }
      
   });


   $("a.clue").cluetip();
                      
});

function closemenu(){$("#jqContextMenu").hide();$("#jqShadow").hide();}

$.SetImpromptuDefaults({show: 'fadeIn'});
$.fn.cluetip.defaults.cluezIndex=2000;
$.fn.cluetip.defaults.splitTitle='|';
//$.fn.cluetip.defaults.positionBy="bottomTop";



//-->

