Fixed role_add.php with a check for existing role name.
authorNik Okuntseff <support@anuko.com>
Tue, 6 Nov 2018 21:57:37 +0000 (21:57 +0000)
committerNik Okuntseff <support@anuko.com>
Tue, 6 Nov 2018 21:57:37 +0000 (21:57 +0000)
WEB-INF/lib/ttReportHelper.class.php
WEB-INF/lib/ttRoleHelper.class.php
WEB-INF/templates/footer.tpl
role_add.php

index 744ef97..76c1765 100644 (file)
@@ -157,7 +157,7 @@ class ttReportHelper {
     // Add custom field.
     $include_cf_1 = $options['show_custom_field_1'] || $grouping_by_cf_1;
     if ($include_cf_1) {
-      $custom_fields = new CustomFields($user->group_id);
+      $custom_fields = new CustomFields($user->getActiveGroup());
       $cf_1_type = $custom_fields->fields[0]['type'];
       if ($cf_1_type == CustomFields::TYPE_TEXT) {
         array_push($fields, 'cfl.value as cf_1');
@@ -616,7 +616,7 @@ class ttReportHelper {
 
     // Use custom fields plugin if it is enabled.
     if ($user->isPluginEnabled('cf'))
-      $custom_fields = new CustomFields($user->group_id);
+      $custom_fields = new CustomFields($user->getActiveGroup());
 
     // Define some styles to use in email.
     $style_title = 'text-align: center; font-size: 15pt; font-family: Arial, Helvetica, sans-serif;';
@@ -1460,7 +1460,7 @@ class ttReportHelper {
       $join .= ' left join tt_tasks t on (l.task_id = t.id)';
     }
     if (ttReportHelper::groupingBy('cf_1', $options)) {
-      $custom_fields = new CustomFields($user->group_id);
+      $custom_fields = new CustomFields($user->getActiveGroup());
       if ($custom_fields->fields[0]['type'] == CustomFields::TYPE_TEXT)
         $join .= ' left join tt_custom_field_log cfl on (l.id = cfl.log_id and cfl.status = 1) left join tt_custom_field_options cfo on (cfl.value = cfo.id)';
       elseif ($custom_fields->fields[0]['type'] == CustomFields::TYPE_DROPDOWN)
index e5bf6a7..2751756 100644 (file)
@@ -37,7 +37,7 @@ class ttRoleHelper {
     $mdb2 = getConnection();
 
     $sql = "select id, name, description, rank, rights, status from tt_roles
-      where id = $id and group_id = $user->group_id and (status = 0 or status = 1)";
+      where id = $id and group_id = ".$user->getActiveGroup()." and (status = 0 or status = 1)";
     $res = $mdb2->query($sql);
 
     if (!is_a($res, 'PEAR_Error')) {
@@ -56,8 +56,8 @@ class ttRoleHelper {
     $mdb2 = getConnection();
     global $user;
 
-    $sql = "select id from tt_roles where group_id = $user->group_id and name = ".
-      $mdb2->quote($role_name)." and (status = 1 or status = 0)";
+    $sql = "select id from tt_roles where group_id = ".$user->getActiveGroup().
+      " and name = ".$mdb2->quote($role_name)." and (status = 1 or status = 0)";
     $res = $mdb2->query($sql);
 
     if (!is_a($res, 'PEAR_Error')) {
@@ -89,7 +89,7 @@ class ttRoleHelper {
     global $user;
     $mdb2 = getConnection();
 
-    $sql = "select rights from tt_roles where group_id = $user->group_id and id = $role_id";
+    $sql = "select rights from tt_roles where group_id = ".$user->getActiveGroup()." and id = $role_id";
     $res = $mdb2->query($sql);
 
     if (!is_a($res, 'PEAR_Error')) {
index d0d1573..5e48388 100644 (file)
@@ -12,7 +12,7 @@
       <br>
       <table cellspacing="0" cellpadding="4" width="100%" border="0">
         <tr>
-          <td align="center">&nbsp;Anuko Time Tracker 1.18.08.4378 | Copyright &copy; <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
+          <td align="center">&nbsp;Anuko Time Tracker 1.18.08.4379 | Copyright &copy; <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
             <a href="https://www.anuko.com/lp/tt_4.htm" target="_blank">{$i18n.footer.credits}</a> |
             <a href="https://www.anuko.com/lp/tt_5.htm" target="_blank">{$i18n.footer.license}</a> |
             <a href="https://www.anuko.com/lp/tt_7.htm" target="_blank">{$i18n.footer.improve}</a>
index cb3d6f4..e1e16cc 100644 (file)
@@ -56,6 +56,7 @@ if ($request->isPost()) {
   if (!ttValidString($cl_name)) $err->add($i18n->get('error.field'), $i18n->get('label.thing_name'));
   if (!ttValidString($cl_description, true)) $err->add($i18n->get('error.field'), $i18n->get('label.description'));
   if ($cl_rank >= $user->rank || $cl_rank < 0) $err->add($i18n->get('error.field'), $i18n->get('form.roles.rank'));
+  if ($err->no() && ttRoleHelper::getRoleByName($cl_name)) $err->add($i18n->get('error.object_exists'));
 
   if ($err->no()) {
     $existing_role = ttRoleHelper::getRoleByRank($cl_rank, $user->group_id);