コード例 #1
0
ファイル: ArquivoModel.php プロジェクト: renanrmelo/cvsgit
 /**
  * Retorna arquivos adicionados para commit
  *
  * @access public
  * @return array - lista de StdClass com configuração do commit
  */
 public function getAdicionados()
 {
     $aArquivos = array();
     $aArquivosSalvos = $this->getDataBase()->selectAll("SELECT * FROM add_files WHERE project_id = {$this->getProjeto()->id}");
     foreach ($aArquivosSalvos as $oDadosArquivo) {
         $oArquivo = new Arquivo();
         $oArquivo->setArquivo($oDadosArquivo->file);
         $oArquivo->setTagMensagem($oDadosArquivo->tag_message);
         $oArquivo->setTagArquivo($oDadosArquivo->tag_file);
         $oArquivo->setMensagem($oDadosArquivo->message);
         $oArquivo->setTipo($oDadosArquivo->type);
         $oArquivo->setComando((int) $oDadosArquivo->command);
         $aArquivos[$oDadosArquivo->file] = $oArquivo;
     }
     return $aArquivos;
 }
コード例 #2
0
ファイル: AddCommand.php プロジェクト: renanrmelo/cvsgit
 public function processarArquivos()
 {
     $aArquivos = array();
     $sMensagem = '<info>Arquivo %s: %s</info>';
     /**
      * Procura os arquivos para adicionar 
      */
     foreach ($this->oInput->getArgument('arquivos') as $sArquivo) {
         if (!file_exists($sArquivo)) {
             continue;
         }
         if (is_dir($sArquivo)) {
             continue;
         }
         $aArquivos[] = realpath($sArquivo);
     }
     if (empty($aArquivos)) {
         $aArquivos = array_keys($this->aArquivos);
     }
     foreach ($aArquivos as $sArquivo) {
         $lAdicionado = true;
         if (!empty($this->aArquivos[$sArquivo])) {
             $lAdicionado = false;
             $oArquivo = $this->aArquivos[$sArquivo];
             if (in_array($oArquivo->getComando(), array(Arquivo::COMANDO_ADICIONAR_TAG, Arquivo::COMANDO_REMOVER_TAG))) {
                 $oArquivo = new Arquivo();
                 $oArquivo->setArquivo($sArquivo);
             }
         } else {
             $oArquivo = new Arquivo();
             $oArquivo->setArquivo($sArquivo);
         }
         foreach ($this->oInput->getOptions() as $sArgumento => $sValorArgumento) {
             if (empty($sValorArgumento)) {
                 continue;
             }
             switch ($sArgumento) {
                 /**
                  * Mensagem do commit 
                  */
                 case 'message':
                     $oArquivo->setMensagem($this->oInput->getOption('message'));
                     break;
                     /**
                      * Tag do commit 
                      */
                 /**
                  * Tag do commit 
                  */
                 case 'tag':
                     $oArquivo->setTagMensagem($this->oInput->getOption('tag'));
                     break;
                     /**
                      * Tag do commit 
                      */
                 /**
                  * Tag do commit 
                  */
                 case 'tag-commit':
                     $iTag = $this->oInput->getOption('tag-commit');
                     $oArquivo->setTagMensagem($iTag);
                     $oArquivo->setTagArquivo($iTag);
                     $oArquivo->setComando(Arquivo::COMANDO_COMMITAR_TAGGEAR);
                     break;
                     /**
                      * Commit para adicionar fonte ou funcionalidade
                      */
                 /**
                  * Commit para adicionar fonte ou funcionalidade
                  */
                 case 'added':
                     $oArquivo->setTipo('ADD');
                     break;
                     /**
                      * Commit para modificacoes do layout ou documentacao 
                      */
                 /**
                  * Commit para modificacoes do layout ou documentacao 
                  */
                 case 'style':
                     $oArquivo->setTipo('STYLE');
                     break;
                     /**
                      * Commit para correcao de erros 
                      */
                 /**
                  * Commit para correcao de erros 
                  */
                 case 'fixed':
                     $oArquivo->setTipo('FIX');
                     break;
                     /**
                      * Commit para melhorias 
                      */
                 /**
                  * Commit para melhorias 
                  */
                 case 'enhanced':
                     $oArquivo->setTipo('ENH');
                     break;
             }
         }
         $iTagArquivo = $oArquivo->getTagArquivo();
         $iTagRelease = $this->getApplication()->getConfig()->get('tag')->release;
         if (empty($iTagArquivo) && !empty($iTagRelease)) {
             $oArquivo->setTagArquivo($iTagRelease);
         }
         $this->aArquivos[$sArquivo] = $oArquivo;
         if ($lAdicionado) {
             $this->oOutput->writeln(sprintf($sMensagem, 'adicionado a lista', $this->getApplication()->clearPath($sArquivo)));
         } else {
             $this->oOutput->writeln(sprintf($sMensagem, 'atualizado', $this->getApplication()->clearPath($sArquivo)));
         }
     }
     if (!empty($this->aArquivos)) {
         $this->oArquivoModel->salvarAdicionados($this->aArquivos);
     }
 }