No properties auto-saving in 7.11

Vote:
 

Hello,

We have upgraded our code base through nuget to the 7.11 release and are experiencing issues in edit mode.  The properties in the forms editing mode (built in ones and custom ones) do not appear to be auto-saving, whether on change or on blur, it just appears to do nothing.  We are never prompted to publish our changes, and a refresh or going back to on-page-edit mode.  It appears that the auto save happens through on-page-editable properties though when you are on the on-page-edit mdoe, just not in forms editing mode.  Any clue, is this a bug, is it being worked on?

Thanks!

#89478
Aug 18, 2014 14:13
Vote:
 

Hi Mike,

This sounds very strange, and it is not something that we have seen in the 7.11 release. 

Have you seen this problem in all major browsers? IE 9, 10, FF and Chrome?

When you do try to change a property do you get any JS error in the console in the browser? 
If you open the network tab in e.g. Chrome and changes a property there should be an http POST made to the contentdata store, can you see that request? Is it return 200OK without any errors in the response json data?

Could you post the contents of the package.config file to? 

#89503
Aug 19, 2014 7:26
Vote:
 

Hey Magnus,

Yes this is happening in all major browsers.

I just tested changing the ordering of a link collection property, that appears to kick off the auto save once you leave the field (by clicking another tab, clicking outside the property doesn't seem to make it lose 'focus') - I also tested this on adding blocks to content areas (again all of this through forms editing) leaving the field appeared to auto save as well... the fields not triggering auto save are checkboxes, text fields (string, textarea) and selects (dropdowns).  Also, blur events seem very weird in this release, things like pop up menus not closing when you click outside of them (like the options drop down on edit mode) etc, all of these things stay open until you click the button source that opened it.

When i leave the text fields or the checkboxes or the dropdowns i see no activity on the network tab suggesting a post, actually i see no activity at all.  I also receive no errors in the console.

When i leave a content area or a link collection, i receive the following POST: http://cbbbsandbox.com/EPiServer/cms/Stores/contentdata/11662_357384

So it is posting, i don't know why the change/blur arent firing on the other properties.

This is the output in the console when we load a page in edit mode (without clicking the forms editing button, when i do, nothing else pops up in the console)

packages.config contains the following:


  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  



#89555
Aug 20, 2014 8:09
Vote:
 

Also, I don't know if this helps more but, when i edit a content reference (which also doesn't save) I get this in the console:

DEPRECATED: epi/shell/widget/_ActionProvider use the command pattern with epi/shell/command/_CommandProviderMixin instead dojo.js:2217
DEPRECATED: epi/shell/widget/_ActionConsumer use the command pattern with epi/shell/command/_CommandConsumerMixin instead dojo.js:2217

When i edit a text field I get this

'KeyboardEvent.keyLocation' is deprecated. Please use 'KeyboardEvent.location' instead. 
#89556
Aug 20, 2014 8:29
Vote:
 

Hi, 

The DEPRECTED things that you see in the log should not affect the onBlur onChange events.

If you enable client debug do you see anything else in the console log?

You can add the following tag to the section in EPiserverFramework.config. If you have that enabled you could see some more debug stuff in the console.

It would also be good if you could try to downgrade the EPiServer.CMS.UI and EPiServer.CMS.UI.Core packages to 7.10 and see if you have the problem there to.

I will continue to try to reproduce the problem here.

#89559
Aug 20, 2014 9:35
Vote:
 

Have you installed any other addons in the Add-on store?

#89564
Aug 20, 2014 10:07
Vote:
 

I tried updating to the latest (7.13) from nuget, same issues still exist.

We do not have any addons installed from the add on store.  To note, we also have some custom dojo editors for string properties we've created.  If this gives any more insight (maybe some of these commands, we have buttons on the global toolbar, and/or property editors are causing issues?) here's my module.config:



  
    
    
  
  
    
      
    
  
  
    
      
    
  
  
    
    
    
    
    
    
    
    
    
    
  

I'll install the nuget package for the client debug scripts and run through some of that and see if any new messages appear.  

If i was to downgrade to 7.10 for CMS.UI and CMS.UI.Core and try that - 2 questions, will this affect any other packages installed? IE CMS and Framework etc.  And also, how do we issue a rollback/downgrade for the sql scripts that were ran (ie - 7.11.0.sql, 7.12.0 sql, 7.13.0.sql) do these matter since they were executed?

