Development

Changeset 10372

You must first sign up to be able to contribute.

Changeset 10372

Show
Ignore:
Timestamp:
07/21/08 03:23:39 (4 months ago)
Author:
Leon.van.der.Ree
Message:

Added Managed IFrame (requirement for TinyMCE)
updated tinyMCE to latest version 0.6
changed time-format for for json-data

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • plugins/sfExtjsThemePlugin/data/generator/sfPropelAdmin/extjs/template/templates/editAjaxSuccess.php

    r10359 r10372  
    2727   $js[] = '/sfExtjsThemePlugin/js/tiny_mce/tiny_mce'; 
    2828   $js[] = '/sfExtjsThemePlugin/js/ext.ux.tinymce/Ext.ux.TinyMCE.min.js'; 
     29   $js[] = '/sfExtjsThemePlugin/js/ext.ux.managediframe/miframe-min.js'; 
    2930<?php endif ?> 
    3031 
  • plugins/sfExtjsThemePlugin/data/generator/sfPropelAdmin/extjs/template/templates/listAjaxSuccess.php

    r10359 r10372  
    2828   $js[] = '/sfExtjsThemePlugin/js/tiny_mce/tiny_mce'; 
    2929   $js[] = '/sfExtjsThemePlugin/js/ext.ux.tinymce/Ext.ux.TinyMCE.min.js'; 
     30   $js[] = '/sfExtjsThemePlugin/js/ext.ux.managediframe/miframe-min.js'; 
    3031<?php endif ?> 
    3132 
  • plugins/sfExtjsThemePlugin/lib/sfExtjsPropelAdminGenerator.php

    r10287 r10372  
    10401040    else if ($type == CreoleTypes::DATE || $type == CreoleTypes::TIMESTAMP) 
    10411041    { 
    1042       $format = isset($params['date_format']) ? $params['date_format'] : ($type == CreoleTypes::DATE ? 'D' : 'f'); 
     1042      $format = isset($params['date_format']) ? $params['date_format'] : ($type == CreoleTypes::DATE ? 'D' : 'U'); 
    10431043      return "($columnGetter !== null && $columnGetter !== '') ?  format_date($columnGetter, \"$format\") : ''"; 
    10441044    } 
  • plugins/sfExtjsThemePlugin/web/css/symfony-extjs.css

    r10286 r10372  
    103103 
    104104 
     105.btn_mail .x-btn-text, 
     106.btn_mail .x-menu-item-icon { 
     107background-image: url('../images/silk_icons/icons/email.png'); 
     108} 
    105109 
    106110.btn_refresh .x-btn-text { 
  • plugins/sfExtjsThemePlugin/web/js/ext.ux.tinymce/Ext.ux.TinyMCE.js

    r9891 r10372  
    11/** ************************************************************ 
    2   Ext.ux.TinyMCE v0.5 
     2  Ext.ux.TinyMCE v0.6 
    33  ExtJS form field containing TinyMCE v3. 
    44   
     
    9292        this.ed = new tinymce.Editor( id, this.tinymceSettings ); 
    9393         
    94         this.ed.onPostRender.add( function( ed, controlManager ){ 
     94        this.ed.onBeforeRenderUI.add( function( ed, controlManager ){ 
    9595          // Replace control manager 
    9696          ed.controlManager = new ControlManager( this, ed ); 
     97        }.createDelegate( this )); 
     98 
     99        this.ed.onPostRender.add( function( ed, controlManager ){ 
    97100          // Change window manager 
    98101          ed.windowManager = new WindowManager( this.ed ); 
     
    112115         
    113116        // Bind to editor focus 
    114         this.ed.onActivate.add( this.focus.createDelegate( this, [ false, false ], false )); 
     117        //this.ed.onActivate.add( this.focus.createDelegate( this, [ false, false ], false )); 
    115118         
    116119        // Render the editor 
     
    312315        s = s || {}; 
    313316        p = p || {}; 
     317         
     318        if ( !s.type ) 
     319          this.bookmark = this.editor.selection.getBookmark( 'simple' ); 
    314320         
    315321        s.width = parseInt(s.width || 320); 
     
    379385      }, 
    380386       
    381       setTitle : function( ti, id ) { 
    382         var w = Ext.getCmp( id ); 
     387      setTitle : function( win, ti ) { 
     388       
     389        // Probably not inline 
     390        if( !win.tinyMCEPopup || !win.tinyMCEPopup.id ) { 
     391          WindowManager.superclass.setTitle.call( this, win, ti ); 
     392          return; 
     393        } 
     394         
     395        var w = Ext.getCmp( win.tinyMCEPopup.id ); 
    383396        if( w ) w.setTitle( ti ); 
    384397      }, 
     
    430443          orig.call( this, x, y, px ); 
    431444          //var zi = self.control.getEl().getStyle( "z-index" ); 
    432           Ext.fly( 'menu_' + this.id ).setStyle( "z-index", 12000 ); 
     445          Ext.fly( 'menu_' + this.id ).setStyle( "z-index", 200001 ); 
    433446        } 
    434447         
     
    444457        res.showMenu = function( x, y, px ) { 
    445458          orig.call( this, x, y, px ); 
    446           Ext.fly( this.id + '_menu' ).setStyle( "z-index", 12000 ); 
     459          Ext.fly( this.id + '_menu' ).setStyle( "z-index", 200001 ); 
    447460        } 
    448461         
  • plugins/sfExtjsThemePlugin/web/js/ext.ux.tinymce/Ext.ux.TinyMCE.min.js

    r9891 r10372  
    1 (function(){Ext.namespace("Ext.ux");var C=false;Ext.ux.TinyMCE=Ext.extend(function(D){var E={tinymceSettings:{accessibility_focus:false}};Ext.apply(E,D);this.addEvents({"editorcreated":true});Ext.ux.TinyMCE.superclass.constructor.call(this,E)},Ext.form.Field,{tinymceSettings:null,defaultAutoCreate:{tag:"div",style:{overflow:"hidden"},children:[{tag:"textarea"}]},width:200,height:200,initComponent:function(){this.tinymceSettings=this.tinymceSettings||{};Ext.ux.TinyMCE.initTinyMCE({language:this.tinymceSettings.language})},onRender:function(G,D){Ext.ux.TinyMCE.superclass.onRender.call(this,G,D);var F=this;var H=this.getEl();if(Ext.type(this.width)=="number"){H.setWidth(this.width);this.tinymceSettings.width=this.width}if(Ext.type(this.height)=="number"){H.setHeight(this.height);this.tinymceSettings.height=this.height}var E=H.child("textarea");this.textareaEl=E;if(this.name){E.set({name:this.name})}var I=E.id;this.ed=new tinymce.Editor(I,this.tinymceSettings);this.ed.onPostRender.add(function(K,J){K.controlManager=new A(this,K);K.windowManager=new B(this.ed)}.createDelegate(this));this.ed.onInit.add(function(){var K=Ext.get(Ext.DomQuery.selectNode("#"+this.ed.id+"_tbl td.mceToolbar"));var J=K.select("> table.mceToolbar");Ext.DomHelper.append(K,{tag:"div",style:{overflow:"hidden"}},true).appendChild(J)}.createDelegate(this));this.ed.onActivate.add(this.focus.createDelegate(this,[false,false],false));this.ed.render();tinyMCE.add(this.ed);this.fireEvent("editorcreated")},getName:function(){return this.rendered&&this.textareaEl.dom.name?this.textareaEl.dom.name:(this.name||"")},initValue:function(){if(this.value!==undefined){this.setValue(this.value)}else{var D=this.getEl().child("textarea",true);if(D.value.length>0){this.setValue(D.value)}}},onDestroy:function(){if(this.ed){tinyMCE.remove(this.ed)}Ext.ux.TinyMCE.superclass.onDestroy.call(this)},getValue:function(){if(!this.rendered||!this.ed.initialized){return this.value}var D=this.ed.getContent();if(D===this.emptyText||D===undefined){D=""}return D},setValue:function(D){this.value=D;if(this.rendered){this.withEd(function(){this.ed.undoManager.clear();this.ed.setContent(D===null||D===undefined?"":D);this.ed.startContent=this.ed.getContent({format:"raw"});this.validate()})}},isDirty:function(){if(this.disabled||!this.rendered){return false}return this.ed.isDirty()},syncValue:function(){if(this.rendered&&this.ed.initialized){this.ed.save()}},getEd:function(){return this.ed},onResize:function(E,D){if(this.rendered){this.withEd(function(){if(Ext.type(E)!="number"){E=this.el.getWidth()}if(Ext.type(D)!="number"){D=this.el.getHeight()}this.ed.theme.resizeTo(E,D)})}},focus:function(E,D){Ext.ux.TinyMCE.superclass.focus.call(this,E,D)},onFocus:function(){if(!this.hasFocus){this.hasFocus=true;this.startValue=this.getValue();this.withEd(function(){this.ed.focus();this.fireEvent("focus",this)})}},withEd:function(D){if(!this.ed){this.on("editorcreated",function(){this.withEd(D)},this)}else{if(this.ed.initialized){D.call(this)}else{this.ed.onInit.add(function(){D.defer(10,this)}.createDelegate(this))}}}});Ext.apply(Ext.ux.TinyMCE,{tinymcePlugins:"safari,pagebreak,style,layer,table,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,noneditable,visualchars,nonbreaking,xhtmlxtras,template",initTinyMCE:function(E){if(!C){var D={mode:"none",plugins:Ext.ux.TinyMCE.tinymcePlugins,theme:"advanced"};Ext.apply(D,E);tinyMCE.init(D);C=true}}});Ext.ComponentMgr.registerType("tinymce",Ext.ux.TinyMCE);var B=Ext.extend(function(D){B.superclass.constructor.call(this,D)},tinymce.WindowManager,{alert:function(E,D,F){Ext.MessageBox.alert("",E,function(){D.call(this)},F)},confirm:function(E,D,F){Ext.MessageBox.confirm("",E,function(G){D.call(this,G=="yes")},F)},open:function(D,F){D=D||{};F=F||{};D.width=parseInt(D.width||320);D.height=parseInt(D.height||240)+(tinymce.isIE?8:0);D.min_width=parseInt(D.min_width||150);D.min_height=parseInt(D.min_height||100);D.max_width=parseInt(D.max_width||2000);D.max_height=parseInt(D.max_height||2000);D.movable=D.resizable=true;F.mce_width=D.width;F.mce_height=D.height;F.mce_inline=true;this.features=D;this.params=F;var E=new Ext.Window({title:D.name,width:D.width,height:D.height,minWidth:D.min_width,minHeight:D.min_height,resizable:true,maximizable:D.maximizable==true,minimizable:D.minimizable==true,modal:true,layout:"fit",items:[{xtype:"iframepanel",defaultSrc:D.url||D.file}]});F.mce_window_id=E.getId();E.show(null,function(){if(D.left&&D.top){E.setPagePosition(D.left,D.top)}var G=E.getPosition();D.left=G[0];D.top=G[1];this.onOpen.dispatch(this,D,F)},this);return E},close:function(E){if(!E.tinyMCEPopup||!E.tinyMCEPopup.id){B.superclass.close.call(this,E);return }var D=Ext.getCmp(E.tinyMCEPopup.id);if(D){this.onClose.dispatch(this);D.close()}},setTitle:function(E,F){var D=Ext.getCmp(F);if(D){D.setTitle(E)}},resizeBy:function(E,G,H){var D=Ext.getCmp(H);if(D){var F=D.getSize();D.setSize(F.width+E,F.height+G)}},focus:function(E){var D=Ext.getCmp(E);if(D){D.setActive(true)}}});var A=Ext.extend(function(F,D,E){this.control=F;A.superclass.constructor.call(this,D,E)},tinymce.ControlManager,{control:null,createDropMenu:function(G,E){var D=A.superclass.createDropMenu.call(this,G,E);var F=D.showMenu;D.showMenu=function(H,J,I){F.call(this,H,J,I);Ext.fly("menu_"+this.id).setStyle("z-index",12000)};return D},createColorSplitButton:function(G,E){var D=A.superclass.createColorSplitButton.call(this,G,E);var F=D.showMenu;D.showMenu=function(H,J,I){F.call(this,H,J,I);Ext.fly(this.id+"_menu").setStyle("z-index",12000)};return D}})}()) 
     1(function(){Ext.namespace("Ext.ux");var C=false;Ext.ux.TinyMCE=Ext.extend(function(D){var E={tinymceSettings:{accessibility_focus:false}};Ext.apply(E,D);this.addEvents({"editorcreated":true});Ext.ux.TinyMCE.superclass.constructor.call(this,E)},Ext.form.Field,{tinymceSettings:null,defaultAutoCreate:{tag:"div",style:{overflow:"hidden"},children:[{tag:"textarea"}]},width:200,height:200,initComponent:function(){this.tinymceSettings=this.tinymceSettings||{};Ext.ux.TinyMCE.initTinyMCE({language:this.tinymceSettings.language})},onRender:function(G,D){Ext.ux.TinyMCE.superclass.onRender.call(this,G,D);var F=this;var H=this.getEl();if(Ext.type(this.width)=="number"){H.setWidth(this.width);this.tinymceSettings.width=this.width}if(Ext.type(this.height)=="number"){H.setHeight(this.height);this.tinymceSettings.height=this.height}var E=H.child("textarea");this.textareaEl=E;if(this.name){E.set({name:this.name})}var I=E.id;this.ed=new tinymce.Editor(I,this.tinymceSettings);this.ed.onBeforeRenderUI.add(function(K,J){K.controlManager=new A(this,K)}.createDelegate(this));this.ed.onPostRender.add(function(K,J){K.windowManager=new B(this.ed)}.createDelegate(this));this.ed.onInit.add(function(){var K=Ext.get(Ext.DomQuery.selectNode("#"+this.ed.id+"_tbl td.mceToolbar"));var J=K.select("> table.mceToolbar");Ext.DomHelper.append(K,{tag:"div",style:{overflow:"hidden"}},true).appendChild(J)}.createDelegate(this));this.ed.render();tinyMCE.add(this.ed);this.fireEvent("editorcreated")},getName:function(){return this.rendered&&this.textareaEl.dom.name?this.textareaEl.dom.name:(this.name||"")},initValue:function(){if(this.value!==undefined){this.setValue(this.value)}else{var D=this.getEl().child("textarea",true);if(D.value.length>0){this.setValue(D.value)}}},onDestroy:function(){if(this.ed){tinyMCE.remove(this.ed)}Ext.ux.TinyMCE.superclass.onDestroy.call(this)},getValue:function(){if(!this.rendered||!this.ed.initialized){return this.value}var D=this.ed.getContent();if(D===this.emptyText||D===undefined){D=""}return D},setValue:function(D){this.value=D;if(this.rendered){this.withEd(function(){this.ed.undoManager.clear();this.ed.setContent(D===null||D===undefined?"":D);this.ed.startContent=this.ed.getContent({format:"raw"});this.validate()})}},isDirty:function(){if(this.disabled||!this.rendered){return false}return this.ed.isDirty()},syncValue:function(){if(this.rendered&&this.ed.initialized){this.ed.save()}},getEd:function(){return this.ed},onResize:function(E,D){if(this.rendered){this.withEd(function(){if(Ext.type(E)!="number"){E=this.el.getWidth()}if(Ext.type(D)!="number"){D=this.el.getHeight()}this.ed.theme.resizeTo(E,D)})}},focus:function(E,D){Ext.ux.TinyMCE.superclass.focus.call(this,E,D)},onFocus:function(){if(!this.hasFocus){this.hasFocus=true;this.startValue=this.getValue();this.withEd(function(){this.ed.focus();this.fireEvent("focus",this)})}},withEd:function(D){if(!this.ed){this.on("editorcreated",function(){this.withEd(D)},this)}else{if(this.ed.initialized){D.call(this)}else{this.ed.onInit.add(function(){D.defer(10,this)}.createDelegate(this))}}}});Ext.apply(Ext.ux.TinyMCE,{tinymcePlugins:"safari,pagebreak,style,layer,table,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,noneditable,visualchars,nonbreaking,xhtmlxtras,template",initTinyMCE:function(E){if(!C){var D={mode:"none",plugins:Ext.ux.TinyMCE.tinymcePlugins,theme:"advanced"};Ext.apply(D,E);tinyMCE.init(D);C=true}}});Ext.ComponentMgr.registerType("tinymce",Ext.ux.TinyMCE);var B=Ext.extend(function(D){B.superclass.constructor.call(this,D)},tinymce.WindowManager,{alert:function(E,D,F){Ext.MessageBox.alert("",E,function(){D.call(this)},F)},confirm:function(E,D,F){Ext.MessageBox.confirm("",E,function(G){D.call(this,G=="yes")},F)},open:function(D,F){D=D||{};F=F||{};if(!D.type){this.bookmark=this.editor.selection.getBookmark("simple")}D.width=parseInt(D.width||320);D.height=parseInt(D.height||240)+(tinymce.isIE?8:0);D.min_width=parseInt(D.min_width||150);D.min_height=parseInt(D.min_height||100);D.max_width=parseInt(D.max_width||2000);D.max_height=parseInt(D.max_height||2000);D.movable=D.resizable=true;F.mce_width=D.width;F.mce_height=D.height;F.mce_inline=true;this.features=D;this.params=F;var E=new Ext.Window({title:D.name,width:D.width,height:D.height,minWidth:D.min_width,minHeight:D.min_height,resizable:true,maximizable:D.maximizable==true,minimizable:D.minimizable==true,modal:true,layout:"fit",items:[{xtype:"iframepanel",defaultSrc:D.url||D.file}]});F.mce_window_id=E.getId();E.show(null,function(){if(D.left&&D.top){E.setPagePosition(D.left,D.top)}var G=E.getPosition();D.left=G[0];D.top=G[1];this.onOpen.dispatch(this,D,F)},this);return E},close:function(E){if(!E.tinyMCEPopup||!E.tinyMCEPopup.id){B.superclass.close.call(this,E);return }var D=Ext.getCmp(E.tinyMCEPopup.id);if(D){this.onClose.dispatch(this);D.close()}},setTitle:function(F,E){if(!F.tinyMCEPopup||!F.tinyMCEPopup.id){B.superclass.setTitle.call(this,F,E);return }var D=Ext.getCmp(F.tinyMCEPopup.id);if(D){D.setTitle(E)}},resizeBy:function(E,G,H){var D=Ext.getCmp(H);if(D){var F=D.getSize();D.setSize(F.width+E,F.height+G)}},focus:function(E){var D=Ext.getCmp(E);if(D){D.setActive(true)}}});var A=Ext.extend(function(F,D,E){this.control=F;A.superclass.constructor.call(this,D,E)},tinymce.ControlManager,{control:null,createDropMenu:function(G,E){var D=A.superclass.createDropMenu.call(this,G,E);var F=D.showMenu;D.showMenu=function(H,J,I){F.call(this,H,J,I);Ext.fly("menu_"+this.id).setStyle("z-index",200001)};return D},createColorSplitButton:function(G,E){var D=A.superclass.createColorSplitButton.call(this,G,E);var F=D.showMenu;D.showMenu=function(H,J,I){F.call(this,H,J,I);Ext.fly(this.id+"_menu").setStyle("z-index",200001)};return D}})}())