Edukira salto egin | Salto egin nabigazioara

Tresna pertsonalak

Eibarko peoria, San Blasa baino hobia
Hemen zaude: Hasiera / Blogak / e-gorblog

e-gorren blog pertsonala (komikiak, informatika eta beste)

"Komikia eta Giza Eskubideak" erakusketa

Aitzol Astigarraga 2005/03/11 08:35
Gaurtik hasita eta hurrengo ostiralera arte
"Komikia eta Giza Eskubideak" erakusketa

Irudia: Carlos Giménez

Donostian martxoaren 11tik 18ra egingo diren Zinea eta Giza Eskubideen III. Topaketen barruan, Komikia eta Giza Eskubideak izeneko erakusketa ikusteko aukera izango da. Besteren artean, Will Eisner, Carlos Giménez, Annie Goetzinger, Luis García edo Pulitzer sariaren irabazle Art Spiegelmanen lanak izango dira ikusgai.

Erakusketa Donostiako Liburutegi Nagusian ikusi ahal izango da, astelehenetik ostiralera 10:00etatik 20:30era eta larunbatean 10:00etatik 13:30era eta 16:30etik 20:30era.

"Cinco fabulosas décadas de comics Marvel" liburuaren iruzkina

e-gor 2005/03/08 23:25
"Ideien etxea"ren historia
"Cinco fabulosas décadas de comics Marvel" liburuaren iruzkina

Irudia: John Romita Sr.

Bai, onartzen dut: superheroien komiki amerikarrak gustatzen zaizkit. Superheroien komikiak ez dira nire komikitekan gehiengoa, ezta gutxiago ere. Aldiz, komikiei buruzko liburuei dagokionean, gehiengoa amerikarra daukat. Agian gehiago daudelako? Ziurrenik bai, marketina hobe zaintzen dute. Neskalagunak oparitu didan eta irakurri dudan azkena da Cinco fabulosas décadas de comics Marvel.

Badakit, zineman bezala, askoz kultuagoa gelditzen dela esatea komiki europarra bakarrik irakurtzen dudala, baina ez da horrela. Izan ere, edozein kultur adierazpenetan, ez naiz genero batzuk goratu eta beste batzuk gutxiestearen zale. Nire gustua, generoak baino, kalitateak gidatzen du gehiago, eta genero guztietan daude gauza onak eta txarrak. Eta mainstream amerikarrean ere badaude gauza onak.

Hala ere, ez naiz hain-hain zalea ere, eta ez dut superheroien komiki askorik. Ziurrenik izango da gauzak erdizka uztea ez zaidalako gustatzen (superheroien komiki gehienetan istorioa jarraia izaten da, eta kolekzio osoak izateko pazientzia eta diru asko behar da). Nik nahiago dut beste komiki formatoa, hilabetekaria ez dena, liburu baten istorio bat kontatzen duena, eta kolekzio txikiagoak dituena. Eta agian horregatik ere izango ditut superheroiei buruzko horrenbeste liburu. Nahiz eta komikia izan ez, superheroi baten historia guztia daukat liburu bakarrean. Aipatutakoaz gain, X-Men, Spiderman eta Hulk-i buruzko "La guía definitiva" izenekoak ditut.

Cinco fabulosas décadas de comics Marvel liburua gustura irakurri dut, Marvel-en superheroi guztien historia kontatzen baitu (1991 urtera arte, ordukoa baita liburuaren jatorrizko edizio estatubatuarra). Ez superheroien historia orokorra bakarrik, baizik eta euren komikiena ere bai. Alde horretatik, edozein zaleri atsegin emateko modukoa da liburua. Eta erraz irakurtzen da, ez pentsa liburua izanagatik guztia testua denik. Komikien funtsetako bat irudiak dira, eta ezin da egin komikiei buruzko ganorazko libururik irudirik barik. Honek mordoa ditu, 700dik gora!

Baina horrez gain, komikien historia orokorrari buruz ere hitz egiten du, komiki amerikarraren historiari buruz batipat. Izan ere, Marvel etxearen historia komiki amerikarraren historiaren testuinguruan baino ezin da ulertu, eta horri buruz ere asko ikasten da: pulp fictionaren eta komiki-bandaren aurrekariak, bien nahasketatik comic-bookaren sorrera, Komikien Urrezko Aroa, komikien krisia, Marvel-en garaia, komiki-denden sorrera...

Liburuak bi gauza ditu gustatu ez zaizkidanak. Alde batetik, liburu guztian zehar autobonbo-propaganda kutsua nabari da. Eta bestetik, ez da soilik superheroien eta euren komikien historia kontatzen. Ikuspegi laborala (langileen, hau da, marrazkilari, gidoilari eta editoreen, gorabeherak) eta enpresariala (diru-kontuak, jabe-aldaketak...) ere ematen da, eta niri, ba, zer nahi duzue esatea, ez da hainbeste interesatzen zaidan zerbait.

Edonola ere, superheroi-komikien zaleek gozatzeko moduko liburua da, komiki amerikarraren historiari buruz asko irakasten duena gainera. Komiki baten sortze-prozesu osoa nola den ere azaltzen dute atal baten (beraien etxean behintzat, Marvel metodoa deitzen diotena). Eta liburu guztia txintxo-txintxo irakurtzen duenarentzako sari gisa, amaieran Namor, Spider-Man, The Fantastic Four eta Wolverineren istorio klasiko bana dakar, oso onak guztiak.

Fitxa

Izenburua: Cinco fabulosas décadas de comics Marvel

Egilea: Les Daniels

Argitaletxea: Planeta DeAgostini

Urtea: 1996 (jatorrizko edizioarena 1991)

ISBN: 84-395-3909-6

Nola hobetu zure COREBlog bloga III: Kolaboratzaileei gure blogean artikuluak idazteko aukera eman

e-gor 2005/03/03 00:26

COREBlog-ekin egindako blogek (eibar.org-en daudenak adibidez) ez daukate artikuluak gehitzeko pantailarik, ez bada kudeatzailearen pasahitzarekin kudeatze-pantailetan sartuta. Eta gure blogean hainbat kolaboratzaileri artikuluak idazteko aukera eman nahi badiegu, ez dugu kudeatzaile baimenak eman beste aukerarik. Baina hau kolaboratzaile batentzat konplikatuegia izan daiteke eta gure blogarentzat arriskutsua. Ikusi hemen nola egin dezakegun artikuluak idazteko pantaila bat, argazkiak gehitzeko aukera eta guzti, eta nola eman baimenak horretarako soilik.

Hasteko, blogaren erroan DTMLMethod bat sortu, "addEntryForm" izenarekin, eta eduki honekin:

