/**
  * 	checkRole
  *
  * 	Performs additional role check
  *
  * @param array $_ofnmap
  * 	request data
  *
  * @return string
  * 	role name
  */
 function checkRole($_ofnmap)
 {
     $usr = $_ofnmap['easycontactusr'];
     if ($usr->role->Description == 'SuperAdmin') {
         return $usr->role->Description;
     }
     if ($usr->role->Description == 'Guest') {
         return $usr->role->Description;
     }
     $objtype1 = @$_ofnmap['t'];
     $objtype2 = @$_ofnmap['t'];
     $method = @$_ofnmap['m'];
     $objid = @$_ofnmap['oid'];
     if (isset($_ofnmap['specialfilter'])) {
         $sf = json_decode(stripslashes($_ofnmap['specialfilter']));
         $objtype1 = $method == 'viewDetailed' ? $sf[0]->property : $_ofnmap['n'];
         $objid = $sf[0]->value->values[0];
     }
     if (isset($_ofnmap['a'])) {
         $a = json_decode(stripslashes($_ofnmap['a']));
         $mtm = isset($a->m) && $a->m == 'mtmview';
         if ($mtm) {
             $objtype1 = $a->ca[0]->t;
             $objid = $a->ca[0]->oid;
         }
     }
     if (!isset($objid)) {
         return $usr->role->Description;
     }
     $obj = EasyContactFormsClassLoader::getObject($objtype1);
     $fieldlist = $obj->getFieldNames();
     if (!in_array('ObjectOwner', $fieldlist)) {
         return $usr->role->Description;
     }
     if (!EasyContactFormsSecurityManager::isObjectOwner($objtype1, $objid, $usr->id)) {
         return $usr->role->Description;
     }
     $usr->role->Description = EasyContactFormsSecurityManager::getOwnerRole($usr->role->Description, $objtype1, $objtype2);
     return $usr->role->Description;
 }