Dienstag, 27. September 2011

Nützliche Texte für den App-Support

Basis: TS1702 ("iOS: Fehlerbehebung für im App Store erworbene Programme")

Mittwoch, 4. August 2010

Fun facts about Digital Editions

Ich bin ja kein besonderer CSS-Experte, aber immerhin habe ich jetzt verstanden, warum "display: None" in ePUBs in Adobe Digital Editions nicht befolgt wird:

Adobe Digital Editions ist beim "None" case sensitive und hätte gerne "none".
Ich bin Pythonist und sage gerne "None".

Und CSS selbst? Ist case insensitive spezifiziert.

Noch ein nettes Detail: Anscheinend ist nur "all" ist ein erlaubtes Medium für ADE bisher - ich suche noch nach anderen, aber screen und print u.s.w. werden alle nicht für voll genommen.

Und dann ist da noch das Prinzip: media nicht verstanden => CSS weggeworfen:

Ein CSS mit

.x { color: red; }

@media all {
.y { color: green; }
}

macht .x rot und .y grün.

Ein CSS mit

.x { color: red; }
@media all and (max-width:200px) {
.y { color: green; }
}

beeinflusst weder die Farbe von .x- noch von .y-Class-Elementen.


Ein CSS mit

.x { color: red; }
@media screen {
.y { color: green; }
}

macht .x rot und lässt .y in Ruhe.

Mittwoch, 3. März 2010

Länderpunkte ergattern

Merkt man, dass ich das Javascript-Äquivalent zu dict.fromkeys("foo bar".split(),1) und Co. nicht hinreichend gesucht habe?




var ac = {};
ac['Austria'] = 1;
ac['Belgium'] = 1;
ac['Bulgaria'] = 1;
ac['Czech Republic'] = 1;
ac['Estonia'] = 1;
ac['Finland'] = 1;
ac['France'] = 1;
ac['Germany'] = 1;
ac['Greece'] = 1;
ac['Hungary'] = 1;
ac['Ireland'] = 1;
ac['Italy'] = 1;
ac['Latvia'] = 1;
ac['Lithuania'] = 1;
ac['Luxembourg'] = 1;
ac['Malta'] = 1;
ac['Netherland'] = 1;
ac['Poland'] = 1;
ac['Portugal'] = 1;
ac['Romania'] = 1;
ac['Slovakia'] = 1;
ac['Slovenia'] = 1;
ac['Spain'] = 1;
ac['Macedonia, The Former Yugoslav Republic Of'] = 1;
ac['Croatia'] = 1;
ac['Norway'] = 1;
ac['Sweden'] = 1;
ac['Denmark'] = 1;
ac['Switzerland'] = 1;
ac['United Kingdom'] = 1;
ac['Israel'] = 1;
ac['Turkey'] = 1;

var inps = document.getElementsByClassName('country-checkbox');
for (var i=0; i < inps.length; i++ ) {
var inp = inps[i];
var tdinp = inp.parentNode;
var tddescr = tdinp.parentNode.getElementsByTagName('td')[0];
var countryname = tddescr.firstChild.nodeValue;
if (! ac[countryname]) {
inp.removeAttribute('checked');
} else {
inp.setAttribute('checked','checked');
}
}

Donnerstag, 19. November 2009

buildout: Plone 3 without Zope 2.12.x

Currently, running plone.recipe.zope2instance may fetch version 4.0a1 of the recipe, and this recipe, meant to build a Zope instance, starts pulling Zope 2.12.1 because of a dependency on a Zope egg in the recipe.

To fix this, nail plone.recipe.zope2instance to the current version, 3.6.

Currently, I use this in my plone 3 buildout:


[versions]
plone.recipe.plone = 3.1
plone.recipe.zope2instance = 3.6

Mittwoch, 17. Juni 2009

Wenn man 60 iPhone-Applikationen auf einmal als harmlos werten soll, hilft so ein Booklet vielleicht ein bisschen, die zehn Klicks je Applikation auf ein Cmd-1 zu verkürzen:


var tds = document.getElementsByClassName('mapping');
for (var i=0; i < tds.length; i++ ) {
var x = tds[i];
if (x.childElementCount == 1) {
var inp = x.childNodes[1];
if (inp.getAttribute('id') == 'rank-1') {
inp.setAttribute('checked', 'checked');
} else {
inp.removeAttribute('checked')
} } }

Freitag, 20. März 2009

web.py

I just implemented a very small webapp with the very small yet powerful web.py framework and deployed it as CGI. You remember, the every-request-is-a-process CGI of the 90ties. And it works. And is easy. Now I'm looking for more small problems to hit with the web.py hammer.

Mittwoch, 11. Februar 2009

first post!

Hi, I just thought we may need a blog.