Commit 0e28954e authored by Frank Bergmann's avatar Frank Bergmann

- Upgrade scripts to keep message_id with im_forum_tickets

parent cdcf65d6
......@@ -1684,10 +1684,14 @@ SELECT im_dynfield_attribute_new ('im_ticket', 'ticket_customer_contact_id', 'Cu
SELECT im_dynfield_attribute_new ('im_ticket', 'ticket_dept_id', 'Department', 'cost_centers', 'integer', 'f');
-- New ticket_container_email_selector !!!
-- New ticket_container_email_selector
SELECT im_dynfield_attribute_new ('im_project', 'ticket_container_email_selector', 'Email Selector RegExp', 'textarea_small', 'string', 'f');
alter table im_projects add column ticket_container_email_selector text;
-- New field in forum topics for MIME Message-ID of creating email
alter table im_forum_topics add column mime_message_id text;
-----------------------------------------------------------
-- Unused fields
......
-- upgrade-5.0.0.0.0-5.0.0.0.1.sql
SELECT acs_log__debug('/packages/intranet-helpdesk/sql/postgresql/upgrade/upgrade-5.0.0.0.0-5.0.0.0.1.sql','');
update im_dynfield_widgets set parameters = '
SELECT im_dynfield_widget__new (
null, ''im_dynfield_widget'', now(), 0, ''0.0.0.0'', null,
''customer_contact_select_ajax'', ''Customer Contact Select AJAX'', ''Customer Contact Select AJAX'',
10007, ''integer'', ''generic_sql'', ''integer'',
''{custom {sql {
select u.user_id,
im_name_from_user_id(u.user_id) as name
from users u
where u.user_id not in (
-- Exclude deleted or disabled users
select m.member_id
from group_member_map m,
membership_rels mr
where m.group_id = acs__magic_object_id(''''registered_users'''') and
m.rel_id = mr.rel_id and
m.container_id = m.group_id and
mr.member_state != ''''approved''''
)
order by name
}}
after_html {
<script type="text/javascript">
function customerContactSelectOnChange() {
var xmlHttp1;
try { xmlHttp1=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
} catch (e) {
try { xmlHttp1=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
} catch (e) {
try { xmlHttp1=new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("Your browser does not support AJAX!");
return false;
}
}
}
xmlHttp1.onreadystatechange = function() {
if(xmlHttp1.readyState==4) {
var divElement = document.getElementById(''''customer_contact_div'''');
divElement.innerHTML = this.responseText;
}
}
var customer_id = document.helpdesk_ticket.ticket_customer_contact_id.value;
// Check, if customer_id is null, otherwise all conf_object_items are returned in portlet
if (!customer_id) { return false; } ;
xmlHttp1.open("GET","/intranet/components/ajax-component-value?plugin_name=Customer%20Info&package_key=intranet-helpdesk&ticket_customer_contact_id=" + customer_id,true);
xmlHttp1.send(null);
}
window.onload = function() {
var dropdown = document.helpdesk_ticket.ticket_customer_contact_id;
dropdown.onchange = customerContactSelectOnChange;
var divElement = document.getElementById(''''customer_contact_div'''');
if (divElement != null){
var div = document.helpdesk_ticket.ticket_customer_contact_id;
div.onchange = customerContactSelectOnChange;
if (div.value != null) { customerContactSelectOnChange() }
}
}
</script>
}
}''
);
' where widget_name = 'customer_contact_select_ajax';
-----------------------------------------------------------
-- Fix "Summary" tab
--
update im_menus
set url = '/intranet-helpdesk/index'
where label = 'helpdesk_summary';
-----------------------------------------------------------
-- "Dashboard" Tab below "Tickets"
--
SELECT im_menu__new (
null, -- p_menu_id
'im_menu', -- object_type
now(), -- creation_date
null, -- creation_user
null, -- creation_ip
null, -- context_id
'intranet-helpdesk', -- package_name
'helpdesk_dashboard', -- label
'Dashboard', -- name
'/intranet-helpdesk/dashboard', -- url
20, -- sort_order
(select menu_id from im_menus where label = 'helpdesk'),
null -- p_visible_tcl
);
SELECT acs_permission__grant_permission(
(select menu_id from im_menus where label = 'helpdesk_dashboard'),
(select group_id from groups where group_name = 'Employees'),
'read'
);
-----------------------------------------------------------
-- Move portlets from Home to Helpdesk Dashboard page
--
update im_component_plugins
set page_url = '/intranet-helpdesk/dashboard'
where page_url = '/intranet/index' and
package_name = 'intranet-helpdesk' and
plugin_name <> 'Home Ticket Component';
-- upgrade-5.0.1.0.0-5.0.1.0.1.sql
SELECT acs_log__debug('/packages/intranet-helpdesk/sql/postgresql/upgrade/upgrade-5.0.1.0.0-5.0.1.0.1.sql','');
update im_categories
set category = 'Ticket Container'
where category_id = 2502;
SELECT im_menu__new (
null, 'im_menu', now(), null, null, null,
'intranet-core', -- package_name
'helpdesk_admin', -- label
'Helpdesk Admin', -- name
'/intranet/admin/object-type-admin?object_type=im_ticket',
900, -- sort_order
(select menu_id from im_menus where label = 'helpdesk'),
null
);
create or replace function inline_1 ()
returns integer as $body$
declare
v_menu integer;
v_ticket_menu integer;
v_employees integer;
begin
select group_id into v_employees from groups where group_name = 'Employees';
select menu_id into v_ticket_menu from im_menus where label='helpdesk';
v_menu := im_menu__new (
null, -- p_menu_id
'im_menu', -- object_type
now(), -- creation_date
null, -- creation_user
null, -- creation_ip
null, -- context_id
'intranet-core', -- package_name
'ticket_add', -- label
'New Ticket', -- name
'/intranet-helpdesk/new', -- url
10, -- sort_order
v_ticket_menu, -- parent_menu_id
'[im_permission $user_id "add_tickets"]' -- p_visible_tcl
);
PERFORM acs_permission__grant_permission(v_menu, v_employees, 'read');
return 0;
end;$body$ language 'plpgsql';
select inline_1 ();
drop function inline_1();
update im_menus set url = '/intranet-helpdesk/new' where url = '/intranet/tickets/new';
-- upgrade-5.0.2.4.0-5.0.2.4.1.sql
SELECT acs_log__debug('/packages/intranet-helpdesk/sql/postgresql/upgrade/upgrade-5.0.2.4.0-5.0.2.4.1.sql','');
SELECT im_category_new(30008, 'Accepted', 'Intranet Ticket Status');
SELECT im_category_hierarchy_new(30008, 30000);
SELECT im_category_new(30515, 'Set status: Accepted', 'Intranet Ticket Action');
update im_categories set aux_string1 = '/intranet-helpdesk/action-accepted' where category_id = 30515;
......@@ -16,9 +16,15 @@ DECLARE
BEGIN
-- Check if colum exists in the database
select count(*) into v_count from user_tab_columns where lower(table_name) = 'im_projects' and lower(column_name) = 'ticket_container_email_selector';
IF v_count > 0 THEN return 1;
alter table im_projects add column ticket_container_email_selector text;
IF v_count = 0 THEN
alter table im_projects add column ticket_container_email_selector text;
END IF;
-- New field in forum topics for MIME Message-ID of creating email
select count(*) into v_count from user_tab_columns where lower(table_name) = 'im_forum_topics' and lower(column_name) = 'mime_message_id';
IF v_count = 0 THEN
alter table im_forum_topics add column mime_message_id text;
END IF;
return 0;
END;$body$ language 'plpgsql';
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment