gh-60 language translation component added, basic implementation

This commit is contained in:
dev
2017-04-05 14:21:10 +01:00
parent f3f91f492f
commit 34d14ed95d
262 changed files with 1876 additions and 928 deletions

View File

@ -9,8 +9,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version @update number 81 of this MVC
@build 1st March, 2017
@version @update number 82 of this MVC
@build 3rd April, 2017
@created 11th October, 2016
@package Component Builder
@subpackage custom_code.js

View File

@ -159,43 +159,33 @@
<option value="2">
COM_COMPONENTBUILDER_CUSTOM_CODE_HTML</option>
</field>
<!-- System_name Field. Type: Text. (joomla) -->
<!-- Hashtarget Field. Type: Text. (joomla) -->
<field
type="text"
name="system_name"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_SYSTEM_NAME_LABEL"
size="10"
maxlength="50"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_SYSTEM_NAME_DESCRIPTION"
name="hashtarget"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_HASHTARGET_LABEL"
size="50"
maxlength="150"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_HASHTARGET_DESCRIPTION"
class="text_area"
readonly="true"
filter="STRING"
message="Error! Please add some text here."
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_SYSTEM_NAME_HINT"
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_HASHTARGET_HINT"
/>
<!-- Function_name Field. Type: Text. (joomla) -->
<!-- Code Field. Type: Textarea. (joomla) -->
<field
type="text"
name="function_name"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_FUNCTION_NAME_LABEL"
size="40"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_FUNCTION_NAME_DESCRIPTION"
class="input-large-text"
type="textarea"
name="code"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_CODE_LABEL"
rows="30"
cols="15"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_CODE_DESCRIPTION"
class="text_area span12"
filter="raw"
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_CODE_HINT"
required="true"
/>
<!-- From_line Field. Type: Text. (joomla) -->
<field
type="text"
name="from_line"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_FROM_LINE_LABEL"
size="10"
maxlength="50"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_FROM_LINE_DESCRIPTION"
class="text_area"
filter="FLOAT"
message="Error! Please add amount paid here."
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_FROM_LINE_HINT"
onchange="if(!jQuery(this).val().match(/^\d+$/)){jQuery(this).val('')};"
/>
<!-- Hashendtarget Field. Type: Text. (joomla) -->
<field
type="text"
@ -210,25 +200,6 @@
message="Error! Please add some text here."
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_HASHENDTARGET_HINT"
/>
<!-- Not_required Field. Type: Hidden. (joomla) -->
<field
type="hidden"
name="not_required"
default="[]"
/>
<!-- Code Field. Type: Textarea. (joomla) -->
<field
type="textarea"
name="code"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_CODE_LABEL"
rows="30"
cols="15"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_CODE_DESCRIPTION"
class="text_area span12"
filter="raw"
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_CODE_HINT"
required="true"
/>
<!-- To_line Field. Type: Text. (joomla) -->
<field
type="text"
@ -243,24 +214,53 @@
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_TO_LINE_HINT"
onchange="if(!jQuery(this).val().match(/^\d+$/)){jQuery(this).val('')};"
/>
<!-- Hashtarget Field. Type: Text. (joomla) -->
<!-- Function_name Field. Type: Text. (joomla) -->
<field
type="text"
name="hashtarget"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_HASHTARGET_LABEL"
size="50"
maxlength="150"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_HASHTARGET_DESCRIPTION"
name="function_name"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_FUNCTION_NAME_LABEL"
size="40"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_FUNCTION_NAME_DESCRIPTION"
class="input-large-text"
required="true"
/>
<!-- Note_placeholders_explained Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_placeholders_explained" label="COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_LABEL" description="COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_DESCRIPTION" heading="h4" class="note_placeholders_explained" />
<!-- From_line Field. Type: Text. (joomla) -->
<field
type="text"
name="from_line"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_FROM_LINE_LABEL"
size="10"
maxlength="50"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_FROM_LINE_DESCRIPTION"
class="text_area"
filter="FLOAT"
message="Error! Please add amount paid here."
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_FROM_LINE_HINT"
onchange="if(!jQuery(this).val().match(/^\d+$/)){jQuery(this).val('')};"
/>
<!-- System_name Field. Type: Text. (joomla) -->
<field
type="text"
name="system_name"
label="COM_COMPONENTBUILDER_CUSTOM_CODE_SYSTEM_NAME_LABEL"
size="10"
maxlength="50"
description="COM_COMPONENTBUILDER_CUSTOM_CODE_SYSTEM_NAME_DESCRIPTION"
class="text_area"
readonly="true"
filter="STRING"
message="Error! Please add some text here."
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_HASHTARGET_HINT"
hint="COM_COMPONENTBUILDER_CUSTOM_CODE_SYSTEM_NAME_HINT"
/>
<!-- Note_jcb_placeholder Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_jcb_placeholder" label="COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_JCB_PLACEHOLDER_LABEL" description="COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_JCB_PLACEHOLDER_DESCRIPTION" heading="h4" class="span12 note_jcb_placeholder" />
<!-- Note_placeholders_explained Field. Type: Note. A None Database Field. (joomla) -->
<field type="note" name="note_placeholders_explained" label="COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_LABEL" description="COM_COMPONENTBUILDER_CUSTOM_CODE_NOTE_PLACEHOLDERS_EXPLAINED_DESCRIPTION" heading="h4" class="note_placeholders_explained" />
<!-- Not_required Field. Type: Hidden. (joomla) -->
<field
type="hidden"
name="not_required"
default="[]"
/>
</fieldset>
<!-- Access Control Fields. -->

