diff --git a/source/administrator/components/com_ctransifex/assets/install.xml b/source/administrator/components/com_ctransifex/assets/install.xml
index 6fef9d1..df0c837 100644
--- a/source/administrator/components/com_ctransifex/assets/install.xml
+++ b/source/administrator/components/com_ctransifex/assets/install.xml
@@ -8,8 +8,6 @@
@@AUTHOR_URL@@@@COPYRIGHT@@GNU General Public License version 2 or later; see LICENSE.txt
- CTransifex
- https://compojoom.com
@@ -18,4 +16,4 @@
@@ADMIN_FILENAMES@@
@@FRONTEND_FILENAMES@@
-
\ No newline at end of file
+
diff --git a/source/administrator/components/com_ctransifex/helpers/package.php b/source/administrator/components/com_ctransifex/helpers/package.php
index 98a4d27..9e856c3 100644
--- a/source/administrator/components/com_ctransifex/helpers/package.php
+++ b/source/administrator/components/com_ctransifex/helpers/package.php
@@ -155,9 +155,11 @@ private static function getFiles($folder) {
$files = JFolder::files($folder);
$xml = array();
+ if($files){
foreach($files as $file) {
$xml[] = ''.$file.'';
+ }
}
return implode("\n", $xml);
}
-}
\ No newline at end of file
+}
diff --git a/source/administrator/components/com_ctransifex/models/forms/project.xml b/source/administrator/components/com_ctransifex/models/forms/project.xml
index fa46bbc..83ed7e7 100644
--- a/source/administrator/components/com_ctransifex/models/forms/project.xml
+++ b/source/administrator/components/com_ctransifex/models/forms/project.xml
@@ -21,6 +21,10 @@
+
+ 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));
}
}
@@ -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);
@@ -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')
@@ -96,4 +102,4 @@ public function getResourcesForLang($jlang)
$db->setQuery($query);
return $db->loadObjectList();
}
-}
\ No newline at end of file
+}
diff --git a/source/administrator/components/com_ctransifex/models/package.php b/source/administrator/components/com_ctransifex/models/package.php
index 70d78ab..f884048 100644
--- a/source/administrator/components/com_ctransifex/models/package.php
+++ b/source/administrator/components/com_ctransifex/models/package.php
@@ -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')
@@ -56,6 +68,7 @@ public function add($resources, $language)
$db->setQuery($query);
$db->execute();
+ }
}
public function countResources() {
@@ -68,4 +81,4 @@ public function countResources() {
return $db->loadObject()->count;
}
-}
\ No newline at end of file
+}
diff --git a/source/administrator/components/com_ctransifex/script.php b/source/administrator/components/com_ctransifex/script.php
index 7c13047..b2ff677 100644
--- a/source/administrator/components/com_ctransifex/script.php
+++ b/source/administrator/components/com_ctransifex/script.php
@@ -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();
}
}
@@ -403,4 +418,4 @@ public function install($parent)
}
-}
\ No newline at end of file
+}
diff --git a/source/administrator/components/com_ctransifex/sql/install.mysql.sql b/source/administrator/components/com_ctransifex/sql/install.mysql.sql
index de70021..1f8622c 100644
--- a/source/administrator/components/com_ctransifex/sql/install.mysql.sql
+++ b/source/administrator/components/com_ctransifex/sql/install.mysql.sql
@@ -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;
@@ -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,
diff --git a/source/administrator/components/com_ctransifex/views/project/tmpl/default.php b/source/administrator/components/com_ctransifex/views/project/tmpl/default.php
index 9a5a3b2..6a7a157 100644
--- a/source/administrator/components/com_ctransifex/views/project/tmpl/default.php
+++ b/source/administrator/components/com_ctransifex/views/project/tmpl/default.php
@@ -60,6 +60,14 @@
form->getInput('alias'); ?>
+
+
+ form->getLabel('minimum_perc'); ?>
+
+
+ form->getInput('minimum_perc'); ?>
+
+
form->getLabel('extension_name'); ?>
@@ -105,4 +113,4 @@
-
\ No newline at end of file
+
diff --git a/source/administrator/language/en-GB/en-GB.com_ctransifex.ini b/source/administrator/language/en-GB/en-GB.com_ctransifex.ini
index 00d9fa3..f94eeab 100644
--- a/source/administrator/language/en-GB/en-GB.com_ctransifex.ini
+++ b/source/administrator/language/en-GB/en-GB.com_ctransifex.ini
@@ -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"