CLICK HERE TO BUY IT TODAY! OR GET IT FREE VIA TRIALPAY  

PHP Demo Application - Source Code

/Framework/Model/Vendor/CkEditor/_source/plugins/div/plugin.js



/*
Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.html or http://ckeditor.com/license
*/
/**
 * @fileOverview The "div" plugin. It wraps the selected block level elements with a 'div' element with specified styles and attributes.
 *
 */
(function()
{
	    CKEDITOR.plugins.add'div',
	    {
		        requires : [ 'editingblock''domiterator''styles' ],
		        init : function( editor )
		        {
			            var lang editor.lang.div;
			            editor.addCommand'creatediv', new CKEDITOR.dialogCommand'creatediv' ) );
			            editor.addCommand'editdiv', new CKEDITOR.dialogCommand'editdiv' ) );
			            editor.addCommand'removediv',
			                {
				                    exec : function( editor )
				                    {
					                        var selection editor.getSelection(),
					                            ranges selection && selection.getRanges(),
					                            range,
					                            bookmarks selection.createBookmarks(),
					                            walker,
					                            toRemove [];
					                        function findDivnode )
					                        {
						                            var path = new CKEDITOR.dom.elementPathnode ),
						                                blockLimit path.blockLimit,
						                                div blockLimit.is'div' ) && blockLimit;
						                            if ( div && !div.getAttribute'_cke_div_added' ) )
						                            {
							                                toRemove.pushdiv );
							                                div.setAttribute'_cke_div_added' );
							                            }
						                        }
					                        for ( var ;
					 ranges.length ;
					 i++ )
					                        {
						                            range ranges];
						                            if ( range.collapsed )
						                                findDivselection.getStartElement() );
						                            else
						                            {
							                                walker = new CKEDITOR.dom.walkerrange );
							                                walker.evaluator findDiv;
							                                walker.lastForward();
							                            }
						                        }
					                        for ( ;
					 toRemove.length ;
					 i++ )
					                            toRemove].removetrue );
					                        selection.selectBookmarksbookmarks );
					                    }
				                } );
			            editor.ui.addButton'CreateDiv',
			            {
				                label lang.toolbar,
				                command :'creatediv'
				            } );
			            if ( editor.addMenuItems )
			            {
				                editor.addMenuItems(
				                    {
					                        editdiv :
					                        {
						                            label lang.edit,
						                            command 'editdiv',
						                            group 'div',
						                            order 1
						                        },
					                        removediv:
					                        {
						                            label lang.remove,
						                            command 'removediv',
						                            group 'div',
						                            order 5
						                        }
					                    } );
				                if ( editor.contextMenu )
				                {
					                    editor.contextMenu.addListener( function( elementselection )
					                        {
						                            if ( !element || element.isReadOnly())
						                                return null;
						                            var elementPath = new CKEDITOR.dom.elementPathelement ),
						                                blockLimit elementPath.blockLimit;
						                            if ( blockLimit && blockLimit.getAscendant'div'true ) )
						                            {
							                                return {
								                                    editdiv CKEDITOR.TRISTATE_OFF,
								                                    removediv CKEDITOR.TRISTATE_OFF
								                                };
							                            }
						                            return null;
						                        } );
					                }
				            }
			            CKEDITOR.dialog.add'creatediv'this.path 'dialogs/div.js' );
			            CKEDITOR.dialog.add'editdiv'this.path 'dialogs/div.js' );
			        }
		    } );
	})();





PHP Demo Source Code Index