public function getLetter_macros()
{
$macros = array();
$macro_names = array();
$firm = Firm::model()->with('serviceSubspecialtyAssignment')->findByPk(Yii::app()->session['selected_firm_id']);
$criteria = new CDbCriteria();
$criteria->compare('firm_id', $firm->id);
$criteria->order = 'display_order asc';
foreach (LetterMacro::model()->findAll($criteria) as $macro) {
if (!in_array($macro->name, $macro_names)) {
$macros[$macro->id] = $macro_names[] = $macro->name;
}
}
if ($firm->service_subspecialty_assignment_id) {
$criteria = new CDbCriteria();
$criteria->compare('subspecialty_id', $firm->serviceSubspecialtyAssignment->subspecialty_id);
$criteria->order = 'display_order asc';
foreach (LetterMacro::model()->findAll($criteria) as $macro) {
if (!in_array($macro->name, $macro_names)) {
$macros[$macro->id] = $macro_names[] = $macro->name;
}
}
}
$criteria = new CDbCriteria();
$criteria->compare('site_id', Yii::app()->session['selected_site_id']);
$criteria->order = 'display_order asc';
foreach (LetterMacro::model()->findAll($criteria) as $macro) {
if (!in_array($macro->name, $macro_names)) {
$macros[$macro->id] = $macro_names[] = $macro->name;
}
}
return $macros;
}