soo_txp_obj Page 3 of 6

code example: article_image() redux

Summary:

Not the real article_image(), but an incredible simulation *

 1 : function soo_article_image_redux($atts) {
 2 : 
 3 :         global $thisarticle;
 4 :         assert_article();
 5 : 
 6 :         extract(lAtts(array(
 7 :             'align'     => ''// remove in crockery
 8 :             'class'     => '',
 9 :             'escape'    => 'html',
10 :             'html_id'   => '',
11 :             'style'     => ''// remove in crockery?
12 :             'thumbnail' => 0,
13 :             'wraptag'   => '',
14 :         ), $atts));
15 : 
16 :         if ( $thisarticle['article_image'] )
17 :             $image $thisarticle['article_image'];
18 : 
19 :         else return;
20 : 
21 :         if ( is_numeric($image) ) {
22 : 
23 :             $image = new soo_txp_img($image);
24 : 
25 :             if ( ! $image->id ) {
26 :                 trigger_error(gTxt('unknown_image'));
27 :                 return;
28 :             }
29 :         }
30 : 
31 :         else {
32 : 
33 :             $image = new soo_html_img;
34 :             $image->src($thisarticle['article_image']);
35 :         }
36 : 
37 :         if ( $thumbnail ) {
38 : 
39 :             if ( $image instanceof soo_html_img )
40 :                 return;
41 : 
42 :             if ( ! $image->thumbnail )
43 :                 return;
44 :         }
45 : 
46 :         if ( $image instanceof soo_txp_img )
47 :             $image = new soo_html_img($image$thumbnail$escape);
48 : 
49 :         if ( $thumbnail )
50 :             $image->height('')->width('');
51 : 
52 :         if ( $wraptag )
53 :             $image->class('')->id('');
54 : 
55 :         else
56 :             $image->class($class)->id($html_id);
57 : 
58 :         $image->style($style);      // ->set_align($align);
59 : // actually I didn't include the deprecated align attribute in soo_txp_obj!
60 : 
61 :         $out $image->tag();
62 : 
63 :         return ($wraptag) ? doTag($out$wraptag$class''$html_id) : $out;
64 : 
65 : }

You probably have to be pretty old to know where the “incredible simulation” line comes from).

Posted 2009-01-24 (last modified 2010-06-30)