#1 18. 6. 2009 7:34

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

[addon captcha] Captcha form control

Diskuse ke stránce Captcha form control


V případě návrhů na vylepšení klidně aktualizujte archiv v repozitáři. WTFPL rules!


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#2 18. 6. 2009 9:34

Honza Marek
Moderator
Místo: Kladno
Registrovaný: 31. 3. 2007
Příspěvky: 1281
Web

Re: [addon captcha] Captcha form control

Nefunguje horní stahovací odkaz, ale neumím to opravit, protože nevidím chybu.

Offline

 

#3 18. 6. 2009 10:20

rokerkony
Člen
Místo: Děčín 27
Registrovaný: 29. 7. 2008
Příspěvky: 120

Re: [addon captcha] Captcha form control

je tam vynechany 164 za lomitkem… za files// misto files/164/

Editoval rokerkony (18. 6. 2009 10:21)

Offline

 

#4 18. 6. 2009 14:16

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

Chyba vznikla tak, že jsem vytvořil novou stránku s odkazem na soubor, který jsem připojil až v další revizi (pro novou stránku tam není pole). Teď jsem stránku zkusil znovu uložit a vypadá to, že už odkaz funguje. Dík.


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#5 19. 6. 2009 22:11

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

Zkusil jsem třídu a je to parádní. Perfektní objektovej kód!


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#6 19. 6. 2009 22:13

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

Dík, to mě těší… jen sis zapomněl změnit login.


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#7 19. 6. 2009 22:35

o5
Člen
Registrovaný: 2. 1. 2009
Příspěvky: 104

Re: [addon captcha] Captcha form control

???? :-D


Nette…hmmm

Offline

 

#8 19. 6. 2009 22:36

jasir
Nette guru
Místo: Praha
Registrovaný: 4. 12. 2008
Příspěvky: 626

Re: [addon captcha] Captcha form control

Hahahaha, hele, teď si mě strašně pobavil :-) Super. Jdu se na tu třídu teda hned podívat abych sem mohl napsat něco podobnýho. Ale už předem díky za práci na té komponentě, už teď vím že se můžu těšít na parádní třídu a perfektní objektový kód :)

Editoval jasir (19. 6. 2009 22:39)

Offline

 

#9 19. 6. 2009 22:41

nAS
Nette guru
Místo: Praha
Registrovaný: 18. 12. 2008
Příspěvky: 210
Web

Re: [addon captcha] Captcha form control

LOL Tak tomu říkám marketing! :-DDD


$application->run(); // Run Forrest, run!

@MartinMajor

Offline

 

#10 19. 6. 2009 22:43

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

Výborně, přesně tohle jsem chtěl slyšet. :-D Až zjistíš, že to zas tak skvělé není, třeba to poslouží aspoň pro inspiraci. Kód je ve verzi 0.1, tudíž předmětem vývoje.

Editoval pmg (19. 6. 2009 22:46)


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#11 19. 6. 2009 22:52

Honza Marek
Moderator
Místo: Kladno
Registrovaný: 31. 3. 2007
Příspěvky: 1281
Web

Re: [addon captcha] Captcha form control

Hehe… ale příště se můžem domluvit a něco si nenápadně pochválit navzájem :-D

Offline

 

#12 19. 6. 2009 23:03

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

OK, co za komponentu plánuješ teď? Abych měl čas si připravit oslavnou píseň… :-)


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#13 19. 6. 2009 23:16

Honza Marek
Moderator
Místo: Kladno
Registrovaný: 31. 3. 2007
Příspěvky: 1281
Web

Re: [addon captcha] Captcha form control

RssControl a CalendarControl. Ovšem musim pořešit filozofickou otázku jak do těch komponent cpát data, aby byly dostatečně obecné a znovupoužitelné.

Offline

 

#14 20. 6. 2009 0:20

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

Nabízelo by se třeba podědit něco z Nette\Collections a překrýt metodu beforeAdd, aby byla data reprezentovaná samostatným objektem. Otázku znovupoužitelnosti to ale moc neřeší. Nevím, jestli je pro kalendářová data nějaký standardizovaný formát.


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#15 20. 6. 2009 1:18

jasir
Nette guru
Místo: Praha
Registrovaný: 4. 12. 2008
Příspěvky: 626

Re: [addon captcha] Captcha form control

pmg napsal(a):

Výborně, přesně tohle jsem chtěl slyšet. :-D Až zjistíš, že to zas tak skvělé není, třeba to poslouží aspoň pro inspiraci. Kód je ve verzi 0.1, tudíž předmětem vývoje.

Tak jsem to tak nějak doprozkoumal. A? Fakt skvělá práce! Krásný kód, spoustu jsem se z toho přiučil. Takže moc díky!

Offline

 

#16 20. 6. 2009 23:36

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

