Quick jump:  What's new

 
Go to:
 
Weblog: trick   
in STRIX
Automatsko mijenjanje globalne _s_pod u $_SESSION['_s_pod']

step 1 - brisanje deklaracija global $_s_pod;

grep -rli 'global [^;]*\$_s_pod' * | grep -v \.svn | xargs -i sed -i \
    -e 's/\(global [^;]*\)\$_s_pod/\1/g' \
    -e 's/global[[:blank:]]\{1,\},/global /g' \
    -e 's/,[[:blank:]]*\([,;]\)/\1/g' \
    -e 's/global[[:blank:]]\{1,\};//g'  {}

step 2 - zamjena $_s_pod sa $_SESSION['_s_pod']

grep -rli '\$_s_pod' * | grep -v \.svn  | xargs -i sed -i "s/\$_s_pod/\$_SESSION['_s_pod']/gi" {}

step 3 - zamjena $GLOBALS['_s_pod'] sa $_SESSION['_s_pod']

grep -rli globals\\[\s*\\\([\'\"]*\\\)_s_pod\\1\\\s*\\\] * | xargs -i sed s/globals\\[\s*\\\([\'\"]*\\\)_s_pod\\1\\\s*\\\]/_SESSION['_s_pod']/gi -i {}
permalink
AclHacks

Hacking ACL

Ovo je quick guide kako napraviti zanimljive stvari sa ACL-ovima.

Nasljeđivanje ACL-ova za kategorije

Kako pogledati koja ktegorija nasljeđuje od koje?

select
  (select url from kategorija where id = parent_object_id),
  (select url from kategorija where id = object_id)
from acl_inherits
where acl_id = 'kats' and parent_acl_id = 'kats'
permalink
SQL za P Connect

SQL za dohvaćanje podataka iz P Connecta (ime, prezime, kompanija, e-mail)

  SELECT
    companycode,
    lname || ' ' || name AS fullname,
    email
  FROM hemployees
  WHERE
    active=1 AND
    (
      facility IS NULL OR
      facility='C'
    ) AND
    trim(coalesce(email,''))<>'' AND
    trim(coalesce(lname,''))<>''
  ORDER BY
    companycode,
    lname,
    name
  ;

SQL za "odrollavanje" naziva kompanija za gornje ljude

  SELECT
    code,
    name
  FROM legalchart_hstructure
  WHERE
    code IN (
      SELECT DISTINCT
        companycode
      FROM hemployees
      WHERE
        active=1 AND
        (
          facility IS NULL OR
          facility='C'
        ) AND
        trim(coalesce(email,''))<>'' AND
        trim(coalesce(lname,''))<>''
    )
  ;
permalink
CSSTricks

Box model

Ako je neki block element (DIV, TABLE) preširok te se zbog njega pojavljuje horizontalni scrollbar, pokušajte sljedeće:

  #block {
      box-sizing: border-box !important;       /* for M$IE 5.x, but doesn't hurt in 6+ as well.
                                                  also proposed for upcoming CSS3 */
      -moz-box-sizing: border-box !important;  /* for Mozilla/Gecko */
  }

Za više informacija pogledajte ovdje.

Kako zamijeniti tekst slikom?

NAPOMENA: kako bi ovo radilo, dotični HTML element mora biti block-level element.

Jedan od načina je content dotičnog elementa staviti u neki HTML tag koji po defaultu nema nikakav stil, npr. DIV ili (preporučeno) SPAN. Dakle:

<h1>Ovo je neki naslov</h1>

postaje

<h1><span>Ovo je neki naslov</span></h1>

Zatim se CSS-om dotičnom elementu (ovdje H1) dodijeli background image, te mu se podesi veličina tako da odgovara veličini tog image-a, a child element (SPAN) se sakrije (display: none). Također se overflow stavi na hidden (za slučaj da je originalni tekst širi od replacement slike). Dakle:

H1 {
    background-image: url(foo.jpg);
    background-repeat: none;
    width: 100px;    /* prilagoditi prema velicini slike */
    height: 100px;   /* prilagoditi prema velicini slike */
    overflow: hidden;
}
H1 SPAN {
    display: none;
}

Međutim, ova metoda se ne preporučuje, jer osim što izgleda ružno (zahtijeva jedan dummy element u strukturi HTML-a), većina screen readera ima problema sa display: block, te time HTML gubi svoj accessibility. Srećom, postoji alternativno rješenje: u CSS dotičnog elementa se jednostavno stavi atribut text-indent sa jako velikom negativnom vrijednošću, npr. -9000px. Dakle, HTML ostaje kakav je i bio, a novi CSS je:

H1 {
    background-image: url(foo.jpg);
    background-repeat: none;
    width: 100px;    /* prilagoditi prema velicini slike */
    height: 100px;   /* prilagoditi prema velicini slike */
    text-indent: -9000px;
}

Začuđujuće, obje metode rade dobro na svim mainstream browserima. :-)

Za više informacija o prvoj metodi vidi ovdje, a o drugoj vidi ovdje.

permalink
HTMLTricks

Kako u plain HTML-u detektirati postojanje/verziju M$ Internet Explorera?

Internet Explorer 5.0 i veće verzije prepoznaje neke uvjete unutar HTML komentara, tzv. conditional comments
Ostali browseri zanemarit će cijeli takav blok kao običan HTML komentar.

Evo primjera:

<body>
<!--[if IE]>
    According to the conditional comment, this is Internet Explorer.

<![endif]-->
<!--[if IE 5]>
    According to the conditional comment, this is Internet Explorer 5.

<![endif]-->
<!--[if IE 5.0]>
    According to the conditional comment, this is Internet Explorer 5.0.

<![endif]-->
<!--[if IE 5.5]>
    According to the conditional comment, this is Internet Explorer 5.5.

<![endif]-->
<!--[if IE 6]>
    According to the conditional comment, this is Internet Explorer 6.

<![endif]-->
<!--[if gte IE 5]>
    According to the conditional comment, this is Internet Explorer 5 and up.

<![endif]-->
<!--[if lt IE 6]>
    According to the conditional comment, this is Internet Explorer lower than 6.

<![endif]-->
<!--[if lte IE 5.5]>
    According to the conditional comment, this is Internet Explorer lower or equal to 5.5.

<![endif]-->
</body>

Za više informacija vidi ovdje.

permalink
Weblog Navigation
Loading...
Weblog Archives
  • Loading...