Smart Form changes not reflecting in site. #Ektron - content-management-system

I have edited my existing smart form in smart form configurations in settings menu.
Then I have published and updated the smart form in contents folder properties.
Now I went to particular content which is using that particular smart form in CMS 400 editor and I can see the changes.
But when I go through the page in browser it still shows the old smart form.Unable to reflect changes in browser. please help me.
Thanks in advance

It would help to know what version you're running. That being said, there are a few things that could be going on here...
Caching
FrameworkAPI caching might be turned on, in which case you'd have to wait for the cache expiration or recycle the app pool in order to see updated content. Caching is enabled in web.config by changing the defaultContainer property in this section to Cache.
<ektron.framework.services>
<unity configSource="ektron.cms.framework.unity.config"/>
<framework defaultContainer="Default" childContainer="BusinessObjects"/>
</ektron.framework.services>
Republish the content
Changes to a smart form definition won't immediately trickle down to all content blocks using that particular smart form. If you add a field (for instance), that field won't exist on any content blocks unless you open up that content block in edit mode and republish it. It will automatically be added to the content block when you click Edit, but that change won't be saved until you click publish.

Related

Trigger a plugin step on "entityimage" change

I created a plugin that should upload the contact entity "entityimage" to an external storage.
The code itself should works (it works as a console app), but I am unable to add a step that trigger on "entityimage" change as I can't find it in the filtering attribute list in the Plugin Registration Tool.
Is there a way to trigger this plugin only when "entityimage" change?
Regards,
Dremor
Reviewing the Contact's entityimage field in the Metadata Browser indicates that it is a "Virtual" field, which may be why it is unavailable as a filtering attribute.
Also, according to the SDK there does not appear to be any other message available besides "Update" on the Contact that could be used to indicate that the entityimage has changed.
And, changing the image through the UI does create an Audit History entry, however, it is a generic "Update" entry, with the old value and new value blank.
It appears that triggering a plugin on change of only the entityimage field is not possible, nor do there appear to be any OOB hooks to see if that field has changed.
The only other think I can think to research is Change Tracking. Otherwise it looks like you may have to upload the image on any Update of a Contact.
Or, you could sync the image URL's from CRM to an external system and compare the one in CRM to the external system before uploading.
Strangely enough, if you don't set any filtering attributes the plugin does get triggerd when changing the image, but i guess this also means that all field changes will trigger it.

How to make form data persist on "reload from cache"

I'm making a website. It's a simple profile page. I don't have any subpage, I just do 3 divs and change them and css.
But because its a radioset, if you refresh the page from cache (f5) or duplicate the tab, or press back/forward, the form data remains intact so it shows the proper div. This is good behavior. However I only see this in Firefox.
Browsers like google chrome are not keeping the form data on (f5) refresh from cache but it clears form data (as if it is a reload from server). How can I make form data persist on reload from cache in this browser?
here is the site if you would like to see what i mean: http://noitidart.github.io/
I understand people sometimes want the opposite behavior then I'm looking for. They want form cleared even on reload (as Chrome currently does) but that's easy to ensure in Firefox just stick in a document.form.reset() in the head.
Firefoxes restore of form data values is fine on reload (without Shift or CTRl;).
This is missing in Google Chrome.
I found this:
autocomplete="off"
https://github.com/pradosoft/prado/issues/642
Perhaps autocomplete="on" would make it happen? :) i dont know.
stackoverflow.com uses it too.

Issue with publishing a new page in CQ5

I have installed both author and publish instances of CQ5.5 on my PC. But when I add a new page and publish it, it does not appear in the publish instance. Only a blank page is rendered.
I have tried activating it both from the siteadmin and from the Replication page in Tools. Only the navigation item appears in the Publish instance.
I checked the Request logs also. But it only gives a
200 response(OK)
Can someone please help me on this ?
You need to activate/replicate your /apps/site folder where all of your templates and components are located to push it from your author instance to your publish instance. Activating a page doesn't automatically activate the components and templates it uses.
Go to:
http://localhost:4502/etc/replication/treeactivation.html
Browse to or type /apps/[your site] in the path field
Set the check boxes to fit what you want to activate (Unchecking all will make everything under the selected path activate)
Click 'Dry Run' to see what will get activated without actually activating. (This is more of an informative step to help ensure you don't activate something not intended in a production setting)
Click 'Activate' to activate.
You can then check your publish instance to see your templates and code are there.
It is easy to miss activating your apps folder as there is no ui like the website admin for pages where you can activate.
Activating a page/folder/asset does not activate sub-pages/folders/assets. This can cause confusion especially when working with folders.
Generally if you need to activate a tree the best way is to use the tree activation utility
The only time I've ever seen this is when the code is not installed. That would be the first thing that I'd check. Go to (assuming you have your publisher on port 4503)
http://localhost:4503/crx/de
You should have your the code in /apps and you should be able to find the content page in /content too.
The reason this happens is that the sling:resourceType property points to a component that doesn't exist so it uses the default which is an empty output.
You have to build the code to both the environments (author as well as publish). This way both the environments will have the same copy of source code installed in the form of cq5 packages and felix bundles. Then if you create a new page or drop any component on any existing page, it will appear the same on publish environment after activating the same either through 'Activate Page' link in sidekick or through replication tree activation page.

Updating model behind the editor when file has been refreshed

I am writing multi-tab editor for Eclipse. This plug-in has several tabs and the last one is the text source - something similar to the plugin.xml editor in PDE.
There is some model behind it which is used to show some information in tabs which are base on the data in the text source. User may edit source and when he/she switches to another tab the model is updated. That works fine.
The problem is when someone edits source file in an external editor. Then refresh project and the model should be also refreshed. But how can I achieve this?
I tried to use addResourceChangeListener, it notifies my with pre-refresh events, but it doesn't contain information if my file is going to be updated (e.g. only project resource if someone tried to refresh the whole project).
Other idea I had was to add document listener when a pre-refresh event comes and to remove it in the post-change handler. However here the problem is that if file hasn't changed and hasn't been updated no post-change event is sent, so I stay with unnecessary document listener which will be informed about all edits done by user in the last (source) tab.
I will appreciate any help.
A Refresh, when it finds changed files, will report them as having been changed. You probably mean to listen to the POST_CHANGE notification as shown at http://www.eclipse.org/articles/Article-Resource-deltas/resource-deltas.html .

Stop form from open when no records

I have a data entry form that when it closes opens another form for further updating the just newly entered data. However, at times no further update is necessary. How can I suppress the 2nd form from opening when there is no need for further update? Presently the form opens even when there are no recordsets present. (need a similar Event like for the report "On No Data")
Have a bit field such as a checkbox with default set to true open second form. Uncheck it to avoid the system from opening the next form. You will need to handle this in your code and check if that check box is checked or not.
Of course we will need more details such as why you are currently opening this second form...in addition, cant you check if any changes were made and if they were then open that second form else dont? Also what lang ?
Without knowing more about what you're working on, I'd say you would have to modify the process that shuts down the first form to check if the second form is needed. In .NET, for example, you could add code to the OnClosing event for a WinForm to check. If it's needed, open it as normal, if not then don't.
Subject: Tool Kits. Tool Kits consist of 1 or more tools. If tools already exist, no need for 2nd form to pop up. If tools are new, I need to fill in one of the 3 fields in the drop down listing. I like the idea of adding code to the OnClosing event, but do not understand what you mean by WinForm.