Google spreadsheet duplikált sorok

Táblák kezelése kapcsán előfordul néha, hogy bizonyos dupla előfordulásokat szeretnénk megjelölni/kitörölni. Ezt a Google spreadsheet-ek esetén script segítségével tehetjük meg.

Az alábbi script pirossal jelöli azon sor előfordulásokat, ami a táblázatban már egyszer szerepelt:


function markDuplicates() {
   var sheet = SpreadsheetApp.getActiveSheet();
   var range = sheet.getDataRange();
   var newData = new Array();
   for(var i = range.getRow(); i < range.getLastRow(); i++){
      var row = range.offset(i, 0, 1);
      var rowData = row.getValues();
      for(j in newData){
         if(rowData.join() == newData[j].join()){
            row.setBackgroundRGB(255, 0, 0);
         }
      }
      newData.push(rowData);
   }
}

A kód készítése során az alábbi források segítettek:

Tutorial: Removing Duplicate Rows in a Spreadsheet

Google Spreadsheet: Script to Change Row Color when a cell changes text

Lifehacker és chrome kiegészítők

Néha néha felbukkan egy egy gyöngyszem a lifehacker-en, amiért megéri olvasgatni. Ilyen a Lineman Splice, vagy a Lace Lock. IT területen sok újdonságot nem szoktam találni, de azért az érdekesebb cikkeket mindig átfutom. Nem rég jelent meg egy cikk, ami a google chrome memóriahasználatát, és ennek okait taglalta. Már ezért a kijelentésért önmagában is érdemes volt elolvasni a cikket: “free RAM is useless RAM”

Viszont ebben a cikkben került említésre a The Great Suspender kiegészítő, ami nekem új volt. Ez egy nagyon jó cucc, és az én örökérvényű böngésző kiegészítők listámról még hiányzott. Azt tudja, hogy a rég nem használt tab-okat egyszerűen kidobja a memóriából, de a helyét meghagyja, így ha kell akkor bármikor visszatölthetjük a tartalmát. Kötelező darab, semmi többet nem tudok elmondani 🙂

És ha már kiegészítők, akkor itt az ideje, hogy a 2007-es Firefox-os listát frissítsem egy 2015-ös chrome-os listára:

Google Chrome Extensions:

Google Chrome Apps:

A lista a Chrome Extensions Share kiegészítővel készült.

Postfix + google apps

Google apps-ban van lehetőség SMTP Relay szerver engedélyezésére. Ez akkor jó, ha például olyan helyről szeretnénk levelet küldeni, ami nem rendelkezik Google Apps felhasználóval, például szerverekről.

Ezt a Google Apps adminisztrátori felületén lehet megtenni:

Google Apps -> Settings for Gmail -> Advanced Settings -> General Settings

SMTP relay service

Itt érdemes bekapcsolni az alábbi két opciót:

Only accept mail from the specified IP addresses – csak megadott helyekről fogadjon el leveleket

Allowed senders: Any addresses (not recommended) – onnan viszont bármilyen címről

 

Be is állítottam mindent, de a google SMTP szervere folyamatosan eldobálta a levelet, mert valamiért a postfix mindig csak a szerver nevét (pl. root@server) rakta bele a feladó mezőbe, amit a google annak ellenére sem szeret, hogy beállítottuk, hogy szeresse…

A végső megoldást az alábbi hack jelentette:

A /etc/postfix könyvtár alá létrehoztam egy sender_canonical nevű fájlt, aminek a tartalma:

/^(.*@).*$/     ${1}server.voji.hu

Módosítottam továbbá a /etc/postfix/main.cf-et:

sender_canonical_maps = regexp:/etc/postfix/sender_canonical
relayhost = smtp-relay.gmail.com:25

Ezek után már csak ki kellett generálni a sender_canonical-hoz tartozó .db fájlt:

postmap sender_canonical

valamint újrarúgni a postfix-et:

sudo postfix reload

 

És már csak egy gyors teszt volt hátra:

echo "Test mail from postfix" | mail -s "Postfix test" voji@voji.hu

 

