| 1 | <?php |
| 2 | if(preg_match('/36$/', $event) || preg_match('/36$/', $_POST['event'])) { |
| 3 | $event = preg_replace('/36$/', '', $event); |
| 4 | $_POST['event'] = preg_replace('/36$/', '', $_POST['event']); |
| 5 | $_POST['nodeshell_id'] = base_convert($_POST['nodeshell_id'], 36, 10); //put36 |
| 6 | $_POST['new_parent'] = base_convert($_POST['new_parent'], 36, 10); //set_parent36 |
| 7 | } |
| 8 | |
| 9 | //do not make a permission check if an event was executed before |
| 10 | if ($_SESSION['eventz'][$event]) { |
| 11 | include_once(INCLUDE_DIR."eventz/$event.inc"); |
| 12 | $status=$event(); |
| 13 | } |
| 14 | |
| 15 | elseif (is_file(INCLUDE_DIR."eventz/$event.inc")) { |
| 16 | $event_id=nodes::getNodeIdByName($event,"event://$event"); |
| 17 | $event_node=nodes::getNodeById($event_id,$_SESSION['user_id']); |
| 18 | if (($event_node['node_system_access']=='public') |
| 19 | || ($event_node['node_creator']==$_SESSION['user_id']) |
| 20 | || ($event_node['node_permission']=='op') |
| 21 | || ($event_node['node_permission']=='execute') |
| 22 | || ($event_node['node_permission']=='master') ) { |
| 23 | include_once(INCLUDE_DIR."eventz/$event.inc"); |
| 24 | $status=$event(); |
| 25 | $_SESSION['eventz'][$event]=true; |
| 26 | |
| 27 | } |
| 28 | |
| 29 | else { |
| 30 | $error=$error_messages['EVENT_NOT_PERMITTED']; |
| 31 | } |
| 32 | |
| 33 | } |
| 34 | |
| 35 | else { |
| 36 | $error=$error_messages['EVENT_NOT_EXISTENT']; |
| 37 | $status=false; |
| 38 | } |
| 39 | |
| 40 | |
| 41 | if ($status>1) { |
| 42 | Header("Location: /id/".$status."/"); |
| 43 | } |
| 44 | |
| 45 | elseif ($status) { |
| 46 | Header("Location: /id/".$node['node_id']."/"); |
| 47 | } |
| 48 | |
| 49 | |
| 50 | ?> |