jsTree + jsTreeGrid -> render icons for newly created node - jstree

I successfully implements jsTree + jsTreeGrid in admin panel for
managing categories for products.
The only one problem is, that when i create new node via right mouse button context menu, the newly
created row does not contain columns with icons set in jsTreeGrid panel. The icons
are ID based (linked to other pages), therefore while rendering icons code have to know ID of newly created node.
Please note: After page refresh icons for new node are visible. Of course.
Any help is really appreciated.

What about programmatically refreshing the jsTree after adding new node? Search for refresh in doc for core

Related

Displaying the wiki content dynamically beside each image

I want to display images of 10 people on my dashboard, when i hover the image dynamically it needs to display a wiki page to the side of each image related to that person, how do i achieve this in tableau?
Here are the steps after you have a dashboard with your people on one of the charts. My example uses the pesticide list from the most recent #makeovermonday.
In your dashboard, drag the web page object in.
Click the option dropdown of that new object and click Add URL Action.
In the popup place the main portion of your wikipedia url in the box and select your people field which will become the dynamic portion of the URL. Mine is pesticides.
Change Run action on to Hover
Now when you hover on your main chart it will update the web page object with the person hovered on. I just hovered on Atrazine in this image
You will probably have to update your people names to make sure they match wikipedia's url.

Issue in using dialog in Touch UI of AEM 6.2

I am working on AEM 6.2. I am creating a dialog (cq:dialog) for touch UI. After creating a page i am not able to see my component in the design mode of the touch UI while trying to enable it and thus the dialog not enabled. Tried creating a simple dialog (using create->dialog) for classic UI for the same component and now i can see my component along with its dialog in touch UI of the page. Is it mandatory to create dialog for both views (Touch & Classic) to get the dialog enabled and working on both UI's?
No it is not mandatory to create a dialog node. However, some node is required indicating it is an editable component.
If you want to see your component in design view then you can create either of the nodes:
cq:editConfig [cq:EditConfig]
dialog
design_dialog
So in your case if you dont want a dialog node you can work with editConfig.

AEM/CQ5 : Hide node from the sidekick menu

I have a template node that I want to be active (cannot delete it), I just don't want it to be displayed in the siteadmin left menu.
I've tried sling:hideChildren; sling:hideProperties="jcr:title", not helping.
So here is the CRX view
And this is what I want to hide in siteadmin#
Any ideas?
It's pretty easy - just add property hidden with boolean value true for jcr:content node of page - and it will be hidden in both tree and grid.

How to drag and drop a component over other components (other than parsys) in CQ5?

I have created a button component in CQ5 without inheriting existing button component. Now I want to
place this button component over another custom Banner component by drag and drop method from sidekick. I gave the banner comp as parent for my button and in banner I gave this button in allowed children and made it as container too. also I have created design dialog for the banner component where I added this button component in allowed components option. still I am not able to drag and drop this button over the banner, as its going either above or below this banner and the banner itself is inside parsys. if I include the component via jsp, its working fine. but I must do it by drag and drop.
I am new to CQ5, appreciate any help I can get. thanks in advance.
A parsys is the fundamental container component for composition. Applying this functionality manually into another component would require quite a bit of custom configuration.
If you look at the parsys at /libs/foundation/components/parsys, you will see that it is defined as a container by the property cq:isContainer - true, which instructs CQ to allow for drag and drop. There are multiple sub nodes that will need to be defined etc.
If you are trying to limit only a particular component to be dropped in, this may make sense, and yo should look at the image component, however, the best approach is to make a component that contains a parsys.
Remember that the author's should have the ability to add as much as they want to, and a single object does not allow for this flexibility. You should be handling bad author activity through a review process before the content is published, rather than enforcing it on a software level.
Hope that helps.
Drag and Drop feature is available on Parsys or IParsys only. So to achieve your requirement you need to include parsys in banner component.
If you want to restrict banner parsys to allow button component, please use design config and select button component in button's parsys

Zend_Dojo_Form in tabs creates ID conflicts

I have a dojo layout that creates a sidebar on the left with a list of pages and a center area which is a tab container.
When a user double clicks a page in the sidebar, it creates a new closable tab in the center with a form to edit that page (the form is loaded via the href attribute on the ContentPanes, it's a standard Zend Framework request). However, if I open two or more pages, it creates all the elements and form controls with the same dijit IDs which creates conflicts. (This is expected I guess)
Aside from manually appending the current page ID to every element/dijit on the tab contents, does anyone know of a cleaner way for me to do this? Will this be an issue with the form element name attributes still being the same?
I guess the other approach is to not put id's on any of your widgets.