All pastes #459669 Raw Edit

SamuraiDio

public php v1 · immutable
#459669 ·published 2007-04-26 16:43 UTC
rendered paste body
<?phpclass RecadosController extends AppController{    var $name = 'Recados';    var $components = array ('Pagination', 'Akismet'); // Added     var $helpers = array('Pagination'); // Added        //akismet component variables     var $siteUrl = 'http://perfiil.com.br';    var $wpApiKey = 'api-key-here';    var $arrayAskimet;    var $criteria = null;       /*    function index()    {        $this->set('eventos', $this->Evento->findAll());    }    */    function index() {            $_SESSION['page_image'] = 'recados.png';                $this->criteria = 'spam = false';                 list($order,$limit,$page) = $this->Pagination->init($this->criteria); // Added         $data = $this->Recado->findAll($this->criteria, NULL, 'data DESC', $limit, $page); // Extra parameters added                  $this->set('recados',$data);     }     function add()    {        if (!empty($this->data))        {                	//verfifica se recado já nao existe         	$criteria = "recado =  '{$this->data['Recado']['recado']}'";        	$criteria .= ($this->data['Recado']['autor']) ? (" AND autor = '{$this->data['Recado']['autor']}'") : (NULL);        	$criteria .= ($this->data['Recado']['email']) ? (" AND email = '{$this->data['Recado']['email']}'") : (NULL);        	        	$data = $this->Recado->find($criteria);        	if ($this->Recado->getNumRows() > 0) {        	    $mensagem = 'Este recado j&aacute; foi adicionado.';        	} else {                    //Verificando dados no akismet                 $this->arrayAskimet = array (                                                                'author'         =>    $this->data['Recado']['autor'],                                                            	'email'           =>    $this->data['Recado']['email'],                                                            	'body'           =>    $this->data['Recado']['recado']                                                                );                $this->Akismet->SpamCheck ($this->siteUrl, $this->wpApiKey, $this->arrayAskimet);                                if($this->Akismet->akismet->errorsExist()) { // returns true if any errors exist                	if($this->Akismet->akismet->isError('AKISMET_INVALID_KEY')) {                		$mensagem = 'Imposs&iacute;vel adicionar recado, favor, tente novamente mais tarde. 1';                	} elseif($this->Akismet->akismet->isError('AKISMET_RESPONSE_FAILED')) {                		$mensagem = 'Imposs&iacute;vel adicionar recado, favor, tente novamente mais tarde. 2';                	} elseif($this->Akismet->akismet->isError('AKISMET_SERVER_NOT_FOUND')) {                		$mensagem = 'Imposs&iacute;vel adicionar recado, favor, tente novamente mais tarde. 3';                	}                } else {                	// No errors, check for spam                	if ($this->Akismet->akismet->isSpam()) { // returns true if Akismet thinks the comment is spam                  		$this->data['Recado']['spam'] = TRUE;                  		$mensagem = 'Seu recado foi adicionado e est&aacute; aguardando aprova&ccedil;&atilde;o';                	} else {                  		$this->data['Recado']['spam'] = FALSE;                  		$mensagem = 'Seu recado foi adicionado com sucesso';                	}                	                	//adicionando recado                 	$this->Recado->save($this->data);                }                        }            //exibe mensagem             $this->flash($mensagem,'/recados');        }    }}?>