View File

@ -9,8 +9,8 @@
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version @update number 311 of this MVC
@build 1st April, 2017
@version @update number 314 of this MVC
@build 5th April, 2017
@created 6th May, 2015
@package Component Builder
@subpackage joomla_component.js

View File

@ -1,25 +0,0 @@
/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
__ __ _ _____ _ _ __ __ _ _ _
\ \ / / | | | __ \ | | | | | \/ | | | | | | |
\ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
\ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
| |
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version @update number 8 of this MVC
@build 3rd April, 2017
@created 3rd April, 2017
@package Component Builder
@subpackage language_placeholder.js
@author Llewellyn van der Merwe <http://vdm.bz/component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
Builds Complex Joomla Components
/-----------------------------------------------------------------------------------------------------------------------------*/

View File

@ -0,0 +1,84 @@
/*--------------------------------------------------------------------------------------------------------| www.vdm.io |------/
__ __ _ _____ _ _ __ __ _ _ _
\ \ / / | | | __ \ | | | | | \/ | | | | | | |
\ \ / /_ _ ___| |_ | | | | _____ _____| | ___ _ __ _ __ ___ ___ _ __ | |_ | \ / | ___| |_| |__ ___ __| |
\ \/ / _` / __| __| | | | |/ _ \ \ / / _ \ |/ _ \| '_ \| '_ ` _ \ / _ \ '_ \| __| | |\/| |/ _ \ __| '_ \ / _ \ / _` |
\ / (_| \__ \ |_ | |__| | __/\ V / __/ | (_) | |_) | | | | | | __/ | | | |_ | | | | __/ |_| | | | (_) | (_| |
\/ \__,_|___/\__| |_____/ \___| \_/ \___|_|\___/| .__/|_| |_| |_|\___|_| |_|\__| |_| |_|\___|\__|_| |_|\___/ \__,_|
| |
|_|
/-------------------------------------------------------------------------------------------------------------------------------/
@version @update number 28 of this MVC
@build 5th April, 2017
@created 3rd April, 2017
@package Component Builder
@subpackage language_translation.js
@author Llewellyn van der Merwe <http://vdm.bz/component-builder>
@copyright Copyright (C) 2015. All Rights Reserved
@license GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html
Builds Complex Joomla Components
/-----------------------------------------------------------------------------------------------------------------------------*/
jQuery(document).ready(function($)
{
// build table of translations
var translation = encodeURIComponent(jQuery('#jform_translation').val());
if (translation) {
getBuildTable(translation,'jform_translation');
}
// set button to add more languages
addButton('language','components');
});
function getBuildTable_server(string, idName){
var getUrl = JRouter("index.php?option=com_componentbuilder&task=ajax.getBuildTable&format=json&vdm="+vastDevMod);
if(token.length > 0 && string.length > 0 && idName.length > 0){
var request = 'token='+token+'&idName='+idName+'&object='+string;
}
return jQuery.ajax({
type: 'GET',
url: getUrl,
dataType: 'jsonp',
data: request,
jsonp: 'callback'
});
}
function getBuildTable(string, idName){
getBuildTable_server(string, idName).done(function(result) {
jQuery('#table_'+idName).remove();
if(result){
addData(result, '#'+idName);
}
})
}
function addData(result, where){
jQuery(where).closest('.control-group').parent().append(result);
}
function addButton_server(type){
var getUrl = JRouter("index.php?option=com_componentbuilder&task=ajax.getButton&format=json&vdm="+vastDevMod);
if(token.length > 0 && type.length > 0){
var request = 'token='+token+'&type='+type;
}
return jQuery.ajax({
type: 'GET',
url: getUrl,
dataType: 'jsonp',
data: request,
jsonp: 'callback'
});
}
function addButton(type, where){
addButton_server(type).done(function(result) {
if(result){
setButton(result, '#jform_'+where);
}
});
}
function setButton(result, where){
jQuery(where).closest('.control-group').append(result);
}

