diff --git a/client/package.json b/client/package.json index 58180d8f..65857248 100644 --- a/client/package.json +++ b/client/package.json @@ -63,10 +63,10 @@ "localStorage": "^1.0.3", "lodash": "^3.10.0", "messageformat": "^0.2.2", - "react": "^15.0.1", + "react": "^15.4.2", "react-chartjs-2": "^2.0.0", "react-document-title": "^1.0.2", - "react-dom": "^15.0.1", + "react-dom": "^15.4.2", "react-draft-wysiwyg": "^1.7.6", "react-google-recaptcha": "^0.5.2", "react-motion": "^0.4.7", diff --git a/client/src/app-components/ticket-viewer.js b/client/src/app-components/ticket-viewer.js index f1a2cf31..b22effd0 100644 --- a/client/src/app-components/ticket-viewer.js +++ b/client/src/app-components/ticket-viewer.js @@ -179,7 +179,7 @@ class TicketViewer extends React.Component { renderTicketEvent(options, index) { return ( - + ); } diff --git a/client/src/app/main/dashboard/dashboard-create-ticket/create-ticket-form.js b/client/src/app/main/dashboard/dashboard-create-ticket/create-ticket-form.js index 469f9af4..19592b54 100644 --- a/client/src/app/main/dashboard/dashboard-create-ticket/create-ticket-form.js +++ b/client/src/app/main/dashboard/dashboard-create-ticket/create-ticket-form.js @@ -2,7 +2,6 @@ import React from 'react'; import _ from 'lodash'; import { browserHistory } from 'react-router'; import {EditorState, convertToRaw} from 'draft-js'; -import { mdToDraftjs, draftjsToMd } from 'draftjs-md-converter'; import i18n from 'lib-app/i18n'; import API from 'lib-app/api-call'; @@ -138,7 +137,7 @@ class CreateTicketForm extends React.Component { store.dispatch(SessionActions.getUserData()); setTimeout(() => {browserHistory.push('/dashboard')}, 2000); } else { - setTimeout(() => {browserHistory.push('/check-ticket/' + email + '/' + result.data.ticketNumber)}, 2000); + setTimeout(() => {browserHistory.push('/check-ticket/' + result.data.ticketNumber + '/' + email)}, 1000); } } @@ -150,4 +149,4 @@ class CreateTicketForm extends React.Component { } } -export default CreateTicketForm; \ No newline at end of file +export default CreateTicketForm; diff --git a/server/controllers/staff/get-new-tickets.php b/server/controllers/staff/get-new-tickets.php index 61ee2c5f..bc2e5ca8 100644 --- a/server/controllers/staff/get-new-tickets.php +++ b/server/controllers/staff/get-new-tickets.php @@ -1,4 +1,5 @@ id . ' OR '; } $query = substr($query,0,-3); - $query .= ') AND owner_id IS NULL'; - + $ownerExists = RedBean::exec('SHOW COLUMNS FROM ticket LIKE \'owner_id\''); + + if($ownerExists != 0) { + $query .= ') AND owner_id IS NULL'; + } else { + $query .= ')'; + } + $ticketList = Ticket::find($query); - + Response::respondSuccess($ticketList->toArray()); } -} \ No newline at end of file +} diff --git a/server/controllers/system.php b/server/controllers/system.php index 4670a161..863fb2f4 100644 --- a/server/controllers/system.php +++ b/server/controllers/system.php @@ -12,7 +12,7 @@ require_once 'system/recover-mail-template.php'; require_once 'system/disable-registration.php'; require_once 'system/enable-registration.php'; require_once 'system/disable-user-system.php'; -require_once 'system/enabled-user-system.php'; +require_once 'system/enable-user-system.php'; require_once 'system/add-api-key.php'; require_once 'system/delete-api-key.php'; require_once 'system/get-api-keys.php'; @@ -46,6 +46,6 @@ $systemControllerGroup->addController(new BackupDatabaseController); $systemControllerGroup->addController(new DownloadController); $systemControllerGroup->addController(new CSVImportController); $systemControllerGroup->addController(new DisableUserSystemController); -$systemControllerGroup->addController(new EnabledUserSystemController); +$systemControllerGroup->addController(new EnableUserSystemController); -$systemControllerGroup->finalize(); \ No newline at end of file +$systemControllerGroup->finalize(); diff --git a/server/controllers/system/enabled-user-system.php b/server/controllers/system/enable-user-system.php similarity index 74% rename from server/controllers/system/enabled-user-system.php rename to server/controllers/system/enable-user-system.php index 375593e0..1417921c 100644 --- a/server/controllers/system/enabled-user-system.php +++ b/server/controllers/system/enable-user-system.php @@ -1,7 +1,7 @@ authorEmail, 'email'); + $userInstance = User::getDataStore($ticket->authorEmail, 'email'); - if($userRow->isNull()) { - $this->createUser($ticket->authorEmail,$ticket->authorName); - - } else { - $userRow->tickets = $userRow->tickets + 1; - $userRow->sharedTicketList->add($ticket); - $userRow->store(); + if($userInstance->isNull()) { + $userInstance = $this->createUser($ticket->authorEmail, $ticket->authorName); } - $actualUserRow = User::getDataStore($ticket->authorEmail,'email'); - $ticket->author = $actualUserRow; + $userInstance->tickets = $userInstance->tickets + 1; + $userInstance->sharedTicketList->add($ticket); + $userInstance->store(); + + $ticket->author = $userInstance; $ticket->authorName = null; $ticket->authorEmail = null; $ticket->store(); @@ -75,5 +73,6 @@ class EnabledUserSystemController extends Controller { ]); $mailSender->send(); + return $userInstance; } -} \ No newline at end of file +} diff --git a/server/models/Ticket.php b/server/models/Ticket.php index fda039ec..aeb0a0bd 100644 --- a/server/models/Ticket.php +++ b/server/models/Ticket.php @@ -29,7 +29,7 @@ class Ticket extends DataStore { public static function getTicket($value, $property = 'id') { return parent::getDataStore($value, $property); } - + public static function getByTicketNumber($value) { return Ticket::getTicket($value, 'ticketNumber'); } @@ -50,19 +50,19 @@ class Ticket extends DataStore { public function generateUniqueTicketNumber() { $linearCongruentialGenerator = new LinearCongruentialGenerator(); $ticketQuantity = Ticket::count(); - + if ($ticketQuantity === 0) { $ticketNumber = $linearCongruentialGenerator->generateFirst(); } else { $linearCongruentialGenerator->setGap(Setting::getSetting('ticket-gap')->value); $linearCongruentialGenerator->setFirst(Ticket::getTicket(1)->ticketNumber); - + $ticketNumber = $linearCongruentialGenerator->generate($ticketQuantity); } return $ticketNumber; } - + public function toArray() { return [ 'ticketNumber' => $this->ticketNumber, @@ -144,7 +144,7 @@ class Ticket extends DataStore { return $events; } - + public function addEvent(Ticketevent $event) { $this->ownTicketeventList->add($event); } diff --git a/tests/system/disable-user-system.rb b/tests/system/disable-user-system.rb index 82b1fa6a..2764a0a8 100644 --- a/tests/system/disable-user-system.rb +++ b/tests/system/disable-user-system.rb @@ -55,8 +55,8 @@ describe'system/disable-user-system' do (result['message']).should.equal('SYSTEM_USER_IS_ALREADY_DISABLED') end - it 'should enabled the user system' do - result = request('/system/enabled-user-system', { + it 'should enable the user system' do + result = request('/system/enable-user-system', { csrf_userid: $csrf_userid, csrf_token: $csrf_token, password:$staff[:password] @@ -73,8 +73,8 @@ describe'system/disable-user-system' do end - it 'should not enabled the user system' do - result = request('/system/enabled-user-system', { + it 'should not enable the user system' do + result = request('/system/enable-user-system', { csrf_userid: $csrf_userid, csrf_token: $csrf_token, password:$staff[:password]