Since 7.10 theres also issues (i put another forum post about it which someone has confirmed they see the same too) that exist for on page editing of content areas, such as setting the editcontainerclass doesn't work anymore (but this is another item entirely and not as important as the one were currently talking about) - so I can only wonder if something is majorly messed up on my end or these are bugs/symptoms of something else.

#89582
Aug 20, 2014 12:49
Vote:
 

Also, i just verified we already have clientResources debug="true" set in our episerver framework section.  I forgot to add the output of the console when i load a page in edit mode (no new messages appear once forms editing is clicked) but this is what i'm getting:

Attr.specified is deprecated. Its value is always true. EPiJQuery.js:26
Uncaught TypeError: Cannot read property 'messages' of undefined jquery.validate.localization.js:19
Starting module:  CMS epi.js:930
CMS 
[Object]
 epi.js:953
Starting module:  Shell epi.js:930
Shell [] epi.js:953
event.returnValue is deprecated. Please use the standard event.preventDefault() instead. jquery-1.9.1.min.js:3
Starting module:  App epi.js:930
App 
[Object]
 epi.js:953
EXPERIMENTAL: dojox.form.Uploader -- APIs subject to change without notice. dojo.js:2241
Running:  epi/shell/ShellModule epi.js:997
Consider using 'dppx' units instead of 'dpi', as in CSS 'dpi' means dots-per-CSS-inch, not dots-per-physical-inch, so does not correspond to the actual 'dpi' of a screen. In media query expression: only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi) dojo.js:10570
Running:  phoenixweb/ModuleInitializer epi.js:997
EXPERIMENTAL: dojox.widget.Standby -- APIs subject to change without notice. dojo.js:2241
Running:  epi-cms/CMSModule epi.js:997
DEPRECATED: epi/shell/widget/_ActionConsumer use the command pattern with epi/shell/command/_CommandConsumerMixin instead dojo.js:2217
DEPRECATED: epi/shell/widget/_ActionProvider use the command pattern with epi/shell/command/_CommandProviderMixin instead dojo.js:2217
DEPRECATED: epi/shell/widget/_ActionConsumer use the command pattern with epi/shell/command/_CommandConsumerMixin instead dojo.js:2217
DEPRECATED: epi/shell/widget/_ActionProvider use the command pattern with epi/shell/command/_CommandProviderMixin instead 



#89584
Edited, Aug 20, 2014 12:59
Vote:
 

Ok, here's a BIG update, just for fun - i decided to comment out the stuff in my module file, like so:



  

And it appears now that everything is functioning properly in the edit mode, things are auto saving and the on blur events appear to be working again. 

I'm guessing something that I am loading up (one of my commands on the global toolbar?) has something in it now that is messing with epi's dojo code?  I haven't changed anything in this code since 7.1 (it worked beautifully in 7.1)

#89585
Aug 20, 2014 13:13
Vote:
 

Hi,

CMS.UI/.Core might have different version numbers than the CMS.Core packages. E.g. the CMS.UI/.Core 7.10 are compatible with CMS.Core (>7.8.0 && < 8.0).

That means that CMS.UI/.Core 7.10 are compatible with a newerversion of CMS.Core 7.11 and you should not have to run the SQL scripts if you downgrade the UI packages.

Your dojo widgets might be causing the problems, but it is very hard for me to say that if Ihaven't seen the implementation.

Which version were you on before you upgraded to CMS.UI 7.11? I haven't been able to reproduce this problem, so I think it might be time to log a support ticket.

#89586
Aug 20, 2014 13:19
Vote:
 

Do you know which of the js files that you are loding that is causing the problem?

#89587
Aug 20, 2014 13:22
Vote:
 

Sorry for a ton of responses here, making breaktrhough discovery one after another... I found the issue...

