summaryrefslogtreecommitdiff
path: root/includes/model/UserAngelTypes_model.php
diff options
context:
space:
mode:
authorPhilip Häusler <msquare@notrademark.de>2014-05-13 15:51:45 +0200
committerPhilip Häusler <msquare@notrademark.de>2014-05-13 15:51:45 +0200
commitf1145b8a5e8630e0180d35ff1ced2e934b872f01 (patch)
treec99e7b7a5f6e1ab3839777dbd8095f83a1c94f20 /includes/model/UserAngelTypes_model.php
parente107dff1ce417df779733667ad81d60755582779 (diff)
implemented team/angeltype coordinators
Diffstat (limited to 'includes/model/UserAngelTypes_model.php')
-rw-r--r--includes/model/UserAngelTypes_model.php37
1 files changed, 35 insertions, 2 deletions
diff --git a/includes/model/UserAngelTypes_model.php b/includes/model/UserAngelTypes_model.php
index 4987eddd..b9b44032 100644
--- a/includes/model/UserAngelTypes_model.php
+++ b/includes/model/UserAngelTypes_model.php
@@ -1,9 +1,42 @@
<?php
+/**
+ * User angeltypes model
+ */
+
+/**
+ * Returns true if user is angeltype coordinator or has privilege admin_user_angeltypes.
+ *
+ * @param User $user
+ * @param AngelType $angeltype
+ */
+function User_is_AngelType_coordinator($user, $angeltype) {
+ return (sql_num_query("
+ SELECT `id`
+ FROM `UserAngelTypes`
+ WHERE `user_id`=" . sql_escape($user['UID']) . "
+ AND `angeltype_id`=" . sql_escape($angeltype['id']) . "
+ AND `coordinator`=TRUE
+ LIMIT 1") > 0) || in_array('admin_user_angeltypes', privileges_for_user($user['UID']));
+}
+
+/**
+ * Add or remove coordinator rights.
+ *
+ * @param int $user_angeltype_id
+ * @param bool $coordinator
+ */
+function UserAngelType_update($user_angeltype_id, $coordinator) {
+ return sql_query("
+ UPDATE `UserAngelTypes`
+ SET `coordinator`=" . ($coordinator ? 'TRUE' : 'FALSE') . "
+ WHERE `id`=" . sql_escape($user_angeltype_id) . "
+ LIMIT 1");
+}
/**
* Delete all unconfirmed UserAngelTypes for given Angeltype.
- *
- * @param int $angeltype_id
+ *
+ * @param int $angeltype_id
*/
function UserAngelTypes_delete_all($angeltype_id) {
return sql_query("