protected function doSave($con = null)
 {
     //parent::doSave($con);
     $con = is_null($con) ? Propel::getConnection() : $con;
     $values = $this->getValues();
     try {
         $con->beginTransaction();
         if (array_key_exists('division_courses', $values)) {
             if (array_key_exists('division_title_ids', $values)) {
                 $division_title_ids = $values['division_title_ids'];
                 foreach ($division_title_ids as $division_title_id) {
                     if (DivisionPeer::checkUnique($division_title_id, $values['career_school_year_id'], $values['year'])) {
                         $division = new Division();
                         $division->setDivisionTitleId($division_title_id);
                         $division->setCareerSchoolYearId($values['career_school_year_id']);
                         $division->setShiftId($values['shift_id']);
                         $division->setYear($values['year']);
                         $this->createPreceptor($division, $con);
                         if ($this->getObject()->isNew()) {
                             foreach ($this->values['division_courses'] as $career_subject_school_year_id) {
                                 $division->createCourse($career_subject_school_year_id, $con);
                             }
                         }
                         $division->save($con);
                     }
                 }
             }
         }
         $con->commit();
     } catch (PropelException $e) {
         $con->rollback();
         throw $e;
     }
 }