bcom/sql/getVisibleDiscuts.sql

22 lines
621 B
SQL

DROP PROCEDURE IF EXISTS GetVisibleDiscuts;
DELIMITER //
CREATE PROCEDURE GetVisibleDiscuts
(
IN p_sid TEXT,
IN p_password TEXT,
OUT outputCode INT(11),
OUT canCreate INT(1)
)
MODIFIES SQL DATA
BEGIN
CALL `CheckIdLogin`(p_sid,p_password, outputCode);
IF outputCode = 42 OR outputCode = 2005 THEN
SET outputCode = 42;
SELECT adminLevel > 8 INTO canCreate FROM membres WHERE ID=p_sid;
INSERT INTO discuts SELECT d.ID AS ID, d.name AS Name, m.pseudo AS creatorPseudo FROM discussions AS d LEFT JOIN membres AS m ON d.creatorID = m.ID WHERE CheckInGroup(p_sid,authorizedGroupId) = 42;
END IF;
END//
DELIMITER ;