- $mdb2 = getConnection();
- $sql = "select id from tt_custom_fields where team_id = $team_id";
- $res = $mdb2->query($sql);
- if (is_a($res, 'PEAR_Error')) return false;
- while ($val = $res->fetchRow()) {
- $field_id = $val['id'];
-
- // Clean up tt_custom_field_log.
- $sql = "delete from tt_custom_field_log where field_id = $field_id";
- $affected = $mdb2->exec($sql);
- if (is_a($affected, 'PEAR_Error'))
- return false;
-
- // Clean up tt_custom_field_options.
- $sql = "delete from tt_custom_field_options where field_id = $field_id";
- $affected = $mdb2->exec($sql);
- if (is_a($affected, 'PEAR_Error'))
- return false;
-
- // Delete custom field.
- $sql = "delete from tt_custom_fields where id = $field_id";
- $affected = $mdb2->exec($sql);
- if (is_a($affected, 'PEAR_Error'))
- return false;
- }
-
- return true;
+ $mdb2 = getConnection();
+ $sql = "select id from tt_custom_fields where team_id = $team_id";
+ $res = $mdb2->query($sql);
+ if (is_a($res, 'PEAR_Error')) return false;
+
+ while ($val = $res->fetchRow()) {
+ $field_id = $val['id'];
+
+ // Clean up tt_custom_field_log.
+ $sql = "delete from tt_custom_field_log where field_id = $field_id";
+ $affected = $mdb2->exec($sql);
+ if (is_a($affected, 'PEAR_Error')) return false;
+
+ // Clean up tt_custom_field_options.
+ $sql = "delete from tt_custom_field_options where field_id = $field_id";
+ $affected = $mdb2->exec($sql);
+ if (is_a($affected, 'PEAR_Error')) return false;
+
+ // Delete custom field.
+ $sql = "delete from tt_custom_fields where id = $field_id";
+ $affected = $mdb2->exec($sql);
+ if (is_a($affected, 'PEAR_Error')) return false;
+ }
+
+ return true;
+ }
+
+ // enablePlugin either enables or disables a specific plugin for team.
+ static function enablePlugin($plugin, $enable = true)
+ {
+ global $user;
+ if (!$user->canManageTeam())
+ return false;
+
+ $plugin_array = explode(',', $user->plugins);
+ if ($enable && !in_array($plugin, $plugin_array))
+ $plugin_array[] = $plugin; // Add plugin to array.
+
+ if (!$enable && in_array($plugin, $plugin_array)) {
+ $key = array_search($plugin, $plugin_array);
+ if ($key !== false)
+ unset($plugin_array[$key]); // Remove plugin from array.
+ }
+
+ $plugins = implode(',', $plugin_array);
+ if ($plugins != $user->plugins) {
+ if (!ttTeamHelper::update($user->team_id, array('name' => $user->team,'plugins' => $plugins)))
+ return false;
+ $user->plugins = $plugins;
+ }
+
+ return true;