*** VERSION 5.3.0 ***
[NeonServV5.git] / src / cmd_neonserv_clvl.c
index fa4a9173dc199b5eaf7bdf94077c0956f2af2450..c87e289be9bcb36b831a66bd6d841f3881ee0215 100644 (file)
@@ -1,4 +1,4 @@
-/* cmd_neonserv_clvl.c - NeonServ v5.1
+/* cmd_neonserv_clvl.c - NeonServ v5.3
  * Copyright (C) 2011  Philipp Kreil (pk910)
  * 
  * This program is free software: you can redistribute it and/or modify
@@ -40,7 +40,7 @@ CMD_BIND(neonserv_cmd_clvl) {
         reply(getTextBot(), user, "NS_INVALID_ACCESS", caccess);
         return;
     }
-    if(caccess >= getChannelAccess(user, chan, 0)) {
+    if(caccess >= getChannelAccess(user, chan)) {
         if(isGodMode(user)) {
             event->flags |= CMDFLAG_OPLOG;
         } else {
@@ -108,9 +108,13 @@ static void neonserv_cmd_clvl_async1(struct ClientSocket *client, struct ClientS
         res = mysql_use();
         if ((row = mysql_fetch_row(res)) != NULL) {
             //clvl
-            if(atoi(row[0]) >= getChannelAccess(user, chan, 1)) {
-                reply(textclient, user, "NS_USER_OUTRANKED", nick);
-                return;
+            if(atoi(row[0]) >= getChannelAccess(user, chan)) {
+                if(isGodMode(user)) {
+                    event->flags |= CMDFLAG_OPLOG;
+                } else {
+                    reply(textclient, user, "NS_USER_OUTRANKED", nick);
+                    return;
+                }
             }
             printf_mysql_query("UPDATE `chanusers` SET `chanuser_access` = '%d' WHERE `chanuser_id` = '%s'", caccess, row[1]);
             reply(textclient, user, "NS_CLVL_DONE", nick, caccess, chan->name);