Fix : I Use Trigger for Copy Permission when Create Folder and Upload File

30 views
Skip to first unread message

jokerp...@gmail.com

unread,
Apr 29, 2013, 4:04:40 AM4/29/13
to moll...@googlegroups.com
I Use Trigger for Copy Permission, Work for me.

STEP 1

drop TRIGGER if exists UserPermission;
delimiter #
CREATE TRIGGER UserPermission AFTER INSERT ON portaldb_item_id
  FOR EACH ROW BEGIN
    INSERT INTO portaldb_item_permission SET item_id = NEW.id,permission='ro';
  END #

STEP 2

drop TRIGGER if exists UpdateUserPermission;
delimiter #
CREATE TRIGGER UpdateUserPermission AFTER INSERT ON portaldb_event_log
  FOR EACH ROW BEGIN
DECLARE xType varchar(128);
DECLARE xTypeUpload varchar(128);
DECLARE xTime bigint(11);
DECLARE xTimeUpload bigint(11);
DECLARE xUser varchar(128);
DECLARE xID int(11);
DECLARE xItemID char(255);
/*Create Folder*/
SET xTime = (SELECT MAX(time) FROM portaldb_event_log WHERE type='filesystem/create_folder');
SET xType = (SELECT type FROM portaldb_event_log WHERE time=xTime);

if xType = 'filesystem/create_folder'  THEN
SET xUser = (SELECT user FROM portaldb_event_log WHERE time=xTime);
SET xItemID = (SELECT SUBSTRING(details,9,13) FROM portaldb_event_log 
WHERE type='filesystem/create_folder' 
and time=xTime
and user=xUser);
SET xID = (SELECT id FROM portaldb_user WHERE name=xUser);

    UPDATE portaldb_item_permission SET user_id = xID,permission = 'rw' WHERE item_id = xItemID;
end if;

/*Upload File*/
SET xTimeUpload = (SELECT MAX(time) FROM portaldb_event_log WHERE type='filesystem/upload');
SET xType = (SELECT type FROM portaldb_event_log WHERE time=xTimeUpload);

if xType = 'filesystem/upload'  THEN
SET xUser = (SELECT user FROM portaldb_event_log WHERE time=xTimeUpload);
SET xItemID = (SELECT SUBSTRING(details,9,13) FROM portaldb_event_log 
WHERE type='filesystem/upload' 
and time=xTimeUpload
and user=xUser);
SET xID = (SELECT id FROM portaldb_user WHERE name=xUser);

    UPDATE portaldb_item_permission SET user_id = xID,permission = 'rw' WHERE item_id = xItemID;
end if;
  END #

jokerp...@gmail.com

unread,
Apr 29, 2013, 5:27:51 AM4/29/13
to moll...@googlegroups.com, jokerp...@gmail.com
Note : Can not multi upload file,Work for single file.
Reply all
Reply to author
Forward
0 new messages