Musimy zedtować plik:

modules/fckeditor/fckeditor.config.js

I dodać linijkę:

FCKConfig.EditorAreaStyles =
"body{background:#FFFFFF;text-align:left;}";

FCKEditor od wersji 3.x zmienił swoją nazwę na  CKEditor.

Aby zmienić tło na białe należy zedytować podobnie plik

modules/ckeditor/ckeditor.config.js

i dodać:

config.extraCss += "body{background:#FFF;text-align:left;font-size:0.8em;}";

Polonizacja Drupal-a 6.x

Listopad 30, 2009

Aby spolonizować Drupala potrzebujemy włączyć moduł Languages.

W zależności od hostingu zazwyczaj musimy utworzyć katalog /tmp oraz /sites/default/files/tmp

Później dodajemy język: http://www.nazwastrony.pl/admin/settings/language/add

i importujemy plik drupal-pl-6-0.x.po

http://www.nazwastrony.pl/admin/build/translate/import

 

Wczoraj poraz kolejny przy instalacji drupala 6.12 spotkałem się z błędem “warning: mail() [function.mail]: Bad parameters to mail()” podczas rejestracji nowego uzytkownika z włączoną opcją powiadomienia o nowoutworzonym koncie.

Ponoć  w wersji 6.14 zostało to naprawione … ale może się komuś przyda.

Co musimy zrobić: Zedytować plik /includes/mail.inc

Poszukać wpisu:

$message['to'],
str_replace(“\n”, ‘ ‘, mime_header_encode($message['subject']) ),

i zmienić go na (w linii 185):

$message['to'],
//mime_header_encode($message['subject']),
str_replace(“\n”, ‘ ‘, mime_header_encode($message['subject']) ),

Problem polegał na tym, że ta wersja funkcji nie radziła sobie ze znakiem zakończenia linii, dlatego zamieniamy go na spację.

Jakiś czas temu natknąłem się na problem z utworzonym widokiem (Views) w Drupalu.

Chodziło generalnie o to aby wyświetlić dany widok ale nie przy pomocy bloku ale jako kod PHP  odzony w tekście.

Można tego dokonać przy pomocy następującego kodu (moduł PHP Filter oczywiście musi być włączony):

$viewName = 'NazwaWidoku';
print views_embed_view($viewName);

Ostatnio ściągnąłem obraz płyty CD podzielony na 50 części po ok 15MB. Każdy z plików miał nazwę Image01.zip.johnson – Image50.zip.johnson. Ręcznie oczywiście nie miało sensu (szkoda czasu) zmieniać nazw to sobie przypomniałem o poleceniu rename. Składnię ma podobną do SED’a więc z jej zrozumieniem nie powinno być problemu.

$rename ’s/\.zip.johnson/\.zip/’ *.zip.johnson

Pozostał problem rozpakowania wielu achiwów. Jak to zrobić? Zwykłe unzip *.zip raczej nie pomoże.

Tutaj potrzebna jest bashowa pętla for.

$ for z in *.zip; do unzip $z; done

Ubuntu 9.10 i karta D-link DWL 520+

Październik 31, 2009

Po instalacji nowego Ubuntu 9.10 Karmic Koala pojawił się problem z obsługą karty wifi D-Link DWL 520+.

W sumie instalacja sterowników nie jest skomplikowana, jednakże początkującemu użytkownikowi może ona przysporzyć troszeczkę problemów.

Co będziemy potrzebować?

+ Windowsowe sterowniki do karty wifi

+ Pakiet ndiswrapper

Jeśli nie mamy dostępu do siecieci bezpośrednio musimy skorzystać z sieci na innym komputerze.

Ściągamy sterowniki

ftp://ftp.dlink.com/Wireless/dwl520+/Driver/dwl520+_drivers_307.zip

Ściągamy potrzebne pakiety do ndiswrappera

