Skip to content
Open
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@
<authorUrl>@@AUTHOR_URL@@</authorUrl>
<copyright>@@COPYRIGHT@@</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<packager>CTransifex</packager>
<packagerurl>https://compojoom.com</packagerurl>
<description>
<![CDATA[@@DESCRIPTION@@
@@THANKS_OPENTRANSLATORS@@]]>
Expand All @@ -18,4 +16,4 @@
@@ADMIN_FILENAMES@@
@@FRONTEND_FILENAMES@@
</fileset>
</extension>
</extension>
Original file line number Diff line number Diff line change
Expand Up @@ -155,9 +155,11 @@ private static function getFiles($folder) {

$files = JFolder::files($folder);
$xml = array();
if($files){
foreach($files as $file) {
$xml[] = '<filename>'.$file.'</filename>';
}
}
return implode("\n", $xml);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@

<field name="alias" type="text" label="JFIELD_ALIAS_LABEL"
description="JFIELD_ALIAS_DESC" class="inputbox" size="45" />

<field name="minimum_perc" type="text" label="COM_CTRANSIFEX_MINIMUM_PERC"
description="COM_CTRANSIFEX_MINIMUM_PERC_DESC" class="inputbox" size="30"
default="1" />

<field name="description" type="editor" class="inputbox"
label="COM_CTRANSIFEX_FIELD_DESCRIPTION_LABEL" description="COM_CTRANSIFEX_FIELD_DESCRIPTION_DESC"
Expand Down
14 changes: 10 additions & 4 deletions source/administrator/components/com_ctransifex/models/language.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ public function add($languages = array())
. $db->q($this->resourceId) . ','
. $db->q($langCode) . ','
. $db->q($language->completed) . ','
. $db->q(json_encode($language));
. $db->q($language->untranslated_entities) . ','
. $db->q($language->translated_entities) . ','
. $db->q(json_encode($language));
}
}

Expand All @@ -54,7 +56,9 @@ public function add($languages = array())
$db->qn('resource_id'),
$db->qn('lang_name'),
$db->qn('completed'),
$db->qn('raw_data')
$db->qn('untranslated_entities'),
$db->qn('translated_entities'),
$db->qn('raw_data')
)
)->values($values);

Expand Down Expand Up @@ -85,7 +89,9 @@ public function getResourcesForLang($jlang)
$db->qn('r.resource_name'),
$db->qn('l.lang_name'),
$db->qn('l.completed'),
$db->qn('l.raw_data')
$db->qn('l.untranslated_entities'),
$db->qn('l.translated_entities'),
$db->qn('l.raw_data')
)
)
->from('#__ctransifex_languages AS l')
Expand All @@ -96,4 +102,4 @@ public function getResourcesForLang($jlang)
$db->setQuery($query);
return $db->loadObjectList();
}
}
}
21 changes: 17 additions & 4 deletions source/administrator/components/com_ctransifex/models/package.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,29 @@ public function add($resources, $language)
$db = JFactory::getDbo();
$query = $db->getQuery(true);

$completed = 0;
$translated = 0;
$untranslated = 0;

$allResources = $this->countResources();

foreach($resources as $resource) {
$completed += $resource->completed;
$translated += $resource->translated_entities;
$untranslated += $resource->untranslated_entities;
$completed = (($translated / ($translated + $untranslated)) * 100);
}

// make front listing and saving of zip values depend on the value minimum_perc
$query ->select('minimum_perc')
->from('#__ctransifex_projects')
->where('id='.$db->quote($this->projectId));
$db->setQuery($query);
$result = $db->loadObject();
$minperc = $result->minimum_perc;
if ($completed >= $minperc){

$values = $db->q($this->projectId) .
',' . $db->q($language) .
',' . $db->q((int)$completed/$allResources) .
',' . $db->q((int)$completed) .
',' . $db->q(JFactory::getDate()->toSql());

$query->insert('#__ctransifex_zips')
Expand All @@ -56,6 +68,7 @@ public function add($resources, $language)

$db->setQuery($query);
$db->execute();
}
}

public function countResources() {
Expand All @@ -68,4 +81,4 @@ public function countResources() {

return $db->loadObject()->count;
}
}
}
17 changes: 16 additions & 1 deletion source/administrator/components/com_ctransifex/script.php
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,26 @@ public static function updateTo1_0() {
'ALTER TABLE `#__ctransifex_projects`
ADD `params` LONGTEXT NOT NULL;');
$db->execute();

$db->setQuery(
'ALTER TABLE `#__ctransifex_projects`
ADD `minimum_perc` int(11) NOT NULL AFTER `alias`;');
$db->execute();

$db->setQuery(
'ALTER TABLE `#__ctransifex_languages`
ADD `raw_data` LONGTEXT NOT NULL;');
$db->execute();

$db->setQuery(
'ALTER TABLE `#__ctransifex_languages`
ADD `untranslated_entities` int(11) NOT NULL AFTER `completed`;');
$db->execute();

$db->setQuery(
'ALTER TABLE `#__ctransifex_languages`
ADD `translated_entities` int(11) NOT NULL AFTER `untranslated_entities`;');
$db->execute();
}
}

Expand Down Expand Up @@ -403,4 +418,4 @@ public function install($parent)

}

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ CREATE TABLE IF NOT EXISTS `#__ctransifex_languages` (
`resource_id` int(11) NOT NULL,
`lang_name` varchar(255) NOT NULL,
`completed` int(11) NOT NULL,
`untranslated_entities` int(11) NOT NULL,
`translated_entities` int(11) NOT NULL,
`raw_data` longtext NOT NULL,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
Expand All @@ -14,6 +16,7 @@ CREATE TABLE IF NOT EXISTS `#__ctransifex_projects` (
`transifex_slug` varchar(255) NOT NULL,
`description` text NOT NULL,
`alias` varchar(255) NOT NULL,
`minimum_perc` int(11) NOT NULL,
`state` tinyint(4) NOT NULL,
`created_by` int(11) NOT NULL,
`created_by_alias` varchar(255) NOT NULL,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,14 @@
<?php echo $this->form->getInput('alias'); ?>
</div>
</div>
<div class="control-group">
<div class="control-label">
<?php echo $this->form->getLabel('minimum_perc'); ?>
</div>
<div class="controls">
<?php echo $this->form->getInput('minimum_perc'); ?>
</div>
</div>
<div class="control-group">
<div class="control-label">
<?php echo $this->form->getLabel('extension_name'); ?>
Expand Down Expand Up @@ -105,4 +113,4 @@

<input type="hidden" name="task" value="" />
<?php echo JHtml::_('form.token'); ?>
</form>
</form>
2 changes: 2 additions & 0 deletions source/administrator/language/en-GB/en-GB.com_ctransifex.ini
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,5 @@ COM_CTRANSIFEX_NO_GLOBAL_WEBHOOKS_KEY ="You haven't edited the extension config
COM_CTRANSIFEX_TRANSIFEX_WEBHOOKS="Webhooks url"
COM_CTRANSIFEX_CONTRIBUTE_LINK="Contribute link"
COM_CTRANSIFEX_CONTRIBUTE_LINK_DESC="Show a contribute now link for languages that are not 100% translated"
COM_CTRANSIFEX_MINIMUM_PERC="Minimum percentage"
COM_CTRANSIFEX_MINIMUM_PERC_DESC="Here you can enter a value for minimum percentage. This value will influence which languages are shown in frontend. Only languages that have a completed percentage equal to or higher than the set value will be shown"