source: trunk/www.guidonia.net/wp/wp-content/plugins/contact-form-7/includes/pipe.php@ 44

Last change on this file since 44 was 44, checked in by luciano, 14 years ago
File size: 1.1 KB
Line 
1<?php
2
3class WPCF7_Pipe {
4
5 var $before = '';
6 var $after = '';
7
8 function WPCF7_Pipe( $text ) {
9 $pipe_pos = strpos( $text, '|' );
10 if ( false === $pipe_pos ) {
11 $this->before = $this->after = $text;
12 } else {
13 $this->before = substr( $text, 0, $pipe_pos );
14 $this->after = substr( $text, $pipe_pos + 1 );
15 }
16 }
17}
18
19class WPCF7_Pipes {
20
21 var $pipes = array();
22
23 function WPCF7_Pipes( $texts ) {
24 if ( ! is_array( $texts ) )
25 return;
26
27 foreach ( $texts as $text ) {
28 $this->add_pipe( $text );
29 }
30 }
31
32 function add_pipe( $text ) {
33 $pipe = new WPCF7_Pipe( $text );
34 $this->pipes[] = $pipe;
35 }
36
37 function do_pipe( $before ) {
38 foreach ( $this->pipes as $pipe ) {
39 if ( $pipe->before == $before )
40 return $pipe->after;
41 }
42 return $before;
43 }
44
45 function collect_befores() {
46 $befores = array();
47
48 foreach ( $this->pipes as $pipe ) {
49 $befores[] = $pipe->before;
50 }
51
52 return $befores;
53 }
54
55 function zero() {
56 return empty( $this->pipes );
57 }
58
59 function random_pipe() {
60 if ( $this->zero() )
61 return null;
62
63 return $this->pipes[array_rand( $this->pipes )];
64 }
65}
66
67?>
Note: See TracBrowser for help on using the repository browser.