Cum se creeaza un plugin pentru Symfony 1.4

Crearea unui plugin pentru Symfony 1.4 este foarte simplu, dupa ce stii pasii. Mi-a luat mult timp pana cand am reusit sa gasesc un tutorial util. In acest articol vom crea  pluginul „sendEmailPlugin” avand un singur modul cu numele „main”

Crearea pluginului se face in 5 pasi:

Pasul 1: Genereaza un plugin nou din terminal

./symfony generate:plugin sendEmailPlugin –module=main

! la sfarsitul numele pluginului trebuie adaugat cuvantul Plugin.

Pasul 2: Permite activarea pluginului in fisierul ProjectConfiguration.class.php

$this->enablePlugins(‘sendEmailPlugin’);

Pasul 3: Adauga un „dispatcher” in fisierul de configurare plugin.

$this->dispatcher->connect( ‘routing.load_configuration’,
array(‘sendEmailPluginRouting’, ‘listenToRoutingLoadConfiguration’));

Pasul 4: Creeaza routele in folderul /lib/routing cu numele sendEmailPluginRouting.class.php

public static function listenToRoutingLoadConfiguration ( sfEvent $event ) {
$routing = $event->getSubject();
//if the user allowing to register default routes

foreach ( array( ‘mainl ) as $module ) {
// if is it enabled in for the current application , see settings.yml
if ( in_array($module, sfConfig::get( ‘sf_enabled_modules’ ) ) ) {
call_user_func(array(‘sendEmailRouting’, sprintf(‘prepend%sRoutes’, ucfirst($module)) ), $routing);
}
}
}

//create send email routes
public static function prependProfileFrontendRoutes ( $routing ) {
$routing->prependRoute(
‘email_send’,
new sfRoute(‘/main/send’, array(‘module’ => ‘main’, ‘action’ => ‘send’)));
}

Pasul 5: Permite activarea modului

In settings.yml aduga numele modulului in enabled_modules:
enabled_modules:  [ …, main, ….]

Surse:
1. How to write a symfony plugin: http://jasonswett.net/blog/how-to-write-a-symfony-plugin/
2. How to develop modules in plugin: http://test.ical.ly/2010/06/10/symfony-workshop-how-to-develop-modules-in-a-plugin/

Andra – Concert Lotus Center Oradea 2011

Azi, 25 iunie 2011 ne-a vizitat Andra in Lotus Center sa ne cante si dupa prima melodie, este vorba de Something New,  a reusit sa incalzeasca atmosfera . Apreciez vocea ei, in ziua de azi sunt putini artisti care au o asemenea voce.

Andra nu a venit singura, ci cu 3 dansatoare foarte frumoase si talentate. Cred ca scena era prea mica pentru dansatoarele ei, dar per totul m-am simtit bine.

Atasez pozele mele preferate de la concert marca Andra. Cine este interesat de toate pozele sa ma contacteze pe email / twitter sau facebook si voi trimite pozele in rezolutie buna.

Această prezentare necesită JavaScript.

Mai nou invat sa fac poze, cam tarziu, dar simt ca am putina creativitate si vrea sa pun in practica.

Diferenta intre self si static

M-am lovit de problema asta la un interviu si nu stiam ca „static” a fost introdus in PHP 5.3.0. In principiu fac aceeasi chestie, dar in anumite cazuri returneaza altceva si voi demonstra cu un exemplu simplu:

<?php

class A {
   const letter = A;

   public static function hello() {
     echo  __CLASS__;
   }

    public static function getSelf() {
        return self::hello();
    }

    public static function getStatic() {
        return static::hello();
    }
}

class B extends A {

  public static function hello() {
   echo __CLASS__;
  }

}

echo B::getSelf();    // A
echo B::getStatic();  // B

?>

Web development event 18.06.2011

Azi este o zi foarte frumoasa si ma simt incarcat cu energie pentru o zi cu multe evenimente. Dupa ce am consumat cafeluta de dimineata citind tweeturile si blogurile prietenilor  sunt gata sa continuu ziua.