<dtml-var blog_header>
<dtml-var blog_banner>
<div id="content">
<div class="blog">
<h3 class="title">Artikulua gehitu</h3>
<div class="comments-head">Bete artikuluaren eremuak. Batzuk aukerakoak dira.</div>
<div class="comments-body">
<form ACTION="manage_addEntry2" METHOD="POST" enctype="multipart/form-data">
<table cellspacing="1" cellpadding="0" border="0">
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-label">Egilea</div>
        </td>
        <td align="left" valign="top">
        <input type="text" name="author" size="40" value="<dtml-var "AUTHENTICATED_USER.getUserName()">" />
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-label">Izenburua</div>
        </td>
        <td align="left" valign="top">
        <input type="text" name="thetitle" size="80" value=""/>        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-optional">Azpititulua</div>
        </td>
        <td align="left" valign="top">
        <input type="text" name="subtitle" size="80" value=""/>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-optional">Noiz</div>
        </td>
        <td align="left" valign="top">
        <input type="text" name="entry_date" size="40" value=""/>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-label">Atala</div>
        </td>
        <td align="left" valign="top">
        <select name="main_category:int">
        <dtml-in category_list>
        <option value="<dtml-var id>"><dtml-var name missing="category name is missing"></option>
        </dtml-in>
        </select>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-optional">Azpiatalak</div>
        </td>
        <td align="left" valign="top">
        <dtml-in category_list>
        <input type="checkbox" name="sub_category:list" value="<dtml-var id>" /><dtml-var name missing="category name is missing">
        </dtml-in>
        </td>
    </tr>
    <input type="hidden" name="format:int" value="1">
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-label">Sarrera</div>
        </td>
        <td align="left" valign="top">
        <textarea name="thebody:text" style="width: 500px; height: 250px; border: 1px solid #000000;"></textarea>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-optional">Gorputza</div>
        </td>
        <td align="left" valign="top">
        <textarea name="extend:text" cols="60" rows="6"></textarea>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-optional">Laburpena</div>
        </td>
        <td align="left" valign="top">
        <textarea name="excerpt:text" cols="60" rows="6"></textarea>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-label">Erantzunak</div>
        </td>
        <td align="left" valign="top">
        <select name="allow_comment:int">
        <option value="0" >Ezer ez (ezin gehitu, ezkutatuta)</option>
        <option value="1" selected>Irekita (gehitu daiteke, agerian)</option>
        <option value="2" >Itxita (ezin gehitu, agerian)</option>
        </select>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-label">Trackback-ak</div>
        </td>
        <td align="left" valign="top">
        <select name="receive_trackback:int">
        <option value="0" >Ezer ez (ezin gehitu, ezkutatuta)</option>
        <option value="1" selected>Irekita (gehitu daiteke, agerian)</option>
        <option value="2" >Itxita (ezin gehitu, agerian)</option>
        </select>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-label">Egoera</div>
        </td>
        <td align="left" valign="top">
        <select name="moderated:int">
        <option value="0" >Itxita</option>
        <option value="1" selected>Irekita</option>
        </select>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header">
        <div class="form-optional">Argazkia</div>
        </td>
        <td align="left" valign="top">
        <input type="file" name="photo">
        </td>
    </tr>
    <tr>
        <td align="left" valign="top" class="list-header" rowspan="2">
        <div class="form-optional">Trackback helbidea(k)</div>
        </td>
        <td align="left" valign="top">
        <textarea name="trackback_url:text" cols="60" rows="4"></textarea>
        </td>
    </tr>
    <tr>
        <td align="left" valign="top">
        <input type="checkbox" name="sendnow" checked />Bidali trackback eskaera(k) orain
        </td>
    </tr>
    <tr>
        <td align="left" valign="top">
        </td>
        <td align="left" valign="top">
        <div class="form-element">
        <input class="form-element" type="submit" name="submit" value="Artikulua gehitu" />
        </div>
        </td>
    </tr>
</table>
</form>
</div>
</div>
</div>
<dtml-var blog_footer>

Metodo honek "manage_addEntry2" izeneko beste bati deitzen dio, honek hainbat gauza egin ditzan (irudia gehitu irudien karpetan, sarreraren hasieran lerro bat gehitu irudia sartzeko, aurrebista erakutsi) COREBlog-en jatorrizko "manage_addEntry" metodoari deitu aurretik. Hau da "manage_addEntry2" metodoaren edukia:

<dtml-var blog_header>
<dtml-var blog_banner>
<dtml-if photo>
    <dtml-call "REQUEST.set('numblist',[])">
    <dtml-in "images.objectIds()">
        <dtml-if "_.getitem('sequence-item')[:4]=='img_'">
            <dtml-call "numblist.append(_.int(_.getitem('sequence-item')[4:]))">
        </dtml-if>
    </dtml-in>
    <dtml-if "_.len(numblist)==0">
        <dtml-call "REQUEST.set('imgnumber',0)">
    <dtml-else>
        <dtml-call "REQUEST.set('imgnumber',_.max(numblist)+1)">
    </dtml-if>
    <dtml-call "images.manage_addImage('img_'+_.str(imgnumber),photo)">
    <dtml-call "REQUEST.set('thebody2','<img src="./images/img_'+_.str(imgnumber)+'" border="0"><br>\n')">
<dtml-else>
    <dtml-call "REQUEST.set('thebody2','')">
</dtml-if>
<dtml-call "REQUEST.set('thebody2',thebody2+thebody)">
<h3 class="title">Confirm</h3>
<div id="content">
<div class="blog">
<div class="entry">
<div class="blogbody">
<h3 class="title"><dtml-var thetitle></h3>
<dtml-if "_.len(subtitle)>0"><div class="subtitle"><dtml-var subtitle></div></dtml-if>
<dtml-in category_list>
<dtml-if "_.int(id)==main_category">
<dtml-call "REQUEST.set('catname',name)">
</dtml-if>
</dtml-in>
<div class="category">
<a href="<dtml-var blogurl missing="">/categorylist_html?cat_id=<dtml-var main_category>">[<dtml-var catname missing="category name is missing">]</a>
</div>
<p>
<dtml-call "REQUEST.set('thebody3',_.string.replace(_.string.replace(_.string.replace(thebody2,'&lt;','<'),'&gt;','>'),'&quot;',_.chr(34)))">
<dtml-in "_.string.split(thebody3,'\n')">
    <dtml-let bodyline="_.getitem('sequence-item')">
    <dtml-if "_.getitem('sequence-index')==0">
        <dtml-call "REQUEST.set('bodylist',[])">
    <dtml-if "bodyline[0:4]=='<img'">
        <dtml-let entry_image="bodyline[_.string.find(bodyline,'src=')+5:_.string.find(bodyline,_.chr(34),_.string.find(bodyline,'src=')+5)]">
        <dtml-let theheight="images[entry_image[_.string.rfind(entry_image,'/')+1:_.len(entry_image)]].height">
        <dtml-let thewidth="images[entry_image[_.string.rfind(entry_image,'/')+1:_.len(entry_image)]].width">
        <dtml-if "thewidth>theheight">
            <dtml-if "thewidth<300">
                <dtml-call "REQUEST.set('imagewidth',thewidth)">
            <dtml-else>
                <dtml-call "REQUEST.set('imagewidth',300)">
            </dtml-if>
        <dtml-else>
            <dtml-if "theheight<300">
                <dtml-call "REQUEST.set('imagewidth',thewidth)">
            <dtml-else>
                <dtml-call "REQUEST.set('imagewidth',300*thewidth/theheight)">
            </dtml-if>
        </dtml-if>
        </dtml-let>
        </dtml-let>
        <a href="<dtml-var entry_image>"><dtml-var "bodyline[:_.string.index(bodyline,'>')]"> width="<dtml-var imagewidth>"></a><br>
        </dtml-let>
    <dtml-else>         <dtml-call "bodylist.append(bodyline)">
    </dtml-if>
<dtml-else>     <dtml-call "bodylist.append(bodyline)">
</dtml-if>
</dtml-let>
</dtml-in>
<dtml-call "REQUEST.set('changedbody',_.string.join(bodylist,'\n'))">
<dtml-if "format == 0">
<dtml-var changedbody newline_to_br>
<dtml-elif "format == 1">
<dtml-var changedbody fmt=structured-text>
<dtml-elif "format == 2">
<dtml-var changedbody>
</dtml-if>
</p>
<br clear="all" />
<p>
<a name="more"></a>
<dtml-if "format == 0">
<dtml-var extend newline_to_br>
<dtml-elif "format == 1">
<dtml-var extend fmt=structured-text>
<dtml-elif "format == 2">
<dtml-var extend>
</dtml-if>
</p>
<dtml-if entry_date>
<dtml-call "REQUEST.set('thedate',entry_date)">
<dtml-else>
<dtml-call "REQUEST.set('thedate',_.DateTime())">
</dtml-if>
<div class="posted">Posted by: <b><dtml-var author></b> Time: <dtml-var thedate></div>
<div class="comments-body">
<form ACTION="manage_addEntry" METHOD="POST">
    <input type="hidden" name="author" value="<dtml-var author>" />
    <input type="hidden" name="title" value="<dtml-var thetitle>" />
    <input type="hidden" name="subtitle" value="<dtml-var subtitle>" />
    <input type="hidden" name="entry_date" value="<dtml-var thedate>" />
    <input type="hidden" name="main_category:int" value="<dtml-var main_category>" />
<dtml-if sub_category>
<dtml-if "objecttype(sub_category)=='list'">
<dtml-in sub_category>
    <input type="hidden" name="sub_category:list" value="<dtml-var sequence-item>" />
</dtml-in>
<dtml-elif "objecttype(sub_category)=='string'">
    <input type="hidden" name="sub_category:list" value="<dtml-var sub_category>" />
</dtml-if>
</dtml-if>
    <input type="hidden" name="format:int" value="<dtml-var format>">
    <input type="hidden" name="body" value="<dtml-var "_.string.replace(_.string.replace(_.string.replace(thebody2,'<','&lt;'),'>','&gt;'),_.chr(34),'&quot;')">">
    <input type="hidden" name="extend" value="<dtml-var "_.string.replace(_.string.replace(_.string.replace(extend,'<','&lt;'),'>','&gt;'),_.chr(34),'&quot;')">">
    <input type="hidden" name="excerpt" value="<dtml-var "_.string.replace(_.string.replace(_.string.replace(excerpt,'<','&lt;'),'>','&gt;'),_.chr(34),'&quot;')">">
    <input type="hidden" name="allow_comment:int" value="<dtml-var allow_comment>">
    <input type="hidden" name="receive_trackback:int" value="<dtml-var receive_trackback>">
    <input type="hidden" name="moderated:int" value="<dtml-var moderated>">
    <input type="hidden" name="trackback_url:text" value="<dtml-var trackback_url>">
    <input type="hidden" name="sendnow" value="<dtml-var sendnow>">    <input type="submit" name="submit" value="Add Entry" />
</form>
</div>
</div>
</div>
</div>
</div>
<dtml-var blog_footer>

Gero "objecttype" izeneko python script bat gehitu behar da, "object" izeneko parametroa hartzen duena eta eduki hau duena:

if object is None:
    return 'None'
s = str(object)
if object==s:
    return 'string'
try:
    t = object.meta_type
    return t
except:
    pass
try:
    l = len(object)
    if s[0]=='[':
        return 'list'
    if s[0]=='(':
        return 'tuple'
    if s[0]=='{':
        return 'dict'
    return 'sequence'
except:
    pass
try:
    t = object.timeTime()
    return 'DateTime'
except:
    pass
try:
    val = int(object)
    if val is object:
        return 'integer'
    return 'number'
except:
    return 'unknown'

Bukatzeko, baimen batzuk aldatu behar dira. "Manager" eta "owner" erabiltzaileei "View" baimena emango diegu hasieran aipatutako "addEntryForm" formularioan, eta "Add COREBlog entries" eta "Add documents, images and files" COREBlog objektuan.

Eta kitto! Orain kolaboratzaile berri bati artikuluak gehitzeko aukera eman nahi diogun bakoitzean, "acl_users" karpetan erabiltzaile berri bat gehituko dugu, "owner" motakoa. Hauek beren pasahitzarekin "addEntryForm" formularioa erabil dezakete artikuluak gehitzeko, hasieran irudi bat ere sartzeko aukerarekin, baina ezin dituzte kudeaketako beste pantailak ikusi.

Bi limitazio ditu oraingoz: gehitutako artikuluak testu egituratua formatuan egon behar dira eta ezin da EPOZ edizio zerbitzua erabili.

Aurreko artikuluak:

Marrazkirri komiki erakusketa

Patxi Lurra 2005/02/22 07:58
Apirila bitartean martxan

Berriako Eneko Bidegainek lehengo egunean ekarri euskun Tartea gehigarridxan MARRAZKIRRI izeneko erakusketa martxan ipini daualako albistea.

Erakusketa IZURAn (Nafarroa Beherea) egongo da ikusgai martxoaren 20a arte, bertoko Haize Berri kultura etxean, eta handik aurrera BILBOko Kafe Antzokian apirilera arte.

MARRIZKIRRIn Euskal Herri osoko 30 bat marrazkilarik hartuko dabe parte, besteak beste, Asisko Urmenetak (antolatzaileetakoa bera be bai) eta Marko Armspachek. Urtero prestatzen ei dituzte holakoak, eta aurtongo leloa edo "UKAN ALA IZAN" galdera xespirianoa da.

Abisauta zagozie! (Ez dago zergaitik).

Torrentocracy, eduki multimedia libreak banatzeko sarea

e-gor 2005/02/14 14:21
Blog eta Bittorrent teknologien bidez

MythTV-ren instalazioa oraindik guztiz amaitu ez badut ere (bukatzean jarraituko dut MythTV-ri buruzko artikulu sortarekin), Torrentocracy plugin ez ofizialari buruz hitz egin nahi nuke, Patxi Gaztelumendik bere blogean idatzi duenaren harira. Izan ere, Patxik internet eta P2P sareak aipatzen ditu Korrika 14-ko bideoa zabaltzeko bide posible gisa. Eta Torrentocracy, MythTV-rentzako eduki multimedia libreak jaitsi eta ikusteko plugin bat izateaz gain, eduki multimedia libreak banatzeko sarea ere bada (edo izan nahi du), blog eta bittorrent teknologiak konbinatuz.

Torrentocracy proiektuaren asmoa da eduki multimedia libreak banatzeko sare bat antolatzea. Horretarako blogak erabiliko lirateke. Blog sare bat osatu nahi dute. Ikusentzunezko materialeren bat konpartitu nahiz gero, blog horietako baten artikulu bat gehitzen da, bertan bittorrent esteka txertatuz. Bi adibide, bt.etree.org (beraien musika banatzea libreki banatzea onartzen duten taldeen zuzeneko emanaldiak) eta Legaltorrents.com (musika, liburuak, pelikulak...).

Esan bezala, sare horrez gain MythTV-rekin erabiltzeko plugin bat garatu dute. Horren bidez, sare horretako hainbat blogetara harpidetu gaitezke, berria zer dagoen ikusi, interesatzen bazaigu jaisteko agindu eta jaitsitakoan ikusi.

