+ if (substr($current_url, 0, $len) != $Config['SiteURL']) {
+ dieprint_r(GENERAL_ERROR, "Edit includes/config.php and specify the correct site URL<br /><strong>Current value:</strong> $Config[SiteURL]<br /><strong>Expected value:</strong> a string starting by " . get_server_url(), "Setup");
+ }
+
+ if (array_key_exists('REDIRECT_URL', $_SERVER)) {
+ //With mod_rewrite, we can use REDIRECT_URL
+ //We takes the end of the URL, ie *FROM* $len position
+ * @todo delete old_message_die method and write alternative HTML textual output
+ * in the message_die method
+ */
+
+///
+/// Error constants
+///
+
+/**
+ * SQL_ERROR is the constant meaning the error is a SQL error.
+ *
+ * As a message_die function parameter, it allows to add SQL specific debug information.
+ */
+define ("SQL_ERROR", 65);
+
+/**
+ * HACK_ERROR is the constant meaning access is non authorized to the resource.
+ *
+ * It encompasses two problematics:
+ * the URL points to a resource belonging to another user or for the current user have no access right (for malformed URL, pick instead GENERAL_ERROR) ;
+ * the user is anonymous, instead to be logged in.
+ *
+ * A suggested way to handle the second problematic is to store in hidden input
+ * fields or better in the session the previous form data, and to print a login
+ * form.
+ *
+ * If you implement this, you don't even need to distinguishes between the two
+ * cases, as once logged in, the regular HACK_ERROR could also be printed.
+ */
+define ("HACK_ERROR", 99);
+
+/**
+ * GENERAL_ERROR is the constant meaning the error is general, ie not covered by
+ * another more specific error constant.
+ */
+define ("GENERAL_ERROR", 117);
+
+///
+/// Error helper functions
+///
+
+/**
+ * Output a general error, with human-readable information about the specified
+ * expression as error message ; terminates the current script.
+ *
+ * @see message_die
+ *
+ * @param mixed $expression the expression to be printed
+ * @param string $title the message title (optionnal, default will be 'Debug')
+ */
+function dieprint_r ($expression, $title = '') {
+ if (!$title) {
+ $title = 'Debug'; //if title is omitted or false/null, default title
+ if (!$db->sql_query($sql)) message_die(SQL_ERROR, "Impossible de mettre à jour la session", '', __LINE__, __FILE__, $sql);
+ }
+}
+
+function nbc () {
+//Renvoi du nombre d'usagers connectés
+ global $db, $Config;
+ $sql = "SELECT count(*) FROM " . TABLE_SESSIONS . " WHERE online=1 AND `Where` = $Config[ResourceID]";
+ if ( !($result = $db->sql_query($sql)) ) message_die(SQL_ERROR, "Impossible d'obtenir le nombre d'utilisateurs connectés sur le site web", '', __LINE__, __FILE__, $sql);
+ $row = $db->sql_fetchrow($result);
+ return $row[0];
+}
+
+function get_info ($info)
+//Renvoie une variable de la session
+{
+ global $db;
+ $sql = "SELECT $info FROM " . TABLE_SESSIONS . " WHERE session_id LIKE '$_SESSION[ID]'";