We appreciate you taking the time to vote and add your suggestions to make our products awesome! Your request will be submitted to the community for review and inclusion into the backlog.

We recommend reviewing what is submitted before posting, in case your idea has already been submitted by another community member. If it has been submitted, vote for that existing feature request (by clicking the up arrow) to increase its opportunity of being added to Cireson solutions.

For more information around feature requests in the Cireson Community click here.

Implement Auto Save when a comment is added to an IR/SR for Cireson SSP and Analyst Portal

We are running a lot into the issue that a user types in a comment to an incident and hits the Add" button. this leads to the comment being added to the list below and the user closes the page and the comment is lost. If you could add a "Add and Save" button or just auto save on clicking "Add" or even a 'hard return' to commit the comment similar to how instant messaging systems function. This would be great.
61 votes

Backlog Planning · Last Updated

We've moved this over to the product team for review. More information shortly.

Comments

  • Adrian_MataiszAdrian_Mataisz Customer Advanced IT Monkey ✭✭✭
    I agree. Our Analysts always forget to Save. The portal should save every change automatically if you hit OK from any Custom Task.
  • Geoff_RossGeoff_Ross Cireson Consultant Super IT Monkey ✭✭✭✭✭
    Same situation with Approve on an RA.
  • Josh_CrewJosh_Crew Customer IT Monkey ✭
    I've added a task for comment entry which updates on OK. Works better then having to scroll down to the bottom; many of our analysts request less wasted white space and no scrolling.
  • Adrian_MataiszAdrian_Mataisz Customer Advanced IT Monkey ✭✭✭
    Do you mind sharing the task and how do you eliminate wasted white space?
  • Josh_CrewJosh_Crew Customer IT Monkey ✭
    For the comment task place the following code into the custom.js file

    /* Comment Tasks */
    app.custom.formTasks.add('ServiceRequest', "Comment", function (formObj, viewModel) {
        console.log(formObj);
        //use require js to load the template first
        require(["text!/CustomSpace/templates/SRComment.html"], function (template) {
            //make a jQuery obj
            cont = $(template);
            //create a view model to handle the UX
            var _vmWindow = new kendo.observable({
                comment: "",
                isPrivate: false,
                okEnabled: false,
                charactersRemaining: "4000",
                textCounter: function () {
                    var maximumLength = 4000;
                    var val = this.comment.length;
                    (val > maximumLength) ? this.comment.substring(0, maximumLength) : this.set("charactersRemaining", maximumLength - val);
                    (val > 0) ? this.set("okEnabled", true) : this.set("okEnabled", false);
                },
                saveStatus: function () {
                    //set action log
                    var newActionLog = {
                        EnteredBy: session.user.Name,
                        Title: localization.Analyst + " " + localization.Comment,
                        IsPrivate: this.get("isPrivate"),
                        EnteredDate: new Date().toISOString().split(".")[0],
                        LastModified: new Date().toISOString().split(".")[0],
                        Description: this.get("comment"),
                        Image: app.config.iconPath + app.config.icons["comment"],
                        ActionType: "AnalystComment"
                    }
                    //beta method
                    actionLogModel.push(newActionLog);
                },
                okClick: function () {
                    this.saveStatus();
                    save();
                    customWindow.close();
                },
                cancelClick: function () {
                    customWindow.close();
                }
            });
            //create the kendo window
            customWindow = cont.kendoWindow({
                title: "Enter Comment",
                resizable: false,
                modal: true,
                viewable: false,
                width: 500,
                height: 350,
                close: function () {
                },
                activate: function () {
                    //on window activate bind the view model to the loaded template content
                    kendo.bind(cont, _vmWindow);
                }
            }).data("kendoWindow");
            //now open the window
            customWindow.open().center();
        });
    });
    app.custom.formTasks.add('Incident', "Comment", function (formObj, viewModel) {
        console.log(formObj);
        //use require js to load the template first
        require(["text!/CustomSpace/templates/SRComment.html"], function (template) {
            //make a jQuery obj
            cont = $(template);
            //create a view model to handle the UX
            var _vmWindow = new kendo.observable({
                comment: "",
                isPrivate: false,
                okEnabled: false,
                charactersRemaining: "4000",
                textCounter: function () {
                    var maximumLength = 4000;
                    var val = this.comment.length;
                    (val > maximumLength) ? this.comment.substring(0, maximumLength) : this.set("charactersRemaining", maximumLength - val);
                    (val > 0) ? this.set("okEnabled", true) : this.set("okEnabled", false);
                },
                saveStatus: function () {
                    //set action log
                    var newActionLog = {
                        EnteredBy: session.user.Name,
                        Title: localization.Analyst + " " + localization.Comment,
                        IsPrivate: this.get("isPrivate"),
                        EnteredDate: new Date().toISOString().split(".")[0],
                        LastModified: new Date().toISOString().split(".")[0],
                        Description: this.get("comment"),
                        Image: app.config.iconPath + app.config.icons["comment"],
                        ActionType: "AnalystComment"
                    }
                    //beta method
                    actionLogModel.push(newActionLog);
                },
                okClick: function () {
                    this.saveStatus();
                    save();
                    customWindow.close();
                },
                cancelClick: function () {
                    customWindow.close();
                }
            });
            //create the kendo window
            customWindow = cont.kendoWindow({
                title: "Enter Comment",
                resizable: false,
                modal: true,
                viewable: false,
                width: 500,
                height: 350,
                close: function () {
                },
                activate: function () {
                    //on window activate bind the view model to the loaded template content
                    kendo.bind(cont, _vmWindow);
                }
            }).data("kendoWindow");
            //now open the window
            customWindow.open().center();
        });
    });
    Next, within the Incident.js and ServiceRequest.js file, you can remove the comment section of the template.


  • Waleed_Al_MahmeedWaleed_Al_Mahmeed Customer IT Monkey ✭

    Do you mind sharing the SRComment.html file

    Thanks

  • Josh_CrewJosh_Crew Customer IT Monkey ✭
    edited June 2016
    SRComment.html

    <div>
        <div id="commentHTML" class="defined-form">
            <div>
                <div id="resolutionPicker" class="col-group" />
                <div class="col-group">
                    <div class="inline-spacing">
                        <label>Please enter your comment:</label>
                    </div>
                    <div class="inline-spacing">
                        <textarea data-bind="value: comment, events: {keyup:textCounter}" data-value-update="keyup" class="k-textbox" rows="7" />
                        <div class="inline-spacing">
                            <span data-bind="html:charactersRemaining"></span>
                            <span>characters remaining</span>
                        </div>
                    </div>
                    </div>
                <div class="col-group">
                    <label style="vertical-align: text-top; padding-bottom: 1px;  font-size:12px;" for="IsPrivate">
                        Private Comment:&nbsp;
                        <input style="vertical-align: text-bottom;" id="IsPrivate" type="checkbox" data-bind="checked: isPrivate" />
                    </label>
                </div>
                <div class="windows-buttons">
                    <button data-role="button" class="btn btn-primary" data-bind="enabled: okEnabled, events: { click: okClick }">
                        OK
                    </button>
                    <button data-role="button" class="btn btn-primary" data-bind=" events: {click: cancelClick }">
                        Cancel
                    </button>
                </div>
                </div>
            </div>
        </div>

  • Steve_ClarkeSteve_Clarke Customer Adept IT Monkey ✭✭
    Another vote for this one. Very easy to miss hitting save/apply after hitting add for a comment. I have done it on the Cireson support site a few times and can see it happening to our Clients when we go live.
  • Adrian_PaechAdrian_Paech Customer Advanced IT Monkey ✭✭✭
    Wouldn't mind seeing similar functionality with logging services offerings.
    would be great to be able to save a long (Multi page) forms and come back to them later on.
    just a thought.
    Cheers,
    Adrian
  • Raffael_JenzerRaffael_Jenzer Customer IT Monkey ✭
    Hi. Very cool script. But when I hit the OK button (after I entered my comment), nothing happens... any idea? Cheers, Raffael
  • Jan_Tajo_FittkauJan_Tajo_Fittkau Customer IT Monkey ✭
    Any chance this will get implemented? This is the reason people are starting to request to change the portal or switch to accept email only as the communication with the Agents.
  • Martin_BlomgrenMartin_Blomgren Customer Ninja IT Monkey ✭✭✭✭
    @Jan_Tajo_Fittkau, did a custom solution for this a while back which we have implemented for our end users. Haven't heard any complaints from them but others here at the community have had various experiences so if you plan to implement please test thoroughly first. If you come back with some feedback I might take the time to update it as well :)

    https://community.cireson.com/discussion/1883/custom-apply-save-form-when-comment-is-added
    Scroll down for the latest version!
Sign In or Register to comment.