Merge pull request #354 from mkoch227/new-custom-fields

New custom fields
merge-requests/2/head
Mike Koch 9 years ago
commit 40bf1080b1

@ -1529,7 +1529,6 @@ if ( defined('HESK_DEMO') )
<?php
for ($i=1;$i<=20;$i++)
{
//$this_field='custom' . $i;
$this_field = $hesk_settings['custom_fields']['custom'.$i];
$onload_locally = $this_field['use'] ? '' : ' disabled="disabled" ';
@ -1547,6 +1546,8 @@ if ( defined('HESK_DEMO') )
<option value="date" '.($this_field['type'] == 'date' ? 'selected="selected"' : '').'>'.$hesklang['date_custom_field'].'</option>
<option value="multiselect" '.($this_field['type'] == 'multiselect' ? 'selected="selected"' : '').'>'.$hesklang['multiple_select_custom_field'].'</option>
<option value="email" '.($this_field['type'] == 'email' ? 'selected="selected"' : '').'>'.$hesklang['email_custom_field'].'</option>
<option value="hidden" '.($this_field['type'] == 'hidden' ? 'selected="selected"' : '').'>'.$hesklang['hidden_custom_field'].'</option>
<option value="readonly" '.($this_field['type'] == 'readonly' ? 'selected="selected"' : '').'>'.$hesklang['readonly_custom_field'].'</option>
</select>
</td>
<td><div class="checkbox"><label><input type="checkbox" name="s_custom'.$i.'_req" value="1" id="s_custom'.$i.'_req" '; if ($this_field['req']) {echo 'checked="checked"';} echo $onload_locally.' /> '.$hesklang['yes'].'</label></div></td>

@ -490,7 +490,7 @@ for ($i=1;$i<=20;$i++)
$set['custom_fields'][$this_field]['value'] = 'cc';
}
if (!in_array($set['custom_fields'][$this_field]['type'],array('text','textarea','select','radio','checkbox','date','multiselect','email')))
if (!in_array($set['custom_fields'][$this_field]['type'],array('text','textarea','select','radio','checkbox','date','multiselect','email','hidden','readonly')))
{
$set['custom_fields'][$this_field]['type'] = 'text';
}

@ -433,6 +433,37 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
</div></div></div>';
break;
case 'hidden':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
echo '<input type="hidden" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'"/>';
break;
case 'readonly':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
echo '<div class="form-group">
<label for="'.$v['name'].'" class="col-sm-3 control-label">'.$v['name'].': </label>
<div class="col-sm-9"><input type="text" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" readonly></div>
</div>';
break;
/* Default text input */
default:
if (strlen($k_value) != 0)