Baina Torrentocracy MythTV-rako plugina aparte utzita, bere berri izan nuenetik Torrentocracy sarea (edo ideia) euskal mundurako oso interesgarria izan zitekeela iruditu zitzaidan, eta gaur Patxi Gaztelumendiren artikuluak hori baieztatu dit. Blog bat antolatu genezake euskarazko edo Euskal Herriko edo Euskal Herriari buruzko eduki multimedia publikatzeko. Hor jarri ahal izango genituzke MacGyver-en bideoa, Korrika 14-koa eta beste batzuk, beti irratia.com-ekoek (euren banda-zabaleraren kalterako) jartzen ibili beharrik gabe... Eta gero blog hori Torrentocracy sarean integratu daiteke. Aurki berriarentzako ideia izan daiteke?

Nola hobetu zure COREBlog bloga II: Kontaktu orria spam-a ekiditeko

e-gor 2005/02/02 15:36
eibar.org eta goiena.net-eko blogetan aplikatzeko

Gure blogean guri idazteko <a href="mailto:emaila@domeinua.com">emaila@domeinua.com</a> motako esteka bat jartzen badugu, ziur egon gaitezke handik gutxira gure postontzian spam-a jasotzen hasiko garela. Irakurri hemen hori nola ekidin kontaktu orri baten bidez.

Spam-a posta elektronikoa duen eta interneten ibiltzen den ia edozeinek jasaten duen lakra da. Gure helbidea spammer-en eskuetara iritsiz gero, akabo! Baina nola lortzen du jendaila horrek gure helbidea?

Gizatxar horiek robotak dituzte uneoro interneta arakatzen (ez robotak zentzu hertsian ulertuta, programa automatikoak esan nahi da) mailto erreferentzien eta @ zeinuaren bila, eta horrela lortzen dituzte helbideak. Horregatik ez da ideia ona gure blogean gurekin kontaktatzeko mailto motako esteka bat jartzea.

Eta nola eman diezaiokegu gure blogaren irakurleari gurekin kontaktatzeko aukera, hori erabili gabe? Kontaktu orri baten bidez. Jarraian azalduko dut nola egin kontaktu orri bat Coreblog erabiltzen duten blogetan (Eibar.org-en ostatatutako edozeinetan, beraz).

Hasteko, gure bloga aldatzeko pantailan sartuko gara gure klabearekin. Hor Mail Host elementu berri bat sortuko dugu eta "MailHost" izena jarri, beste balioak defektuzko balioan utzita.

Gero sortu DTMLMethod elementu berri bat, "kontaktatu" izenarekin, eta bertan eduki hau idatzi:

<dtml-var standard_html_header>
<h3>Kontaktatu</h3>
<form method="post" action="kontaktatu2">
<table>
    <tr>
        <td align="right" valign="top">Izena:</td>
        <td><input type="text" name="izena" value="" size="40"></td>
    </tr>
    <tr>
        <td align="right" valign="top">Posta elektronikoa:</td>
        <td><input type="text" name="emaila" value="" size="40"></td>
    </tr>     <tr>         <td align="right" valign="top">Gaia:</td>
        <td><input type="text" name="gaia" value="" size="40"></td>
    </tr>
    <tr>
        <td align="right" valign="top">Esatekoa:</td>
        <td><textarea name="edukia" rows="10" cols="40"></textarea></td>
    </tr>
    <tr>
        <td></td>
        <td valign="top"><input type="submit" value="Bidali"></td>
    </tr>
</table>
</form>
<dtml-var standard_html_footer>

Ondoren "kontaktatu2" izeneko beste DTMLMethod bat sortu, barruan hau idatziz:

<dtml-var standard_html_header>
<dtml-call "kontaktatu3(izena,emaila,gaia,edukia)">
Zure mezua bidali da<br />
Jarraitzeko, egin klik <a href="<dtml-var blog_url>">hemen</a>.
<dtml-var standard_html_footer>

Jarraian "kontaktatu3" izeneko Script (Python) bat sortu. Parametroetan "izena,emaila,gaia,edukia" jarri eta edukian ondokoa:

try:
    mailhost=getattr(context,context.superValues('Mail Host')[0].id)
except:
    raise AttributeError, "Mail Host object cant be found."
to_addr = guremaila@guredomeinua.com
mMsg = """To: %s
From: %s
Mime-Version: 1.0
Content-Type: text/plain;
blogetik bidalitako mezua
Bidaltzailea: %s [%s]
Gaia: %s
%s""" % (to_addr , emaila , izena, emaila, gaia, edukia)
mTo = to_addr
mFrom = emaila
mSubj = gaia
mailhost.send(mMsg, mTo, mFrom, mSubj)

Eta listo! Orain gure orri nagusian kontaktu orri horretarako linka jartzea besterik ez da falta.

Hala ere, hau ez da nahikoa. Honekin guri spam-a ez iristea lortuko dugu, baina gure blogera erantzunak idazten dituen jendea spammer-en esku uzten jarraitzen dugu. Izan ere, Coreblog-ek duen (nire ustez) akats bat medio, gure blogera erantzunak idazten dituen jendearen posta helbideak mailto erreferentziekin erakusten dira... eta webgune serioek jada ez dute horrelakorik egiten.

Hori konpontzeko bi gauza egin ditzakegu:

  • Aldaketa txiki bat egin e-maila ez erakusteko
  • Horrez gain, blogaren irakurleek erantzun duen jendearekin kontaktatu dezaten ahalbidetu kontaktu orriaren bidez

Lehenengoa egitea oso sinplea da. Ireki "comment_body" izeneko metodoa eta <div class="comments-post"><dtml-var "gettext('Posted by:')"><b> jartzen duen tokiaren ondoren eta </b> aurretik datorrena honegatik ordeztu:

<dtml-try>
    <dtml-if "_.len(url)>0 or (REQUEST.form.has_key('url') and _.len(REQUEST.form.has_key('url'))>0)">
        <a href="<dtml-if "REQUEST.form.has_key('url')"><dtml-var "removeHTML(REQUEST.form['url'])"><dtml-else><dtml-var url missing=""></dtml-if>"><dtml-if "REQUEST.form.has_key('author')"><dtml-var "removeHTML(REQUEST.form['author'])"><dtml-else><dtml-var author missing=""></dtml-if></a>
    <dtml-else>
         <dtml-if "REQUEST.form.has_key('author')"><dtml-var "removeHTML(REQUEST.form['author'])"><dtml-else><dtml-var author missing=""></dtml-if>
    </dtml-if>
<dtml-except>
    <dtml-if "REQUEST.form.has_key('author')"><dtml-var "removeHTML(REQUEST.form['author'])"><dtml-else><dtml-var author missing=""></dtml-if>
</dtml-try>

Bigarrena egitea konplikatuxeagoa da. Horretarako kontaktu orria erabili behar da, baina kontaktu orriari jakinarazi behar zaio nori bidali behar dion emaila, helbidea estekan erakutsi gabe, enkriptatuta. Aurrez aipatutako kontaktu orriko metodoak berridatzi behar dira eta beste metodo batzuk sortu. Jarraian azalduko dut prozesu guztia.

Hasteko, "comment_body" metodoan, aurrekoa jarri beharrean beste hau jarriko dugu:

