Vlastní heleper pro obrázky (avatary) – Url
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- MartinitCZ
- Člen | 580
Vytvořil jsem si vlastní helper, který zpracovává obrázky z externí url (dokáže zpracovat i gravatar), poté je cachuje a vrací url.
{"muj@email.cz"|avatar:80}
{"http://muj.email.cz/avatar.png"|avatar}
Ale mám několik začátečnických problému.
1. URL
Vytvořená URL je ve tvaru:
/var/www/nette.l/temp/cache/_Aravatar/HASH.png
Toto je problém, jelikož to znamená, že na serveru nette.l to
hledá obrázek v nette.l/var/www/…
Ale vyřešil jsem to tímto:
public function getBasePath($avatarsDir)
{
// Odmazání WWW_DIR (__DIR__)
$paths = explode($this->context->parameters["wwwDir"], $avatarsDir);
return $paths[1];
}
Vůbec se mi nelíbí, že by byl přístup k tempu pro zobrazení.
- Jak vyřešit problém na který mám funkci getBasePath(..) lépe?
- Vadí přístup k danémku obrázku v tempu?
- Pokud ano (2.), tak jak byste řešili tento problém vy?
Editoval martinit (16. 6. 2012 20:05)
- MartinitCZ
- Člen | 580
llook: Díky. Jednoduché řešení a přitom člověka nenapadne ;)
Ale ted ještě nějak vyřešit tu cestu k danému obrázku. Moje funkce getBasePath(..) to vyřešit dokáže, ale …
Editoval martinit (16. 6. 2012 14:53)