Tweaked the field database area to insure that users are forced to set the database values
This commit is contained in:
@ -184,6 +184,7 @@ class ComponentbuilderModelFields extends JModelList
|
||||
if ($name === 'datatype')
|
||||
{
|
||||
$datatypeArray = array(
|
||||
0 => 'COM_COMPONENTBUILDER_FIELD_SELECT_AN_OPTION',
|
||||
'CHAR' => 'COM_COMPONENTBUILDER_FIELD_CHAR',
|
||||
'VARCHAR' => 'COM_COMPONENTBUILDER_FIELD_VARCHAR',
|
||||
'TEXT' => 'COM_COMPONENTBUILDER_FIELD_TEXT',
|
||||
|
@ -150,23 +150,24 @@ class JFormFieldComponent extends JFormFieldList
|
||||
*/
|
||||
public function getOptions()
|
||||
{
|
||||
$db = JFactory::getDBO();
|
||||
$query = $db->getQuery(true);
|
||||
$query->select($db->quoteName(array('a.id','a.system_name'),array('id','component_system_name')));
|
||||
$query->from($db->quoteName('#__componentbuilder_joomla_component', 'a'));
|
||||
$query->where($db->quoteName('a.published') . ' >= 1');
|
||||
$query->order('a.system_name ASC');
|
||||
$db->setQuery((string)$query);
|
||||
$items = $db->loadObjectList();
|
||||
$options = array();
|
||||
if ($items)
|
||||
{
|
||||
$options[] = JHtml::_('select.option', '', 'Select an option');
|
||||
foreach($items as $item)
|
||||
{
|
||||
$options[] = JHtml::_('select.option', $item->id, $item->component_system_name);
|
||||
}
|
||||
}
|
||||
return $options;
|
||||
$db = JFactory::getDBO();
|
||||
$query = $db->getQuery(true);
|
||||
$query->select($db->quoteName(array('a.id','a.system_name'),array('id','component_system_name')));
|
||||
$query->from($db->quoteName('#__componentbuilder_joomla_component', 'a'));
|
||||
$query->where($db->quoteName('a.published') . ' >= 1');
|
||||
$query->order('a.system_name ASC');
|
||||
$db->setQuery((string)$query);
|
||||
$items = $db->loadObjectList();
|
||||
$options = array();
|
||||
if ($items)
|
||||
{
|
||||
$options[] = JHtml::_('select.option', '', 'Select an option');
|
||||
foreach($items as $item)
|
||||
{
|
||||
$options[] = JHtml::_('select.option', $item->id, $item->component_system_name);
|
||||
}
|
||||
}
|
||||
|
||||
return $options;
|
||||
}
|
||||
}
|
||||
|
@ -249,6 +249,7 @@ class ComponentbuilderModelFieldtype extends JModelAdmin
|
||||
if ($name === 'datatype')
|
||||
{
|
||||
$datatypeArray = array(
|
||||
0 => 'COM_COMPONENTBUILDER_FIELD_SELECT_AN_OPTION',
|
||||
'CHAR' => 'COM_COMPONENTBUILDER_FIELD_CHAR',
|
||||
'VARCHAR' => 'COM_COMPONENTBUILDER_FIELD_VARCHAR',
|
||||
'TEXT' => 'COM_COMPONENTBUILDER_FIELD_TEXT',
|
||||
|
@ -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();
|
||||
}
|
||||
}
|
||||
|
@ -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"
|
||||
|
Reference in New Issue
Block a user