<dtml-try>
    <dtml-if "_.len(url)>0 or (REQUEST.form.has_key('url') and _.len(REQUEST.form.has_key('url'))>0)">
        <a href="<dtml-if "REQUEST.form.has_key('url')"><dtml-var "removeHTML(REQUEST.form['url'])"><dtml-else><dtml-var url missing=""></dtml-if>"><dtml-if "REQUEST.form.has_key('author')"><dtml-var "removeHTML(REQUEST.form['author'])"><dtml-else><dtml-var author missing=""></dtml-if></a>
    <dtml-elif "_.len(email)>0 or (REQUEST.form.has_key('email') and _.len(REQUEST.form.has_key('email'))>0)">
        <a href="<dtml-var blog_url>/kontaktatu?norekin=<dtml-if "REQUEST.form.has_key('author')"><dtml-var "removeHTML(REQUEST.form['author'])"><dtml-else><dtml-var author missing=""></dtml-if>&emailanori=<dtml-if "REQUEST.form.has_key('email')"><dtml-var "enkriptatu(removeHTML(REQUEST.form['email']))"><dtml-else><dtml-var "enkriptatu(email)" missing=""></dtml-if>"><dtml-if "REQUEST.form.has_key('author')"><dtml-var "removeHTML(REQUEST.form['author'])"><dtml-else><dtml-var author missing=""></dtml-if></a>
    <dtml-else>
         <dtml-if "REQUEST.form.has_key('author')"><dtml-var "removeHTML(REQUEST.form['author'])"><dtml-else><dtml-var author missing=""></dtml-if>
    </dtml-if>
<dtml-except>
    <dtml-if "REQUEST.form.has_key('author')"><dtml-var "removeHTML(REQUEST.form['author'])"><dtml-else><dtml-var author missing=""></dtml-if>
</dtml-try>

Gero "enkriptatu" izeneko Script (Python) bat sortuko dugu, "emaila" parametroa hartzen duena eta hau daukana barruan:

klabea="87hugf9iv"
enkriptatua=""
for ind in range(len(emaila)):
    enkriptatua=enkriptatua+str(100+ord(emaila[ind])+ord(klabea[ind % len(klabea)]))
return enkriptatua

Klabea nahi duzuna eta nahi duzun luzerakoa jar dezakezu. Beste script bat egin beharko dugu "dekriptatu" izenekoa, "enkriptatua" parametroa jaso eta eduki hau duena:

klabea="87hugf9iv"
emaila=""
for ind in range(len(enkriptatua)/3):
    emaila=emaila+chr(int(enkriptatua[ind*3:ind*3+3])-100-ord(klabea[ind % len(klabea)]))
return emaila

Klabeak aurreko metodoan idatzi dugunaren berdina izan behar du. Eta bukatzeko, lehen sortu ditugun "kontaktatu", "kontaktatu2" eta "kontaktatu3" elementuak aldatu, honela:

kontaktatu:

<dtml-var standard_html_header>
<h3>Kontaktatu <dtml-if norekin><dtml-var norekin>(r)ekin<dtml-else>blogaren egilearekin</dtml-if></h3>
<form method="post" action="kontaktatu2">
<input type="hidden" name="norekin" value="<dtml-if norekin><dtml-var norekin><dtml-else>blogaren egilea</dtml-if>">
<input type="hidden" name="emailanori" value="<dtml-if emailanori><dtml-var emailanori><dtml-else><dtml-var "enkriptatu('guremaila@guredomeinua.com')"></dtml-if>">
<table>
    <tr>         <td align="right" valign="top">Izena:</td>
        <td><input type="text" name="izena" value="" size="40"></td>
    </tr>
    <tr>
        <td align="right" valign="top">Posta elektronikoa:</td>
        <td><input type="text" name="emaila" value="" size="40"></td>
    </tr>
    <tr>
        <td align="right" valign="top">Gaia:</td>
        <td><input type="text" name="gaia" value="" size="40"></td>
    </tr>
    <tr>
        <td align="right" valign="top">Esatekoa:</td>
        <td><textarea name="edukia" rows="10" cols="40"></textarea></td>
    </tr>
    <tr>
        <td></td>
        <td valign="top"><input type="submit" value="Bidali"></td>
    </tr>
</table>
</form>
<dtml-var standard_html_footer>

kontaktatu2:

<dtml-var standard_html_header>
<dtml-call "kontaktatu3(norekin,dekriptatu(emailanori),izena,emaila,gaia,edukia)">
Zure mezua bidali da<br />
Jarraitzeko, egin klik <a href="<dtml-var blog_url>">hemen</a>.
<dtml-var standard_html_footer>

kontaktatu3:

Parametroak: norekin,norekinemaila,izena,emaila,gaia,edukia

Edukia:

<try:
    mailhost=getattr(context,context.superValues('Mail Host')[0].id)
except:
    raise AttributeError, "Mail Host object cant be found."
to_addr = norekinemaila
mMsg = """To: %s
From: %s
Mime-Version: 1.0
Content-Type: text/plain;
blogetik bidalitako mezua
Bidaltzailea: %s [%s]
Gaia: %s %s""" % (to_addr , emaila , izena, emaila, gaia, edukia)
mTo = to_addr
mFrom = emaila
mSubj = gaia
mailhost.send(mMsg, mTo, mFrom, mSubj)

Eta kitto!

Honekin ziurtatuta dugu spammer-ek ez dutela lortuko gure posta helbiderik ez guri erantzuten diguten jendearenik ere. Hala ere, ez da guztiz spama ekiditen. Nik herenegun nire posta helbidean spam-a jaso nuen, blogeko kontaktu orriaren bidez bidalia! Edozein modutan, spammer-ari jende mordo baten kontaktu orriak betetzea askoz zailagoa egiten zaio jende pila bati emaila bidaltzea baino, beraz uste dut (eta espero dut!) asko ez zaidala iritsiko... Baina nork daki, spammer-ak jartzen dizkiegun zailtasunak gainditzen joango dira eta agian laster kontaktu orrien bidez ere erraz bidaliko dute...

Aurreko artikuluak:

Marjane Satrapi, berriz irabazle Angoulêmen

e-gor 2005/01/28 09:55
"Poulet aux prunes" bere lanak irabazi du aurten album onenaren saria
Marjane Satrapi, berriz irabazle Angoulêmen

Irudia: Marjane Satrapi

Aste honetan bertan idatzi dut blog honetan Marjane Satrapiren "Persepolis" lanari buruzko artikulu bat, lehenago Angoulêmen gidoi onenaren saria irabazitakoa. Ba oraintxe bertan jakin dut bere azken lanak, "Poulet aux Prunes"-ek, irabazi duela aurtengo sari nagusia, album onenari ematen diotena.

Atzo gauean izandako sari banaketan bertan jakinarazi zuten izendatutakoen artetik nor den irabazlea, Oscarren antzera. Ekitaldiak ere Oscarren itxurakoa dirudi, argazkiaren arabera... Behintzat "Persepolis" komikiko Marjane protagonistaren benetako aurpegia ikusi ahal izateko balio digu!

Marjane Satrapi
Irudia: www.bdangouleme.com

Ea noiz dudan aukera lan berri hau irakurtzeko. Ez dut uste oraindik Espainian eta gaztelaniaz argitaratu dutenik, baina Hendaia hortxe bertan daukat, eta bestela eMule hor dago...

"Persepolis", xalotasunaren sakontasuna

e-gor 2005/01/25 00:00
Iraneko azken hamarkadetako historia komiki autobiografiko ederrean
"Persepolis", xalotasunaren sakontasuna

Irudia: Marjane Satrapi