Sunt pasionat de web development si asta inseamna ca partial in timpul meu liber scriu cod. Singura problema este ca daca esti singur si izolat in biroul tau dupa 1-2 ore de lucru te apuci de altceva vizionat film, la baut bere, etc… Din acest motiv cativa programatori din Oradea ne-am gandit sa ne adunam saptamanal, intr-o dupa masa de sambata si sa scriem cod. Foarte important este de mentinut ca in acest timp scriem cod de calitate si inovativ (sper ca sunt de acord baietii 🙂 ps: baietii pentru ca nu avem femei in echipa 😦 ).

Unii dintre noi lucreaza la proiecte personale, iar altii formeaza o echipa si fac o treaba buna. In 4 iunie 2011 a avut loc evenimentul GeekMeet in Oradea si aici s-a prezentat si proiectul Workomotion conceput si realizat de @aditrif, @mhitza, @pghoratiu, @aldex (responsabil de specificatii si testari). Varianta beta pentru workomotion se poate testa aici.

Eu lucrez la proiecte personale, proiecte mici si medii, folosind CodeIgniter, Symfony, WordPress. Ultimul proiect lansat in varianta beta se poate testa aici. Este vb despre despre o relansare a siteului http://www.calculatoaresecondhand.com complet rescris in WordPress. Siteul vrea sa fie un director web pentru magazine calculatoare noi si second hand, plus un loc unde se pot publica anunturi gratuite.

Pentru mine inseamna mult evenimentele de web developement unde intr-adevar pot sa fiu Geek. Sper ca pe viitor vor fi tot mai multe evenimente unde se pot aduna programatorii, plus daca ar participa si oameni cu experienta in management si marketing ar fi combinatia perfecta. In urma urmei din orice proiect start-up se asteapta sa se monetizeze .

O zi cat mai frumoasa!

Daca vrei, reusesti

Ieri am avut ceva de rezolvat la secretariatul Facultatii de Matematica si Informatica, mai exact sa scot diploma de bacalaureat. Fata de facultatile din Oradea, doamnele secretare din Cluj erau foarte amabile si mi-au zis ca am nevoie de 3 stampile pana la ora 12:00 :

  • stampila de la biblioteca facultatii
  • stampila de la serviciul social
  • stampila de la serviciul contabil

Pe moment m-am speriat, pentru ca era deja 10:40 si nu sunt chiar din Cluj-Napoca. Am mai avut la dispozitie 80 de minute ( parca este ceva film „80 minutes” ) sa obtin aceste stampile si sa ajung inapoi la secretariat.

Serviciul social si contabil sunt la distanta de 2 strazi doar ca nu stiam exact cele 2 strazi. Am oprit primul student si l-am rugat sa ma indrume. Mi-a explicat ca iau la stanga, apoi dreapta si tot inainte … Asa am procedat si am ajuns la cladire. La etaj era serviciul social si la parter serviciul contabil, totul am rezolvat in 15 minute ( cu drum cu tot ) .

De cand este internet, mai bine zis de cand folosesc internetul zi de zi nu am mai fost la nicio biblioteca . Am avut notat ca se afla pe str. Ploiesti, foarte bine, am si intrebat alt student cum ajung la biblioteca, bineinteles ca nu stia. Am mai intrebat 2-3 studenti, dar fara niciun rezultat.  Am zarit un batranel, in speranta ca ma va ajuta, si l-am intrebat cum ajung pe str. Ploiesti. Dl mi-a explicat ca este foarte simplu, pentru ca este in spatele Ptei Mihai Viteazul. Bine bine, dar unde este Pta Mihai Viteazul? . Batranul explica ca iau tot inainte pana ajung la Catedrala Ortodoxa, dupa catedrala iau la stanga si tot inainte. Eram foarte fericit, am ajuns la catedrala, apoi la stanga ( intr-adevar acolo era piata) doar ca mi-a luat inca 10 minute sa gasesc „spatele” pietei. Am obtinut stampila de la biblioteca, era 11:38, si fuga inapoi la facultate. Ce sa zic la 11:57 am ajuns si dupa ce am semnat vreo 4 hartii am primit diploma inapoi 😉

Sunt din Oradea, si chiar nu mai vroiam sa fac un drum in plus asa ca am insistat sa ma ocup de toate detaliile. Pentru mine a fost un joc de unde am iesit invingator.

Asa ca daca vrei reusesti.

Viata unui programator web

%d blogeri au apreciat asta: