Commit | Line | Data |
---|---|---|
6a488035 TO |
1 | {* |
2 | +--------------------------------------------------------------------+ | |
2c4c49ca | 3 | | CiviCRM version 4.7 | |
6a488035 | 4 | +--------------------------------------------------------------------+ |
e7112fa7 | 5 | | Copyright CiviCRM LLC (c) 2004-2015 | |
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 | {* add/update/view custom data group *} | |
27 | <div class="crm-block crm-form-block"> | |
28 | <div id="help">{ts}Use Custom Field Sets to add logically related fields for a specific type of CiviCRM record (e.g. contact records, contribution records, etc.).{/ts} {help id="id-group_intro"}</div> | |
29 | <div class="crm-submit-buttons">{include file="CRM/common/formButtons.tpl" location="top"}</div> | |
30 | <table class="form-layout"> | |
31 | <tr> | |
32 | <td class="label">{$form.title.label} {if $action == 2}{include file='CRM/Core/I18n/Dialog.tpl' table='civicrm_custom_group' field='title' id=$gid}{/if}</td> | |
33 | <td class="html-adjust">{$form.title.html} {help id="id-title"}</td> | |
34 | </tr> | |
35 | <tr> | |
36 | <td class="label">{$form.extends.label}</td> | |
37 | <td>{$form.extends.html} {help id="id-extends"}</td> | |
38 | </tr> | |
39 | <tr> | |
40 | <td class="label">{$form.weight.label}</td> | |
41 | <td>{$form.weight.html} {help id="id-weight"}</td> | |
42 | </tr> | |
1cc99faf | 43 | <tr id="is_multiple_row" class="hiddenElement"> {* This section shown only when Used For = Contact, Individ, Org or Household. *} |
6a488035 TO |
44 | <td></td> |
45 | <td class="html-adjust">{$form.is_multiple.html} {$form.is_multiple.label} {help id="id-is_multiple"}</td> | |
46 | </tr> | |
1cc99faf | 47 | <tr id="multiple_row" class="hiddenElement"> |
6a488035 TO |
48 | <td class="label">{$form.max_multiple.label}</td> |
49 | <td>{$form.max_multiple.html} {help id="id-max_multiple"}</td> | |
50 | </tr> | |
1cc99faf | 51 | <tr id="style_row" class="hiddenElement"> |
6a488035 TO |
52 | <td class="label">{$form.style.label}</td> |
53 | <td>{$form.style.html} {help id="id-display_style"}</td> | |
54 | </tr> | |
55 | <tr class="html-adjust"> | |
56 | <td> </td> | |
57 | <td>{$form.collapse_display.html} {$form.collapse_display.label} {help id="id-collapse"}</td> | |
58 | </tr> | |
59 | <tr> | |
60 | <td> </td> | |
61 | <td>{$form.collapse_adv_display.html} {$form.collapse_adv_display.label} {help id="id-collapse-adv"}</td> | |
62 | </tr> | |
63 | <tr> | |
64 | <td> </td> | |
65 | <td>{$form.is_active.html} {$form.is_active.label}</td> | |
66 | </tr> | |
67 | <tr class="html-adjust"> | |
68 | <td class="label">{$form.help_pre.label} <!--{if $action == 2}{include file='CRM/Core/I18n/Dialog.tpl' table='civicrm_custom_group' field='help_pre' id=$gid}{/if}-->{help id="id-help_pre"}</td> | |
69 | <td>{$form.help_pre.html}</td> | |
70 | </tr> | |
71 | <tr class="html-adjust"> | |
72 | <td class="label">{$form.help_post.label} <!--{if $action == 2}{include file='CRM/Core/I18n/Dialog.tpl' table='civicrm_custom_group' field='help_post' id=$gid}{/if}-->{help id="id-help_post"}</td> | |
73 | <td>{$form.help_post.html}</td> | |
74 | </tr> | |
75 | </table> | |
76 | <div class="crm-submit-buttons">{include file="CRM/common/formButtons.tpl" location="bottom"}</div> | |
77 | </div> | |
78 | {if $action eq 2 or $action eq 4} {* Update or View*} | |
79 | <p></p> | |
80 | <div class="action-link"> | |
80bc2820 | 81 | {crmButton p='civicrm/admin/custom/group/field' q="action=browse&reset=1&gid=$gid" icon="th-list"}{ts}Custom Fields for this Set{/ts}{/crmButton} |
6a488035 TO |
82 | </div> |
83 | {/if} | |
84 | {$initHideBlocks} | |
85 | {literal} | |
86 | <script type="text/Javascript"> | |
3cc60a06 | 87 | CRM.$(function($) { |
1cc99faf | 88 | var tabWithTableOption; |
6a488035 | 89 | |
b01812e5 | 90 | $('#extends_0').each(showHideStyle).change(showHideStyle); |
6a488035 | 91 | |
b01812e5 | 92 | var isGroupEmpty = "{/literal}{$isGroupEmpty}{literal}"; |
d9aa50a7 PJ |
93 | if (isGroupEmpty) { |
94 | showRange(true); | |
95 | } | |
1cc99faf | 96 | $('input#is_multiple').change(showRange); |
6a488035 | 97 | |
20b066e0 CW |
98 | // "Collapse" is a bad default for "Tab" display |
99 | $("select#style").change(function() { | |
100 | if ($(this).val() == 'Tab') { | |
101 | $('#collapse_display').prop('checked', false); | |
102 | } | |
103 | }); | |
104 | ||
105 | /** | |
106 | * Check if this is a contact-related set and show/hide other options accordingly | |
107 | */ | |
d9aa50a7 | 108 | function showHideStyle() { |
b01812e5 CW |
109 | var |
110 | extend = $(this).val(), | |
111 | contactTypes = {/literal}{$contactTypes}{literal}, | |
112 | showStyle = "{/literal}{$showStyle}{literal}", | |
113 | showMultiple = "{/literal}{$showMultiple}{literal}", | |
114 | showMaxMultiple = "{/literal}{$showMaxMultiple}{literal}", | |
1cc99faf | 115 | isContact = ($.inArray(extend, contactTypes) >= 0); |
6a488035 | 116 | |
1cc99faf CW |
117 | if (isContact) { |
118 | $("tr#style_row, tr#is_multiple_row").show(); | |
ae8f569f | 119 | if ($('#is_multiple :checked').length) { |
1cc99faf | 120 | $("tr#multiple_row").show(); |
d9aa50a7 PJ |
121 | } |
122 | } | |
123 | else { | |
1cc99faf | 124 | $("tr#style_row, tr#is_multiple_row, tr#multiple_row").hide(); |
d9aa50a7 | 125 | } |
6a488035 | 126 | |
d9aa50a7 | 127 | if (showStyle) { |
1cc99faf | 128 | $("tr#style_row").show(); |
d9aa50a7 PJ |
129 | } |
130 | ||
131 | if (showMultiple) { | |
1cc99faf | 132 | $("tr#style_row, tr#is_multiple_row").show(); |
d9aa50a7 | 133 | } |
6a488035 | 134 | |
d9aa50a7 | 135 | if (!showMaxMultiple) { |
1cc99faf | 136 | $("tr#multiple_row").hide(); |
d9aa50a7 | 137 | } |
b01812e5 | 138 | else if ($('#is_multiple').prop('checked')) { |
1cc99faf | 139 | $("tr#multiple_row").show(); |
d9aa50a7 | 140 | } |
517184fa | 141 | } |
6a488035 | 142 | |
20b066e0 CW |
143 | /** |
144 | * Check if this set supports multiple records and adjust other options accordingly | |
145 | * | |
146 | * @param onFormLoad | |
147 | */ | |
d9aa50a7 | 148 | function showRange(onFormLoad) { |
1cc99faf CW |
149 | if($("#is_multiple").is(':checked')) { |
150 | $("tr#multiple_row").show(); | |
151 | if (onFormLoad !== true) { | |
152 | $('#collapse_display').prop('checked', false); | |
153 | $("select#style").append(tabWithTableOption); | |
154 | $("select#style").val('Tab with table'); | |
155 | } | |
6a488035 | 156 | } |
d9aa50a7 | 157 | else { |
1cc99faf CW |
158 | $("tr#multiple_row").hide(); |
159 | if ($("select#style").val() === 'Tab with table') { | |
160 | $("select#style").val('Inline'); | |
d9aa50a7 | 161 | } |
1cc99faf | 162 | tabWithTableOption = $("select#style option[value='Tab with table']").detach(); |
d9aa50a7 PJ |
163 | } |
164 | } | |
6a488035 | 165 | |
d9aa50a7 | 166 | // In update mode, when 'extends' is set to an option which doesn't have |
20b066e0 | 167 | // any options in 2nd selector (for subtypes) |
d9aa50a7 PJ |
168 | var subtypes = document.getElementById('extends_1'); |
169 | if (subtypes) { | |
170 | if (subtypes.options.length <= 0) { | |
171 | subtypes.style.display = 'none'; | |
172 | } | |
173 | else { | |
174 | subtypes.style.display = 'inline'; | |
175 | } | |
176 | } | |
6a488035 | 177 | |
b01812e5 CW |
178 | // When removing sub-types |
179 | $('.crm-warnDataLoss').on('click', function() { | |
180 | var submittedSubtypes = $('#extends_1').val(); | |
181 | var defaultSubtypes = {/literal}{$defaultSubtypes}{literal}; | |
182 | ||
183 | var warning = false; | |
184 | $.each(defaultSubtypes, function(index, subtype) { | |
185 | if ($.inArray(subtype, submittedSubtypes) < 0) { | |
186 | warning = true; | |
187 | } | |
188 | }); | |
6a488035 | 189 | |
b01812e5 CW |
190 | if (warning) { |
191 | return confirm({/literal}'{ts escape='js'}Warning: You have chosen to remove one or more subtypes. This will cause any custom data records associated with those subtypes to be removed.{/ts}'{literal}); | |
d9aa50a7 | 192 | } |
b01812e5 | 193 | return true; |
d9aa50a7 | 194 | }); |
b01812e5 | 195 | }); |
6a488035 TO |
196 | </script> |
197 | {/literal} |