Thanks, Brian!
On Tue, Jul 29, 2014 at 2:48 PM, Brian Federle <brian.fede...@citrix.com> wrote: > I think the main area to look in is dialog.js, which handles rendering > the form dialogs. > > > > One possible approach: > > > > - Edit the dialog.js -> ‘createForm’ widget function, find the > each loop where the fields are iterated > > - Here, you can check for a new type param of your choosing > (such as field.type === ‘tagger’). The ‘type’ is determined by a bunch of > if-else statements -- nothing fancy J > > - If the field matches this type, there is already a ‘tagger’ > widget that you can use to render a comma-delimited tag list. You can see > the code in ui/widgets/tagger.js for how it can be implemented. It uses the > jQuery widget model, like the rest of the CS UI components. > > - You’ll probably have to tweak the CSS styles to fit the tagger > widget into the dialog properly (since right now it is only used in some > detail views). > > - Edit createForm’s ‘complete’ function, which is triggered > after pressing OK and before passing the data to whatever action needs it. > Here, you can parse the tag fields and append stuff to the ‘data’ object, > which contains the other serialized form data. The ‘data’ object will > finally be passed to the action’s API calls. > > - You can then add more fields to the existing dialog(s), and > edit their AJAX calls to read your new tag-type fields. > > > > Hope that helps. > > > > -Brian > > > > *From:* Mike Tutkowski [mailto:mike.tutkow...@solidfire.com] > *Sent:* Monday, July 28, 2014 6:49 PM > *To:* dev@cloudstack.apache.org > *Cc:* Brian Federle; Jessica Wang; Alena Prokharchyk; Seif Eddine Jemli > *Subject:* Re: [ACS4.5] GUI Question > > > > Just to add a bit more detail: > > > > Seif is looking to create a new dialog that can utilize this control. One > could access this new dialog - perhaps - by clicking on a new button to the > right of the Storage Tags text field (ex. in the Add Primary Storage > dialog). This new dialog would utilize the new control to show the admin > all existing storage tags, allow for tags to be selected, and provide hints > when a user types in a new tag. When this dialog is OKed, the storage tags > can be listed in a comma-separated fashion in the, say, Add Primary Storage > dialog. This way the admin doesn't have to guess at storage tags when > entering them in a manual fashion. > > > > On Mon, Jul 28, 2014 at 7:43 PM, Mike Tutkowski < > mike.tutkow...@solidfire.com> wrote: > > Hi, > > > > My student for GSoC, Seif, was interested in adding this control to > CloudStack's GUI codebase: > > > > http://loopj.com/jquery-tokeninput/ > > > > He's already written a new API command that retrieves a list of storage > tags (in addition to other work for GSoC). > > > > Ideally he would be able to augment a couple dialogs that use storage tags > to make use of this control so that admins could more easily input storage > tags (ex. they could see existing storage tags in a list and be assisted by > suggestions when typing in a storage tag). > > > > Would anyone (I've CCed some people who often work on the CS GUI) be able > to provide Seif insight into where he should start with this task? It might > make sense for him to extend this control and then utilize this extension > in multiple places in the GUI. It would be great if he had a bit of > guidance with regards to how this might fit into the existing CS GUI > architecture. > > > > Thanks! > > > > -- > *Mike Tutkowski* > > *Senior CloudStack Developer, SolidFire Inc.* > > e: mike.tutkow...@solidfire.com > > o: 303.746.7302 > > Advancing the way the world uses the cloud > <http://solidfire.com/solution/overview/?video=play>*™* > > > > > > -- > *Mike Tutkowski* > > *Senior CloudStack Developer, SolidFire Inc.* > > e: mike.tutkow...@solidfire.com > > o: 303.746.7302 > > Advancing the way the world uses the cloud > <http://solidfire.com/solution/overview/?video=play>*™* > -- *Mike Tutkowski* *Senior CloudStack Developer, SolidFire Inc.* e: mike.tutkow...@solidfire.com o: 303.746.7302 Advancing the way the world uses the cloud <http://solidfire.com/solution/overview/?video=play>*™*