/**
  * Magic path to mark submissions as unfavorite
  *
  * @param string @srs_uuid
  * @param unknown $srs_uuid
  */
 public function unfavorite($srs_uuid)
 {
     $conn = AIR2_DBManager::get_master_connection();
     $srsid = $conn->fetchOne('select srs_id from src_response_set where srs_uuid = ?', array($srs_uuid), 0);
     if (!$srsid) {
         return;
     }
     $now = air2_date();
     $flds = "usrs_user_id, usrs_srs_id, usrs_favorite_flag, usrs_cre_dtim, usrs_upd_dtim";
     $ondup = "on duplicate key update usrs_favorite_flag=0,usrs_upd_dtim='{$now}'";
     $ins = "insert into user_srs ({$flds}) values (?,{$srsid},0,'{$now}','{$now}') {$ondup}";
     $n = $conn->exec($ins, array($this->user->user_id));
     air2_touch_stale_record('src_response_set', $srsid);
 }
 /**
  * Update
  *
  * @param Doctrine_Record $rec
  * @param array $data
  */
 protected function air_update($rec, $data)
 {
     $rec->srs_upd_user = $this->user->user_id;
     air2_touch_stale_record('src_response_set', $rec->srs_id);
 }
 /**
  * Update
  *
  * @param Doctrine_Record $rec
  * @param array   $data
  */
 protected function air_update($rec, $data)
 {
     $rec->sr_upd_user = $this->user->user_id;
     air2_touch_stale_record('src_response_set', $rec->sr_srs_id);
     // touch public_response just in case. if it isn't public, it will be skipped.
     air2_touch_stale_record('public_response', $rec->sr_srs_id);
 }