/[cvs]/nfo/php/libs/org.netfrag.app/WebExplorer/utils.php
ViewVC logotype

Annotation of /nfo/php/libs/org.netfrag.app/WebExplorer/utils.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.5 - (hide annotations)
Fri Apr 18 13:38:40 2003 UTC (21 years, 4 months ago) by jonen
Branch: MAIN
Changes since 1.4: +20 -17 lines
+ added use of url::short function at 'decode_item_expr'

1 jonen 1.1 <?php
2    
3     /**
4 jonen 1.5 * $Id: utils.php,v 1.4 2003/04/16 16:22:01 joko Exp $
5 jonen 1.2 *
6     * $Log: utils.php,v $
7 jonen 1.5 * Revision 1.4 2003/04/16 16:22:01 joko
8     * + introduced url::short
9     *
10 joko 1.4 * Revision 1.3 2003/04/09 07:57:15 joko
11     * revamped 'function decode_item_expr'
12     * introduced shortcut 'link::store'
13     *
14 joko 1.3 * Revision 1.2 2003/04/09 00:32:42 jonen
15     * some tests according to form rendering at the decode functions
16     *
17 jonen 1.2 * Revision 1.1 2003/04/06 01:28:04 jonen
18     * + initial commit
19     * + moved decode functions here
20     * + reworked decode functions to use new LinkBuilder class
21 jonen 1.1 *
22     *
23     *
24     */
25    
26     /**
27     * Container holds most helper functions are used at the WebExplorer itself
28     * or at its components, e.g. decode functions used at the GUI modules.
29     *
30     *
31     * @author Sebastian Utz <seut@tunemedia.de>
32     * @package org.netfrag.app
33     * @name WebExplorer::utils
34     *
35     */
36    
37    
38     class WebExplorer_utils {
39    
40    
41    
42     // TODO: refactor to Data::Lift - subcomponent: handling will get way more easy!
43 joko 1.3 function decode_item_array(&$item, $hidden_elements, $options) {
44 jonen 1.1 //$options = $this->_options['decode_args'];
45     //print "item: " . Dumper($item);
46     //print "options: " . Dumper($options);
47     if( is_array($item) ) {
48     //$cur_row_index = $this->_datasource->get_cur_data_index();
49     //$parent_guid = $this->_datasource->_data[$cur_row_index]['guid'];
50     // build list for selection form
51     if($options['form']) {
52     foreach($item as $key => $value) {
53 jonen 1.5 $link_meta = php::untwingle_reference($value, $options);
54 jonen 1.2 $link_vars = array(
55 jonen 1.5 'ecdid' => $link_meta[ident],
56     'ecdm' => $link_meta[type]
57 jonen 1.2 );
58    
59     foreach($hidden_elements as $label => $value) {
60     $link_vars[$label] = $value;
61     }
62    
63 joko 1.4 // V1 - create new LinkBuilder instance and get link GUID by saving vars
64 joko 1.3 $link_guid = link::store($link_vars);
65 jonen 1.2
66 joko 1.4 // V2 - more flexible - adjustable link shrinking via some constant defined elsewhere
67     //$link_guid = url::short('', $link_vars);
68    
69 jonen 1.2 $list[$key] = $link_guid;
70 jonen 1.1 }
71     if(is_array($list) ) {
72     $container = container(
73 jonen 1.2 //form_open( $item[0], $_SERVER['PHP_SELF'], "POST" ),
74     form_select("lbid", $list),
75 jonen 1.1 form_submit("submit","view" )
76     );
77 jonen 1.2 //$container->add(form_close() );
78 jonen 1.1 $item = $container;
79     }
80     } else {
81     //print "<b>2</b><br/>";
82     $container = container();
83     foreach($item as $key => $value) {
84 jonen 1.5 $link_meta = php::untwingle_reference($value, $options);
85     $link_vars = array(
86     'ecdid' => $link_meta[ident],
87     'ecdm' => $link_meta[type]
88     );
89 jonen 1.1
90     foreach($hidden_elements as $label => $value) {
91     $link_vars[$label] = $value;
92     //$tmp_array[] = $label . "=" . $value;
93     }
94    
95     //$str_hidden = join("&", $tmp_array);
96     //$container->add("->", html_a($_SERVER["PHP_SELF"] . "?ecdid=" . $ident . "&ecdm=" . $meta . "&" . $str_hidden, $key . " view"), html_br());
97    
98 joko 1.4 // V1 - create new LinkBuilder instance and get link GUID by saving vars
99     //$link_guid = link::store($link_vars);
100     //$container->add("->", html_a($_SERVER["PHP_SELF"] . "?lbid=" . $link_guid, $key . " view"), html_br());
101    
102     // V2 - more flexible - adjustable link shrinking via some constant defined elsewhere
103     $url_short = url::short($_SERVER["PHP_SELF"], $link_vars);
104     $container->add("->", html_a( $url_short, $key . " view"), html_br());
105 jonen 1.1
106     }
107     $item = $container;
108     }
109 joko 1.3 //return $item;
110     return 1;
111 jonen 1.1 }
112     }
113    
114     // decodes serialized string representations of object-references
115     // TODO: refactor to Data::Lift - subcomponent: handling will get way more easy!
116 joko 1.3 function decode_item_expr(&$item, $hidden_elements, $options) {
117    
118     //return;
119    
120     // debug
121 jonen 1.1 //$options = $this->_options['decode_args'];
122     //print "item: $item<br/>";
123    
124 joko 1.3 // resolve 'o_{guid}_{classname}' - encoded string
125     $link_meta = php::untwingle_reference($item);
126     //print Dumper($link_meta);
127    
128     if (!is_array($link_meta)) {
129     //return $item;
130     //print "NO<br/>";
131     return;
132     }
133    
134     $link_vars = array(
135     'ecdid' => $link_meta[ident],
136     'ecdm' => $link_meta[type],
137     );
138    
139     foreach($hidden_elements as $label => $value) {
140     $link_vars[$label] = $value;
141 jonen 1.1 }
142 joko 1.3
143 jonen 1.5 // V1
144 joko 1.3 //$str_hidden = join("&", $tmp_array);
145     //$item = html_a($_SERVER["PHP_SELF"] . "?ecdid=" . $ident . "&ecdm=" . $meta . "&" . $str_hidden, "view");
146    
147 jonen 1.5 // V2
148     //$link_guid = link::store($link_vars);
149     //$item = html_a($_SERVER["PHP_SELF"] . "?lbid=" . $link_guid, "view");
150    
151     // V3 - more flexible - adjustable link shrinking via some constant defined elsewhere
152     $url_short = url::short($_SERVER["PHP_SELF"], $link_vars);
153     $item = html_a( $url_short, " view");
154 joko 1.3
155     return 1;
156 jonen 1.1 }
157    
158    
159    
160     }
161    
162    
163     ?>

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed