[ Index ]
 

Code source de e107 0.7.8

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/e107_files/ -> e107.js (source)

   1  <!--
   2  
   3  /*
   4  + ----------------------------------------------------------------------------+
   5  |    e107 website system - Javascript File.
   6  |
   7  |    $Source: /cvsroot/e107/e107_0.7/e107_files/e107.js,v $
   8  |    $Revision: 1.20 $
   9  |    $Date: 2007/01/19 20:46:53 $
  10  |    $Author: e107steved $
  11  +----------------------------------------------------------------------------+
  12  */
  13  
  14  /*
  15   * NOTE: KEEP THIS AT THE TOP OF E107.JS!
  16   * localTime is recorded ASAP after page load; SyncWithServerTime is called at the END
  17   * of page processing. We want localTime and serverTime set in close chronological order.
  18   * Page Processing order is as follows:
  19   * A) All PHP code encountered sequentially in page
  20   * B) All Javascript code encountered sequentially in page NOT including function internals
  21   * So best proximity is achieved by setting
  22   * serverTime at END of php code, and localTime at START of js code.
  23   * NOTE: this method means reported times include transfer delay. It's slightly MORE accurate this way!
  24   * Final product: tdOffset cookie contains server-browser time difference in seconds,
  25   * independent of time zone. tzOffset contains browser time zone in minutes.
  26   */
  27  
  28  var nowLocal = new Date();        /* time at very beginning of js execution */
  29  var localTime = Math.floor(nowLocal.getTime()/1000);    /* time, in ms -- recorded at top of jscript */
  30  /* NOTE: if serverDelta is needed for js functions, you must pull it from
  31   * the cookie (as calculated during a previous page load!)
  32   * The value calculated in SyncWithServerTime is not known until after the
  33   * entire page has been processed.
  34   */
  35  function SyncWithServerTime(serverTime)
  36  {
  37      if (serverTime) {
  38            /* update time difference cookie */
  39          tdCookie='e107_tdOffset=';
  40          tdSetTimeCookie='e107_tdSetTime=';
  41          serverDelta=Math.floor(localTime-serverTime);
  42            document.cookie = tdCookie+serverDelta;
  43            document.cookie = tdSetTimeCookie+(localTime-serverDelta); /* server time when set */
  44      }
  45  
  46      tzCookie = 'e107_tzOffset=';
  47      if (document.cookie.indexOf(tzCookie) < 0) {
  48          /* set if not already set */
  49          timezoneOffset = nowLocal.getTimezoneOffset(); /* client-to-GMT in minutes */
  50          document.cookie = tzCookie + timezoneOffset;
  51      }
  52  }
  53  
  54  if(document.getElementById&&!document.all){ns6=1;}else{ns6=0;}
  55  var agtbrw=navigator.userAgent.toLowerCase();
  56  var operaaa=(agtbrw.indexOf('opera')!=-1);
  57  var head="display:''";
  58  var folder='';
  59  
  60  function expandit(curobj, hide) {
  61      if(document.getElementById(curobj)) {
  62            folder=document.getElementById(curobj).style;
  63      } else {
  64          if(ns6==1||operaaa==true) {
  65              folder=curobj.nextSibling.nextSibling.style;
  66          } else {
  67              folder=document.all[curobj.sourceIndex+1].style;
  68          }
  69     }
  70      if(folder.display=="none")
  71      {
  72          folder.display="";
  73      } else {
  74          folder.display="none";
  75      }
  76      if(hide) {
  77          var hide_objects = hide.split(",");
  78          for(i=0; i<hide_objects.length; i++) {
  79              hide_objects[i]=hide_objects[i].replace(/^\s*(.*)/, "$1");
  80              hide_objects[i]=hide_objects[i].replace(/(.*?)\s*$/, "$1");
  81              if(document.getElementById(hide_objects[i])) {
  82                  hidden=document.getElementById(hide_objects[i]).style;
  83                  if(hidden.display=="") {
  84                      hidden.display="none";
  85                  }
  86              }
  87          }
  88      }
  89  }
  90  
  91  function urljump(url){
  92      top.window.location = url;
  93  }
  94  
  95  function setInner(id, txt) {
  96      document.getElementById(id).innerHTML = txt;
  97  }
  98  
  99  function jsconfirm(thetext){
 100          return confirm(thetext);
 101  }
 102  
 103  function insertext(str,tagid,display){
 104      document.getElementById(tagid).value = str;
 105      if(display){
 106          document.getElementById(display).style.display='none';
 107      }
 108  }
 109  
 110  function appendtext(str,tagid,display){
 111      document.getElementById(tagid).value += str;
 112      document.getElementById(tagid).focus();
 113      if(display){
 114          document.getElementById(display).style.display='none';
 115      }
 116  }
 117  
 118  function open_window(url,wth,hgt) {
 119      if('full' == wth){
 120          pwindow = window.open(url);
 121      } else {
 122          if (wth) {
 123              mywidth=wth;
 124          } else {
 125              mywidth=600;
 126          }
 127  
 128          if (hgt) {
 129              myheight=hgt;
 130          } else {
 131              myheight=400;
 132          }
 133  
 134          pwindow = window.open(url,'Name', 'top=100,left=100,resizable=yes,width='+mywidth+',height='+myheight+',scrollbars=yes,menubar=yes')
 135      }
 136      pwindow.focus();
 137  }
 138  
 139  function ejs_preload(ejs_path, ejs_imageString){
 140      var ejs_imageArray = ejs_imageString.split(',');
 141      for(ejs_loadall=0; ejs_loadall<ejs_imageArray.length; ejs_loadall++){
 142          var ejs_LoadedImage=new Image();
 143          ejs_LoadedImage.src=ejs_path + ejs_imageArray[ejs_loadall];
 144      }
 145  }
 146  
 147  function textCounter(field,cntfield) {
 148      cntfield.value = field.value.length;
 149  }
 150  
 151  function openwindow() {
 152      opener = window.open("htmlarea/index.php", "popup","top=50,left=100,resizable=no,width=670,height=520,scrollbars=no,menubar=no");
 153      opener.focus();
 154  }
 155  
 156  function setCheckboxes(the_form, do_check, the_cb){
 157      var elts = (typeof(document.forms[the_form].elements[the_cb]) != 'undefined') ? document.forms[the_form].elements[the_cb] : document.forms[the_form].elements[the_cb];
 158      var elts_cnt  = (typeof(elts.length) != 'undefined') ? elts.length : 0;
 159      if(elts_cnt){
 160          for(var i = 0; i < elts_cnt; i++){
 161              elts[i].checked = do_check;
 162          }
 163      }else{
 164          elts.checked        = do_check;
 165          }
 166      return true;
 167  }
 168  
 169  var ref=""+escape(top.document.referrer);
 170  var colord = window.screen.colorDepth;
 171  var res = window.screen.width + "x" + window.screen.height;
 172  var eself = document.location;
 173  
 174  // From http://phpbb.com
 175  var clientPC = navigator.userAgent.toLowerCase();
 176  var clientVer = parseInt(navigator.appVersion);
 177  var is_ie = ((clientPC.indexOf("msie") != -1) && (clientPC.indexOf("opera") == -1));
 178  var is_nav = ((clientPC.indexOf('mozilla')!=-1) && (clientPC.indexOf('spoofer')==-1) && (clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera')==-1) && (clientPC.indexOf('webtv')==-1) && (clientPC.indexOf('hotjava')==-1));
 179  var is_moz = 0;
 180  var is_win = ((clientPC.indexOf("win")!=-1) || (clientPC.indexOf("16bit") != -1));
 181  var is_mac = (clientPC.indexOf("mac")!=-1);
 182  var e107_selectedInputArea;
 183  var e107_selectedRange;
 184  var e107_dupCounter = 1;
 185  
 186  // From http://www.massless.org/mozedit/
 187  function mozWrap(txtarea, open, close){
 188      var selLength = txtarea.textLength;
 189      var selStart = txtarea.selectionStart;
 190      var selEnd = txtarea.selectionEnd;
 191      if (selEnd == 1 || selEnd == 2) selEnd = selLength;
 192      var s1 = (txtarea.value).substring(0,selStart);
 193      var s2 = (txtarea.value).substring(selStart, selEnd)
 194      var s3 = (txtarea.value).substring(selEnd, selLength);
 195      txtarea.value = s1 + open + s2 + close + s3;
 196      return;
 197  }
 198  
 199  function mozSwap(txtarea, newtext){
 200      var selLength = txtarea.textLength;
 201      var selStart = txtarea.selectionStart;
 202      var selEnd = txtarea.selectionEnd;
 203      if (selEnd == 1 || selEnd == 2) selEnd = selLength;
 204      var s1 = (txtarea.value).substring(0,selStart);
 205      var s3 = (txtarea.value).substring(selEnd, selLength);
 206      txtarea.value = s1 + newtext + s3;
 207      return;
 208  }
 209  
 210  function storeCaret (textAr){
 211      e107_selectedInputArea = textAr;
 212      if (textAr.createTextRange){
 213          e107_selectedRange = document.selection.createRange().duplicate();
 214      }
 215  }
 216  
 217  function addtext(text, emote)
 218  {
 219      if (window.e107_selectedInputArea)
 220      {
 221          var ta = e107_selectedInputArea;
 222          if (emote != true)
 223          {  // Split if its a paired bbcode
 224              val = text.split('][');
 225              if (val[0] == text) val[1] = '';
 226          }
 227          else 
 228          { 
 229          val = text; 
 230          }
 231  
 232          if ((clientVer >= 4) && is_ie && is_win)
 233          {
 234              theSelection = document.selection.createRange().text; /* wrap selected text */
 235              if (theSelection) 
 236              {
 237                  if (emote != true)
 238                  {
 239                    if (val[1] == '')
 240                    {  // Single piece of text
 241                      document.selection.createRange().text = val[0];
 242                    }
 243                    else
 244                    {  // bbcode
 245                      document.selection.createRange().text = val[0] +']' +  theSelection + '[' + val[1];
 246                    }
 247                  } 
 248                  else 
 249                  {
 250                      document.selection.createRange().text = val + theSelection;
 251                  }
 252                  ta.focus();
 253                  theSelection = '';
 254                  return;
 255              }
 256  
 257          }
 258          else 
 259            if (ta.selectionEnd && (ta.selectionEnd - ta.selectionStart > 0))
 260            { // Selected text here
 261              if (emote != true)
 262              {
 263                if  (val[1] != '')
 264                {  // BBCode to wrap
 265                  mozWrap(ta, val[0] +']', '[' + val[1]); /* wrap selected text */
 266                }
 267                else
 268                {  // Single piece of text to insert, and delete any selected text
 269                  mozSwap(ta, text); /* wrap selected text */
 270                }
 271              } 
 272              else 
 273              {
 274                  mozWrap(ta, val, ''); /* wrap selected text */
 275              }
 276              return;
 277            }
 278          text = ' ' + text + ' ';
 279          if (ta.createTextRange && e107_selectedRange) 
 280          {
 281              var caretPos = e107_selectedRange; /* IE */
 282              caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
 283          } 
 284          else 
 285            if (ta.selectionStart || ta.selectionStart == '0') 
 286            { /* Moz */
 287                 var startPos = ta.selectionStart;
 288              var endPos = ta.selectionEnd;
 289              var charb4 = ta.value.charAt(endPos-1);
 290              ta.value = ta.value.substring(0, endPos)+ text + ta.value.substring(endPos);
 291            } 
 292            else 
 293            {
 294              ta.value  += text;
 295            }
 296          ta.focus();
 297      }
 298  }
 299  
 300  function help(help,tagid){
 301      if(tagid){
 302          document.getElementById(tagid).value = help;
 303      } else if(document.getElementById('dataform')) {
 304          document.getElementById('dataform').helpb.value = help;
 305      }
 306  }
 307  function externalLinks() {
 308      if (!document.getElementsByTagName) return;
 309      var anchors = document.getElementsByTagName("a");
 310      for (var i=0; i<anchors.length; i++) {
 311      var anchor = anchors[i];
 312      if (anchor.getAttribute("href") &&
 313          anchor.getAttribute("rel") == "external")
 314          anchor.target = "_blank";
 315      }
 316  }
 317  
 318  function eover(object, over) {
 319      object.className = over;
 320  }
 321  
 322  function duplicateHTML(copy,paste,baseid){
 323          if(document.getElementById(copy)){
 324  
 325              e107_dupCounter++;
 326              var type = document.getElementById(copy).nodeName; // get the tag name of the source copy.
 327  
 328              var but = document.createElement('input');
 329              var br = document.createElement('br');
 330  
 331              but.type = 'button';
 332              but.value = 'x';
 333              but.className = 'button';
 334              but.onclick = function(){ this.parentNode.parentNode.removeChild(this.parentNode); };
 335  
 336              var destination = document.getElementById(paste);
 337              var source      = document.getElementById(copy).cloneNode(true);
 338  
 339              var newentry = document.createElement(type);
 340  
 341              newentry.appendChild(source);
 342              newentry.value='';
 343              newentry.appendChild(but);
 344              newentry.appendChild(br);
 345              if(baseid)
 346              {
 347                  newid = baseid+e107_dupCounter;
 348                  newentry.innerHTML = newentry.innerHTML.replace(new RegExp(baseid, 'g'), newid);
 349                  newentry.id=newid;
 350              }
 351  
 352              destination.appendChild(newentry);
 353          }
 354  }
 355  
 356  function preview_image(src_val,img_path){
 357      var ta;
 358      var desti
 359  
 360      var desti = src_val + '_prev';
 361      ta = document.getElementById(src_val).value;
 362      if(ta){
 363          document.getElementById(desti).src = img_path + ta;
 364      }else{
 365          document.getElementById(desti).src = '".e_IMAGE."generic/blank.gif';
 366      }
 367      return;
 368  }
 369  
 370  
 371  //-->


Généré le : Sun Apr 1 01:23:32 2007 par Balluche grâce à PHPXref 0.7