This line in our module config, we require a newer version of jquery than epi is using for some of our custom dojo editors (we need to use select2 plugin for jquery which theres nothing like that i've seen for dojo)... so we have to load this jquery file up in order for select2 to work and in order for our custom dojo property editor to be able to use the select2 plugin inside of it.

My best guess is in the newer versions of the CMS now - I'm not able to do this?  As i said, this used to work in 7.1.

Any idea of how I can include or use another version of jquery since I need it?  I beileve epi uses a version thats quite lower than this?

#89589
Aug 20, 2014 13:27
Vote:
 

I think it all comes down to a problem in my module.config - how to set it up properly... so i've changed it to this:



  
    
  
  
    
      
    
  
  
    
      
    
    
      
      
    
  
  
  
    
    
    
   
    
    
    
    
    
  

The autosave and everything is working again now, jquery is being loaded, etc.  BUT, my globalcommands aren't being registered - they wait for the globaltoolbar dependency but that never fires... so how is the best way in the module.config to configure everything to work properly.  I need to register global command buttons and I also need to register editors.  I've cleaned up the config as you can see, i also tried to switch the moduleDependency line to CMS instead of Shell (that stopped the weird behaviors from happening, but now none of my custom stuff will load up)

#89593
Aug 20, 2014 13:56
Vote:
 

Hi,

I’m not sure what exactly you are using Select2 for but this might be an option for you: http://world.episerver.com/Blogs/Linus-Ekstrom/Dates/2014/7/Built-in-auto-suggestion-editor/

When I looked at your log in a bit more I saw the "Uncaught TypeError: Cannot read property 'messages' of undefined jquery.validate.localization.js:19" error and that is a bug that happens when an incompatible version of jquery is loaded (#115373). I’t not sure why that work in 7.1, but the upgrade from 7.1 to 7.5 was a major upgrade. (We started with semver after 7.5).

This bug has been fix, is currently in test at the moment, and should be included in the UI 7.12 release that is coming pretty soon. But I can send a test (pre) package to you if you would like to verify that it works in that release.

I do not understand what you meen when you say that you are "waiting for the globaltoolbar dependency" to fire. And if you only have a dependency on Shell it should be enough to have that as the dependency module

If you send an email to me I can reply with the test packages. magnus.stalberg@episerver.com

#89594
Aug 20, 2014 14:17
Vote:
 

Hey Magnus,

Thanks for all your help, this is what i've redefined the module.config as and it appears everything is working again (the global toolbar commands, custom editors, and autosave for everything else):



  
    
  
  
    
      
    
  
  
    
      
    
    
      
      
      
    
  
  
  
    
    
    
   
    
    
    
    
    
  

And now the output in the console is this:

Attr.specified is deprecated. Its value is always true. EPiJQuery.js:26
Starting module:  CMS epi.js:930
CMS 
[Object]
 epi.js:953
Starting module:  Shell epi.js:930
Shell [] epi.js:953
EXPERIMENTAL: dojox.form.Uploader -- APIs subject to change without notice. dojo.js:2241
Running:  epi/shell/ShellModule epi.js:997
Starting module:  App epi.js:930
App [] epi.js:953
Consider using 'dppx' units instead of 'dpi', as in CSS 'dpi' means dots-per-CSS-inch, not dots-per-physical-inch, so does not correspond to the actual 'dpi' of a screen. In media query expression: only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi) dojo.js:10570
Running:  phoenixweb/ModuleInitializer epi.js:997
EXPERIMENTAL: dojox.widget.Standby -- APIs subject to change without notice. dojo.js:2241
Running:  epi-cms/CMSModule epi.js:997
DEPRECATED: epi/shell/widget/_ActionConsumer use the command pattern with epi/shell/command/_CommandConsumerMixin instead dojo.js:2217
DEPRECATED: epi/shell/widget/_ActionProvider use the command pattern with epi/shell/command/_CommandProviderMixin instead dojo.js:2217
DEPRECATED: epi/shell/widget/_ActionConsumer use the command pattern with epi/shell/command/_CommandConsumerMixin instead dojo.js:2217
DEPRECATED: epi/shell/widget/_ActionProvider use the command pattern with epi/shell/command/_CommandProviderMixin instead dojo.js:2217
event.returnValue is deprecated. Please use the standard event.preventDefault() instead. jquery-1.9.1.min.js:3

So all appears to be working solidly now, I guess I just had to make some changes to the module.config and that alleviated any conflicts that could have been happening.

I'll shoot you an email soon

#89604
Aug 20, 2014 16:43
Vote:
 

Also, we are using Select2 because it lets us do the many things we need.  It basically is a multiselect (facebook style) that allows a user to add choices to it... it also pulls data from a datasource for the pre-determined choices and allows filtering (like an autocompleter).  It's pretty robust. 

#89605
Aug 20, 2014 16:46
This topic was created over six months ago and has been resolved. If you have a similar question, please create a new topic and refer to this one.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.