Tweaked the field database area to insure that users are forced to set the database values

This commit is contained in:
2018-04-23 02:42:41 +02:00
parent a110ff0e35
commit 0857101371
16 changed files with 315 additions and 78 deletions

View File

@ -521,6 +521,10 @@ jQuery(document).ready(function()
getValidationRulesTable();
// set button to create more fields
addButton('validation_rule', 'validation_rules_header', 2);
// get the field type text
var fieldText = jQuery("#jform_fieldtype option:selected").text().toLowerCase();
// now check if database input is needed
dbChecker(fieldText);
});
function getLinked_server(type){
@ -770,4 +774,49 @@ function getValidationRulesTable(){
jQuery('#display_validation_rules').html(result);
}
});
}
function dbChecker(type){
if ('note' === type || 'spacer' === type) {
// update the datatype selection
jQuery('#jform_datatype').val('').trigger('liszt:updated').change();
jQuery('#jform_datalenght').val('').trigger('liszt:updated').change();
jQuery('#jform_datadefault').val('').trigger('liszt:updated').change();
jQuery('#jform_datadefault').val('').trigger('liszt:updated').change();
jQuery('#jform_indexes').val(0).trigger('liszt:updated').change();
jQuery('#jform_store').val(0).trigger('liszt:updated').change();
// remove the datatype
jQuery('#jform_datatype-lbl').closest('.control-group').hide();
jQuery('#jform_datatype').closest('.control-group').hide();
updateFieldRequired('datatype',1);
jQuery('#jform_datatype').removeAttr('required');
jQuery('#jform_datatype').removeAttr('aria-required');
jQuery('#jform_datatype').removeClass('required');
// remove the null selection
jQuery('#jform_null_switch-lbl').closest('.control-group').hide();
jQuery('#jform_null_switch').closest('.control-group').hide();
updateFieldRequired('null_switch',1);
jQuery('#jform_null_switch').removeAttr('required');
jQuery('#jform_null_switch').removeAttr('aria-required');
jQuery('#jform_null_switch').removeClass('required');
// show notice
jQuery('.note_no_database_settings_needed').closest('.control-group').show();
} else {
// add the datatype
jQuery('#jform_datatype-lbl').closest('.control-group').show();
jQuery('#jform_datatype').closest('.control-group').show();
updateFieldRequired('datatype',0);
jQuery('#jform_datatype').prop('required','required');
jQuery('#jform_datatype').attr('aria-required',true);
jQuery('#jform_datatype').addClass('required');
// add the null selection
jQuery('#jform_null_switch-lbl').closest('.control-group').show();
jQuery('#jform_null_switch').closest('.control-group').show();
updateFieldRequired('null_switch',0);
jQuery('#jform_null_switch').prop('required','required');
jQuery('#jform_null_switch').attr('aria-required',true);
jQuery('#jform_null_switch').addClass('required');
// remove notice
jQuery('.note_no_database_settings_needed').closest('.control-group').hide();
}
}

View File