ndiswrapper-common http://packages.ubuntu.com/search?keywords=ndiswrapper-common&searchon=names&suite=karmic&section=all

ndiswrapper-utils http://packages.ubuntu.com/search?suite=karmic&section=all&arch=any&searchon=names&keywords=ndiswrapper-utils

ndisgtk http://packages.ubuntu.com/search?suite=karmic&section=all&arch=any&searchon=names&keywords=ndisgtk

Ściągamy menadżer sieci (moim zdaniem lepszy od obecnego)

network-admin http://packages.ubuntu.com/search?suite=karmic&section=all&arch=any&searchon=names&keywords=network-admin

Instalujemy:

Można użyć dwukliku myszy i instalować po kolei: ndiswrapper-common, ndiswrapper-utils, ndisgtk, network-admin

lub jeśli mamy wszystkie pliki w katalogu np: network to …

wchodzimy do katalogu cd network

instalujemy paczki deb: sudo dpkg -i *.deb

Mimo wszystko musimy użyć terminala

rozpakowujemy sterowniki windowsowe

unzip dwl520+_drivers_307.zip
cd Drivers/WinXP/

dodajemy sterownik windowsa do ndiswrappera
sudo ndiswrapper -i AIRPLUS.INF

Na wszelki wypadek zmieniamy nazwę modułu do obsługi karty (u mnie nie był on załadowany)

sudo mv /lib/modules/`uname -r`/ubuntu/wireless/acx/acx.ko /lib/modules/`uname -r`/ubuntu/wireless/acx/acx.bak

Dodajemy moduł ndiswrappera

echo “ndiswrapper”  >> /etc/modules

Restartujemy komputer.

Uruchamiamy network-admin

sudo network-admin

Zmieniamy ustawienia sieci (zazwyczaj interfejs nazywa się wlan0)

FreeBSD podstawy

Październik 2, 2009

Instalacja LAMP

http://gustaff.bsdaemon.pl/?p=254

Wywołanie aplikacji z preinstalacji

sysinstall

Restart serwera apache

/usr/local/sbin/apachectl restart

Instalacja gd

cd /usr/ports/graphics/php5-gd

make install clean

Rozpoznawanie rozszerzeń *.php w apache FreeBSD

Dodajemy (zmieniamy) linijkę w pliku : /usr/local/etc/apache22/httpd.conf

DirectoryIndex index.php index.html index.htm

Ścieżka do strony www

/usr/local/www/apache22/data

Openarena-server + debian

Wrzesień 10, 2009

~/.openarena/baseoa/server.cfg

// openarena example servercfg linux [sidux]
// save as server.cfg in ~/.openarena/baseoa/
// start with:
// cd /usr/games
// verify that there is no q3config.cfg file (it overrides values in specific config files)
//  ./openarena-server +set dedicated 2 +set net_port 27950 +exec server.cfg

set sv_hostname “blah-blah”
set sv_maxclients 12
set g_motd “blah”
set sv_master1 “dpmaster.deathmask.net”
set sv_maxPing 150   //
set sv_pure 1
set sv_maxRate 25000
set sv_fps 20  // snaps setting for my 45k/s upload
set sv_allowdownload 0

#sv_privateClients “2″ // slots substracted from sv_maxclients
#sv_privatePassword “”

set capturelimit 8
set timelimit 30
set fraglimit 10  //usually 40 online

#set rconPassword “” // for remote ingame servercontrol
seta bot_enable “1″
seta bot_minplayers 4 //bots will be kicked as real players join

set g_quadfactor 4
set g_inactivity 0
set g_allowvote 0

set d1 “map aggressor; set nextmap vstr d2″
set d2 “map czest1dm; set nextmap vstr d3″
set d3 “map ce1m7; set nextmap vstr d4″
set d4 “map dm4ish; set nextmap vstr d5″
set d5 “map dm6ish; set nextmap vstr d6″
set d6 “map kaos; set nextmap vstr d7″
set d7 “map void4; set nextmap vstr d8″
set d8 “map oa_rpg3dm2;set nextmap vstr d9″
set d9 “map q3dm6ish; set nextmap vstr d1″

