$junk ) $current_attrs[] = strtolower($attr); // grab the required attributes for the new objectClass $schema_oclasses = get_schema_objectclasses(); $must_attrs = array(); foreach($new_oclass as $oclass_name) { $oclass = get_schema_objectclass($oclass_name); if($oclass) $must_attrs = array_merge($must_attrs, $oclass->getMustAttrNames($schema_oclasses)); } $must_attrs = array_unique( $must_attrs ); // We don't want any of the attr meta-data, just the string //foreach( $must_attrs as $i => $attr ) //$must_attrs[$i] = $attr->getName(); // build a list of the attributes that this new objectClass requires, // but that the object does not currently contain $needed_attrs = array(); foreach( $must_attrs as $attr ) { $attr = get_schema_attribute($attr); //echo "
"; var_dump( $attr ); echo ""; // First, check if one of this attr's aliases is already an attribute of this entry foreach( $attr->getAliases() as $alias_attr_name ) if( in_array( strtolower( $alias_attr_name ), $current_attrs ) ) // Skip this attribute since it's already in the entry continue; if( in_array( strtolower($attr->getName()), $current_attrs ) ) continue; // We made it this far, so the attribute needs to be added to this entry in order // to add this objectClass $needed_attrs[] = $attr; } if( count( $needed_attrs ) > 0 ) { echo $_SESSION['header']; echo "