View File

@ -16,8 +16,8 @@
<field
name="created"
type="calendar"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_CREATED_DATE_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_CREATED_DATE_DESC"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_CREATED_DATE_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_CREATED_DATE_DESC"
size="22"
format="%Y-%m-%d %H:%M:%S"
@ -27,9 +27,9 @@
<field
name="created_by"
type="user"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_CREATED_BY_LABEL"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_CREATED_BY_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_CREATED_BY_DESC"
description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_CREATED_BY_DESC"
/>
<!-- Published Field. Type: List (joomla) -->
<field name="published" type="list" label="JSTATUS"
@ -47,12 +47,12 @@
</field>
<!-- Date Modified Field. Type: Calendar (joomla) -->
<field name="modified" type="calendar" class="readonly"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_MODIFIED_DATE_LABEL" description="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_MODIFIED_DATE_DESC"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_MODIFIED_DATE_LABEL" description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_MODIFIED_DATE_DESC"
size="22" readonly="true" format="%Y-%m-%d %H:%M:%S" filter="user_utc" />
<!-- User Modified Field. Type: User (joomla) -->
<field name="modified_by" type="user"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_MODIFIED_BY_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_MODIFIED_BY_DESC"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_MODIFIED_BY_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_MODIFIED_BY_DESC"
class="readonly"
readonly="true"
filter="unset"
@ -71,7 +71,7 @@
name="ordering"
type="number"
class="inputbox validate-ordering"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_ORDERING_LABEL"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_ORDERING_LABEL"
description=""
default="0"
size="6"
@ -83,33 +83,32 @@
name="version"
type="text"
class="readonly"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_VERSION_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_VERSION_DESC"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_VERSION_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_VERSION_DESC"
size="6"
readonly="true"
filter="unset"
/>
<!-- Dynamic Fields. -->
<!-- Placeholder Field. Type: Text. (joomla) -->
<!-- Entranslation Field. Type: Textarea. (joomla) -->
<field
type="text"
name="placeholder"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_PLACEHOLDER_LABEL"
size="100"
maxlength="150"
description="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_PLACEHOLDER_DESCRIPTION"
class="text_area"
type="textarea"
name="entranslation"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_ENTRANSLATION_LABEL"
rows="4"
cols="5"
description="JFIELD_TITLE_DESC"
class="text_area span12"
filter="STRING"
hint="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_ENTRANSLATION_HINT"
readonly="true"
disabled="true"
filter="STRING"
message="Error! Please add some text here."
hint="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_PLACEHOLDER_HINT"
/>
<!-- Components Field. Type: Components. (custom) -->
<field
type="components"
name="components"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_COMPONENTS_LABEL"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_COMPONENTS_LABEL"
class="list_class"
multiple="true"
default="0"
@ -120,34 +119,32 @@
<field
type="repeatable"
name="translation"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_TRANSLATION_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_TRANSLATION_DESCRIPTION"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_LABEL"
description="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_DESCRIPTION"
id="translation"
class="translations"
select="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_TRANSLATION_SELECT"
select="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_SELECT"
icon="list"
maximum="50">
<fields name="translation_fields" label="">
<fieldset hidden="true" name="translation_modal" repeat="true">
<!-- Translation Field. Type: Text. (joomla) -->
<!-- Translation Field. Type: Textarea. (joomla) -->
<field
type="text"
type="textarea"
name="translation"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_TRANSLATION_LABEL"
size="100"
maxlength="150"
class="text_area"
required="false"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_LABEL"
rows="4"
cols="5"
class="text_area span12"
filter="STRING"
message="Error! Please add translated string here."
hint="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_TRANSLATION_HINT"
hint="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_TRANSLATION_HINT"
required="false"
/>
<!-- Language Field. Type: Language. (joomla) -->
<!-- Language Field. Type: Lang. (custom) -->
<field
custom="Array"
type="language"
type="lang"
name="language"
label="COM_COMPONENTBUILDER_LANGUAGE_PLACEHOLDER_LANGUAGE_LABEL"
label="COM_COMPONENTBUILDER_LANGUAGE_TRANSLATION_LANGUAGE_LABEL"
class="list_class"
multiple="false"
default="0"
@ -171,13 +168,13 @@
<field
name="rules"
type="rules"
label="Permissions in relation to this language_placeholder"
label="Permissions in relation to this language_translation"
translate_label="false"
filter="rules"
validate="rules"
class="inputbox"
component="com_componentbuilder"
section="language_placeholder"
section="language_translation"
/>
</fieldset>
</form>