Users alternate emails internal procedures
Users_Alternate_Emails_Create
DROP PROCEDURE Users_Alternate_Emails_Create;
DELIMITER //
CREATE PROCEDURE Users_Alternate_Emails_Create
(
$Sid CHAR(64),
$USER INT(11),
$email VARCHAR(99)
)
BEGIN
IF @@read_only THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'READ_ONLY';
ELSE
CALL Base_Users_Authorise_Sessionid( $Sid, @email, @USER, @idtype );
IF @USER = $USER THEN
REPLACE INTO users_alternate_emails VALUES ( $USER, $email, GenerateSalt() );
END IF;
END IF;
END
//
DELIMITER ;
Users_Alternate_Emails_Delete
DROP PROCEDURE Users_Alternate_Emails_Delete;
DELIMITER //
CREATE PROCEDURE Users_Alternate_Emails_Delete
(
$Sid CHAR(64),
$USER INT(11),
$Email VARCHAR(99)
)
BEGIN
IF @@read_only THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'READ_ONLY';
ELSE
CALL Base_Users_Authorise_Sessionid( $Sid, @email, @USER, @idtype );
IF @USER = $USER THEN
DELETE FROM users_alternate_emails WHERE USER=$USER AND email=$Email;
END IF;
END IF;
END
//
DELIMITER ;
Users_Alternate_Emails_Retrieve_By_USER
DROP PROCEDURE Users_Alternate_Emails_Retrieve_By_USER;
DELIMITER //
CREATE PROCEDURE Users_Alternate_Emails_Retrieve_By_USER
(
$Sid CHAR(64),
$USER INT(11)
)
BEGIN
IF @@read_only THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'READ_ONLY';
ELSE
CALL Base_Users_Authorise_Sessionid( $Sid, @email, @USER, @idtype );
IF @USER = $USER THEN
SELECT * FROM users_alternate_emails WHERE USER=$USER ORDER BY email;
END IF;
END IF;
END
//
DELIMITER ;