/**
  * Adds argent meta data to a new record
  * 
  * @static
  * @since 1.1.0
  * @param array $record
  * @return array 
  */
 public static function add_meta($record)
 {
     $record['meta_user'] = argent_uauth::session_user();
     $record['meta_ip'] = $_SERVER['REMOTE_ADDR'];
     $record['meta_timestamp'] = date('Y-m-d H:i:s');
     $record['meta_guid'] = argent_identifier::meta_guid();
     return $record;
 }
 /**
  * Resets and cascades permissions down to child objects
  * 
  * @access private
  */
 private static function cascade_permissions()
 {
     $db = new argent_database();
     //$db->start_transaction();
     /* Remove old cascade rules */
     $sql = "\r\n                    DELETE FROM\r\n                        `ua_permissions`\r\n                    WHERE\r\n                        `master` != ''\r\n                    ";
     $db->query($sql);
     $sql = "\r\n                    SELECT\r\n                        *\r\n                    FROM\r\n                        `ua_permissions`\r\n                    WHERE\r\n                        `cascade` = 1\r\n                    ";
     $rules = $db->returntable($sql);
     if (count($rules) > 0) {
         foreach ($rules as $rule) {
             $user = $rule['user_id'];
             $meta_guid = $rule['meta_guid'];
             $descendents = argent_meta::descendents($rule['object_id']);
             if (count($descendents) > 0) {
                 foreach ($descendents as $descendent) {
                     $newguid = argent_identifier::meta_guid();
                     $sql = "\r\n                                    INSERT INTO\r\n                                        `ua_permissions`\r\n                                    (\r\n                                        `meta_guid`,\r\n                                        `object_id`,\r\n                                        `user_id`,\r\n                                        `cascade`,\r\n                                        `master`,\r\n                                        `create`,\r\n                                        `read`,\r\n                                        `update`,\r\n                                        `delete`,\r\n                                        `meta_timestamp`\r\n                                    )\r\n                                    VALUES(\r\n                                        '{$newguid}',\r\n                                        '{$descendent}',\r\n                                        '{$user}',\r\n                                        0,\r\n                                        '{$meta_guid}',\r\n                                        {$rule['create']},\r\n                                        {$rule['read']},\r\n                                        {$rule['update']},\r\n                                        {$rule['delete']},\r\n                                        NOW()\r\n                                    )\r\n                                    ";
                     $db->query($sql);
                 }
             }
         }
     }
 }