Hello
Problem summary:
Agent is trying to create two tickets simultaneously (has two "New Ticket" tabs open and filling fields in them).
This is because 90% of ticket information is identical.

Submits ticket1. Then tries to submit ticket2, but get's an error that says that "
Issue Summary is a required field" , "Issue Details is a required field" and so on. It seems that after submitting ticket1 in one tab, other tab certain fields get refreshed, because
User and Collaborators and Ticket Information and Options: section information seems to be intact.

Didn't find any errors in apache log or in php error log.

    Hello,

    Thanks for the reply! I forgot to mention that I have this patch applied since December. I did restart Apache2 after applying the patch. Can you please try to reproduce this?

    5 days later

    Hello

    I implemented the change and restarted apache2 but still got the same result. I will post changes I made in usersession file aswell. I am testing in incognito mode always.

    if ($_SERVER['REQUEST_METHOD'] === 'GET'
    && isset($_SESSION['TIME_BOMB'])
    && ($_SESSION['TIME_BOMB'] < time())
    && ($id=$this->regenerateSession())) {
    // unset timer and set next one based on maxlife for the user or
    // 24 hrs later
    // TODO: Make regenerate frequency configurable in 2032 /j
    // PS: Living and dying and the stories that are true Secrets to
    // a good life is knowing when you're through ~ time bomb
    $ttl = ($this->getMaxIdleTime() ?: 86400);
    $_SESSION['TIME_BOMB'] = time() + $ttl;
    // Set new id locally
    $this->session_id = $id;
    // Force cookie renewal NOW!
    $refreshRate = -1;
    }

    function regenerateSession(int $ttl = 120) {
    // Set TTD (Time To Die) on current session
    // If ttl is 0 then session is destroyed immediatetly
    $_SESSION['TTD'] = time() + $ttl; // now + ttl
    if (($id=osTicketSession::regenerate($ttl)))
    $this->session->session_id = $id;
    // unset TTD on the new session - new life my boy!
    unset($_SESSION['TTD']);
    return $id;
    }

      erikpahlberg

      The issue may be with the customizations you have. Please remove all mods/customizations and retest.

      Cheers.

      Hey, tried that but still the issue is same. Do you use Apache2 or nginx and do you have any special configuration?

      What I've currently noticed is this: When I submit ticket in one tab, the osticket session cookie value get's changed:
      Cookie value at first in BOTH TAB's tab1:

      and tab2:

      Now when submitting ticket in tab1 this value gets accepted:

      and changed:

      Now when trying to submit ticket in tab2 refresh happens and cookie is now changed and this new cookie is accepted:


      After that new value is assigned:

        erikpahlberg

        That's what the change I linked earlier addresses. It should only regenerate a new session on a GET request, not a POST request.

        Using Apache, no special configs.

        Cheers.

        Write a Reply...