Commit | Line | Data |
---|---|---|
6a488035 TO |
1 | {* |
2 | +--------------------------------------------------------------------+ | |
819d0d41 | 3 | | CiviCRM version 4.5 | |
6a488035 | 4 | +--------------------------------------------------------------------+ |
819d0d41 | 5 | | Copyright CiviCRM LLC (c) 2004-2014 | |
6a488035 TO |
6 | +--------------------------------------------------------------------+ |
7 | | This file is a part of CiviCRM. | | |
8 | | | | |
9 | | CiviCRM is free software; you can copy, modify, and distribute it | | |
10 | | under the terms of the GNU Affero General Public License | | |
11 | | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. | | |
12 | | | | |
13 | | CiviCRM is distributed in the hope that it will be useful, but | | |
14 | | WITHOUT ANY WARRANTY; without even the implied warranty of | | |
15 | | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | | |
16 | | See the GNU Affero General Public License for more details. | | |
17 | | | | |
18 | | You should have received a copy of the GNU Affero General Public | | |
19 | | License and the CiviCRM Licensing Exception along | | |
20 | | with this program; if not, contact CiviCRM LLC | | |
21 | | at info[AT]civicrm[DOT]org. If you have questions about the | | |
22 | | GNU Affero General Public License or the licensing of CiviCRM, | | |
23 | | see the CiviCRM license FAQ at http://civicrm.org/licensing | | |
24 | +--------------------------------------------------------------------+ | |
25 | *} | |
26 | {* this template is used for adding/editing tags *} | |
9545c40d | 27 | {literal} |
6a488035 | 28 | <style> |
9545c40d CW |
29 | #tagtree .highlighted > label { |
30 | background-color: #FEFD7B; | |
31 | } | |
a0a03c43 CW |
32 | #tagtree .helpicon ins { |
33 | display: none; | |
34 | } | |
35 | #tagtree ins.jstree-icon { | |
36 | cursor: pointer; | |
37 | } | |
6a488035 TO |
38 | </style> |
39 | <script type="text/javascript"> | |
e4f4dc22 | 40 | (function($, _){{/literal} |
6a488035 TO |
41 | var entityID={$entityID}; |
42 | var entityTable='{$entityTable}'; | |
43 | {literal} | |
e4f4dc22 CW |
44 | CRM.updateContactSummaryTags = function() { |
45 | var tags = []; | |
46 | $('#tagtree input:checkbox:checked+label').each(function() { | |
47 | tags.push($(this).text()); | |
48 | }); | |
49 | $('input.crm-contact-tagset').each(function() { | |
50 | var setTags = _.pluck($(this).select2('data'), 'label'); | |
51 | tags = tags.concat(setTags); | |
52 | }); | |
53 | // contact summary tabs and search forms both listen for this event | |
54 | $('#Tag').closest('.crm-ajax-container').trigger('crmFormSuccess', {tabCount: tags.length}); | |
55 | // update summary tab | |
56 | $("#contact-summary #tags").html(tags.join(', ')); | |
57 | }; | |
58 | ||
abc904f9 | 59 | $(function() { |
abc904f9 | 60 | $("#tagtree ul input:checked").each (function(){ |
9545c40d | 61 | $(this).closest("li").addClass('highlighted'); |
6a488035 TO |
62 | }); |
63 | ||
abc904f9 | 64 | $("#tagtree input").change(function(){ |
b2703f3b CW |
65 | var tagid = this.id.replace("check_", ""); |
66 | var op = (this.checked) ? 'create' : 'delete'; | |
1b2475e1 | 67 | var api = CRM.api3('entity_tag', op, {entity_table: entityTable, entity_id: entityID, tag_id: tagid}, true); |
9545c40d | 68 | $(this).closest("li").toggleClass('highlighted'); |
b2703f3b | 69 | CRM.updateContactSummaryTags(); |
6a488035 TO |
70 | }); |
71 | ||
72 | //load js tree. | |
abc904f9 | 73 | $("#tagtree").jstree({ |
a0a03c43 CW |
74 | plugins : ["themes", "html_data"], |
75 | themes: { | |
76 | "theme": 'classic', | |
77 | "dots": false, | |
78 | "icons": false, | |
79 | "url": CRM.config.resourceBase + 'packages/jquery/plugins/jstree/themes/classic/style.css' | |
80 | } | |
4441df69 | 81 | }); |
6a488035 TO |
82 | |
83 | {/literal} | |
84 | {if $permission neq 'edit'} | |
85 | {literal} | |
6f9cd76f | 86 | $("#tagtree input").prop('disabled', true); |
6a488035 TO |
87 | {/literal} |
88 | {/if} | |
89 | {literal} | |
b2703f3b | 90 | |
e4f4dc22 CW |
91 | $(document).on('change', 'input.crm-contact-tagset', CRM.updateContactSummaryTags); |
92 | }); | |
93 | })(CRM.$, CRM._); | |
6a488035 TO |
94 | {/literal} |
95 | </script> | |
96 | <div id="Tag" class="view-content"> | |
97 | <h3>{if !$hideContext}{ts}Tags{/ts}{/if}</h3> | |
6a488035 | 98 | <div id="tagtree"> |
292575bc | 99 | {include file="CRM/Tag/Form/Tagtree.tpl"} |
6a488035 | 100 | </div> |
6a488035 | 101 | <br /> |
191279e0 | 102 | {include file="CRM/common/Tagset.tpl"} |
6a488035 | 103 | </div> |