Вход Регистрация
Файл: plugins/p_fckeditor/fckeditor/editor/dialog/fck_anchor.html
Строк: 263
<?php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<!--
 * 
FCKeditor The text editor for Internet http://www.fckeditor.net
 
Copyright (C2003-2010 Frederico Caldeira Knabben
 
*
 * == 
BEGIN LICENSE ==
 *
 * 
Licensed under the terms of any of the following licenses at your
 
choice:
 *
 *  - 
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 ==
 *
 * 
Anchor dialog window.
-->
<
html>
    <
head>
        <
title>Anchor Properties</title>
        <
meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <
meta content="noindex, nofollow" name="robots">
        <
script src="common/fck_dialog_common.js" type="text/javascript"></script>
        <
script type="text/javascript">

var 
dialog            window.parent ;
var 
oEditor            dialog.InnerDialogLoaded() ;

var 
FCK                oEditor.FCK ;
var 
FCKBrowserInfo    oEditor.FCKBrowserInfo ;
var 
FCKTools        oEditor.FCKTools ;
var 
FCKRegexLib        oEditor.FCKRegexLib ;

var 
oDOM            FCK.EditorDocument ;

var 
oFakeImage dialog.Selection.GetSelectedElement() ;

var 
oAnchor ;

if ( 
oFakeImage )
{
    if ( 
oFakeImage.tagName == 'IMG' && oFakeImage.getAttribute('_fckanchor') )
        
oAnchor FCK.GetRealElementoFakeImage ) ;
    else
        
oFakeImage null ;
}

//Search for a real anchor
if ( !oFakeImage )
{
    
oAnchor FCK.Selection.MoveToAncestorNode'A' ) ;
    if ( 
oAnchor )
        
FCK.Selection.SelectNodeoAnchor ) ;
}

window.onload = function()
{
    
// First of all, translate the dialog box texts
    
oEditor.FCKLanguageManager.TranslatePage(document) ;

    if ( 
oAnchor )
        
GetE('txtName').value oAnchor.name ;
    else
        
oAnchor null ;

    
window.parent.SetOkButtontrue ) ;
    
window.parent.SetAutoSizetrue ) ;

    
SelectField'txtName' ) ;
}

function 
Ok()
{
    var 
sNewName GetE('txtName').value ;

    
// Remove any illegal character in a name attribute:
    // A name should start with a letter, but the validator passes anyway.
    
sNewName sNewName.replace( /[^w-_.:]/g'_' ) ;

    if ( 
sNewName.length == )
    {
        
// Remove the anchor if the user leaves the name blank
        
if ( oAnchor )
        {
            
// Removes the current anchor from the document using the new command
            
FCK.Commands.GetCommand'AnchorDelete' ).Execute() ;
            return 
true ;
        }

        
alertoEditor.FCKLang.DlgAnchorErrorName ) ;
        return 
false ;
    }

    
oEditor.FCKUndo.SaveUndoStep() ;

    if ( 
oAnchor )    // Modifying an existent anchor.
    
{
        
ReadjustLinksToAnchoroAnchor.namesNewName );

        
// Buggy explorer, bad bad browser. http://alt-tag.com/blog/archives/2006/02/ie-dom-bugs/
        // Instead of just replacing the .name for the existing anchor (in order to preserve the content), we must remove the .name
        // and assign .name, although it won't appear until it's specially processed in fckxhtml.js

        // We remove the previous name
        
oAnchor.removeAttribute'name' ) ;
        
// Now we set it, but later we must process it specially
        
oAnchor.name sNewName ;

        return 
true ;
    }

    
// Create a new anchor preserving the current selection
    
var aNewAnchors oEditor.FCK.CreateLink'#' ) ;

    if ( 
aNewAnchors.length == )
            
aNewAnchors.pushoEditor.FCK.InsertElement'a' ) ) ;
    else
    {
        
// Remove the fake href
        
for ( var aNewAnchors.length i++ )
            
aNewAnchors[i].removeAttribute'href' ) ;
    }

    
// More than one anchors may have been created, so interact through all of them (see #220).
    
for ( var aNewAnchors.length i++ )
    {
        
oAnchor aNewAnchors[i] ;

        
// Set the name
        
if ( FCKBrowserInfo.IsIE )
        {
            
// Setting anchor names directly in IE will trash the HTML code stored
            // in FCKTempBin after undos. See #2263.
            
var replaceAnchor oEditor.FCK.EditorDocument.createElement'<a name="' +
                    
FCKTools.HTMLEncodesNewName ).replace'"''&quot;' ) + '">' ) ;
            
oEditor.FCKDomTools.MoveChildrenoAnchorreplaceAnchor ) ;
            
oAnchor.parentNode.replaceChildreplaceAnchoroAnchor ) ;
            
oAnchor replaceAnchor ;
        }
        else
            
oAnchor.name sNewName ;

        
// IE does require special processing to show the Anchor's image
        // Opera doesn't allow to select empty anchors
        
if ( FCKBrowserInfo.IsIE || FCKBrowserInfo.IsOpera )
        {
            if ( 
oAnchor.innerHTML != '' )
            {
                if ( 
FCKBrowserInfo.IsIE )
                    
oAnchor.className += ' FCK__AnchorC' ;
            }
            else
            {
                
// Create a fake image for both IE and Opera
                
var oImg oEditor.FCKDocumentProcessor_CreateFakeImage'FCK__Anchor'oAnchor.cloneNode(true) ) ;
                
oImg.setAttribute'_fckanchor''true') ;

                
oAnchor.parentNode.insertBeforeoImgoAnchor ) ;
                
oAnchor.parentNode.removeChildoAnchor ) ;
            }

        }
    }

    return 
true ;
}

// Checks all the links in the current page pointing to the current name and changes them to the new name
function ReadjustLinksToAnchorsCurrentsNew )
{
    var 
oDoc FCK.EditorDocument ;

    var 
aLinks oDoc.getElementsByTagName'A' ) ;

    var 
sReference '#' sCurrent ;
    
// The url of the document, so we check absolute and partial references.
    
var sFullReference oDoc.location.href.replace( /(#.*$)/, '') ;
    
sFullReference += sReference ;

    var 
oLink ;
    var 
aLinks.length ;
    while ( 
>= && ( oLink aLinks[i--] ) )
    {
        var 
sHRef oLink.getAttribute'_fcksavedurl' ) ;
        if ( 
sHRef == null )
            
sHRef oLink.getAttribute'href' ) || '' ;

        if ( 
sHRef == sReference || sHRef == sFullReference )
        {
            
oLink.href '#' sNew ;
            
SetAttributeoLink'_fcksavedurl''#' sNew ) ;
        }
    }
}

        </
script>
    </
head>
    <
body style="overflow: hidden">
        <
table height="100%" width="100%">
            <
tr>
                <
td align="center">
                    <
table border="0" cellpadding="0" cellspacing="0" width="80%">
                        <
tr>
                            <
td>
                                <
span fckLang="DlgAnchorName">Anchor Name</span><BR>
                                <
input id="txtName" style="WIDTH: 100%" type="text">
                            </
td>
                        </
tr>
                    </
table>
                </
td>
            </
tr>
        </
table>
    </
body>
</
html>
?>
Онлайн: 0
Реклама