use channel settings for spam/flood scanner
[NeonServV5.git] / src / cmd_neonspam_set.c
index 9a9c2382b0caf6d434b2f33546a72c856774fe17..228867a8fbb07814e7055361b5c9380ac5e54812 100644 (file)
@@ -328,6 +328,8 @@ static char* neonspam_cmd_set_spamlimit(struct ClientSocket *client, struct User
         //change value
         printf_mysql_query("UPDATE `channels` SET `channel_maxrepeat` = '%d' WHERE `channel_id` = '%d' ", atoi(argument), chan->channel_id);
         sprintf(cvalue, "%d", atoi(argument));
+        if(chan->spam_settings)
+            chan->spam_settings->spam_amount = atoi(argument);
     }
     return cvalue;
 }
@@ -385,6 +387,8 @@ static char* neonspam_cmd_setspamscan(struct ClientSocket *client, struct UserNo
             cflags |= SPAMSETTINGS_SPAMSCAN;
         printf_mysql_query("UPDATE `channels` SET `channel_scanstate` = '%d' WHERE `channel_id` = '%d' ", cflags, chan->channel_id);
         cvalue = argument;
+        if(chan->spam_settings)
+            chan->spam_settings->flags = cflags;
     }
     return cvalue;
 }
@@ -403,6 +407,8 @@ static char* neonspam_cmd_setfloodscan(struct ClientSocket *client, struct UserN
             cflags |= SPAMSETTINGS_FLOODSCAN;
         printf_mysql_query("UPDATE `channels` SET `channel_scanstate` = '%d' WHERE `channel_id` = '%d' ", cflags, chan->channel_id);
         cvalue = argument;
+        if(chan->spam_settings)
+            chan->spam_settings->flags = cflags;
     }
     return cvalue;
 }
@@ -421,6 +427,8 @@ static char* neonspam_cmd_setjoinfloodscan(struct ClientSocket *client, struct U
             cflags |= SPAMSETTINGS_JOINSCAN;
         printf_mysql_query("UPDATE `channels` SET `channel_scanstate` = '%d' WHERE `channel_id` = '%d' ", cflags, chan->channel_id);
         cvalue = argument;
+        if(chan->spam_settings)
+            chan->spam_settings->flags = cflags;
     }
     return cvalue;
 }
@@ -439,6 +447,8 @@ static char* neonspam_cmd_setscanchanops(struct ClientSocket *client, struct Use
             cflags |= SPAMSETTINGS_SCANOPS;
         printf_mysql_query("UPDATE `channels` SET `channel_scanstate` = '%d' WHERE `channel_id` = '%d' ", cflags, chan->channel_id);
         cvalue = argument;
+        if(chan->spam_settings)
+            chan->spam_settings->flags = cflags;
     }
     return cvalue;
 }
@@ -457,6 +467,8 @@ static char* neonspam_cmd_setscanvoiced(struct ClientSocket *client, struct User
             cflags |= SPAMSETTINGS_SCANVOICE;
         printf_mysql_query("UPDATE `channels` SET `channel_scanstate` = '%d' WHERE `channel_id` = '%d' ", cflags, chan->channel_id);
         cvalue = argument;
+        if(chan->spam_settings)
+            chan->spam_settings->flags = cflags;
     }
     return cvalue;
 }
@@ -501,6 +513,10 @@ static char* neonspam_cmd_setfloodsensibility(struct ClientSocket *client, struc
         }
         printf_mysql_query("UPDATE `channels` SET `channel_maxflood` = '%d', `channel_floodtime` = '%d' WHERE `channel_id` = '%d' ", amount, timep, chan->channel_id);
         sprintf(cvalue, "%d:%d", amount, timep);
+        if(chan->spam_settings) {
+            chan->spam_settings->flood_amount = amount;
+            chan->spam_settings->flood_time = timep;
+        }
     }
     return cvalue;
 }
@@ -532,6 +548,10 @@ static char* neonspam_cmd_setjoinsensibility(struct ClientSocket *client, struct
         }
         printf_mysql_query("UPDATE `channels` SET `channel_maxjoin` = '%d', `channel_jointime` = '%d' WHERE `channel_id` = '%d' ", amount, timep, chan->channel_id);
         sprintf(cvalue, "%d:%d", amount, timep);
+        if(chan->spam_settings) {
+            chan->spam_settings->join_amount = amount;
+            chan->spam_settings->join_time = timep;
+        }
     }
     return cvalue;
 }