Skip to content

Commit

Permalink
upgrade to OST 1.9.4
Browse files Browse the repository at this point in the history
  • Loading branch information
alex committed Nov 2, 2014
1 parent 6c2f65f commit 48fecce
Show file tree
Hide file tree
Showing 7 changed files with 304 additions and 217 deletions.
2 changes: 1 addition & 1 deletion equipment.php
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

require_once ('config.php');

define ( 'EQUIPMENT_PLUGIN_VERSION', '0.3' );
define ( 'EQUIPMENT_PLUGIN_VERSION', '0.4' );

define ( 'EQUIPMENT_TABLE', TABLE_PREFIX . 'equipment' );
define ( 'EQUIPMENT_CATEGORY_TABLE', TABLE_PREFIX . 'equipment_category' );
Expand Down
16 changes: 6 additions & 10 deletions include/model/Equipment.php
Original file line number Diff line number Diff line change
Expand Up @@ -163,11 +163,9 @@ public function setStaff_id($staff_id) {

public static function getOpenTickets($id) {
$ticket_ids = array();
$sql = 'SELECT et.ticket_id, et.equipment_id'
. ' FROM ' . EQUIPMENT_TICKET_TABLE . ' et '
. ' LEFT JOIN ' . TICKET_TABLE . ' ticket ON(et.ticket_id=ticket.ticket_id) '
. ' WHERE et.equipment_id=' . db_input($id)
. ' AND ticket.status=\'open\'';
$sql = 'SELECT ticket_id, equipment_id FROM ' . EQUIPMENT_TICKET_VIEW . ' '
. 'WHERE equipment_id=' . db_input($id) . ' '
. 'AND status="open"';
$res = db_query($sql);
if ($res && ($num = db_num_rows($res))) {
while ($row = db_fetch_array($res)) {
Expand All @@ -179,11 +177,9 @@ public static function getOpenTickets($id) {

public static function getClosedTickets($id) {
$ticket_ids = array();
$sql = 'SELECT et.ticket_id, et.equipment_id'
. ' FROM ' . EQUIPMENT_TICKET_TABLE . ' et '
. ' LEFT JOIN ' . TICKET_TABLE . ' ticket ON(et.ticket_id=ticket.ticket_id) '
. ' WHERE et.equipment_id=' . db_input($id)
. ' AND ticket.status=\'closed\'';
$sql = 'SELECT ticket_id, equipment_id FROM ' . EQUIPMENT_TICKET_VIEW . ' '
. 'WHERE equipment_id=' . db_input($id) . ' '
. 'AND status="closed"';
$res = db_query($sql);
if ($res && ($num = db_num_rows($res))) {
while ($row = db_fetch_array($res)) {
Expand Down
42 changes: 28 additions & 14 deletions install/sql/install_equipment.sql
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@ on(((`%TABLE_PREFIX%form_field`.`id` = `%TABLE_PREFIX%form_entry_values`.`field_
left join `%TABLE_PREFIX%form`
on((`%TABLE_PREFIX%form`.`id` = `%TABLE_PREFIX%form_field`.`form_id`)))
left join `%TABLE_PREFIX%equipment_status`
on((`%TABLE_PREFIX%form_entry_values`.`value` = `%TABLE_PREFIX%equipment_status`.`name`))))
on((`%TABLE_PREFIX%form_entry_values`.`value` like concat('%', `%TABLE_PREFIX%equipment_status`.`name`, '%')))))
where ((`%TABLE_PREFIX%form`.`title` = 'Equipment') and
(`%TABLE_PREFIX%form`.`id` = `%TABLE_PREFIX%form_entry`.`form_id`) and
(`%TABLE_PREFIX%form_entry`.`object_type` = 'T'))$
Expand All @@ -259,12 +259,14 @@ select `%TABLE_PREFIX%equipment_ticket`.`equipment_id` AS `equipment_id`,
`%TABLE_PREFIX%equipment_ticket`.`created` AS `created`,
`%TABLE_PREFIX%equipment`.`category_id` AS `category_id`,
`%TABLE_PREFIX%equipment`.`is_active` AS `is_active`,
`%TABLE_PREFIX%ticket`.`status` AS `status`
from ((`%TABLE_PREFIX%equipment_ticket`
left join `%TABLE_PREFIX%equipment`
on((`%TABLE_PREFIX%equipment_ticket`.`equipment_id` = `%TABLE_PREFIX%equipment`.`equipment_id`)))
left join `%TABLE_PREFIX%ticket`
on((`%TABLE_PREFIX%equipment_ticket`.`ticket_id` = `%TABLE_PREFIX%ticket`.`ticket_id`)))$
`%TABLE_PREFIX%ticket_status`.`state` AS `status`
from `ost_equipment_ticket`
left join `ost_equipment`
on(`ost_equipment_ticket`.`equipment_id` = `ost_equipment`.`equipment_id`)
left join `ost_ticket`
on(`ost_equipment_ticket`.`ticket_id` = `ost_ticket`.`ticket_id`)
left join `ost_ticket_status`
on(`ost_ticket`.`status_id` = `ost_ticket_status`.`id`)$

DROP VIEW IF EXISTS `%TABLE_PREFIX%EquipmentSearchView`$

Expand All @@ -281,15 +283,25 @@ DROP TRIGGER IF EXISTS `%TABLE_PREFIX%ticket_event_AINS`$
CREATE TRIGGER `%TABLE_PREFIX%ticket_event_AINS` AFTER INSERT ON `%TABLE_PREFIX%ticket_event` FOR EACH ROW
BEGIN
IF NEW.state='closed' THEN

SET @equipment_id = (SELECT equipment_id FROM `%TABLE_PREFIX%equipment_ticket`
WHERE ticket_id=NEW.ticket_id LIMIT 1);
WHERE ticket_id=NEW.ticket_id LIMIT 1);


IF ((@equipment_id IS NOT NULL) AND (@equipment_id>0)) THEN
SET @status_id = (SELECT status_id FROM `%TABLE_PREFIX%equipment_status`
WHERE baseline=1 LIMIT 1);

IF ((@status_id IS NOT NULL) AND (@status_id>0)) THEN
UPDATE `%TABLE_PREFIX%equipment` SET status_id = @status_id
WHERE equipment_id = @equipment_id;
SET @open_ticks = (SELECT COUNT(ticket_id) FROM `%TABLE_PREFIX%EquipmentTicketView`
WHERE equipment_id = @equipment_id AND
`status` != 'closed');

IF @open_ticks = 0 THEN
SET @status_id = (SELECT status_id FROM `%TABLE_PREFIX%equipment_status`
WHERE baseline=1 LIMIT 1);

IF ((@status_id IS NOT NULL) AND (@status_id>0)) THEN
UPDATE `%TABLE_PREFIX%equipment` SET status_id = @status_id
WHERE equipment_id = @equipment_id;
END IF;
END IF;
END IF;

Expand All @@ -304,6 +316,7 @@ BEGIN
SET @asset_id_str = (SELECT value FROM `%TABLE_PREFIX%EquipmentFormView` WHERE
ticket_id= NEW.ticket_id AND field_label='Equipment' LIMIT 1);
SET @asset_id = (SELECT SUBSTRING_INDEX(@asset_id_str, 'Asset_ID:', -1));
SET @asset_id = SUBSTRING(@asset_id, 1, CHAR_LENGTH(@asset_id) - 2);
END IF;


Expand Down Expand Up @@ -336,6 +349,7 @@ BEGIN
SET @asset_id_str = (SELECT value FROM `%TABLE_PREFIX%EquipmentFormView` WHERE
ticket_id= NEW.ticket_id AND field_label='Equipment' LIMIT 1);
SET @asset_id = (SELECT SUBSTRING_INDEX(@asset_id_str, 'Asset_ID:', -1));
SET @asset_id = SUBSTRING(@asset_id, 1, CHAR_LENGTH(@asset_id) - 2);
END IF;


Expand Down Expand Up @@ -512,5 +526,5 @@ BEGIN
CLOSE cur1;
END$

UPDATE `%TABLE_PREFIX%plugin` SET version = '0.3' WHERE `name`='Equipment Manager'$
UPDATE `%TABLE_PREFIX%plugin` SET version = '0.4' WHERE `name`='Equipment Manager'$
SET SQL_SAFE_UPDATES=1$
42 changes: 28 additions & 14 deletions install/sql/upgrade_equipment.sql
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,7 @@ on(((`%TABLE_PREFIX%form_field`.`id` = `%TABLE_PREFIX%form_entry_values`.`field_
left join `%TABLE_PREFIX%form`
on((`%TABLE_PREFIX%form`.`id` = `%TABLE_PREFIX%form_field`.`form_id`)))
left join `%TABLE_PREFIX%equipment_status`
on((`%TABLE_PREFIX%form_entry_values`.`value` = `%TABLE_PREFIX%equipment_status`.`name`))))
on((`%TABLE_PREFIX%form_entry_values`.`value` like concat('%', `%TABLE_PREFIX%equipment_status`.`name`, '%')))))
where ((`%TABLE_PREFIX%form`.`title` = 'Equipment') and
(`%TABLE_PREFIX%form`.`id` = `%TABLE_PREFIX%form_entry`.`form_id`) and
(`%TABLE_PREFIX%form_entry`.`object_type` = 'T'))$
Expand All @@ -234,12 +234,14 @@ select `%TABLE_PREFIX%equipment_ticket`.`equipment_id` AS `equipment_id`,
`%TABLE_PREFIX%equipment_ticket`.`created` AS `created`,
`%TABLE_PREFIX%equipment`.`category_id` AS `category_id`,
`%TABLE_PREFIX%equipment`.`is_active` AS `is_active`,
`%TABLE_PREFIX%ticket`.`status` AS `status`
from ((`%TABLE_PREFIX%equipment_ticket`
left join `%TABLE_PREFIX%equipment`
on((`%TABLE_PREFIX%equipment_ticket`.`equipment_id` = `%TABLE_PREFIX%equipment`.`equipment_id`)))
left join `%TABLE_PREFIX%ticket`
on((`%TABLE_PREFIX%equipment_ticket`.`ticket_id` = `%TABLE_PREFIX%ticket`.`ticket_id`)))$
`%TABLE_PREFIX%ticket_status`.`state` AS `status`
from `ost_equipment_ticket`
left join `ost_equipment`
on(`ost_equipment_ticket`.`equipment_id` = `ost_equipment`.`equipment_id`)
left join `ost_ticket`
on(`ost_equipment_ticket`.`ticket_id` = `ost_ticket`.`ticket_id`)
left join `ost_ticket_status`
on(`ost_ticket`.`status_id` = `ost_ticket_status`.`id`)$

DROP VIEW IF EXISTS `%TABLE_PREFIX%EquipmentSearchView`$

Expand All @@ -256,15 +258,25 @@ DROP TRIGGER IF EXISTS `%TABLE_PREFIX%ticket_event_AINS`$
CREATE TRIGGER `%TABLE_PREFIX%ticket_event_AINS` AFTER INSERT ON `%TABLE_PREFIX%ticket_event` FOR EACH ROW
BEGIN
IF NEW.state='closed' THEN

SET @equipment_id = (SELECT equipment_id FROM `%TABLE_PREFIX%equipment_ticket`
WHERE ticket_id=NEW.ticket_id LIMIT 1);
WHERE ticket_id=NEW.ticket_id LIMIT 1);


IF ((@equipment_id IS NOT NULL) AND (@equipment_id>0)) THEN
SET @status_id = (SELECT status_id FROM `%TABLE_PREFIX%equipment_status`
WHERE baseline=1 LIMIT 1);

IF ((@status_id IS NOT NULL) AND (@status_id>0)) THEN
UPDATE `%TABLE_PREFIX%equipment` SET status_id = @status_id
WHERE equipment_id = @equipment_id;
SET @open_ticks = (SELECT COUNT(ticket_id) FROM `%TABLE_PREFIX%EquipmentTicketView`
WHERE equipment_id = @equipment_id AND
`status` != 'closed');

IF @open_ticks = 0 THEN
SET @status_id = (SELECT status_id FROM `%TABLE_PREFIX%equipment_status`
WHERE baseline=1 LIMIT 1);

IF ((@status_id IS NOT NULL) AND (@status_id>0)) THEN
UPDATE `%TABLE_PREFIX%equipment` SET status_id = @status_id
WHERE equipment_id = @equipment_id;
END IF;
END IF;
END IF;

Expand All @@ -279,6 +291,7 @@ BEGIN
SET @asset_id_str = (SELECT value FROM `%TABLE_PREFIX%EquipmentFormView` WHERE
ticket_id= NEW.ticket_id AND field_label='Equipment' LIMIT 1);
SET @asset_id = (SELECT SUBSTRING_INDEX(@asset_id_str, 'Asset_ID:', -1));
SET @asset_id = SUBSTRING(@asset_id, 1, CHAR_LENGTH(@asset_id) - 2);
END IF;


Expand Down Expand Up @@ -310,6 +323,7 @@ BEGIN
SET @asset_id_str = (SELECT value FROM `%TABLE_PREFIX%EquipmentFormView` WHERE
ticket_id= NEW.ticket_id AND field_label='Equipment' LIMIT 1);
SET @asset_id = (SELECT SUBSTRING_INDEX(@asset_id_str, 'Asset_ID:', -1));
SET @asset_id = SUBSTRING(@asset_id, 1, CHAR_LENGTH(@asset_id) - 2);
END IF;


Expand Down Expand Up @@ -486,5 +500,5 @@ BEGIN
CLOSE cur1;
END$

UPDATE `%TABLE_PREFIX%plugin` SET version = '0.3' WHERE `name`='Equipment Manager'$
UPDATE `%TABLE_PREFIX%plugin` SET version = '0.4' WHERE `name`='Equipment Manager'$
SET SQL_SAFE_UPDATES=1$
1 change: 0 additions & 1 deletion nbproject/project.properties
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,5 @@ source.encoding=UTF-8
src.dir=.
tags.asp=false
tags.short=false
test.src.dir=${file.reference.equipment-test}
testing.providers=PhpUnit
web.root=.
Loading

0 comments on commit 48fecce

Please sign in to comment.