@ -122,6 +122,8 @@
multiple="false"
required="true">
<!-- Option Set. -->
<option value="">
COM_COMPONENTBUILDER_FIELD_SELECT_AN_OPTION</option>
<option value="CHAR">
COM_COMPONENTBUILDER_FIELD_CHAR</option>
<option value="VARCHAR">
@ -298,8 +300,46 @@
<option value="0">
COM_COMPONENTBUILDER_FIELD_NO</option>
</field>
<!-- Datalenght Field. Type: List. (joomla) -->
<field
type="list"
name="datalenght"
label="COM_COMPONENTBUILDER_FIELD_DATALENGHT_LABEL"
description="COM_COMPONENTBUILDER_FIELD_DATALENGHT_DESCRIPTION"
class="btn-group"
multiple="false">
<!-- Option Set. -->
<option value="">
COM_COMPONENTBUILDER_FIELD_NONE_SET</option>
<option value="1">
COM_COMPONENTBUILDER_FIELD_ONE</option>
<option value="7">
COM_COMPONENTBUILDER_FIELD_SEVEN</option>
<option value="10">
COM_COMPONENTBUILDER_FIELD_TEN</option>
<option value="11">
COM_COMPONENTBUILDER_FIELD_ELEVEN</option>
<option value="50">
COM_COMPONENTBUILDER_FIELD_FIFTY</option>
<option value="64">
COM_COMPONENTBUILDER_FIELD_SIXTY_FOUR</option>
<option value="100">
COM_COMPONENTBUILDER_FIELD_ONE_HUNDRED</option>
<option value="255">
COM_COMPONENTBUILDER_FIELD_TWO_HUNDRED_AND_FIFTY_FIVE</option>
<option value="1024">
COM_COMPONENTBUILDER_FIELD_ONE_THOUSAND_AND_TWENTY_FOUR</option>
<option value="2048">
COM_COMPONENTBUILDER_FIELD_TWO_THOUSAND_AND_FORTY_EIGHT</option>
<option value="Other">
COM_COMPONENTBUILDER_FIELD_OTHER</option>
</field>
<!-- Note_whmcs_encryption Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_whmcs_encryption" label="COM_COMPONENTBUILDER_FIELD_NOTE_WHMCS_ENCRYPTION_LABEL" description="COM_COMPONENTBUILDER_FIELD_NOTE_WHMCS_ENCRYPTION_DESCRIPTION" heading="h4" class="alert alert-success note_whmcs_encryption" />
<!-- Note_filter_information Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_filter_information" description="COM_COMPONENTBUILDER_FIELD_NOTE_FILTER_INFORMATION_DESCRIPTION" class="note_filter_information" />
<!-- Helpnote Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="helpnote" label="COM_COMPONENTBUILDER_FIELD_HELPNOTE_LABEL" class="helpNote helpnote" />
<!-- Datadefault_other Field. Type: Text. (joomla) -->
<field
type="text"
@ -316,8 +356,6 @@
message="COM_COMPONENTBUILDER_FIELD_DATADEFAULT_OTHER_MESSAGE"
hint="COM_COMPONENTBUILDER_FIELD_DATADEFAULT_OTHER_HINT"
/>
<!-- Helpnote Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="helpnote" label="COM_COMPONENTBUILDER_FIELD_HELPNOTE_LABEL" class="helpNote helpnote" />
<!-- Datadefault Field. Type: List. (joomla) -->
<field
type="list"
@ -356,40 +394,6 @@
message="COM_COMPONENTBUILDER_FIELD_DATALENGHT_OTHER_MESSAGE"
hint="COM_COMPONENTBUILDER_FIELD_DATALENGHT_OTHER_HINT"
/>
<!-- Datalenght Field. Type: List. (joomla) -->
<field
type="list"
name="datalenght"
label="COM_COMPONENTBUILDER_FIELD_DATALENGHT_LABEL"
description="COM_COMPONENTBUILDER_FIELD_DATALENGHT_DESCRIPTION"
class="btn-group"
multiple="false">
<!-- Option Set. -->
<option value="">
COM_COMPONENTBUILDER_FIELD_NONE_SET</option>
<option value="1">
COM_COMPONENTBUILDER_FIELD_ONE</option>
<option value="7">
COM_COMPONENTBUILDER_FIELD_SEVEN</option>
<option value="10">
COM_COMPONENTBUILDER_FIELD_TEN</option>
<option value="11">
COM_COMPONENTBUILDER_FIELD_ELEVEN</option>
<option value="50">
COM_COMPONENTBUILDER_FIELD_FIFTY</option>
<option value="64">
COM_COMPONENTBUILDER_FIELD_SIXTY_FOUR</option>
<option value="100">
COM_COMPONENTBUILDER_FIELD_ONE_HUNDRED</option>
<option value="255">
COM_COMPONENTBUILDER_FIELD_TWO_HUNDRED_AND_FIFTY_FIVE</option>
<option value="1024">
COM_COMPONENTBUILDER_FIELD_ONE_THOUSAND_AND_TWENTY_FOUR</option>
<option value="2048">
COM_COMPONENTBUILDER_FIELD_TWO_THOUSAND_AND_FORTY_EIGHT</option>
<option value="Other">
COM_COMPONENTBUILDER_FIELD_OTHER</option>
</field>
<!-- Add_javascript_views_footer Field. Type: Radio. (joomla) -->
<field
type="radio"
@ -404,8 +408,8 @@
<option value="0">
COM_COMPONENTBUILDER_FIELD_NO</option>
</field>
<!-- Note_whmcs_encryption Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_whmcs_encryption" label="COM_COMPONENTBUILDER_FIELD_NOTE_WHMCS_ENCRYPTION_LABEL" description="COM_COMPONENTBUILDER_FIELD_NOTE_WHMCS_ENCRYPTION_DESCRIPTION" heading="h4" class="alert alert-success note_whmcs_encryption" />
<!-- Note_no_database_settings_needed Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_no_database_settings_needed" label="COM_COMPONENTBUILDER_FIELD_NOTE_NO_DATABASE_SETTINGS_NEEDED_LABEL" description="COM_COMPONENTBUILDER_FIELD_NOTE_NO_DATABASE_SETTINGS_NEEDED_DESCRIPTION" heading="h4" class="alert alert-info note_no_database_settings_needed" />
<!-- Javascript_views_footer Field. Type: Textarea. (joomla) -->
<field
type="textarea"