<commit_before><?php

class ParlementaireScrutin extends BaseParlementaireScrutin
{

  public function setParlementaireByIDAN($id_an) {
    $parl = Doctrine::getTable('Parlementaire')->findOneByIdAn($id_an);
    if (!$parl) {
      throw new Exception("Aucun parlementaire trouvé avec l'ID AN $id_an");
    }

    return $this->_set('parlementaire_id', $parl->id);
  }

  public function updatePresence() {
    $this->Scrutin->Seance->setUnsetPresenceLight(
      $this->parlementaire_id,
      $this->parlementaire_groupe_acronyme,
      'scrutin',
      $this->Scrutin->getLinkSource(),
      $this->position && $this->position != "nonVotant" && !$this->par_delegation
    );
  }

}
<commit_msg>adjust accounting presences for special cases of mise_au_point<commit_after><?php

class ParlementaireScrutin extends BaseParlementaireScrutin
{

  public function setParlementaireByIDAN($id_an) {
    $parl = Doctrine::getTable('Parlementaire')->findOneByIdAn($id_an);
    if (!$parl) {
      throw new Exception("Aucun parlementaire trouvé avec l'ID AN $id_an");
    }

    return $this->_set('parlementaire_id', $parl->id);
  }

  public function updatePresence() {
    $this->Scrutin->Seance->setUnsetPresenceLight(
      $this->parlementaire_id,
      $this->parlementaire_groupe_acronyme,
      'scrutin',
      $this->Scrutin->getLinkSource(),
    // on compte une présence quand toutes les conditions suivantes sont vérifiées :
    // cf https://github.com/regardscitoyens/nosdeputes.fr/pull/115#issuecomment-418172211
    // - on a effectivement une position et pas seulement une mise au point
    // - la position n'est pas nonVotant (ce qui correspond aux présidents de Séance + systématiquement au président de l'Assemblée même en son absence cf https://github.com/regardscitoyens/nosdeputes.fr/pull/115#issuecomment-413740999 )
    // - l'éventuelle mise au point n'indique pas non plus nonVotant
    // - le vote n'était pas par délégation
      $this->position && $this->position !== "nonVotant" && $this->mise_au_point_position !== "nonVotant" && !$this->par_delegation
    );
  }

}

{'fraction_non_alphanumeric': 0.125, 'fraction_numerical': 0.011450381679389313, 'mean_word_length': 4.028776978417266, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 30, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '248089', 'n_tokens_mistral': 726, 'n_tokens_neox': 706, 'n_words': 144}