Duela gutxi eskuratu nuen Marjane Satrapiren "Persepolis" obraren 4. tomoa, eta serie osoa berrirakurtzeko aprobetxatu dut. Lan ederra eta sakona da oso, haur baten ikuspegi inozentetik Iraneko azken 30 urteotako historia, politika eta gizarte mailako kontu gogorrak ezin hobeto kontatzen dituena. 2002. urtean Angulemako komiki-azokan gidoi onenaren saria irabazi zuen.

"Persepolis" lana Marjane Satrapiren komiki autobiografikoa da. Iraneko kapitalean, Teheranen, jaio zen Marjane, eta bere bizitza ezin da ulertu bere herriaren testuinguru historiko eta politikoan ez bada. Honela, bere bizitza berak gogoratzen duen unetik (6 urte inguru zituenetik edo) kontatuz, Iraneko azken 30 urteen historia gogorra kontatzen du: diktadura, iraultza, errejimen integrista, Irakekiko gerra...

Istorioa, baina, haur baten (bera halaxe baitzen) ikuspegitik kontatzen du, haur batek soilik izan dezakeen ikuspuntu xalotik. Baina xalotasun horretatik gauza sakon eta gogorrak deskubritzen ditu, eta dizkigu. Asko pentsarazten digu eta hausnarketa sakonak eragin. Istorio arras hunkigarria da, une askotan negar eragiten duena.

Irudiak ere gidoia bezalakoxeak dira, sinpleak baina asko gordetzen dutenak. Sinpletasun ikaragarrizkoak, haur batek marraztuak balira bezala, txuri eta beltz hutsean. Ez baita gehiago behar benetako bizitzako istorio errealak kontatzeko, eta agian txuri-beltz hori delako kontakizun krudel horiek kontatzeko modurik onena.

El pañuelo
Irudia: Marjane Satrapi

Lehen eta bigarren tomoetan Marjanek bere haurtzaroa kontatzen digu. Marjaneren familia diruduna, ikasia eta modernoa da. 70eko hamarkadako Sha-ren diktaduran errejimenaren aurka daude, ezkerrekoak izaki (horren kontraesan guztiak ere azalerarazten ditu Marjik). Euren ingurukoek jasandako krudelkeriak kontatzen ditu. Iraultzak irabaztean, euren esperantzak zapuztuta ikusten dituzte, errejimen berria erlijioaren integristek osatzen dutela ikustean. Orduan garai are gogorragoak hasten dira, errepresioa eta Irakekiko gerrarekin. Marjane txikiak ez du bere ingurua ulertzen eta bere aurka altxatzen da.

Hirugarren tomoan gurasoek Marji Europara bidaltzen dute, bizimodu duina eta arriskutik librea izan dezan. Austrian pasatuko du bere nerabezaroa, baina bertako bizimodua ere ez zaio erraza egiten. Gure gizartearen kontraesan ugari erakusten ditu. Bere haragitan bizitzen ditu kanpotarrekiko mespretxua batzutan, indiferentzia beste batzuetan eta exotikoarekiko miresmen/adeitasun faltsua bestetan.

Hirugarren tomoaren amaieran Marjane Iranera itzultzen da, eta badirudi hor bukatzen dela serie guztia, lehen tomoa hasi zuen irudi berarekin bukatzen baitu hirugarrena, zapiarekin. Baina laugarren tomo bat dago, non Iranen bere heldu bizitza kontatzen duen, azkenean, bertako egoerak asfixiatuta, betirako Europara bizitzera joatea erabakitzen duen arte.

Nik ez ditut atsegin gurea bezalakoa ez diren gizarteei maiz egiten zaizkien kritikak, euren kontestuan kokatu gabe edo euren egoera ulertu gabe, mundua guztia gure parametroen arabera egon beharko balitz bezala. Eta esan dudanagatik agian irudi luke Satrapik Irani egiten dion kritika gogorra jende okzidentalizatuaren ikuspuntu horretatik egiten duela. Ez da horrela. Berak maite du bere herria. Abertzalea da eta erlijiosa ere bada, integrismoa eta errepresioa da kritikatzen duena. Eta horren froga da Europako bizimodua ere asko kritikatzen duela.

Nik lehen bi tomoak izugarri atsegin ditut. Kalitate itzela dute. Haurraren ikuspegi horretatik erabiltzen duen ironia eta kritika oso orijinalak eta sakonak dira. Hirugarren eta batez ere laugarren tomoetan ikuspegi hori galtzen du (derrigorrez), baina hala ere oso ongi eginak egoten jarraitzen dute, eta seriea bere osotasunean ikusita oso ona da. Nire gusturako hirugarrena da agian eskastxoena, ziur aski niretzat ezaguna den gizarte bat deskribatzen duelako eta ez didalako besteek besteko gizarte baten "deskubrimendua" egiten. Edo agian ni ere, munduko pertsona izan nahi arren, sakonean okzidentalizatu dirudun bat besterik ez naizelako eta nire gizartearen kontraesan, miseria eta okerkeriak erakusten dizkidalako izango da?

Lan borobila Marjane Satrapiren lehen obra hau. Bere egilearen azterketa-gaitasun eta maisutasun sakonaz ohartzeko, bereziki gustatzen zaidan pasartetxo iragarle bat (kontuan izan 1999koa dela): 1979an Sha-ren errejimenaren aurkako iraultzak irabazi eta gero, Marji eta bere ama pozik daude eta aitak dio "Ekialde Ertainean petrolioa daukagun artean, ez dugu bakerik ezagutuko".

Fitxa

Izenburua: Persepolis

Gidoia eta irudiak: Marjane Satrapi

Argitaletxea: Norma

Urtea: 2002 - 2003 - 2003 - 2004

ISBN: 84-8431-561-4 - 84-8431-562-2 - 84-8431-704-8 - 84-8431-936-9

Monoblogoa

e-gor 2005/01/11 22:30
Blogen audientziari buruz

Blog bat idazteak ematen duen satisfazio handiena erantzunak jasotzea da, norbaitek irakurtzen zaituela eta idazten duzuna interesatzen zaiela esan nahi baitu. Nik blog berria martxan jarri nuenean, duela hilabete inguru, erantzun mordoxka eta poz handia jaso nuen. Baina hori izan zen Sustatun iragarri nuelako, eta asko ongi etorri mezuak ziren. Ziurrenik aurrerantzean ez dut erantzun askorik jasoko, eta nire blog hau monoblogoa bihurtuko da.

Normala da hori horrela izatea, ondoko kausak medio:

  • Euskaldunak gutxi gara, euskaldun internautak gutxiago eta blog euskaldunak irakurtzen ditugunak are gutxiago
  • Jende askok ez ditu RSS feed-ak edo Bloglines moduko zerbitzuak ezagutzen; jende horrek blog interesgarri bat aurkitzen badu, nabigatzaileko gogokoen zerrendan gordeko du, eta noizean behin (normalean egunean behin) sartuko da ea ezer berririk dagoen ikustera; ez baduzu maiztasun nahiko handiarekin gauzak argitaratzen, aspertu egingo da eta sartzeari utziko dio; eta nire asmoa hilabetean bizpahiru gauza idaztea denez...
  • Jendeak zure bloga irakurrita ere, irakurleen portzentaje batek soilik dauka erantzuteko ohitura

Horregatik, asumituta daukat nire bloga ia ziur monoblogoa bihurtzera kondenatuta dagoela, blogari euskaldun gehienona bezala. Denborarekin gauza hobetuko den esperantza ere badut, aipatutako lehen eta bigarren puntuak hobetzen doazen neurrian.

Baina feedback-ik ez jasotzea baino okerragoa litzateke irakurri ere inork ez irakurtzea. Eta nik behintzat zalantza hori daukat beti. Inork irakurtzen al nau? Merezi al du idazteko lana hartzea? Izan ere, internetek hori dauka: antzerkian ez bezala, ez dakizu audientziarik duzun ala desertuan predikatzen zabiltzan.

Hori argitu nahian, aipatutako Bloglines zerbitzura jo dut. Zerbitzu honek hainbat blogetara harpidetu eta berauetan artikulu berriak noiz ateratzen diren ikusteko balio du. Eta gainera blog jakin batek zenbat harpidedun dituen ikus dezakegu. Helbide honetan euskarazko blogen zerrenda dago. Eta nik ere neure harpidetza-zerrenda dut, euskarazko hainbat blogez gain gaztelaniazko eta ingelesezko beste batzuekin. Harpidetza-kopuruen azterketa egin eta ondokoak ikusi ditut:

  • Tknika EAEko Lanbide Heziketaren Berriztapenerako Zentroak teknologiari buruz duen blog bat da, euskarazko eta gaztelaniazko bertsioak dituena; bada, Harry Potter filmaren emisioak ez bezala, euskarazko bertsioak gaztelaniazkoak baino harpidedun gehiago ditu, 25 euskarazkoak eta 8 gaztelaniazkoak! Honen arrazoia, dudarik gabe, Sustatu, CodeSyntax eta Eibar.org-ek osatzen duten Hirutasun Santuak (hauek ere, kristau erlijioaren hirutasuna bezala, hiru eta bat dira aldi berean, inork hori nola den ongi ulertzen ez dugularik) euskaldunon artean internet, teknologia berriak, blogak, RSS jarioak eta Bloglines promozionatzen egindako lan eskerga da. Eskerrik asko, beraz.
  • Aurrekoa konfirmatzeko konpara ditzakegu Sustatu eta Barrapunto-ren harpidedun kopurua: 61 eta 615 hurrenez hurren. Bi webguneak antzekoak izanik (Barrapunto teknikoagoa eta Sustatu kulturazaleagoa diren arren), harpidedun kopuruok ez dira inola ere euskara eta gaztelaniaren hiztun kopuruekiko proportzionalak.
  • Nire blogera 18 daude harpidetuta; beraz, badakit gutxienez horrenbestek irakurtzen nautela (espero dut gehiago izango direla, Bloglines erabiltzen dutenez gain), eta hori ez da gutxi! Euskarazko blog pertsonalen ranking-ean 12.a nago 55etik, liderraren (Luistxoren) harpidedunen ia erdiarekin. Gainera, nirea baino askoz lehenagokoak, ezagunagoak, interesgarriagoak eta hobeak diren beste blog batzuen aurretik nago. Ziur hori Sustatun iragarri izanagatik dela. Beraz, bloga lehendik martxan zenuten pionero langile finei gomendatzen dizuet zuen bloga Sustatun anuntziatzeko, ziur harpide kopuruak gora egingo dizuela.

Beraz, artikulua ezkor samar hasi badut ere, bada itxaropenerako tarterik:

  • Badakit 18k behintzat irakurtzen nautela
  • Bloga iragarri eta gero idatzitako artikulu batzuk erantzunak jaso dituzte, beraz, oraingoz ez da monoblogo bat!
  • Euskaldun blogosfera, idazle zein irakurle aldetik, osasuntsu dago, beste hizkuntza batzurekin proportzioan konparatuz
  • Blog fenomenoa orokorrean gora doanez, pentsatzekoa da euskarazkoak ere onera egingo duela

Aurrera, beraz, euskal blogosfera!

Nola hobetu zure COREBlog bloga I: Estiloa aldatzeko aukera

e-gor 2005/01/10 08:47
eibar.org eta goiena.net-eko blogetan aplikatzeko

Artikulu honetan azalduko dut nola lor daitekeen COREBlog produktuan oinarritutako blog baten (eibar.org-eko blog guztiak hala dira) erabiltzaileak estiloa dinamikoki aldatzea, beste blogger batzuek nahi badute egin ahal dezaten.

CSS estilo-orriak lortu edo diseinatu eta COREBlog-era ekarri

COREBlog-ek CSS estilo-orria behar du blogak itxura polita izateko. CSS estilo-orri propioak sortu nahi badituzu, irakurri hau.

eibar.org-en ostatatutako blogek Jeff Hicks-ek egindako hobekuntza bat dute, zeinari esker MovableType 2 blogak egiteko plataformaren CSS orriak erabil daitezkeen. Plataforma hori oso erabilia da, eta beraz estilo-orri mordoa daude eginak berarentzako. Nik MovableStyle.com orritik jaitsi nituen nire orrian ditudanak, eta horrez gain internetetik beste mordoxka bat lortu nuen, "powered by movabletype 2" googleatuz.

Lortutako edo diseinatutako orri horiek gordetzeko COREBlog-en barruan karpeta bat sortzea komeni da, txukuntasunagatik. Nire kasuan css deitu diot. Karpeta horretan CSS orri bakoitzeko DTMLMethod bat sortu behar da, izena style_css + zenbaki bat jarriz bakoitzari (style_css01 lehenari, style_css02 bigarrenari eta abar). DTMLMethod horien izenburua estiloaren izena izango da, eta edukia jaitsitako orria. Estilo-orriek irudiak erabiltzen badituzte, horiek ere sartuko dira karpeta honetan, Image elementu gisa.

Estiloa-aldatzeko aukera

Moduluen karpetan (normalean modules) DTMLMethod berri bat gehituko dugu, eta hau idatziko dugu bertan:

<div class="sidetitle">Itxura aldatu</div>
<div class="side">
<form action="change_style" method="POST">
<select name="new_style">
<dtml-in "css.objectValues('DTML Method')" sort=id>
<option value="<dtml-var "id()[9:]">"<dtml-if "REQUEST.has_key('style')"><dtml-if "id()[9:]==REQUEST['style']"> selected</dtml-if><dtml-else><dtml-if "REQUEST.SESSION.has_key('style')"><dtml-if "id()[9:]==REQUEST.SESSION['style']"> selected</dtml-if></dtml-if></dtml-if>><dtml-var title></option>
</dtml-in>
</select>
<input type="SUBMIT" name="SUBMIT" value="Aldatu">
</form>
</div>

Honek egiten duena da css karpetan dauden style_css izeneko elementu guztien tituluekin aukera-zerrenda bat sortu, defektuz azken aldian aukeratutakoa agertzen delarik markatuta.

Ondoren modules horretako index_htmlan deitu beharko diogu modulu berriari.

Estilo-aldaketa gordetzeko

Gero COREBlog-aren orri nagusian change_style izeneko DTMLMethod bat sortu behar dugu, eta hau idatzi bertan:

<dtml-call "RESPONSE.setCookie('style',new_style,expires='Wed, 19 Feb 2020 14:28:00 GMT')">
<dtml-call "REQUEST.SESSION.set('style',new_style)">
<dtml-call "RESPONSE.redirect(blog_url)">

Honek egiten duena da aukeratutako estiloaren zenbakia erabiltzailearen ordenagailuko cookie baten gorde. Cookie-ak desgaituta dauden kasurako, sesio-aldagai baten gordetzen du (azken honetan ez du aukeratutako estiloa hurrengo sesioan gogoratuko).

COREBlog-i esan aukeratutako estilo-orria erabiltzeko

