[ Index ]

PHP Cross Reference of phpwcms V1.5.0 _r431 (28.01.12)

title

Body

[close]

/include/inc_ext/fckeditor/editor/dialog/fck_flash/ -> fck_flash.js (source)

   1  /*
   2   * FCKeditor - The text editor for Internet - http://www.fckeditor.net
   3   * Copyright (C) 2003-2010 Frederico Caldeira Knabben
   4   *
   5   * == BEGIN LICENSE ==
   6   *
   7   * Licensed under the terms of any of the following licenses at your
   8   * choice:
   9   *
  10   *  - GNU General Public License Version 2 or later (the "GPL")
  11   *    http://www.gnu.org/licenses/gpl.html
  12   *
  13   *  - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
  14   *    http://www.gnu.org/licenses/lgpl.html
  15   *
  16   *  - Mozilla Public License Version 1.1 or later (the "MPL")
  17   *    http://www.mozilla.org/MPL/MPL-1.1.html
  18   *
  19   * == END LICENSE ==
  20   *
  21   * Scripts related to the Flash dialog window (see fck_flash.html).
  22   */
  23  
  24  var dialog        = window.parent ;
  25  var oEditor        = dialog.InnerDialogLoaded() ;
  26  var FCK            = oEditor.FCK ;
  27  var FCKLang        = oEditor.FCKLang ;
  28  var FCKConfig    = oEditor.FCKConfig ;
  29  var FCKTools    = oEditor.FCKTools ;
  30  
  31  //#### Dialog Tabs
  32  
  33  // Set the dialog tabs.
  34  dialog.AddTab( 'Info', oEditor.FCKLang.DlgInfoTab ) ;
  35  
  36  if ( FCKConfig.FlashUpload )
  37      dialog.AddTab( 'Upload', FCKLang.DlgLnkUpload ) ;
  38  
  39  if ( !FCKConfig.FlashDlgHideAdvanced )
  40      dialog.AddTab( 'Advanced', oEditor.FCKLang.DlgAdvancedTag ) ;
  41  
  42  // Function called when a dialog tag is selected.
  43  function OnDialogTabChange( tabCode )
  44  {
  45      ShowE('divInfo'        , ( tabCode == 'Info' ) ) ;
  46      ShowE('divUpload'    , ( tabCode == 'Upload' ) ) ;
  47      ShowE('divAdvanced'    , ( tabCode == 'Advanced' ) ) ;
  48  }
  49  
  50  // Get the selected flash embed (if available).
  51  var oFakeImage = dialog.Selection.GetSelectedElement() ;
  52  var oEmbed ;
  53  
  54  if ( oFakeImage )
  55  {
  56      if ( oFakeImage.tagName == 'IMG' && oFakeImage.getAttribute('_fckflash') )
  57          oEmbed = FCK.GetRealElement( oFakeImage ) ;
  58      else
  59          oFakeImage = null ;
  60  }
  61  
  62  window.onload = function()
  63  {
  64      // Translate the dialog box texts.
  65      oEditor.FCKLanguageManager.TranslatePage(document) ;
  66  
  67      // Load the selected element information (if any).
  68      LoadSelection() ;
  69  
  70      // Show/Hide the "Browse Server" button.
  71      GetE('tdBrowse').style.display = FCKConfig.FlashBrowser    ? '' : 'none' ;
  72  
  73      // Set the actual uploader URL.
  74      if ( FCKConfig.FlashUpload )
  75          GetE('frmUpload').action = FCKConfig.FlashUploadURL ;
  76  
  77      dialog.SetAutoSize( true ) ;
  78  
  79      // Activate the "OK" button.
  80      dialog.SetOkButton( true ) ;
  81  
  82      SelectField( 'txtUrl' ) ;
  83  }
  84  
  85  function LoadSelection()
  86  {
  87      if ( ! oEmbed ) return ;
  88  
  89      GetE('txtUrl').value    = GetAttribute( oEmbed, 'src', '' ) ;
  90      GetE('txtWidth').value  = GetAttribute( oEmbed, 'width', '' ) ;
  91      GetE('txtHeight').value = GetAttribute( oEmbed, 'height', '' ) ;
  92  
  93      // Get Advances Attributes
  94      GetE('txtAttId').value        = oEmbed.id ;
  95      GetE('chkAutoPlay').checked    = GetAttribute( oEmbed, 'play', 'true' ) == 'true' ;
  96      GetE('chkLoop').checked        = GetAttribute( oEmbed, 'loop', 'true' ) == 'true' ;
  97      GetE('chkMenu').checked        = GetAttribute( oEmbed, 'menu', 'true' ) == 'true' ;
  98      GetE('cmbScale').value        = GetAttribute( oEmbed, 'scale', '' ).toLowerCase() ;
  99  
 100      GetE('txtAttTitle').value        = oEmbed.title ;
 101  
 102      if ( oEditor.FCKBrowserInfo.IsIE )
 103      {
 104          GetE('txtAttClasses').value = oEmbed.getAttribute('className') || '' ;
 105          GetE('txtAttStyle').value = oEmbed.style.cssText ;
 106      }
 107      else
 108      {
 109          GetE('txtAttClasses').value = oEmbed.getAttribute('class',2) || '' ;
 110          GetE('txtAttStyle').value = oEmbed.getAttribute('style',2) || '' ;
 111      }
 112  
 113      UpdatePreview() ;
 114  }
 115  
 116  //#### The OK button was hit.
 117  function Ok()
 118  {
 119      if ( GetE('txtUrl').value.length == 0 )
 120      {
 121          dialog.SetSelectedTab( 'Info' ) ;
 122          GetE('txtUrl').focus() ;
 123  
 124          alert( oEditor.FCKLang.DlgAlertUrl ) ;
 125  
 126          return false ;
 127      }
 128  
 129      oEditor.FCKUndo.SaveUndoStep() ;
 130      if ( !oEmbed )
 131      {
 132          oEmbed        = FCK.EditorDocument.createElement( 'EMBED' ) ;
 133          oFakeImage  = null ;
 134      }
 135      UpdateEmbed( oEmbed ) ;
 136  
 137      if ( !oFakeImage )
 138      {
 139          oFakeImage    = oEditor.FCKDocumentProcessor_CreateFakeImage( 'FCK__Flash', oEmbed ) ;
 140          oFakeImage.setAttribute( '_fckflash', 'true', 0 ) ;
 141          oFakeImage    = FCK.InsertElement( oFakeImage ) ;
 142      }
 143  
 144      oEditor.FCKEmbedAndObjectProcessor.RefreshView( oFakeImage, oEmbed ) ;
 145  
 146      return true ;
 147  }
 148  
 149  function UpdateEmbed( e )
 150  {
 151      SetAttribute( e, 'type'            , 'application/x-shockwave-flash' ) ;
 152      SetAttribute( e, 'pluginspage'    , 'http://www.macromedia.com/go/getflashplayer' ) ;
 153  
 154      SetAttribute( e, 'src', GetE('txtUrl').value ) ;
 155      SetAttribute( e, "width" , GetE('txtWidth').value ) ;
 156      SetAttribute( e, "height", GetE('txtHeight').value ) ;
 157  
 158      // Advances Attributes
 159  
 160      SetAttribute( e, 'id'    , GetE('txtAttId').value ) ;
 161      SetAttribute( e, 'scale', GetE('cmbScale').value ) ;
 162  
 163      SetAttribute( e, 'play', GetE('chkAutoPlay').checked ? 'true' : 'false' ) ;
 164      SetAttribute( e, 'loop', GetE('chkLoop').checked ? 'true' : 'false' ) ;
 165      SetAttribute( e, 'menu', GetE('chkMenu').checked ? 'true' : 'false' ) ;
 166  
 167      SetAttribute( e, 'title'    , GetE('txtAttTitle').value ) ;
 168  
 169      if ( oEditor.FCKBrowserInfo.IsIE )
 170      {
 171          SetAttribute( e, 'className', GetE('txtAttClasses').value ) ;
 172          e.style.cssText = GetE('txtAttStyle').value ;
 173      }
 174      else
 175      {
 176          SetAttribute( e, 'class', GetE('txtAttClasses').value ) ;
 177          SetAttribute( e, 'style', GetE('txtAttStyle').value ) ;
 178      }
 179  }
 180  
 181  var ePreview ;
 182  
 183  function SetPreviewElement( previewEl )
 184  {
 185      ePreview = previewEl ;
 186  
 187      if ( GetE('txtUrl').value.length > 0 )
 188          UpdatePreview() ;
 189  }
 190  
 191  function UpdatePreview()
 192  {
 193      if ( !ePreview )
 194          return ;
 195  
 196      while ( ePreview.firstChild )
 197          ePreview.removeChild( ePreview.firstChild ) ;
 198  
 199      if ( GetE('txtUrl').value.length == 0 )
 200          ePreview.innerHTML = ' ' ;
 201      else
 202      {
 203          var oDoc    = ePreview.ownerDocument || ePreview.document ;
 204          var e        = oDoc.createElement( 'EMBED' ) ;
 205  
 206          SetAttribute( e, 'src', GetE('txtUrl').value ) ;
 207          SetAttribute( e, 'type', 'application/x-shockwave-flash' ) ;
 208          SetAttribute( e, 'width', '100%' ) ;
 209          SetAttribute( e, 'height', '100%' ) ;
 210  
 211          ePreview.appendChild( e ) ;
 212      }
 213  }
 214  
 215  // <embed id="ePreview" src="fck_flash/claims.swf" width="100%" height="100%" style="visibility:hidden" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">
 216  
 217  function BrowseServer()
 218  {
 219      OpenFileBrowser( FCKConfig.FlashBrowserURL, FCKConfig.FlashBrowserWindowWidth, FCKConfig.FlashBrowserWindowHeight ) ;
 220  }
 221  
 222  function SetUrl( url, width, height )
 223  {
 224      GetE('txtUrl').value = url ;
 225  
 226      if ( width )
 227          GetE('txtWidth').value = width ;
 228  
 229      if ( height )
 230          GetE('txtHeight').value = height ;
 231  
 232      UpdatePreview() ;
 233  
 234      dialog.SetSelectedTab( 'Info' ) ;
 235  }
 236  
 237  function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
 238  {
 239      // Remove animation
 240      window.parent.Throbber.Hide() ;
 241      GetE( 'divUpload' ).style.display  = '' ;
 242  
 243      switch ( errorNumber )
 244      {
 245          case 0 :    // No errors
 246              alert( 'Your file has been successfully uploaded' ) ;
 247              break ;
 248          case 1 :    // Custom error
 249              alert( customMsg ) ;
 250              return ;
 251          case 101 :    // Custom warning
 252              alert( customMsg ) ;
 253              break ;
 254          case 201 :
 255              alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
 256              break ;
 257          case 202 :
 258              alert( 'Invalid file type' ) ;
 259              return ;
 260          case 203 :
 261              alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
 262              return ;
 263          case 500 :
 264              alert( 'The connector is disabled' ) ;
 265              break ;
 266          default :
 267              alert( 'Error on file upload. Error number: ' + errorNumber ) ;
 268              return ;
 269      }
 270  
 271      SetUrl( fileUrl ) ;
 272      GetE('frmUpload').reset() ;
 273  }
 274  
 275  var oUploadAllowedExtRegex    = new RegExp( FCKConfig.FlashUploadAllowedExtensions, 'i' ) ;
 276  var oUploadDeniedExtRegex    = new RegExp( FCKConfig.FlashUploadDeniedExtensions, 'i' ) ;
 277  
 278  function CheckUpload()
 279  {
 280      var sFile = GetE('txtUploadFile').value ;
 281  
 282      if ( sFile.length == 0 )
 283      {
 284          alert( 'Please select a file to upload' ) ;
 285          return false ;
 286      }
 287  
 288      if ( ( FCKConfig.FlashUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
 289          ( FCKConfig.FlashUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
 290      {
 291          OnUploadCompleted( 202 ) ;
 292          return false ;
 293      }
 294  
 295      // Show animation
 296      window.parent.Throbber.Show( 100 ) ;
 297      GetE( 'divUpload' ).style.display  = 'none' ;
 298  
 299      return true ;
 300  }


Generated: Sun Jan 29 16:31:14 2012 Cross-referenced by PHPXref 0.7.1