čtvrtek 12. března 2015

Šablona Html Emailu

Každý správný kodér ví že používat inline CSS zápis v HTML je hřích. Že je potřeba minimálně všechny css styly vyčlenit do hlavičky html souboru. Ti lepší znás je dají do seperátního *.css souboru. Naopak je tomu ale pokud se snažíte vytvořit HTML šablonu pro e-mail.

  • Nepřipojíte externí stylesheet
  • Styly v hlavičce budou ignorovány
  • Jediné co Vás zachrání je přidat styl na jednotlivé tagy
  • S pseudotřídami jako je hover nad odkazem se také rozlučte. Inline řešení :hover{...} nefunguje (http://stackoverflow.com/questions/1033156/how-to-write-ahover-in-inline-css)
Pokud chcete do šablony vložit obrázek, použíjte tag HTML a absolutní adresu na vašem serveru.
Jak se e-mail zobrazí v Gmailu

Jak se e-mail zobrazí v Outlooku
Jak se e-mail zobrazí v IceWarp web klientu

To že se vaše šablona zobrazuje s vybroušeným CSS3 designem na gmailu je hezké, ale zkuste si ji odeslat na firemní e-mail a otevřít v outlooku. Uaaa hodiny a hodiny hraní si s kulatýma rohama a floatováním je v ....
  • Kulaté rohy
  • Float

Inspiraci si vezměte z e-mailů které vám posílá třeba Microsoft. Tabulkový layout jak z doby kamenné.


<table align="center" width="800" border="0" cellpadding="0" cellspacing="0" style="width:800px">
...
</table>

Zdroje:
http://zurb.com/

Jak to dělám já: Blog a sociální sítě

Při plnění běžných pracovních úkolů jste určitě narazili na problém, který dalo spoustu práce vyřešit prtože jste se s danou problematikou setkali poprvé. Nebo jste se stejným problémem zaobírali už v minulosti, ale nepředpokládali jste, že by jste se s ním museli poprat znovu. Hodilo by se mít poznámky z minula do kterých by jste se teď mohli podívat, že?

Já jsem se naučil dělat si během řešení takovýchto problému poznámky do on-line blogu jako je například tento na Blogger.com.
Kdybych si poznámky dělal ještě když jsem pracoval v Cígler software, tak bych se teď nemusel znovu učit jak se dělají zástupci (aplikace) do Chrome Web Store pro Online aplikace jako iDoklad.cz. Za dva roky člověk skoro zapomene, že to stejné někdy už v životě jednou řešil.

Blogger | www.blogger.com
Odkaz na vytvořený článek si přidám do Bitly. To mi umožňuje sledovat kolik lidí se přes tento odkaz na článek podívalo. 

Bitly | bitly.com
Bitly odkaz potom sdílím na Twitter, Facebook, Google+.
Fajn rozšíření do Chromu je Bitly - Unleash the power of the link

Twitter | www.twitter.com
Pokud si vzpomenu, že jsem podobný problém někdy řešil, můžu se podívat na několik míst, kde se může odpověď nacházet. Pokud podstivě sdílím všechno z blogu na Twitter tak stačí prohledat pouze svůj twitter. 

středa 11. března 2015

Xml Unit

Pokud jste někdy psali testy na XML určitě jste přišli na to že testování pomocí
 Assert.AreEqual(expectedInvoice, xmlString);
Není moc dobrý nápad, protože při každé změně se vám testy rozbijí.

XML Unit se perfektně hodí na testování vygenerovaného XML protože umožňuje testovanou hodnotu vyhledávat pomocí XPath.

Install-Package XmlUnit.Xunit

Příklad:
using System;
using Bt.Stormware.Entity;
using System.Text;
using System.Diagnostics;
using NUnit.Framework;
using System.Xml;
using XmlUnit.Xunit;


 [Test]
        public void XmlTest()
        {
            var xmlString = "<body><a href="https://www.blogger.com/null">Karel</a><input ext="" type="\" /><textarea rows="\">Jan</textarea></body>";

            XmlAssertion.AssertXmlValid(xmlString);
            XmlAssertion.AssertXPathEvaluatesTo("/body/a[text()]", xmlString, "Karel");
            XmlAssertion.AssertXPathEvaluatesTo("/body/a", xmlString, "Karel");

            
            XmlAssertion.AssertXPathExists("/body/input[@type='Text']", xmlString);
            XmlAssertion.AssertXPathEvaluatesTo("/body/textarea[@rows='3']", xmlString, "Jan");
            XmlAssertion.AssertXPathEvaluatesTo("/body/textarea[@rows]", xmlString, "Jan");

        }