Blog-eko orri guztiek erabiltzen duten goiburukoan (normalean blog_header) lerro hau jarri behar dugu, dagoena ordeztuz:

<link rel="stylesheet" href="<dtml-var blogurl missing="">/css/style_css<dtml-if "REQUEST.has_key('style')"><dtml-var style><dtml-else><dtml-if "REQUEST.SESSION.has_key('style')"><dtml-var "REQUEST.SESSION['style']"><dtml-else>07</dtml-if></dtml-if>" type="text/css" />

Honek esaten dio nabigatzaileari cookiean edo, ez badago, sesio-aldagaiean gordetako zenbakia duen estilo-orria kargatzeko, eta hauetako bat ere ez badago, defektuzkoa kargatzeko (kasu honetan 07 zenbakiduna).

Eta hau da guztia. On egin!

e-gorblog

e-gorblog

Egunez, Igor Leturia Azkarate pertsona arrunta da. Errenterian bizi den arrasatearra, 8etatik 17etara Elhuyarren lan egiten du eta arratsaldeak neskalagunarekin eta bere bi umeekin pasatzen ditu.

Baina gaua iritsi eta umeak lotara joaten direnean, e-gor bihurtzen da, interneteko bere alter-egoa, ziberespazioko informatikaririk komikizaleena eta komikizalerik informatikariena! Bere superbotereekin (interneteko kable-konexioa, bloglines, informatika aldizkariak, gadget-ak, komiki-bilduma, Errenteriko liburutegiko komikien atala eta batez ere bere jakinmin aseezina) eta bere superlaguntzaileak ondoan dituela (Patxi Lurra, DabilenHarria...), euskaldunon teknofobiaren eta komikiei buruzko aurreiritzien aurka burrukatzen du etengabe! Hemen duzu bere bloga: e-gorblog!

Bai, hor goiko aurkezpena superheroi batena da (ezin aproposagoa honelako blog batentzat, ezta?). Superheroia banintz zein izango nintzatekeen jakiteko the Superhero Personality Test egin nuen eta hona emaitzak:

You are Spider-Man
You are intelligent, witty, a bit geeky and have great power and responsibility.

Spider-Man
80%
Superman
70%
Green Lantern
65%
Robin
65%
The Flash
60%
Supergirl
55%
Hulk
55%
Iron Man
45%
Wonder Woman
35%
Catwoman
25%
Batman
0%
Lizentzia

Creative Commons-en baimena
Blog honetako edukia, Igor Leturiak eta beste kolaboratzaile batzuek egiten dutena, Creative Commons Aitortu-PartekatuBerdin 3.0 Unported baimen baten mende dago (irudiak salbu).

Harpidetza
Erantzunen harpidetza
Artxiboa
2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024
Artikulu aipagarriak

MythTV sorta
2004/11

"Pololoak" sorta
2004/11-12 - 2006/10-12 - 2007/02-03

Monoblogoa
2005/01/11

"Persepolis", xalotasunaren sakontasuna
2005/01/25

Elgetako Blogs&Beers 2005: nire inpresioa eta moblogging kontuak
2005/04/18

Firefox eta bere plugin zoragarriak
2005/05/11

"El País"-en komiki bilduma
2005/05/15

Euskarazko bi blog berri (bai, beste bi, baina hauek bereziak dira!)
2005/05/25

"Watchmen" sorta
2005/09-11 - 2006/10 - 2007/10 - 2008/07

"La cárcel de papel"-eko "Mis tebeos favoritos" saila I: 1etik 20ra
2005/11/08

"Goienkaria"-n agertu naiz
2005/12/08

Komikiak eta euskal rock-a
2005/12/14

Ruben Arozena "Ruben" komikigilea hil da
2006/01/02

Zope-rako DTML Calendar Tag produktua, euskaraz
2006/02/01

"Joyas Literarias Juveniles" bilduma, osorik eMule-n
2006/08/05

Argazkigintza eta DRM-a
2006/10/09

Paul Auster eta Euskararen Herria
2006/10/29

Angoulême sorta
2007/01-02

Gaur duela 25 urte nire bizitza aldatu zen
2007/04/23

Hergé-ren defentsan
2007/05/22

Ubuntu-ren bertsio berria, hobekuntza askorekin
2007/07/02

OLPC sorta
2007/12 - 2008/01

Guillermo Zubiaga, Marvel-eko komikilari euskalduna
2008/02/05

Asus EEE PC, ordenagailu txiki eta merkeen hurrengo sorta
2008/03/11

Agur, Ipurbeltz, agur... :-(
2008/08/04

"Café Budapest", gizatasuna eta bizikidetzaren aldeko aldarria
2008/08/25

"Arturo Erregea" serie mitikoa, Euskal Encodings-en! (beste askorekin batera)
2008/09/17

"Gazteak", beste serie mitiko bat euskaraz eskuragai!
2008/10/14

Pottokiek 50 urte!
2008/10/22

Europan ere OLPC-ren XO ordenagailuak erosteko aukera!
2008/11/12

Microsoft-en web zerbitzuetako gehienak, euskaraz!
2008/12/04

"Heroes"-en 2. denboraldia: ETB kirtenkeria errepikatzera, eta Euskal Encodings konpontzera
2009/01/23

I. Euskal OLPC Party-a, apirilaren 23an Donostiako Doka kafe antzokian
2009/04/16

Elkarrizketa egin didate 7K-n
2009/06/03

Azpiriren Spectrum-entzako jokoen azalak liburu batean
2009/10/06

Asterix, heroi garaitua
2009/10/29

"Ihes ederra", euskarazko komikigintzaren heldutasunaren konfirmazioa
2009/11/13

Pololoak 3: The making of
2009/11/22

5 urte 5!
2009/12/15

Nobela grafikoa, komikien prestigiorako ala mespretxurako?
2009/12/20

"Pololoak 3 - Atxeritoko balada", trilogiaren amaiera borobila
2010/01/13

Sinclair ZX Spectrum bat oparitu didate!
2010/01/19

Zergatik ez dudan liburu elektronikorik erosiko (gauzak aldatzen ez diren artean)
2010/01/27

Errealitate areagotua: munduaren pertzepzioa aberasten
2010/02/09

e-gorblog, "Nick dut nik" telebista saioan
2010/05/20

Sarearen neutraltasunari erasoak: Interneten izaera arriskuan
2010/06/02

"Avatar, azken aire maisua" osoa eta "Heroiak"-en lehen bi denboraldiak, Euskal Encodings-en
2010/07/22

Sistema eragileen guda berria
2010/12/14

Anubis 3.0 albumarentzat 3D animazio ederra
2010/12/27

Telebistaren benetako iraultza hemen da, eta ez da LTDa
2011/01/10

"Asterix galiarra" eta "Urrezko igitaia" berrargitaratu ditu Salvatek
2011/01/13

Euskarazko komikigintza digitalizazioaren aurrean
2011/01/27

"Ihes ederra"ren gaztelaniazko eta katalanezko bertsioak eta "Alokairuan", kalean
2011/02/20

Star Wars jatorrizko trilogia, euskaraz
2011/03/21

Sare sozialetan preso
2011/04/06

Zer dudan Steve Jobsen, edo Appleren, aurka
2011/10/14

Gaur 100 urte Adèle Blanc-Sec-en abenturak hasi zirela
2011/11/04

Euskarazko 8 komiki berri
2011/12/02

Social networks killed the RSS star?
2012/06/10