an EZ-linkezpz是什么意思思

A Service Announcement
EZ-Link Imagine American Express(R) Prepaid Card
Dear Imagine Card Members,
Thank you for supporting the EZ-Link Imagine American Express Prepaid Card. We regret to inform you that we will be discontinuing the sale of the Imagine Card on 24 March 2016 and its acceptance on 1 September 2016.
For your convenience, here’s a summary of the key dates to note:
SALES OF THE IMAGINE CARD:
Sales of the Imagine Card will stop on 24 March 2016.
Rebates Program:
The rebates program (7% on American Express purse and 2% on ez-link purse) will stop on 15 April 2016. Rebates will be given for eligible spend made by 15 April pm and credited into your American Express purse by 15 May 2016.
Top-up service:
You can continue to top-up via the website and mobile app for the American Express purse on the Imagine Card until 31 May pm.
Card usage:
If you have a remaining balance in the American Express purse, you have to utilise the remaining balance by 31 August pm. After this date, the Imagine Card will no longer be accepted at American Express merchants.
The Imagine Card can still be used as an ez-link card for transit purposes until the expiry date. For more information, please refer to the .
Balance refunds:
From 1 August 2016, you can request for a refund of the balance stored value in the American Express purse of your Imagine Card by submitting the Balance Refund Form available when you login to your account. During the refund period from1 August 2016 to 30 November 2016, the Imagine Card submitted for refund must either be valid or within one month of the expiry date.
Imagine Card Members with EZ-Reload service will be contacted separately on the necessary procedures to terminateEZ-Reload service tied to their card.
If you have further enquiries, you can visit
or contact our EZ-Link hotline at (+65)
from 8am to 6pm daily (except public holidays).
Thank you for your support once again.error-bg.png
error-btn.png
close0.png
css_body.css
css_menu.css
css_menu_user.css
css_top.css
css_top_user.css
loading.gif
tinyTips.css
titleBG.png
titleBG0.png
titleBG1.png
wbox-min.css
disablehandles.htc
showtableborders.htc
block_address.png
block_blockquote.png
block_div.png
block_h1.png
block_h2.png
block_h3.png
block_h4.png
block_h5.png
block_h6.png
block_p.png
block_pre.png
fck_anchor.gif
fck_flashlogo.gif
fck_hiddenfield.gif
fck_pagebreak.gif
fck_plugin.gif
editor.css
fck_editorarea.css
fck_internal.css
fck_showtableborders_gecko.css
locked.gif
unlocked.gif
fcknumericfield.htc
fck_dialog_common.css
moz-bindings.xml
spellchecker_net.gif
logo_fckeditor.gif
logo_fredck.gif
fck_docprops
fck_document_preview.html
fck_flash_preview.html
fck_image_preview.html
fck_select
fck_spellerpages
spellerpages
blank.html
controls.html
spellchecker.html
spellerStyle.css
fck_template
template1.gif
template2.gif
template3.gif
fck_about.html
fck_anchor.html
fck_button.html
fck_checkbox.html
fck_colorselector.html
fck_div.html
fck_docprops.html
fck_find.html
fck_flash.html
fck_form.html
fck_hiddenfield.html
fck_image.html
fck_link.html
fck_listprop.html
fck_paste.html
fck_radiobutton.html
fck_replace.html
fck_select.html
fck_smiley.html
fck_source.html
fck_specialchar.html
fck_spellerpages.html
fck_table.html
fck_tablecell.html
fck_template.html
fck_textarea.html
fck_textfield.html
fck_dtd_test.html
angel_smile.gif
angry_smile.gif
broken_heart.gif
confused_smile.gif
cry_smile.gif
devil_smile.gif
embaressed_smile.gif
envelope.gif
lightbulb.gif
omg_smile.gif
regular_smile.gif
sad_smile.gif
shades_smile.gif
teeth_smile.gif
thumbs_down.gif
thumbs_up.gif
tounge_smile.gif
whatchutalkingabout_smile.gif
wink_smile.gif
anchor.gif
arrow_ltr.gif
arrow_rtl.gif
modecode.gif
modecodebtn.gif
modeedit.gif
modeformat.gif
modepreview.gif
modetext.gif
SizeMinus.gif
SizePlus.gif
spacer.gif
splitView.gif
_translationstatus.txt
sample.html
dragresizetable
placeholder
fck_placeholder.html
placeholder.gif
simplecommands
tablecommands
dialog.sides.gif
dialog.sides.png
dialog.sides.rtl.png
sprites.gif
sprites.png
toolbar.arrowright.gif
toolbar.bg.gif
toolbar.buttonarrow.gif
toolbar.buttonbg.gif
toolbar.collapse.gif
toolbar.end.gif
toolbar.expand.gif
toolbar.separator.gif
toolbar.start.gif
fck_dialog.css
fck_editor.css
fck_strip.gif
fckdebug.html
fckdialog.html
fckeditor s.html
fckeditor.html
fckeditor.original.html
fckeditors.html
fckstyles.xml
fcktemplates.xml
admin_tlogo.jpg
arrowdown.gif
body_title_bg.gif
body_title_left.gif
body_title_right.gif
class_sclose.gif
class_sopen.gif
class_ssr.gif
close2.gif
dede_biz_admin_bbg.jpg
dede_biz_admin_blbg.jpg
dede_biz_admin_brbg.jpg
dede_biz_admin_lmbg.jpg
dede_biz_admin_lmtr.jpg
dede_biz_admin_mbg.jpg
frame-l.gif
frame-r.gif
frame_on.gif
image_s.gif
inputbut_bg.gif
input_shadow.png
left_bg_top.gif
login_13.png
login_input_bg.gif
login_input_hr.gif
login_submit.gif
logo_01.gif
logo_user.jpg
menulist.gif
menunowbg.gif
menu_title_bg.jpg
mico_1.gif
mico_l.gif
noimage.gif
qqstyle1.jpg
qqstyle2.jpg
rcbox_title.gif
slide1.jpg
tcstyle1.jpg
tinyTip-bottom.png
tinyTip-bq.png
tinyTip-content.png
tinyTip-top.png
tinyTip.png
toolbar_del.gif
toolbar_no.gif
toolbar_ok.gif
top_bg.gif
top_bg_hr.jpg
top_nav_bg.jpg
top_nav_left.jpg
top_nav_link.jpg
top_nav_link2.gif
top_nav_mid.jpg
top_nav_on.gif
top_nav_right.jpg
复件 top_nav_bg.jpg
复件 top_nav_on.gif
datepicker.css
datepicker.css
datePicker.gif
WdatePicker.css
My97DatePicker.htm
blank.html
channel.dat
getfilelist.xslt
Logdata.resx
selcolor.htm
setstyle.htm
_statistics
GoogleMap.html
^_^shuju.mdb
slide1.swf
slideflash.swf
slideflash2.swf
ajax-loader.gif
AntLoading.swf
arr_left.cur
arr_right.cur
scrollBg.png
scrollBgline.png
split_v1.0.png
touming3.png
cslist_btm_bg.gif
cslist_mid_bg.gif
cslist_top_bg.gif
cslist_top_shut.gif
default.css
icon_person_msn.gif
icon_person_qq.gif
icon_person_stat_online.gif
Kf_bg02.gif
Kf_bg03_01.gif
Kf_bg03_02.gif
Kf_bg03_03.gif
qq_online.gif
service.gif
1-0-lp.jpg
1-317-lp.jpg
AllBg_2010.png
baojia.css
bdsstyle.css
bid_title.png
box_nav_bg.jpg
bt_tabdown.gif
bt_tabup.gif
comeon.gif
co_btn_l.gif
co_btn_r.gif
co_title.gif
daohang.css
dot_grey.gif
ezhuang.png
footline.jpg
foot_14.jpg
foot_16.jpg
freeRelease.gif
geomancy_12.png
help_icon.gif
index960.png
indexad.jpg
index_icon.gif
left-1.png
liuyan.gif
logo_con.png
logo_ezhuang.png
logo_ezhuang.psd
menu_bg.png
menu_bg_1.png
newvideo-1.3.png
posttime.gif
so_btn.gif
tab_bg.png
tab_switch.png
text_free1.gif
top_right.gif
villa_17.jpg
wangan.jpg
zb_bzt.png
zb_fabu.png
zb_ico.png
zb_ltitle.png
zhaobiao0919.css
zhaobiaofabu.jpg
aliyun.gif
pagebg.jpg
pagebg_.jpg
comment.html
#install.inc
#uninstall.inc
productbuy
public.css
arrow_6.gif
banzhu.gif
bookmark.jpg
btmline.jpg
button_2.png
button_4.png
container.png
downfile.gif
menubg.jpg
ocTHead.gif
search6.jpg
submit.jpg
title1.jpg
title2.jpg
title3.jpg
title4.jpg
title782.jpg
title785.jpg
title792.jpg
about.html
album.html
albumlist.html
apply.html
custom.html
downlist.html
gbook.html
index.html
joblist.html
left1.html
login.html
newslist.html
product-head.html
product-left.html
product.html
productbuy.html
productcart.html
productcheckout.html
productcomfirm.html
productlist.html
productprint.html
rssmap.html
search.html
sitemap.html
taglist.html
userbuy.html
userinfo.html
userleft.html
video.html
videolist.html
zhaobiao.html
template.xml
month_1208
363475.jpg
464010.jpg
532484.jpg
146576.jpg
212068.jpg
317454.jpg
month_1308
568750.jpg
507138.gif
157899.jpg
494570.jpg
511396.jpg
073523.gif
451089.jpg
008935.gif
008011.gif
314635.jpg
369474.jpg
207463.jpg
405644.gif
113837.gif
246141.jpg
397287.jpg
491888.jpg
107303.jpg
405185.jpg
537922.jpg
041766.jpg
215760.jpg
343162.gif
106281.jpg
207828.jpg
month_1208
month_1208
211310.png
month_1308
539789.jpg
423308.jpg
164678.gif
386583.jpg
119556.jpg
466327.jpg
421544.jpg
584071.jpg
057693.jpg
356881.jpg
265701.jpg
051510.jpg
145621.jpg
039396.jpg
199748.jpg
242881.jpg
104089.jpg
218781.jpg
375657.jpg
272951.jpg
054531.jpg
202898.jpg
062004.jpg
116290.jpg
538802.jpg
232023.jpg
008015.jpg
071685.jpg
252767.gif
025428.jpg
013046.jpg
247517.jpg
493317.jpg
232255.jpg
097970.jpg
001526.jpg
089376.jpg
179125.jpg
124025.jpg
306015.jpg
508721.jpg
031808.jpg
168562.jpg
month_1208
381952.jpg
515101.jpg
258890.jpg
595009.jpg
135531.jpg
202432.jpg
221327.jpg
month_1308
501472.jpg
553195.jpg
593091.jpg
024621.jpg
069991.jpg
071517.jpg
115478.jpg
146385.jpg
174545.jpg
206076.jpg
239087.jpg
408007.jpg
583527.jpg
028437.jpg
051215.jpg
086718.jpg
596645.jpg
031782.jpg
064170.jpg
094291.jpg
month_1109
433233.jpg
503128.jpg
008590.jpg
month_1208
114160.png
month_1308
412613.jpg
449065.jpg
486397.jpg
563461.jpg
588802.jpg
month_1308
393386.jpg
423120.jpg
307467.jpg
[站长必备资源]
SEO排名点击工具.url
介绍客户赚取丰厚提成.url
免费网站推广渠道.url
关键词排名见到效果在付费.url
如何做搜索引擎友好型网站.url
网站源码及模版.url
aspbox.exe
favicon.ico
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C)
Frederico Caldeira Knabben
* == BEGIN LICENSE ==
* Licensed under the terms of any of the following licenses at your
- GNU General Public License Version 2 or later (the &GPL&)
http://www.gnu.org/licenses/gpl.html
- GNU Lesser General Public License Version 2.1 or later (the &LGPL&)
http://www.gnu.org/licenses/lgpl.html
- Mozilla Public License Version 1.1 or later (the &MPL&)
http://www.mozilla.org/MPL/MPL-1.1.html
* == END LICENSE ==
* Scripts related to the Link dialog window (see fck_link.html).
var dialog = window.
var oEditor = dialog.InnerDialogLoaded() ;
= oEditor.FCK ;
var FCKLang
= oEditor.FCKL
var FCKConfig = oEditor.FCKC
var FCKRegexLib = oEditor.FCKRegexL
var FCKTools = oEditor.FCKT
//#### Dialog Tabs
// Set the dialog tabs.
dialog.AddTab( 'Info', FCKLang.DlgLnkInfoTab ) ;
if ( !FCKConfig.LinkDlgHideTarget )
dialog.AddTab( 'Target', FCKLang.DlgLnkTargetTab, true ) ;
if ( FCKConfig.LinkUpload )
dialog.AddTab( 'Upload', FCKLang.DlgLnkUpload, true ) ;
if ( !FCKConfig.LinkDlgHideAdvanced )
dialog.AddTab( 'Advanced', FCKLang.DlgAdvancedTag ) ;
// Function called when a dialog tag is selected.
function OnDialogTabChange( tabCode )
ShowE('divInfo'
, ( tabCode == 'Info' ) ) ;
ShowE('divTarget' , ( tabCode == 'Target' ) ) ;
ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
ShowE('divAttribs' , ( tabCode == 'Advanced' ) ) ;
dialog.SetAutoSize( true ) ;
//#### Regular Expressions library.
var oRegex = new Object() ;
oRegex.UriProtocol = /^(((http|https|ftp|news):\/\/)|mailto:)/
oRegex.UrlOnChangeProtocol = /^(http|https|ftp|news):\/\/(?=.)/
oRegex.UrlOnChangeTestOther = /^((javascript:)|[#\/\.])/
oRegex.ReserveTarget = /^_(blank|self|top|parent)$/
oRegex.PopupUri = /^javascript:void\(\s*window.open\(\s*'([^']+)'\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*\)\s*$/ ;
// Accessible popups
oRegex.OnClickPopup = /^\s*on[cC]lick=&\s*window.open\(\s*this\.href\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*;\s*return\s**\s*&$/ ;
oRegex.PopupFeatures = /(?:^|,)([^=]+)=(\d+|yes|no)/
//#### Parser Functions
var oParser = new Object() ;
// This method simply returns the two inputs in numerical order. You can even
// provide strings, as the method would parseInt() the values.
oParser.SortNumerical = function(a, b)
return parseInt( a, 10 ) - parseInt( b, 10 ) ;
oParser.ParseEMailParams = function(sParams)
// Initialize the oEMailParams object.
var oEMailParams = new Object() ;
oEMailParams.Subject = '' ;
oEMailParams.Body = '' ;
var aMatch = sParams.match( /(^|^\?|&)subject=([^&]+)/i ) ;
if ( aMatch ) oEMailParams.Subject = decodeURIComponent( aMatch[2] ) ;
aMatch = sParams.match( /(^|^\?|&)body=([^&]+)/i ) ;
if ( aMatch ) oEMailParams.Body = decodeURIComponent( aMatch[2] ) ;
return oEMailP
// This method returns either an object containing the email info, or FALSE
// if the parameter is not an email link.
oParser.ParseEMailUri = function( sUrl )
// Initializes the EMailInfo object.
var oEMailInfo = new Object() ;
oEMailInfo.Address = '' ;
oEMailInfo.Subject = '' ;
oEMailInfo.Body = '' ;
var aLinkInfo = sUrl.match( /^(\w+):(.*)$/ ) ;
if ( aLinkInfo && aLinkInfo[1] == 'mailto' )
// This seems to be an unprotected email link.
var aParts = aLinkInfo[2].match( /^([^\?]+)\??(.+)?/ ) ;
if ( aParts )
// Set the e-mail address.
oEMailInfo.Address = aParts[1] ;
// Look for the optional e-mail parameters.
if ( aParts[2] )
var oEMailParams = oParser.ParseEMailParams( aParts[2] ) ;
oEMailInfo.Subject = oEMailParams.S
oEMailInfo.Body = oEMailParams.B
return oEMailI
else if ( aLinkInfo && aLinkInfo[1] == 'javascript' )
// This may be a protected email.
// Try to match the url against the EMailProtectionFunction.
var func = FCKConfig.EMailProtectionF
if ( func != null )
// Escape special chars.
func = func.replace( /([\/^$*+.?()\[\]])/g, '\\$1' ) ;
// Define the possible keys.
var keys = new Array('NAME', 'DOMAIN', 'SUBJECT', 'BODY') ;
// Get the order of the keys (hold them in the array &pos&) and
// the function replaced by regular expression patterns.
var sFunc =
var pos = new Array() ;
for ( var i = 0 ; i & keys. i ++ )
var rexp = new RegExp( keys[i] ) ;
var p = func.search( rexp ) ;
if ( p &= 0 )
sFunc = sFunc.replace( rexp, '\'([^\']*)\'' ) ;
pos[pos.length] = p + ':' + keys[i] ;
// Sort the available keys.
pos.sort( oParser.SortNumerical ) ;
// Replace the excaped single quotes in the url, such they do
// not affect the regexp afterwards.
aLinkInfo[2] = aLinkInfo[2].replace( /\\'/g, '###SINGLE_QUOTE###' ) ;
// Create the regexp and execute it.
var rFunc = new RegExp( '^' + sFunc + '$' ) ;
var aMatch = rFunc.exec( aLinkInfo[2] ) ;
if ( aMatch )
var aInfo = new Array();
for ( var i = 1 ; i & aMatch. i ++ )
var k = pos[i-1].match(/^\d+:(.+)$/) ;
aInfo[k[1]] = aMatch[i].replace(/###SINGLE_QUOTE###/g, '\'') ;
// Fill the EMailInfo object that will be returned
oEMailInfo.Address = aInfo['NAME'] + '@' + aInfo['DOMAIN'] ;
oEMailInfo.Subject = decodeURIComponent( aInfo['SUBJECT'] ) ;
oEMailInfo.Body = decodeURIComponent( aInfo['BODY'] ) ;
return oEMailI
// Try to match the email against the encode protection.
var aMatch = aLinkInfo[2].match( /^location\.href='mailto:'\+(String\.fromCharCode\([\d,]+\))\+'(.*)'$/ ) ;
if ( aMatch )
// The link is encoded
oEMailInfo.Address = eval( aMatch[1] ) ;
if ( aMatch[2] )
var oEMailParams = oParser.ParseEMailParams( aMatch[2] ) ;
oEMailInfo.Subject = oEMailParams.S
oEMailInfo.Body = oEMailParams.B
return oEMailI
oParser.CreateEMailUri = function( address, subject, body )
// Switch for the EMailProtection setting.
switch ( FCKConfig.EMailProtection )
case 'function' :
var func = FCKConfig.EMailProtectionF
if ( func == null )
if ( FCKConfig.Debug )
alert('EMailProtection alert!\nNo function defined. Please set &FCKConfig.EMailProtectionFunction&') ;
return '';
// Split the email address into name and domain parts.
var aAddressParts = address.split( '@', 2 ) ;
if ( aAddressParts[1] == undefined )
aAddressParts[1] = '' ;
// Replace the keys by their values (embedded in single quotes).
func = func.replace(/NAME/g, &'& + aAddressParts[0].replace(/'/g, '\\\'') + &'&) ;
func = func.replace(/DOMAIN/g, &'& + aAddressParts[1].replace(/'/g, '\\\'') + &'&) ;
func = func.replace(/SUBJECT/g, &'& + encodeURIComponent( subject ).replace(/'/g, '\\\'') + &'&) ;
func = func.replace(/BODY/g, &'& + encodeURIComponent( body ).replace(/'/g, '\\\'') + &'&) ;
return 'javascript:' +
case 'encode' :
var aParams = [] ;
var aAddressCode = [] ;
if ( subject.length & 0 )
aParams.push( 'subject='+ encodeURIComponent( subject ) ) ;
if ( body.length & 0 )
aParams.push( 'body=' + encodeURIComponent( body ) ) ;
for ( var i = 0 ; i & address. i++ )
aAddressCode.push( address.charCodeAt( i ) ) ;
return 'javascript:location.href=\'mailto:\'+String.fromCharCode(' + aAddressCode.join( ',' ) + ')+\'?' + aParams.join( '&' ) + '\'' ;
// EMailProtection 'none'
var sBaseUri = 'mailto:' +
var sParams = '' ;
if ( subject.length & 0 )
sParams = '?subject=' + encodeURIComponent( subject ) ;
if ( body.length & 0 )
sParams += ( sParams.length == 0 ? '?' : '&' ) ;
sParams += 'body=' + encodeURIComponent( body ) ;
return sBaseUri + sP
//#### Initialization Code
// oLink: The actual selected link in the editor.
var oLink = dialog.Selection.GetSelection().MoveToAncestorNode( 'A' ) ;
if ( oLink )
FCK.Selection.SelectNode( oLink ) ;
window.onload = function()
// Translate the dialog box texts.
oEditor.FCKLanguageManager.TranslatePage(document) ;
// Fill the Anchor Names and Ids combos.
LoadAnchorNamesAndIds() ;
// Load the selected link information (if any).
LoadSelection() ;
// Update the dialog box.
SetLinkType( GetE('cmbLinkType').value ) ;
// Show/Hide the &Browse Server& button.
GetE('divBrowseServer').style.display = FCKConfig.LinkBrowser ? '' : 'none' ;
// Show the initial dialog content.
GetE('divInfo').style.display = '' ;
// Set the actual uploader URL.
if ( FCKConfig.LinkUpload )
GetE('frmUpload').action = FCKConfig.LinkUploadURL ;
// Set the default target (from configuration).
SetDefaultTarget() ;
// Activate the &OK& button.
dialog.SetOkButton( true ) ;
// Select the first field.
switch( GetE('cmbLinkType').value )
case 'url' :
SelectField( 'txtUrl' ) ;
case 'email' :
SelectField( 'txtEMailAddress' ) ;
case 'anchor' :
if ( GetE('divSelAnchor').style.display != 'none' )
SelectField( 'cmbAnchorName' ) ;
SelectField( 'cmbLinkType' ) ;
function LoadAnchorNamesAndIds()
// Since version 2.0, the anchors are replaced in the DOM by IMGs so the user see the icon
// to edit them. So, we must look for that images now.
var aAnchors = new Array() ;
var oImages = oEditor.FCK.EditorDocument.getElementsByTagName( 'IMG' ) ;
for( i = 0 ; i & oImages. i++ )
if ( oImages[i].getAttribute('_fckanchor') )
aAnchors[ aAnchors.length ] = oEditor.FCK.GetRealElement( oImages[i] ) ;
// Add also real anchors
var oLinks = oEditor.FCK.EditorDocument.getElementsByTagName( 'A' ) ;
for( i = 0 ; i & oLinks. i++ )
if ( oLinks[i].name && ( oLinks[i].name.length & 0 ) )
aAnchors[ aAnchors.length ] = oLinks[i] ;
var aIds = FCKTools.GetAllChildrenIds( oEditor.FCK.EditorDocument.body ) ;
bHasAnchors = ( aAnchors.length & 0 || aIds.length & 0 ) ;
for ( i = 0 ; i & aAnchors. i++ )
var sName = aAnchors[i].
if ( sName && sName.length & 0 )
FCKTools.AddSelectOption( GetE('cmbAnchorName'), sName, sName ) ;
for ( i = 0 ; i & aIds. i++ )
FCKTools.AddSelectOption( GetE('cmbAnchorId'), aIds[i], aIds[i] ) ;
ShowE( 'divSelAnchor' , bHasAnchors ) ;
ShowE( 'divNoAnchor' , !bHasAnchors ) ;
function LoadSelection()
if ( !oLink )
var sType = 'url' ;
// Get the actual Link href.
var sHRef = oLink.getAttribute( '_fcksavedurl' ) ;
if ( sHRef == null )
sHRef = oLink.getAttribute( 'href' , 2 ) || '' ;
// Look for a popup javascript link.
var oPopupMatch = oRegex.PopupUri.exec( sHRef ) ;
if( oPopupMatch )
GetE('cmbTarget').value = 'popup' ;
sHRef = oPopupMatch[1] ;
FillPopupFields( oPopupMatch[2], oPopupMatch[3] ) ;
SetTarget( 'popup' ) ;
// Accessible popups, the popup data is in the onclick attribute
if ( !oPopupMatch )
var onclick = oLink.getAttribute( 'onclick_fckprotectedatt' ) ;
if ( onclick )
// Decode the protected string
onclick = decodeURIComponent( onclick ) ;
oPopupMatch = oRegex.OnClickPopup.exec( onclick ) ;
if( oPopupMatch )
GetE( 'cmbTarget' ).value = 'popup' ;
FillPopupFields( oPopupMatch[1], oPopupMatch[2] ) ;
SetTarget( 'popup' ) ;
// Search for the protocol.
var sProtocol = oRegex.UriProtocol.exec( sHRef ) ;
// Search for a protected email link.
var oEMailInfo = oParser.ParseEMailUri( sHRef );
if ( oEMailInfo )
sType = 'email' ;
GetE('txtEMailAddress').value = oEMailInfo.A
GetE('txtEMailSubject').value = oEMailInfo.S
GetE('txtEMailBody').value
= oEMailInfo.B
else if ( sProtocol )
sProtocol = sProtocol[0].toLowerCase() ;
GetE('cmbLinkProtocol').value = sP
// Remove the protocol and get the remaining URL.
var sUrl = sHRef.replace( oRegex.UriProtocol, '' ) ;
sType = 'url' ;
GetE('txtUrl').value = sU
else if ( sHRef.substr(0,1) == '#' && sHRef.length & 1 ) // It is an anchor link.
sType = 'anchor' ;
GetE('cmbAnchorName').value = GetE('cmbAnchorId').value = sHRef.substr(1) ;
// It is another type of link.
sType = 'url' ;
GetE('cmbLinkProtocol').value = '' ;
GetE('txtUrl').value = sHR
if ( !oPopupMatch )
// Get the target.
var sTarget = oLink.
if ( sTarget && sTarget.length & 0 )
if ( oRegex.ReserveTarget.test( sTarget ) )
sTarget = sTarget.toLowerCase() ;
GetE('cmbTarget').value = sT
GetE('cmbTarget').value = 'frame' ;
GetE('txtTargetFrame').value = sT
// Get Advances Attributes
GetE('txtAttId').value
GetE('txtAttName').value
GetE('cmbAttLangDir').value
GetE('txtAttLangCode').value = oLink.
GetE('txtAttAccessKey').value = oLink.accessK
GetE('txtAttTabIndex').value = oLink.tabIndex &= 0 ? '' : oLink.tabI
GetE('txtAttTitle').value
GetE('txtAttContentType').value = oLink.
GetE('txtAttCharSet').value
if ( oEditor.FCKBrowserInfo.IsIE )
sClass = oLink.getAttribute('className',2) || '' ;
// Clean up temporary classes for internal use:
sClass = sClass.replace( FCKRegexLib.FCK_Class, '' ) ;
GetE('txtAttStyle').value = oLink.style.cssT
sClass = oLink.getAttribute('class',2) || '' ;
GetE('txtAttStyle').value = oLink.getAttribute('style',2) || '' ;
GetE('txtAttClasses').value = sC
// Update the Link type combo.
GetE('cmbLinkType').value = sT
//#### Link type selection.
function SetLinkType( linkType )
ShowE('divLinkTypeUrl'
, (linkType == 'url') ) ;
ShowE('divLinkTypeAnchor' , (linkType == 'anchor') ) ;
ShowE('divLinkTypeEMail' , (linkType == 'email') ) ;
if ( !FCKConfig.LinkDlgHideTarget )
dialog.SetTabVisibility( 'Target' , (linkType == 'url') ) ;
if ( FCKConfig.LinkUpload )
dialog.SetTabVisibility( 'Upload' , (linkType == 'url') ) ;
if ( !FCKConfig.LinkDlgHideAdvanced )
dialog.SetTabVisibility( 'Advanced' , (linkType != 'anchor' || bHasAnchors) ) ;
if ( linkType == 'email' )
dialog.SetAutoSize( true ) ;
//#### Target type selection.
function SetTarget( targetType )
GetE('tdTargetFrame').style.display = ( targetType == 'popup' ? 'none' : '' ) ;
GetE('tdPopupName').style.display =
GetE('tablePopupFeatures').style.display = ( targetType == 'popup' ? '' : 'none' ) ;
switch ( targetType )
case &_blank& :
case &_self& :
case &_parent& :
case &_top& :
GetE('txtTargetFrame').value = targetT
GetE('txtTargetFrame').value = '' ;
if ( targetType == 'popup' )
dialog.SetAutoSize( true ) ;
//#### Called while the user types the URL.
function OnUrlChange()
var sUrl = GetE('txtUrl').
var sProtocol = oRegex.UrlOnChangeProtocol.exec( sUrl ) ;
if ( sProtocol )
sUrl = sUrl.substr( sProtocol[0].length ) ;
GetE('txtUrl').value = sU
GetE('cmbLinkProtocol').value = sProtocol[0].toLowerCase() ;
else if ( oRegex.UrlOnChangeTestOther.test( sUrl ) )
GetE('cmbLinkProtocol').value = '' ;
//#### Called while the user types the target name.
function OnTargetNameChange()
var sFrame = GetE('txtTargetFrame').
if ( sFrame.length == 0 )
GetE('cmbTarget').value = '' ;
else if ( oRegex.ReserveTarget.test( sFrame ) )
GetE('cmbTarget').value = sFrame.toLowerCase() ;
GetE('cmbTarget').value = 'frame' ;
// Accessible popups
function BuildOnClickPopup()
var sWindowName = &'& + GetE('txtPopupName').value.replace(/\W/gi, &&) + &'& ;
var sFeatures = '' ;
var aChkFeatures = document.getElementsByName( 'chkFeature' ) ;
for ( var i = 0 ; i & aChkFeatures. i++ )
if ( i & 0 ) sFeatures += ',' ;
sFeatures += aChkFeatures[i].value + '=' + ( aChkFeatures[i].checked ? 'yes' : 'no' ) ;
if ( GetE('txtPopupWidth').value.length & 0 ) sFeatures += ',width=' + GetE('txtPopupWidth').
if ( GetE('txtPopupHeight').value.length & 0 ) sFeatures += ',height=' + GetE('txtPopupHeight').
if ( GetE('txtPopupLeft').value.length & 0 ) sFeatures += ',left=' + GetE('txtPopupLeft').
if ( GetE('txtPopupTop').value.length & 0 )
sFeatures += ',top=' + GetE('txtPopupTop').
if ( sFeatures != '' )
sFeatures = sFeatures + &,status& ;
return ( &window.open(this.href,& + sWindowName + &,'& + sFeatures + &'); return false& ) ;
//#### Fills all Popup related fields.
function FillPopupFields( windowName, features )
if ( windowName )
GetE('txtPopupName').value = windowN
var oFeatures = new Object() ;
var oFeaturesM
while( ( oFeaturesMatch = oRegex.PopupFeatures.exec( features ) ) != null )
var sValue = oFeaturesMatch[2] ;
if ( sValue == ( 'yes' || '1' ) )
oFeatures[ oFeaturesMatch[1] ] =
else if ( ! isNaN( sValue ) && sValue != 0 )
oFeatures[ oFeaturesMatch[1] ] = sV
// Update all features check boxes.
var aChkFeatures = document.getElementsByName('chkFeature') ;
for ( var i = 0 ; i & aChkFeatures. i++ )
if ( oFeatures[ aChkFeatures[i].value ] )
aChkFeatures[i].checked =
// Update position and size text boxes.
if ( oFeatures['width'] ) GetE('txtPopupWidth').value
= oFeatures['width'] ;
if ( oFeatures['height'] ) GetE('txtPopupHeight').value = oFeatures['height'] ;
if ( oFeatures['left'] ) GetE('txtPopupLeft').value
= oFeatures['left'] ;
if ( oFeatures['top'] )
GetE('txtPopupTop').value
= oFeatures['top'] ;
//#### The OK button was hit.
function Ok()
var sUri, sInnerH
oEditor.FCKUndo.SaveUndoStep() ;
switch ( GetE('cmbLinkType').value )
case 'url' :
sUri = GetE('txtUrl').
if ( sUri.length == 0 )
alert( FCKLang.DlnLnkMsgNoUrl ) ;
sUri = GetE('cmbLinkProtocol').value + sU
case 'email' :
sUri = GetE('txtEMailAddress').
if ( sUri.length == 0 )
alert( FCKLang.DlnLnkMsgNoEMail ) ;
sUri = oParser.CreateEMailUri(
GetE('txtEMailSubject').value,
GetE('txtEMailBody').value ) ;
case 'anchor' :
var sAnchor = GetE('cmbAnchorName').
if ( sAnchor.length == 0 ) sAnchor = GetE('cmbAnchorId').
if ( sAnchor.length == 0 )
alert( FCKLang.DlnLnkMsgNoAnchor ) ;
sUri = '#' + sA
// If no link is selected, create a new one (it may result in more than one link creation - #220).
var aLinks = oLink ? [ oLink ] : oEditor.FCK.CreateLink( sUri, true ) ;
// If no selection, no links are created, so use the uri as the link text (by dom, )
var aHasSelection = ( aLinks.length & 0 ) ;
if ( !aHasSelection )
sInnerHtml = sU
// Built a better text for empty links.
switch ( GetE('cmbLinkType').value )
// anchor: use old behavior --& return true
case 'anchor':
sInnerHtml = sInnerHtml.replace( /^#/, '' ) ;
// url: try to get path
case 'url':
var oLinkPathRegEx = new RegExp(&//?([^?\&']+)([?].*)?$&) ;
var asLinkPath = oLinkPathRegEx.exec( sUri ) ;
if (asLinkPath != null)
sInnerHtml = asLinkPath[1];
// use matched path
// mailto: try to get email address
case 'email':
sInnerHtml = GetE('txtEMailAddress').
// Create a new (empty) anchor.
aLinks = [ oEditor.FCK.InsertElement( 'a' ) ] ;
for ( var i = 0 ; i & aLinks. i++ )
oLink = aLinks[i] ;
if ( aHasSelection )
sInnerHtml = oLink.innerHTML ;
// Save the innerHTML (IE changes it if it is like an URL).
oLink.href = sU
SetAttribute( oLink, '_fcksavedurl', sUri ) ;
// Accessible popups
if( GetE('cmbTarget').value == 'popup' )
onclick = BuildOnClickPopup() ;
// Encode the attribute
onclick = encodeURIComponent( & onclick=\&& + onclick + &\&& )
SetAttribute( oLink, 'onclick_fckprotectedatt', onclick ) ;
// Check if the previous onclick was for a popup:
// In that case remove the onclick handler.
onclick = oLink.getAttribute( 'onclick_fckprotectedatt' ) ;
if ( onclick )
// Decode the protected string
onclick = decodeURIComponent( onclick ) ;
if( oRegex.OnClickPopup.test( onclick ) )
SetAttribute( oLink, 'onclick_fckprotectedatt', '' ) ;
oLink.innerHTML = sInnerH
// Set (or restore) the innerHTML
if( GetE('cmbTarget').value != 'popup' )
SetAttribute( oLink, 'target', GetE('txtTargetFrame').value ) ;
SetAttribute( oLink, 'target', null ) ;
// Let's set the &id& only for the first link to avoid duplication.
if ( i == 0 )
SetAttribute( oLink, 'id', GetE('txtAttId').value ) ;
// Advances Attributes
SetAttribute( oLink, 'name'
, GetE('txtAttName').value ) ;
SetAttribute( oLink, 'dir'
, GetE('cmbAttLangDir').value ) ;
SetAttribute( oLink, 'lang'
, GetE('txtAttLangCode').value ) ;
SetAttribute( oLink, 'accesskey', GetE('txtAttAccessKey').value ) ;
SetAttribute( oLink, 'tabindex' , ( GetE('txtAttTabIndex').value & 0 ? GetE('txtAttTabIndex').value : null ) ) ;
SetAttribute( oLink, 'title' , GetE('txtAttTitle').value ) ;
SetAttribute( oLink, 'type'
, GetE('txtAttContentType').value ) ;
SetAttribute( oLink, 'charset' , GetE('txtAttCharSet').value ) ;
if ( oEditor.FCKBrowserInfo.IsIE )
var sClass = GetE('txtAttClasses').
// If it's also an anchor add an internal class
if ( GetE('txtAttName').value.length != 0 )
sClass += ' FCK__AnchorC' ;
SetAttribute( oLink, 'className', sClass ) ;
oLink.style.cssText = GetE('txtAttStyle').
SetAttribute( oLink, 'class', GetE('txtAttClasses').value ) ;
SetAttribute( oLink, 'style', GetE('txtAttStyle').value ) ;
// Select the (first) link.
oEditor.FCKSelection.SelectNode( aLinks[0] );
function BrowseServer()
OpenFileBrowser( FCKConfig.LinkBrowserURL, FCKConfig.LinkBrowserWindowWidth, FCKConfig.LinkBrowserWindowHeight ) ;
function SetUrl( url )
GetE('txtUrl').value =
OnUrlChange() ;
dialog.SetSelectedTab( 'Info' ) ;
function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
// Remove animation
window.parent.Throbber.Hide() ;
GetE( 'divUpload' ).style.display
= '' ;
switch ( errorNumber )
case 0 : // No errors
alert( 'Your file has been successfully uploaded' ) ;
case 1 : // Custom error
alert( customMsg ) ;
case 101 : // Custom warning
alert( customMsg ) ;
case 201 :
alert( 'A file with the same name is already available. The uploaded file has been renamed to &' + fileName + '&' ) ;
case 202 :
alert( 'Invalid file type' ) ;
case 203 :
alert( &Security error. You probably don't have enough permissions to upload. Please check your server.& ) ;
case 500 :
alert( 'The connector is disabled' ) ;
alert( 'Error on file upload. Error number: ' + errorNumber ) ;
SetUrl( fileUrl ) ;
GetE('frmUpload').reset() ;
var oUploadAllowedExtRegex = new RegExp( FCKConfig.LinkUploadAllowedExtensions, 'i' ) ;
var oUploadDeniedExtRegex = new RegExp( FCKConfig.LinkUploadDeniedExtensions, 'i' ) ;
function CheckUpload()
var sFile = GetE('txtUploadFile').
if ( sFile.length == 0 )
alert( 'Please select a file to upload' ) ;
if ( ( FCKConfig.LinkUploadAllowedExtensions.length & 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
( FCKConfig.LinkUploadDeniedExtensions.length & 0 && oUploadDeniedExtRegex.test( sFile ) ) )
OnUploadCompleted( 202 ) ;
// Show animation
window.parent.Throbber.Show( 100 ) ;
GetE( 'divUpload' ).style.display
= 'none' ;
function SetDefaultTarget()
var target = FCKConfig.DefaultLinkTarget || '' ;
if ( oLink || target.length == 0 )
switch ( target )
case '_blank' :
case '_self' :
case '_parent' :
case '_top' :
GetE('cmbTarget').value =
GetE('cmbTarget').value = 'frame' ;
GetE('txtTargetFrame').value =
Copyright(C)
OKBASE.NET All Rights Reserved 好库网 版权所有

我要回帖

更多关于 外国人说ez是什么意思 的文章

 

随机推荐