Mindeközben a /var/log/mail.log fájlban:

Sep 10 14:44:20 server postfix/smtp[11752]: 98D866567C3: to=<voji@voji.hu>, relay=smtp-relay.gmail.com[173.194.65.28]:25, delay=0.7, delays=0.34/0/0.26/0.09, dsn=2.0.0, status=sent (250 2.0.0 OK 1410353060 q15sm45749wij.3 – gsmtp)

Sep 10 14:44:20 adsrv2 postfix/qmgr[11744]: 98D866567C3: removed


Tadaaam.

 

Ui: azt, hogy a postfix által küldött levelek normális feladóval rendelkezzenek biztos el lehet érni ennél kultúráltabb módon  is, de egyenlőre ennél jobb megoldást nem találtam (pedig próbálkoztam midnenféle myorigin = /etc/mailname-el és társaival is)

 

 

HTML alapú pdf riporting engine

Úgy látszik mások is gondolkoztak már azon amin én mostanában, hogy milyen jó lenne NodeJS-el szerver oldalon generált html-ekből PDF riportokat generálni (először grafikonok rajzolásán gondolkoztam, csak utána tovább gondoltam).

Az alábbi cikk elég jó a témában: http://www.feedhenry.com/server-side-pdf-generation-node-js/

Sajnos a sejtésem beigazolódni látszik, bár technológiailag egy működő, jó megoldás, erőforrás kell egy ilyen rendszer alá, és elsőre úgy tűnik nem is kicsi…

Hello Spotify

Szeretem a Google-t, hiszen sok mindent köszönhetünk nekik. Gondoljunk csak a keresésre, gmail-ra vagy a maps-ra, esetleg az androidra. Ezek nélkül lehet még mindig létezne symbian, nokia maps, és emberek tömegei hinnék azt, hogy ez normális.

Elég sokat hallgatok zenét (munka közben, és munka után is), és szeretném azt hinni, hogy Magyarországon is van már akkora bérszínvonal, hogy megengedhetem magamnak az online zene streaming-et, legálisan, egyszerűen már nem volt kedvem mp3-ak letöltésével, másolgatásával foglalkozni.

Adott volt a google play all access, működött a keresztértékesítés, elő is fizettem rá, úgy bő fél éve. Jól elvoltunk, bár voltak komoly hiányosságok. Pl. előadókra nem lehetett feliratkozni rss feed szerűen, hogy ha csinált valamit, akkor azt meg tudjam hallgatni. Mi tagadás ez picit zavart, de ezen még túlemelkedtem. Sokkal jobban zavart, hogy ipad-ra nem sikerült fél év alatt kiadni a normális klienst… Értem én, hogy google, android, stb, de meguntam.

Ma töröltem az előfizetést, és előfizettem a spotify-ra. Van ipad kliens, lehet albumra feliratkozni, és sokkal több zenét érek el, vannak mindenféle social vonatkozásai, újra él a last fm profilom, szóval öröm boldogság. Ja és véletlenül az előfizetés is pont annyiba kerül mint a google-nél az all access.

Már csak egy feature hiányzik mindkét rendszerből. Az előadók csv export és import képessége… Ez azért jól jönne, ha mondjuk a kedvenc előadóim listáját mozgatni szeretném a rendszerek között, de gondolom ezt nem véletlenül nem csinálják meg… Ha már a windows preinstalled böngészőkből ekkora botrány lehet, akkor nem tudom online szolgáltatások között miért nem teszik kötelezővé az átjárhatóságot, legalább ilyen alap szinten…

Google error…

Mostanában elég sok google terméket használok, és elég sok hibát is találok, de ezek rendszerint adminisztrátorokat, és a felhasználók elég kis részét érintik, de néha elég alap dolgokat is képesek elrontani… Ma zenét hallgattam volna, csak épp össze vissza vannak a számok az albumokon… Lol

snap091

Azt hiszem a google-nél is elkelne valami normálisabb QA mert ez így egy csőd… Bejelentettem, kíváncsi leszek mikorra javul…