protected function relationalAttribute(CDbCriteria $criteria, $attribute, $search)
{
$search = $this->model->getTableAlias() . '.' . $search;
if (strpos($attribute, '.')) {
$relationship = explode('.', $attribute);
$relationshipArray = array();
while (count($relationship) > 1) {
$relationshipString = array_shift($relationship);
$search = $relationshipString;
if (count($relationshipArray)) {
$relationshipString = implode('.', $relationshipArray) . '.' . $relationshipString;
}
$relationshipArray[] = $relationshipString;
}
$search .= '.' . array_shift($relationship);
$criteria->together = true;
$criteria->with = array_merge($criteria->with, $relationshipArray);
}
return $search;
}