vstr d1 // start loop at d1

grę uruchamiamy:

openarena-server +set dedicated 1 +set net_port 27950 +exec server.cfg +map aggressor +set net_ip ADRES_IP

Ostatnio zamiast pisać samodzielnie skrypt do modyfikacji wielkości i kompresji plików JPG postanowiłem czegoś poszukać. No i znalazłem ciekawy skrypt autorstwa niejakiego albertux (http://albertux.ayalasoft.com). Oczywiście troszeczkę go pozmieniałem. Nie jest niestety idealny gdyż zajmuje się on zmianą jedynie 1  podkatalogu.

Dla przykładu maby obrazki:

P00123.jpg, P00124.jpg, P00125.jpg w katalogu /2009/wakacje-Tatry i zdjęcia: P00126.jpg, P00127.jpg, P00128.jpg w /2009/wakacje-Lagow-Lubuski. Wystarczy wejśc do katalogu 2009 i uruchomić odpowiedni skrypt.

Skrypt składa się z 2 części:

plik /usr/bin/resizeimages.sh

plik /ur/bin/script.sh

Oczywiście oba z prawami wykonalności.

A teraz ich zawartość.

/usr/bin/resizeimages.sh

#!/bin/bash
# fotos
IFS=$’\t\n’; #
for i in `ls`; do
for j in `ls $i `; do # /2009/wakacje-Tatry  /2009/wakacje-Lagow-Lubuski itd.
if [ "$j" = "Thumbs.db"  ]; then  # ignorowanie śmieci z Windows-a
echo “Nic nie robie…”
elif [ "$j" = "script.sh" ]; then # uruchomienie skryptu konwesji: script:sh
echo “Nic do roboty…”
else
echo “Pracuję … Plik roboczy: $i/$j”
mogrify -resize 1024×768 -quality 87 “$i/$j”  # Konwersja pliku do rozdzielczości 1024×768 i kompresji 87%
fi
done
done

/usr/bin/script.sh

#!/bin/bash
IFS=$’\t\n’
EXTS=( jpg gif png JPG GIF PNG )
for EXT in ${EXTS[@]};
do
for f in `find . -name “*.$EXT” -type f`;
do
echo “Katalog roboczy: $f”
dir=`dirname $f`
ff=`basename $f`
echo “Pracuje …”
mogrify  -resize 1024×768 “$f”
done
done

nVidia TwinView i Gnome Panel

Sierpień 23, 2009

Przy podłączaniu drugiego monitora lub jak w moim przypadku telewizora pod 2 wejście do karty graficznej natrafiłem na uciążliwą przypadłość gnome-panel. Otóż gnome-panel tuż po tym jak w nvidia-settings załączałem opcję Twin View (czyli tak aby praca była możliwa na 2 monitorach) lądował na drugim ekranie.

Z początku radziłem sobie w ten sposób, że zmniejszałem panele i przerzucałem je myszką na pierwszy ekran. Ale zaczęło mnie to troszeczkę irytować i znalazłem ciekawy skrypt autorstwa Cristi Măgherușan. Przedstawia się w następujący sposób:

#!/bin/bash

if [[ "x$1" == "xon" ]]
then
echo “Turning on VGA”
xrandr –output VGA –left-of LVDS –auto
echo “Moving panel to second display”
gconftool-2 –set “/apps/panel/toplevels/top_panel_screen0/monitor” –type integer “1″
gconftool-2 –set “/apps/panel/toplevels/bottom_panel_screen0/monitor” –type integer “1″
elif [[ "x$1" == "xoff" ]]
then
echo “Turning off VGA”
xrandr –output VGA –left-of LVDS –off
fi

Można go wrzucić do autostartu.