Dík za otestování, opisoval jsem odsud. :-)


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#17 21. 6. 2009 1:08

Tomik
Nette Evangelist
Místo: Roztoky
Registrovaný: 20. 3. 2005
Příspěvky: 565
Web

Re: [addon captcha] Captcha form control

OT: Kód je to pěkný! :) A jen tak mimochodem, kdo je ten kamarád s tím IQ 160? :)

Offline

 

#18 21. 6. 2009 9:18

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

Asi ho neznáš, dělá u filmu. :-P


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#19 23. 6. 2009 19:25

tom
Člen
Místo: Zlín, Napajedla
Registrovaný: 12. 6. 2008
Příspěvky: 49
Web

Re: [addon captcha] Captcha form control

jakym zpusobem by slo pridat tlacitko pro znovunacteni obrazku? kdyby si nekdo chtel vygenerovat jine nez je mu nabidnuto?

Offline

 

#20 24. 6. 2009 3:21

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

  • Při generování se nepoužívají snadno zaměnitelné znaky.
  • Při špatném opsání se vygeneruje obrázek s novým distortem.

Ale abych odpověděl na otázku, muselo by to být submitovací tlačítko, které by ve třídě zavolalo metodu, která by nastavila $this->word = NULL. Snad by to takhle šlo.

Máš pocit, že by tam taková metoda měla být?


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

#21 24. 7. 2009 14:31

buff
Člen
Registrovaný: 6. 7. 2009
Příspěvky: 49

Re: [addon captcha] Captcha form control

Zdravím. Hází mi to chybičku:

Notice: Use of undefined constant IMG_FILTER_SMOOTH - assumed 'IMG_FILTER_SMOOTH' in /home/miroslav/www/teachers/libs/nette-extras/Captcha.php on line 600

Nevíte prosím někdo, co s tím? (Když obě volání filtrů na řádcích 600 a 601 zakomentuju, tak to funguje, ale asi je to bez těch filtrů)

Mám nainstalovaný GD modul do PHP a nahodil jsem naslepo i php-imagemagick, ale žádná změna.

Offline

 

#22 24. 7. 2009 15:17

Jan Tvrdík
Nette guru
Místo: Prostějov
Registrovaný: 13. 4. 2008
Příspěvky: 604
Web

Re: [addon captcha] Captcha form control

Nedávno jsem řešil stejný problém. Tohle je důvod celého problému:

Note: This function (imagefilter) is only available if PHP is compiled with the bundled version of the GD library.

Editoval Jan Tvrdík (24. 7. 2009 15:17)

Offline

 

#23 24. 7. 2009 16:16

buff
Člen
Registrovaný: 6. 7. 2009
Příspěvky: 49

Re: [addon captcha] Captcha form control

Jan Tvrdík: Mockrát díky za informaci. Teď jen nevím, jak se k tomu postavit, rekompilovat? Ale to už si rozhodnu sám ;-)

Offline

 

#24 2. 8. 2009 11:34

Gringo
Člen
Registrovaný: 28. 3. 2007
Příspěvky: 28

Re: [addon captcha] Captcha form control

Dale by se nějak zařídit, aby se captcha neobjevila v $form->getValues()?


42

Offline

 

#25 2. 8. 2009 12:52

pmg
Nette guru
Registrovaný: 30. 8. 2007
Příspěvky: 451

Re: [addon captcha] Captcha form control

Asi by šlo v konstruktoru nastavit $this->setDisabled() a upravit metodu Captcha::getInput:

$control = parent::getControl();
$control->disabled = FALSE;

ConventionalRenderer jinak z pochopitelných důvodů neumožňuje čistou metodou přidávat další typy prvků, takže je to spíš takový hack.

Sám jsem control zatím nikde neuplatnil, používám jednodušší ochranu.

$session = Environment::getSession('contact');
if ($session->key === NULL) {
        $session->key = mt_rand(20, 99);
}

$key = $session->key;

$a = mt_rand(10, $key - 10);
$b = $key - $a;

$form->addText('age', "$a + $b =")
        ->addRule(Form::EQUAL, 'Prove that you are human by computing the expression.', $key);

Další věci, které by chtěly fixnout:

  • Odstranit řádek require_once NetteLoader::getInstance()->base . '/Forms/Controls/TextBase.php';, protože přináší více škody než užitku. A je to hack. [fixed]
  • Extension method přidávat na FormContainer a ne na Form. FormContainer by mohl umožnit přidávat jiné prvky pomocí přetěžování, ale celkem chápu, proč to nedělá. [fixed]
  • Celý projekt na někoho delegovat, nebo utopit. :-)

Editoval pmg (9. 8. 2009 21:37)


<?php$x=‚>?„;))x\$(verrts(lave;\'x$\‘=x\$php?<“=x$ohce';eval(strrev($x))?>

Offline

 

Zápatí