public static function loadLatestDebtRecovery($user_id, $year, $month)
 {
     foreach (Model_Debit_Date::all() as $debit_date) {
         if (!is_numeric($month) || !in_array(intval($month), range(1, 12))) {
             $month = intval(date('m'));
         }
         if (!is_numeric($year) || intval($year) < 2015) {
             $year = intval(date('Y'));
         }
         $debt_recovery = Model_Debt_Recovery::find_by_debit_date_id_and_year_and_month($debit_date->id, $year, $month);
         if (is_null($debt_recovery)) {
             $debt_recovery = Model_Debt_Recovery::create(array('debit_date_id' => $debit_date->id, 'year' => intval($year), 'month' => intval($month), 'user_id' => $user_id));
             if (is_null($debt_recovery)) {
                 continue;
             }
         }
         //  sms template
         try {
             $debt_recovery->sms_template_id = Model_Message_Template::find_by_key('debt_manager.recovery.sms')->id;
             $debt_recovery->save();
         } catch (Exception $ex) {
             echo $ex->getMessage();
         }
         // email template
         try {
             $debt_recovery->email_template_id = Model_Message_Template::find_by_key('debt_manager.recovery.email')->id;
             $debt_recovery->save();
         } catch (Exception $ex) {
             echo $ex->getMessage();
         }
     }
 }