diff --git a/html/user/forum_post.php b/html/user/forum_post.php
index e68a2f9135..cb99ab0aff 100644
--- a/html/user/forum_post.php
+++ b/html/user/forum_post.php
@@ -18,7 +18,7 @@ check_banished($logged_in_user);
$forumid = get_int("id");
$forum = new Forum($forumid);
-if ($logged_in_user->getTotalCredit()<$forum->getPostMinTotalCredit || $logged_in_user->getExpavgCredit()<$forum->getPostMinExpavgCredit()){
+if (!$logged_in_user->isSpecialUser(S_MODERATOR) && ($logged_in_user->getTotalCredit()<$forum->getPostMinTotalCredit() || $logged_in_user->getExpavgCredit()<$forum->getPostMinExpavgCredit())) {
//If user haven't got enough credit (according to forum regulations)
//We do not tell the (ab)user how much this is - no need to make it easy for them to break the system.
error_page(sprintf(tr(FORUM_ERR_EXPAVG),$forum->getTitle()));
diff --git a/html/user/forum_reply.php b/html/user/forum_reply.php
index d45c4d03e5..199aa079ab 100644
--- a/html/user/forum_reply.php
+++ b/html/user/forum_reply.php
@@ -36,7 +36,7 @@ if ($thread->isHidden()) {
"This thread has been hidden for administrative purposes.");
}
-if ($logged_in_user->getTotalCredit()<$forum->getPostMinTotalCredit() || $logged_in_user->getExpavgCredit()<$forum->getPostMinExpavgCredit()){
+if (!$logged_in_user->isSpecialUser(S_MODERATOR) && ($logged_in_user->getTotalCredit()<$forum->getPostMinTotalCredit() || $logged_in_user->getExpavgCredit()<$forum->getPostMinExpavgCredit())) {
//If user haven't got enough credit (according to forum regulations)
//We do not tell the (ab)user how much this is - no need to make it easy for them to break the system.
error_page(