@ -526,6 +526,41 @@ if (!$show['show']) {
break;
case 'hidden':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
$cls = in_array($k,$_SESSION['iserror']) ? ' class="isError" ' : '';
echo '<input type="hidden" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" '.$cls.' />';
break;
case 'readonly':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
$cls = in_array($k,$_SESSION['iserror']) ? ' class="isError" ' : '';
echo '<div class="form-group">
<label for="'.$v['name'].'" class="col-sm-3 control-label">'.$v['name'].': '.$v['req'].'</label>
<div class="col-sm-9"><input type="text" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" '.$cls.' readonly></div>
</div>';
break;
/* Default text input */
default:
//Clean up multiple dashes or whitespaces
@ -947,6 +982,41 @@ if (!$show['show']) {
break;
case 'hidden':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
$cls = in_array($k,$_SESSION['iserror']) ? ' class="isError" ' : '';
echo '<input type="hidden" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" '.$cls.' />';
break;
case 'readonly':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
$cls = in_array($k,$_SESSION['iserror']) ? ' class="isError" ' : '';
echo '<div class="form-group">
<label for="'.$v['name'].'" class="col-sm-3 control-label">'.$v['name'].': '.$v['req'].'</label>
<div class="col-sm-9"><input type="text" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" '.$cls.' readonly></div>
</div>';
break;
/* Default text input */
default:
//Clean up multiple dashes or whitespaces

@ -120,6 +120,44 @@ switch ($type)
<p><input type="button" value=" '.$hesklang['ok'].' " onclick="Javascript:hesk_saveOptions()" /></p>
';
break;
case 'hidden':
echo '
<script language="javascript">
function hesk_saveOptions()
{
window.opener.document.getElementById(\'s_'.$id.'_val\').value = document.getElementById(\'o1\').value;
window.close();
}
</script>
<p>'.$hesklang['hidden_custom_field_help'].'</p>
<table border="0">
<tr>
<td>'.$hesklang['value_colon'].'<td>
<td><input type="text" name="o1" id="o1" value="'.$query.'" size="30" /></td>
</tr>
</table>
<p><input type="button" value=" '.$hesklang['ok'].' " onclick="Javascript:hesk_saveOptions()" /></p>
';
break;
case 'readonly':
echo '
<script language="javascript">
function hesk_saveOptions()
{
window.opener.document.getElementById(\'s_'.$id.'_val\').value = document.getElementById(\'o1\').value;
window.close();
}
</script>
<p>'.$hesklang['readonly_custom_field_help'].'</p>
<table border="0">
<tr>
<td>'.$hesklang['value_colon'].'<td>
<td><input type="text" name="o1" id="o1" value="'.$query.'" size="30" /></td>
</tr>
</table>
<p><input type="button" value=" '.$hesklang['ok'].' " onclick="Javascript:hesk_saveOptions()" /></p>
';
break;
case 'textarea':
if (strpos($query,'#') !== false)
{

@ -539,6 +539,41 @@ if (!$show['show']) {
break;
case 'hidden':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
$cls = in_array($k,$_SESSION['iserror']) ? ' class="isError" ' : '';
echo '<input type="hidden" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" '.$cls.' />';
break;
case 'readonly':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
$cls = in_array($k,$_SESSION['iserror']) ? ' class="isError" ' : '';
echo '<div class="form-group">
<label for="'.$v['name'].'" class="col-sm-3 control-label">'.$v['name'].': '.$v['req'].'</label>
<div class="col-sm-9"><input type="text" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" '.$cls.' readonly></div>
</div>';
break;
/* Default text input */
default:
//Clean up multiple dashes or whitespaces
@ -860,6 +895,41 @@ if (!$show['show']) {
break;
case 'hidden':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
$cls = in_array($k,$_SESSION['iserror']) ? ' class="isError" ' : '';
echo '<input type="hidden" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" '.$cls.' />';
break;
case 'readonly':
//Clean up multiple dashes or whitespaces
$formattedId = preg_replace("/[\s-]+/", " ", $v['name']);
$formattedId = preg_replace("/[\s_]/", "-", $formattedId);
if (strlen($k_value) != 0)
{
$v['value'] = $k_value;
}
$cls = in_array($k,$_SESSION['iserror']) ? ' class="isError" ' : '';
echo '<div class="form-group">
<label for="'.$v['name'].'" class="col-sm-3 control-label">'.$v['name'].': '.$v['req'].'</label>
<div class="col-sm-9"><input type="text" class="form-control" id="'.$formattedId.'" name="'.$k.'" size="40" maxlength="'.$v['maxlen'].'" value="'.$v['value'].'" '.$cls.' readonly></div>
</div>';
break;
/* Default text input */
default:
//Clean up multiple dashes or whitespaces

@ -31,6 +31,11 @@ $hesklang['screen_resolution'] = 'Screen Resolution';
$hesklang['display_user_agent_information'] = 'Show user agent';
$hesklang['display_user_agent_information_help'] = 'When enabled, staff will be able to view the operating system, browser,
and screen resolution of the device used to create the ticket.';
$hesklang['value_colon'] = 'Value:';
$hesklang['hidden_custom_field'] = 'Hidden text field';
$hesklang['hidden_custom_field_help'] = 'This input is the same as a text field; however this value cannot be changed and will not be visible to the user.';
$hesklang['readonly_custom_field'] = 'Read-only text field';
$hesklang['readonly_custom_field_help'] = 'This input is the same as a text field; however this value cannot be changed, but will be visible to the user.';
// ADDED OR MODIFIED IN Mods for HESK 2.4.0
$hesklang['sort_by_user_defined_order'] = 'Sort by user-defined order';

Loading…
Cancel
Save