@@ 57-89 (lines=33) @@ | ||
54 | * |
|
55 | * @return $this |
|
56 | */ |
|
57 | public function add_fields() { |
|
58 | $argv = func_get_args(); |
|
59 | $argc = count( $argv ); |
|
60 | ||
61 | if ( $argc == 1 ) { |
|
62 | $fields = $argv[0]; |
|
63 | $name = ''; |
|
64 | $label = null; |
|
65 | } else if ( $argc == 2 ) { |
|
66 | if ( is_array( $argv[0] ) ) { |
|
67 | list( $fields, $name ) = $argv; |
|
68 | } else { |
|
69 | list( $name, $fields ) = $argv; |
|
70 | } |
|
71 | $label = null; |
|
72 | } else if ( $argc == 3 ) { |
|
73 | if ( is_array( $argv[0] ) ) { |
|
74 | list( $fields, $name, $label ) = $argv; |
|
75 | } else { |
|
76 | list( $name, $label, $fields ) = $argv; |
|
77 | } |
|
78 | } |
|
79 | ||
80 | if ( array_key_exists( '_' . $name, $this->groups ) ) { |
|
81 | Incorrect_Syntax_Exception::raise( 'Group with name "' . $name . '" in Complex Field "' . $this->get_label() . '" already exists.' ); |
|
82 | } |
|
83 | ||
84 | $group = new Group_Field($name, $label, $fields); |
|
85 | ||
86 | $this->groups[ $group->get_name() ] = $group; |
|
87 | ||
88 | return $this; |
|
89 | } |
|
90 | ||
91 | /** |
|
92 | * Set the group label Underscore template. |
@@ 57-89 (lines=33) @@ | ||
54 | * |
|
55 | * @return $this |
|
56 | */ |
|
57 | public function add_fields() { |
|
58 | $argv = func_get_args(); |
|
59 | $argc = count( $argv ); |
|
60 | ||
61 | if ( $argc == 1 ) { |
|
62 | $fields = $argv[0]; |
|
63 | $name = ''; |
|
64 | $label = null; |
|
65 | } else if ( $argc == 2 ) { |
|
66 | if ( is_array( $argv[0] ) ) { |
|
67 | list( $fields, $name ) = $argv; |
|
68 | } else { |
|
69 | list( $name, $fields ) = $argv; |
|
70 | } |
|
71 | $label = null; |
|
72 | } else if ( $argc == 3 ) { |
|
73 | if ( is_array( $argv[0] ) ) { |
|
74 | list( $fields, $name, $label ) = $argv; |
|
75 | } else { |
|
76 | list( $name, $label, $fields ) = $argv; |
|
77 | } |
|
78 | } |
|
79 | ||
80 | if ( array_key_exists( '_' . $name, $this->groups ) ) { |
|
81 | Incorrect_Syntax_Exception::raise( 'Group with name "' . $name . '" in Complex Field "' . $this->get_label() . '" already exists.' ); |
|
82 | } |
|
83 | ||
84 | $group = new Group_Field($name, $label, $fields); |
|
85 | ||
86 | $this->groups[ $group->get_name() ] = $group; |
|
87 | ||
88 | return $this; |
|
89 | } |
|
90 | ||
91 | /** |
|
92 | * Set the group label Underscore template. |