1. #741
    Ext User
    Join Date
    Nov 2007
    Posts
    297
    Vote Rating
    0
    smartlit is on a distinguished road

      0  

    Default


    Quote Originally Posted by jsakalos View Post
    Which one of those three (form && form.dom && form.dom.target)is falsie?

    It could be some timing or a changed sequence of something in 2.3
    form.dom.target is an empty string, so it returns false. It's an empty string because it's overwritten by the following code (buf.target is empty):

    Code:
    form.target = buf.target;
    as soon as the form has been submitted. So, when you try to stop it, you don't know the ID of the hidden iframe.

    What can I do?

  2. #742
    Ext User
    Join Date
    Nov 2007
    Posts
    297
    Vote Rating
    0
    smartlit is on a distinguished road

      0  

    Default


    It also seems that version "3.0 final" has this problem (only the "3.0 RC1" did not have the problem).

  3. #743
    Sencha - Community Support Team jsakalos's Avatar
    Join Date
    Apr 2007
    Location
    Slovakia
    Posts
    27,526
    Vote Rating
    378
    jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future

      0  

    Default


    I haven't ported it to 3.x yet but I can take a brief look to find out why it's empty hopefully this weekend.
    Jozef Sakalos, aka Saki

    Education, extensions and services for developers at new http://extjs.eu
    News: Grid Search Plugin, ExtJS 5 Complex Data Binding using MVVM


  4. #744
    Ext User
    Join Date
    Nov 2007
    Posts
    297
    Vote Rating
    0
    smartlit is on a distinguished road

      0  

    Default


    Quote Originally Posted by jsakalos View Post
    I haven't ported it to 3.x yet but I can take a brief look to find out why it's empty hopefully this weekend.
    Thank you very much. When you solve it for 3.0, I think it will be automatically solved also for 2.3.

  5. #745
    Ext JS Premium Member
    Join Date
    May 2008
    Posts
    528
    Vote Rating
    0
    Eric24 is on a distinguished road

      0  

    Default


    @Saki--Do you have any thoughts on when you might port to Ext 3.x? Tnx!

  6. #746
    Sencha - Community Support Team jsakalos's Avatar
    Join Date
    Apr 2007
    Location
    Slovakia
    Posts
    27,526
    Vote Rating
    378
    jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future

      0  

    Default


    I've started re-writing (not porting ) my main project to support Ext 3 and FileTreePanel is a part of it. However, I must still keep old version (Ext 2.x + Ext 1.x in iframe) running and I still need to add some features and fix bugs - this is top priority.

    So I cannot say or promise a date; the all I can say now is: "I'm working on it."
    Jozef Sakalos, aka Saki

    Education, extensions and services for developers at new http://extjs.eu
    News: Grid Search Plugin, ExtJS 5 Complex Data Binding using MVVM


  7. #747
    Ext JS Premium Member
    Join Date
    Mar 2008
    Location
    Phoenix, AZ
    Posts
    627
    Vote Rating
    10
    zombeerose will become famous soon enough zombeerose will become famous soon enough

      0  

    Default Replaced BrowseButton with the FileUploadField

    Replaced BrowseButton with the FileUploadField


    After following the changes made by other users for Ext 3 compatibility, I revised the FileTreePanel to utilize the Ext.ux.form.FileUploadField extension instead. Below are the changes necessary thus far.

    In the UploadPanel.js...
    * replace
    Code:
    		var addCfg = {
    			 xtype:'browsebutton'
    			,text:this.addText + '...'
    			,iconCls:this.addIconCls
    			,scope:this
    			,handler:this.onAddFile
    		};
    * with
    Code:
          var addCfg = {
                buttonCfg: {
                    hideLabel: true
                    ,iconCls:this.addIconCls
                }
                ,buttonText:this.addText + '...'
                ,buttonOnly: true //no textfield
                ,listeners: { 
                    fileselected: {fn:this.onAddFile, scope:this}
                }
                ,style: { display: 'none' } //IE hack - can't use visibility b/c IE buffers the space
                ,xtype:'fileuploadfield'
    	};
    * replace
    Code:
    	/**
    	 * called when file is added - adds file to store
    	 * @private
    	 * @param {Ext.ux.BrowseButton}
    	 */
    	,onAddFile:function(bb) {
    		if(true !== this.eventsSuspended && false === this.fireEvent('beforefileadd', this, bb.getInputFile())) {
    			return;
    		}
    		var inp = bb.detachInputFile();
    		inp.addClass('x-hidden');
    * with
    Code:
    	/**
    	 * called when file is added - adds file to store
    	 * @private
         * @param {Ext.form.FileUploadField} fu
         * @param {String} fileName 
    	 */
        ,onAddFile:function(fu,fileName) {
            var inp = fu.getFileInput();
    		if(true !== this.eventsSuspended && false === this.fireEvent('beforefileadd', this, inp)) {
    			return;
    		}
            fu.detachFileInput();
    Instead of adding this code to the onAddFile method per the recommendation of @ Bobrovnik, add it to the syncShadow method after the call to show.
    Code:
    this.ownerCt.doLayout();
    It is also necessary to make the following changes to the FileUploadField.js
    * New methods:
    Code:
        /**
         * Detaches the input file without clearing the value so that it can be used for 
         * other purposes (e.g. uploading).
         * 
         * The returned input file has all listeners applied to it by this class removed.
         * @return {Ext.Element} the detached input file element.
         */    
        detachFileInput : function(){
            var result = this.fileInput;
            
            this.fileInput.removeAllListeners();
            this.fileInput = null;        
            this.id = Ext.id(); //avoid dom conflicts
            this.createFileInput();
            this.bindListeners();
            
            return result;
        },
        
        /**
         * @return {Ext.Element} the input file element
         */
        getFileInput: function(){
            return this.fileInput;
        },
    * Change this line so the concatenation is disabled. Otherwise the icon will be overlayed with the text.
    Code:
    cls: 'x-form-file-btn' //+ (btnCfg.iconCls ? ' x-btn-icon' : '')
    Thanks again Saki !!!

  8. #748
    Sencha - Community Support Team jsakalos's Avatar
    Join Date
    Apr 2007
    Location
    Slovakia
    Posts
    27,526
    Vote Rating
    378
    jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future

      0  

    Default


    Thank you very much.
    Jozef Sakalos, aka Saki

    Education, extensions and services for developers at new http://extjs.eu
    News: Grid Search Plugin, ExtJS 5 Complex Data Binding using MVVM


  9. #749
    Ext JS Premium Member
    Join Date
    Mar 2008
    Location
    Phoenix, AZ
    Posts
    627
    Vote Rating
    10
    zombeerose will become famous soon enough zombeerose will become famous soon enough

      0  

    Default


    I encountered an issue in Chrome when trying to upload because it fails when trying to encode the form during the record.set operation. I think IE also bombs during the encode. I have reported this to ext (http://www.extjs.com/forum/showthread.php?p=395726)

    In the meantime, below are my (hack) changes to the FileUploader.js that address both the IE & Chrome issues.

    * Replace:
    Code:
    record.set('form', form);
    * With:
    Code:
    record.form = form;
    * Replace:
    Code:
    record.set('form', null);
    * With:
    Code:
    delete record.form;
    * Replace:
    Code:
    var form = record.get('form');
    * With:
    Code:
    var form = record.form;
    If anyone has a better suggestion, please feel free.

  10. #750
    Ext JS Premium Member
    Join Date
    Aug 2008
    Posts
    93
    Vote Rating
    0
    Stephan Schrade is on a distinguished road

      0  

    Default


    Thank you zombeerose,
    your changes got at least the Add-Button working within ExtJs 3.0.

    But I don't understand your extension of methods to FileUploadField.js
    I don't have the functions
    createFileInput();
    bindListeners();

    which you are calling in your detachFileInput method.
    Am I missing something ?

    TIA Stephan

Thread Participants: 173

  1. danvega (10 Posts)
  2. jay@moduscreate.com (1 Post)
  3. jweber (1 Post)
  4. jt (1 Post)
  5. slacker775 (2 Posts)
  6. vmorale4 (12 Posts)
  7. stever (2 Posts)
  8. Dumbledore (9 Posts)
  9. ismoore (1 Post)
  10. mystix (8 Posts)
  11. sdrew (3 Posts)
  12. mxracer (1 Post)
  13. Foggy (3 Posts)
  14. madrabaz (8 Posts)
  15. Thorsten (4 Posts)
  16. Fabyo (1 Post)
  17. mschaefer (11 Posts)
  18. tchitani (3 Posts)
  19. loeppky (11 Posts)
  20. damsfx (1 Post)
  21. cmendez21 (7 Posts)
  22. anjelika (3 Posts)
  23. randcasburn (3 Posts)
  24. mjlecomte (3 Posts)
  25. esoteric (10 Posts)
  26. pravin_bluebird (1 Post)
  27. ZooKeeper (4 Posts)
  28. george.antoniadis (1 Post)
  29. fermo111 (1 Post)
  30. glaforge (2 Posts)
  31. Spirit (1 Post)
  32. newc_k (1 Post)
  33. adam.jimenez (9 Posts)
  34. juandj (10 Posts)
  35. rballman (2 Posts)
  36. Michelangelo (6 Posts)
  37. kk_kkk (7 Posts)
  38. issomesmo (5 Posts)
  39. mashiki (1 Post)
  40. juljupy (2 Posts)
  41. cafebabe (1 Post)
  42. ferrenliu (1 Post)
  43. smartlit (14 Posts)
  44. chunkT (1 Post)
  45. mankz (6 Posts)
  46. luisparada (4 Posts)
  47. iDevelopment (4 Posts)
  48. cblin (9 Posts)
  49. ljaeren (2 Posts)
  50. endlichstudent (9 Posts)
  51. RacingTomcat (1 Post)
  52. lobo-tuerto (5 Posts)
  53. maximumcoder (1 Post)
  54. calavera (3 Posts)
  55. ningle (5 Posts)
  56. jbird526 (4 Posts)
  57. sekundek (8 Posts)
  58. GokhanNL (1 Post)
  59. markkl (1 Post)
  60. basshcm (2 Posts)
  61. dbraiden (2 Posts)
  62. incaic (2 Posts)
  63. silcreval (6 Posts)
  64. sirioz10 (2 Posts)
  65. iulian (2 Posts)
  66. hsurya (7 Posts)
  67. johnrembo (2 Posts)
  68. fraric (4 Posts)
  69. Silver Paladin (5 Posts)
  70. Rafael (2 Posts)
  71. treqx (1 Post)
  72. spectrus (6 Posts)
  73. JoyfulBobHome (2 Posts)
  74. fxlacroix (3 Posts)
  75. jove4015 (1 Post)
  76. rtrocc (12 Posts)
  77. carl23934 (1 Post)
  78. ClemsonJeeper (1 Post)
  79. lagos.tout (2 Posts)
  80. craigharmonic (3 Posts)
  81. siebertm (3 Posts)
  82. zombeerose (11 Posts)
  83. keckeroo (1 Post)
  84. dotchris (7 Posts)
  85. fallenone (4 Posts)
  86. yhwh (1 Post)
  87. harirama (2 Posts)
  88. scroll (1 Post)
  89. mlim1972 (4 Posts)
  90. Arthur.Blake (1 Post)
  91. nileshgund (1 Post)
  92. blow (1 Post)
  93. piyushjain7 (1 Post)
  94. njeriextjs (3 Posts)
  95. hileon (1 Post)
  96. bomka (15 Posts)
  97. --maty (1 Post)
  98. WhiteRussian (1 Post)
  99. kpopov (1 Post)
  100. captainfish (5 Posts)
  101. Gosa (5 Posts)
  102. extjsF4n (1 Post)
  103. Chida (1 Post)
  104. Nthalk (2 Posts)
  105. nescha (2 Posts)
  106. jorgemuza (3 Posts)
  107. Eric24 (1 Post)
  108. edui (1 Post)
  109. shadoi (4 Posts)
  110. acidfilez (1 Post)
  111. BrainDrain (2 Posts)
  112. dimitrij.zub (1 Post)
  113. ixnixnixn (2 Posts)
  114. calicoder (2 Posts)
  115. wes (1 Post)
  116. mammerman (1 Post)
  117. Voronchuk (3 Posts)
  118. jwmianzu (3 Posts)
  119. gnomie (2 Posts)
  120. pflammer (2 Posts)
  121. The0s (2 Posts)
  122. gogogo521 (1 Post)
  123. tegel (2 Posts)
  124. wulfshayde (2 Posts)
  125. mikecx (2 Posts)
  126. paul@demiduk.com (1 Post)
  127. romulodelazzari (1 Post)
  128. sabline (2 Posts)
  129. mikecc (8 Posts)
  130. dan.plifeye (2 Posts)
  131. JGALFO (1 Post)
  132. Stephan Schrade (3 Posts)
  133. khurri.saleem (1 Post)
  134. voidus (1 Post)
  135. Shockdoc1 (1 Post)
  136. dport (3 Posts)
  137. jahman (3 Posts)
  138. Pachat (4 Posts)
  139. BIS (1 Post)
  140. sanraj (4 Posts)
  141. deemonas (1 Post)
  142. jpipas (2 Posts)
  143. martinrame (2 Posts)
  144. MrEnirO (2 Posts)
  145. elona (1 Post)
  146. cwford (6 Posts)
  147. triptonemeister (2 Posts)
  148. gonzalez (1 Post)
  149. wallacer (1 Post)
  150. Natalie (2 Posts)
  151. Phatnine (2 Posts)
  152. js_coder (3 Posts)
  153. Bobrovnik (4 Posts)
  154. kender (1 Post)
  155. avsomeren (2 Posts)
  156. rkulkarni (2 Posts)
  157. lxfliu (2 Posts)
  158. pbaker99 (2 Posts)
  159. naf305 (2 Posts)
  160. cybervirax (1 Post)
  161. AmrMostafa (1 Post)
  162. tumbochka (1 Post)
  163. exdelierium (1 Post)
  164. toubeau (4 Posts)
  165. nosferatum (1 Post)
  166. Boy.Kortman (1 Post)
  167. erlinis (1 Post)
  168. nhocoi (2 Posts)
  169. varunach (1 Post)
  170. _DR_ (1 Post)
  171. rodenp (1 Post)
  172. tutuianu_daniel (1 Post)
  173. Shabneez (2 Posts)