Version Description
- New: Support hierarchical channels (aka "sub channels") for inbound messages.
- Improved spam management.
- Translation for German has been created.
- This version requires WordPress 3.5 or higher.
Download this release
Release Info
Developer | takayukister |
Plugin | Flamingo |
Version | 1.0.5 |
Comparing to | |
See all releases |
Code changes from version 1.0.4 to 1.0.5
- admin/includes/class-inbound-messages-list-table.php +78 -25
- flamingo.php +2 -2
- includes/class-inbound-message.php +49 -2
- languages/flamingo-de_DE.mo +0 -0
- languages/flamingo-de_DE.po +362 -0
- languages/{flamingo-es.mo → flamingo-es_ES.mo} +0 -0
- languages/{flamingo-es.po → flamingo-es_ES.po} +0 -0
- readme.txt +12 -4
admin/includes/class-inbound-messages-list-table.php
CHANGED
@@ -57,8 +57,17 @@ class Flamingo_Inbound_Messages_List_Table extends WP_List_Table {
|
|
57 |
if ( ! empty( $_REQUEST['channel'] ) )
|
58 |
$args['channel'] = $_REQUEST['channel'];
|
59 |
|
60 |
-
|
61 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
|
63 |
$this->items = Flamingo_Inbound_Message::find( $args );
|
64 |
|
@@ -69,28 +78,44 @@ class Flamingo_Inbound_Messages_List_Table extends WP_List_Table {
|
|
69 |
'total_items' => $total_items,
|
70 |
'total_pages' => $total_pages,
|
71 |
'per_page' => $per_page ) );
|
72 |
-
|
73 |
-
$this->is_trash = isset( $_REQUEST['post_status'] ) && $_REQUEST['post_status'] == 'trash';
|
74 |
}
|
75 |
|
76 |
function get_views() {
|
77 |
$status_links = array();
|
78 |
-
$post_status = empty( $_REQUEST['post_status'] )
|
|
|
79 |
|
80 |
// Inbox
|
81 |
Flamingo_Inbound_Message::find( array( 'post_status' => 'any' ) );
|
82 |
$posts_in_inbox = Flamingo_Inbound_Message::$found_items;
|
83 |
|
84 |
$inbox = sprintf(
|
85 |
-
_nx( 'Inbox <span class="count">(%s)</span>',
|
|
|
86 |
$posts_in_inbox, 'posts', 'flamingo' ),
|
87 |
number_format_i18n( $posts_in_inbox ) );
|
88 |
|
89 |
$status_links['inbox'] = sprintf( '<a href="%1$s"%2$s>%3$s</a>',
|
90 |
admin_url( 'admin.php?page=flamingo_inbound' ),
|
91 |
-
|
92 |
$inbox );
|
93 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
94 |
// Trash
|
95 |
Flamingo_Inbound_Message::find( array( 'post_status' => 'trash' ) );
|
96 |
$posts_in_trash = Flamingo_Inbound_Message::$found_items;
|
@@ -99,7 +124,8 @@ class Flamingo_Inbound_Messages_List_Table extends WP_List_Table {
|
|
99 |
return $status_links;
|
100 |
|
101 |
$trash = sprintf(
|
102 |
-
_nx( 'Trash <span class="count">(%s)</span>',
|
|
|
103 |
$posts_in_trash, 'posts', 'flamingo' ),
|
104 |
number_format_i18n( $posts_in_trash ) );
|
105 |
|
@@ -127,13 +153,21 @@ class Flamingo_Inbound_Messages_List_Table extends WP_List_Table {
|
|
127 |
function get_bulk_actions() {
|
128 |
$actions = array();
|
129 |
|
130 |
-
if ( $this->is_trash )
|
131 |
$actions['untrash'] = __( 'Restore', 'flamingo' );
|
|
|
132 |
|
133 |
-
if ( $this->is_trash || ! EMPTY_TRASH_DAYS )
|
134 |
$actions['delete'] = __( 'Delete Permanently', 'flamingo' );
|
135 |
-
else
|
136 |
$actions['trash'] = __( 'Move to Trash', 'flamingo' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
|
138 |
return $actions;
|
139 |
}
|
@@ -168,6 +202,7 @@ class Flamingo_Inbound_Messages_List_Table extends WP_List_Table {
|
|
168 |
'hide_empty' => 0,
|
169 |
'hide_if_empty' => 1,
|
170 |
'orderby' => 'name',
|
|
|
171 |
'selected' => $channel ) );
|
172 |
|
173 |
submit_button( __( 'Filter', 'flamingo' ),
|
@@ -206,20 +241,19 @@ class Flamingo_Inbound_Messages_List_Table extends WP_List_Table {
|
|
206 |
$actions['edit'] = '<a href="' . $edit_link . '">'
|
207 |
. esc_html( __( 'Edit', 'flamingo' ) ) . '</a>';
|
208 |
|
209 |
-
if (
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
|
220 |
-
|
221 |
-
|
222 |
-
}
|
223 |
}
|
224 |
|
225 |
$a = sprintf( '<a class="row-title" href="%1$s" title="%2$s">%3$s</a>',
|
@@ -238,14 +272,33 @@ class Flamingo_Inbound_Messages_List_Table extends WP_List_Table {
|
|
238 |
if ( empty( $item->channel ) )
|
239 |
return '';
|
240 |
|
241 |
-
$term = get_term_by( 'slug', $item->channel,
|
|
|
242 |
|
243 |
if ( empty( $term ) || is_wp_error( $term ) )
|
244 |
return $item->channel;
|
245 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
246 |
$link = admin_url( 'admin.php?page=flamingo_inbound&channel=' . $term->slug );
|
247 |
|
248 |
-
$output
|
249 |
$link, esc_attr( $term->name ), esc_html( $term->name ) );
|
250 |
|
251 |
return $output;
|
57 |
if ( ! empty( $_REQUEST['channel'] ) )
|
58 |
$args['channel'] = $_REQUEST['channel'];
|
59 |
|
60 |
+
$this->is_trash = $this->is_spam = false;
|
61 |
+
|
62 |
+
if ( ! empty( $_REQUEST['post_status'] ) ) {
|
63 |
+
if ( 'trash' == $_REQUEST['post_status'] ) {
|
64 |
+
$args['post_status'] = 'trash';
|
65 |
+
$this->is_trash = true;
|
66 |
+
} elseif ( 'spam' == $_REQUEST['post_status'] ) {
|
67 |
+
$args['post_status'] = Flamingo_Inbound_Message::spam_status;
|
68 |
+
$this->is_spam = true;
|
69 |
+
}
|
70 |
+
}
|
71 |
|
72 |
$this->items = Flamingo_Inbound_Message::find( $args );
|
73 |
|
78 |
'total_items' => $total_items,
|
79 |
'total_pages' => $total_pages,
|
80 |
'per_page' => $per_page ) );
|
|
|
|
|
81 |
}
|
82 |
|
83 |
function get_views() {
|
84 |
$status_links = array();
|
85 |
+
$post_status = empty( $_REQUEST['post_status'] )
|
86 |
+
? '' : $_REQUEST['post_status'];
|
87 |
|
88 |
// Inbox
|
89 |
Flamingo_Inbound_Message::find( array( 'post_status' => 'any' ) );
|
90 |
$posts_in_inbox = Flamingo_Inbound_Message::$found_items;
|
91 |
|
92 |
$inbox = sprintf(
|
93 |
+
_nx( 'Inbox <span class="count">(%s)</span>',
|
94 |
+
'Inbox <span class="count">(%s)</span>',
|
95 |
$posts_in_inbox, 'posts', 'flamingo' ),
|
96 |
number_format_i18n( $posts_in_inbox ) );
|
97 |
|
98 |
$status_links['inbox'] = sprintf( '<a href="%1$s"%2$s>%3$s</a>',
|
99 |
admin_url( 'admin.php?page=flamingo_inbound' ),
|
100 |
+
( $this->is_trash || $this->is_spam ) ? '' : ' class="current"',
|
101 |
$inbox );
|
102 |
|
103 |
+
// Spam
|
104 |
+
Flamingo_Inbound_Message::find( array(
|
105 |
+
'post_status' => Flamingo_Inbound_Message::spam_status ) );
|
106 |
+
$posts_in_spam = Flamingo_Inbound_Message::$found_items;
|
107 |
+
|
108 |
+
$spam = sprintf(
|
109 |
+
_nx( 'Spam <span class="count">(%s)</span>',
|
110 |
+
'Spam <span class="count">(%s)</span>',
|
111 |
+
$posts_in_spam, 'posts', 'flamingo' ),
|
112 |
+
number_format_i18n( $posts_in_spam ) );
|
113 |
+
|
114 |
+
$status_links['spam'] = sprintf( '<a href="%1$s"%2$s>%3$s</a>',
|
115 |
+
admin_url( 'admin.php?page=flamingo_inbound&post_status=spam' ),
|
116 |
+
'spam' == $post_status ? ' class="current"' : '',
|
117 |
+
$spam );
|
118 |
+
|
119 |
// Trash
|
120 |
Flamingo_Inbound_Message::find( array( 'post_status' => 'trash' ) );
|
121 |
$posts_in_trash = Flamingo_Inbound_Message::$found_items;
|
124 |
return $status_links;
|
125 |
|
126 |
$trash = sprintf(
|
127 |
+
_nx( 'Trash <span class="count">(%s)</span>',
|
128 |
+
'Trash <span class="count">(%s)</span>',
|
129 |
$posts_in_trash, 'posts', 'flamingo' ),
|
130 |
number_format_i18n( $posts_in_trash ) );
|
131 |
|
153 |
function get_bulk_actions() {
|
154 |
$actions = array();
|
155 |
|
156 |
+
if ( $this->is_trash ) {
|
157 |
$actions['untrash'] = __( 'Restore', 'flamingo' );
|
158 |
+
}
|
159 |
|
160 |
+
if ( $this->is_trash || ! EMPTY_TRASH_DAYS ) {
|
161 |
$actions['delete'] = __( 'Delete Permanently', 'flamingo' );
|
162 |
+
} else {
|
163 |
$actions['trash'] = __( 'Move to Trash', 'flamingo' );
|
164 |
+
}
|
165 |
+
|
166 |
+
if ( $this->is_spam ) {
|
167 |
+
$actions['unspam'] = __( 'Not Spam', 'flamingo' );
|
168 |
+
} else {
|
169 |
+
$actions['spam'] = __( 'Mark as Spam', 'flamingo' );
|
170 |
+
}
|
171 |
|
172 |
return $actions;
|
173 |
}
|
202 |
'hide_empty' => 0,
|
203 |
'hide_if_empty' => 1,
|
204 |
'orderby' => 'name',
|
205 |
+
'hierarchical' => 1,
|
206 |
'selected' => $channel ) );
|
207 |
|
208 |
submit_button( __( 'Filter', 'flamingo' ),
|
241 |
$actions['edit'] = '<a href="' . $edit_link . '">'
|
242 |
. esc_html( __( 'Edit', 'flamingo' ) ) . '</a>';
|
243 |
|
244 |
+
if ( $item->spam ) {
|
245 |
+
$link = add_query_arg( array( 'action' => 'unspam' ), $url );
|
246 |
+
$link = wp_nonce_url( $link,
|
247 |
+
'flamingo-unspam-inbound-message_' . $item->id );
|
248 |
|
249 |
+
$actions['unspam'] = '<a href="' . $link . '">'
|
250 |
+
. esc_html( __( 'Not Spam', 'flamingo' ) ) . '</a>';
|
251 |
+
} else {
|
252 |
+
$link = add_query_arg( array( 'action' => 'spam' ), $url );
|
253 |
+
$link = wp_nonce_url( $link, 'flamingo-spam-inbound-message_' . $item->id );
|
254 |
|
255 |
+
$actions['spam'] = '<a href="' . $link . '">'
|
256 |
+
. esc_html( __( 'Spam', 'flamingo' ) ) . '</a>';
|
|
|
257 |
}
|
258 |
|
259 |
$a = sprintf( '<a class="row-title" href="%1$s" title="%2$s">%3$s</a>',
|
272 |
if ( empty( $item->channel ) )
|
273 |
return '';
|
274 |
|
275 |
+
$term = get_term_by( 'slug', $item->channel,
|
276 |
+
Flamingo_Inbound_Message::channel_taxonomy );
|
277 |
|
278 |
if ( empty( $term ) || is_wp_error( $term ) )
|
279 |
return $item->channel;
|
280 |
|
281 |
+
$output = '';
|
282 |
+
|
283 |
+
$ancestors = (array) get_ancestors( $term->term_id,
|
284 |
+
Flamingo_Inbound_Message::channel_taxonomy );
|
285 |
+
|
286 |
+
while ( $parent = array_pop( $ancestors ) ) {
|
287 |
+
$parent = get_term( $parent, Flamingo_Inbound_Message::channel_taxonomy );
|
288 |
+
|
289 |
+
if ( empty( $parent ) || is_wp_error( $parent ) )
|
290 |
+
continue;
|
291 |
+
|
292 |
+
$link = admin_url(
|
293 |
+
'admin.php?page=flamingo_inbound&channel=' . $parent->slug );
|
294 |
+
|
295 |
+
$output .= sprintf( '<a href="%1$s" title="%2$s">%3$s</a> / ',
|
296 |
+
$link, esc_attr( $parent->name ), esc_html( $parent->name ) );
|
297 |
+
}
|
298 |
+
|
299 |
$link = admin_url( 'admin.php?page=flamingo_inbound&channel=' . $term->slug );
|
300 |
|
301 |
+
$output .= sprintf( '<a href="%1$s" title="%2$s">%3$s</a>',
|
302 |
$link, esc_attr( $term->name ), esc_html( $term->name ) );
|
303 |
|
304 |
return $output;
|
flamingo.php
CHANGED
@@ -6,10 +6,10 @@ Description: Flamingo manages your contact list on WordPress.
|
|
6 |
Author: Takayuki Miyoshi
|
7 |
Text Domain: flamingo
|
8 |
Domain Path: /languages/
|
9 |
-
Version: 1.0.
|
10 |
*/
|
11 |
|
12 |
-
define( 'FLAMINGO_VERSION', '1.0.
|
13 |
|
14 |
define( 'FLAMINGO_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|
15 |
|
6 |
Author: Takayuki Miyoshi
|
7 |
Text Domain: flamingo
|
8 |
Domain Path: /languages/
|
9 |
+
Version: 1.0.5
|
10 |
*/
|
11 |
|
12 |
+
define( 'FLAMINGO_VERSION', '1.0.5' );
|
13 |
|
14 |
define( 'FLAMINGO_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
|
15 |
|
includes/class-inbound-message.php
CHANGED
@@ -3,6 +3,7 @@
|
|
3 |
class Flamingo_Inbound_Message {
|
4 |
|
5 |
const post_type = 'flamingo_inbound';
|
|
|
6 |
const channel_taxonomy = 'flamingo_inbound_channel';
|
7 |
|
8 |
public static $found_items = 0;
|
@@ -17,6 +18,7 @@ class Flamingo_Inbound_Message {
|
|
17 |
public $fields;
|
18 |
public $meta;
|
19 |
public $akismet;
|
|
|
20 |
|
21 |
public static function register_post_type() {
|
22 |
register_post_type( self::post_type, array(
|
@@ -26,11 +28,19 @@ class Flamingo_Inbound_Message {
|
|
26 |
'rewrite' => false,
|
27 |
'query_var' => false ) );
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
register_taxonomy( self::channel_taxonomy, self::post_type, array(
|
30 |
'labels' => array(
|
31 |
'name' => __( 'Flamingo Inbound Message Channels', 'flamingo' ),
|
32 |
'singular_name' => __( 'Flamingo Inbound Message Channel', 'flamingo' ) ),
|
33 |
'public' => false,
|
|
|
34 |
'rewrite' => false,
|
35 |
'query_var' => false ) );
|
36 |
}
|
@@ -88,7 +98,8 @@ class Flamingo_Inbound_Message {
|
|
88 |
'from_email' => '',
|
89 |
'fields' => array(),
|
90 |
'meta' => array(),
|
91 |
-
'akismet' => array()
|
|
|
92 |
|
93 |
$args = wp_parse_args( $args, $defaults );
|
94 |
|
@@ -103,6 +114,12 @@ class Flamingo_Inbound_Message {
|
|
103 |
$obj->meta = $args['meta'];
|
104 |
$obj->akismet = $args['akismet'];
|
105 |
|
|
|
|
|
|
|
|
|
|
|
|
|
106 |
$obj->save();
|
107 |
|
108 |
return $obj;
|
@@ -125,6 +142,12 @@ class Flamingo_Inbound_Message {
|
|
125 |
|
126 |
if ( ! empty( $terms ) && ! is_wp_error( $terms ) )
|
127 |
$this->channel = $terms[0]->slug;
|
|
|
|
|
|
|
|
|
|
|
|
|
128 |
}
|
129 |
}
|
130 |
|
@@ -139,10 +162,12 @@ class Flamingo_Inbound_Message {
|
|
139 |
|
140 |
$post_content = implode( "\n", $fields );
|
141 |
|
|
|
|
|
142 |
$postarr = array(
|
143 |
'ID' => absint( $this->id ),
|
144 |
'post_type' => self::post_type,
|
145 |
-
'post_status' =>
|
146 |
'post_title' => $post_title,
|
147 |
'post_content' => $post_content );
|
148 |
|
@@ -197,6 +222,17 @@ class Flamingo_Inbound_Message {
|
|
197 |
}
|
198 |
|
199 |
public function spam() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
200 |
if ( empty( $this->id ) || empty( $this->akismet ) )
|
201 |
return;
|
202 |
|
@@ -214,6 +250,17 @@ class Flamingo_Inbound_Message {
|
|
214 |
}
|
215 |
|
216 |
public function unspam() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
217 |
if ( empty( $this->id ) || empty( $this->akismet ) )
|
218 |
return;
|
219 |
|
3 |
class Flamingo_Inbound_Message {
|
4 |
|
5 |
const post_type = 'flamingo_inbound';
|
6 |
+
const spam_status = 'flamingo-spam';
|
7 |
const channel_taxonomy = 'flamingo_inbound_channel';
|
8 |
|
9 |
public static $found_items = 0;
|
18 |
public $fields;
|
19 |
public $meta;
|
20 |
public $akismet;
|
21 |
+
public $spam;
|
22 |
|
23 |
public static function register_post_type() {
|
24 |
register_post_type( self::post_type, array(
|
28 |
'rewrite' => false,
|
29 |
'query_var' => false ) );
|
30 |
|
31 |
+
register_post_status( self::spam_status, array(
|
32 |
+
'label' => __( 'Spam', 'flamingo' ),
|
33 |
+
'public' => false,
|
34 |
+
'exclude_from_search' => true,
|
35 |
+
'show_in_admin_all_list' => false,
|
36 |
+
'show_in_admin_status_list' => true ) );
|
37 |
+
|
38 |
register_taxonomy( self::channel_taxonomy, self::post_type, array(
|
39 |
'labels' => array(
|
40 |
'name' => __( 'Flamingo Inbound Message Channels', 'flamingo' ),
|
41 |
'singular_name' => __( 'Flamingo Inbound Message Channel', 'flamingo' ) ),
|
42 |
'public' => false,
|
43 |
+
'hierarchical' => true,
|
44 |
'rewrite' => false,
|
45 |
'query_var' => false ) );
|
46 |
}
|
98 |
'from_email' => '',
|
99 |
'fields' => array(),
|
100 |
'meta' => array(),
|
101 |
+
'akismet' => array(),
|
102 |
+
'spam' => false );
|
103 |
|
104 |
$args = wp_parse_args( $args, $defaults );
|
105 |
|
114 |
$obj->meta = $args['meta'];
|
115 |
$obj->akismet = $args['akismet'];
|
116 |
|
117 |
+
if ( $args['spam'] ) {
|
118 |
+
$obj->spam = true;
|
119 |
+
} else {
|
120 |
+
$obj->spam = ! empty( $obj->akismet['spam'] );
|
121 |
+
}
|
122 |
+
|
123 |
$obj->save();
|
124 |
|
125 |
return $obj;
|
142 |
|
143 |
if ( ! empty( $terms ) && ! is_wp_error( $terms ) )
|
144 |
$this->channel = $terms[0]->slug;
|
145 |
+
|
146 |
+
if ( self::spam_status == get_post_status( $post ) ) {
|
147 |
+
$this->spam = true;
|
148 |
+
} else {
|
149 |
+
$this->spam = ! empty( $this->akismet['spam'] );
|
150 |
+
}
|
151 |
}
|
152 |
}
|
153 |
|
162 |
|
163 |
$post_content = implode( "\n", $fields );
|
164 |
|
165 |
+
$post_status = $this->spam ? self::spam_status : 'publish';
|
166 |
+
|
167 |
$postarr = array(
|
168 |
'ID' => absint( $this->id ),
|
169 |
'post_type' => self::post_type,
|
170 |
+
'post_status' => $post_status,
|
171 |
'post_title' => $post_title,
|
172 |
'post_content' => $post_content );
|
173 |
|
222 |
}
|
223 |
|
224 |
public function spam() {
|
225 |
+
if ( $this->spam ) {
|
226 |
+
return;
|
227 |
+
}
|
228 |
+
|
229 |
+
$this->akismet_submit_spam();
|
230 |
+
$this->spam = true;
|
231 |
+
|
232 |
+
return $this->save();
|
233 |
+
}
|
234 |
+
|
235 |
+
public function akismet_submit_spam() {
|
236 |
if ( empty( $this->id ) || empty( $this->akismet ) )
|
237 |
return;
|
238 |
|
250 |
}
|
251 |
|
252 |
public function unspam() {
|
253 |
+
if ( ! $this->spam ) {
|
254 |
+
return;
|
255 |
+
}
|
256 |
+
|
257 |
+
$this->akismet_submit_ham();
|
258 |
+
$this->spam = false;
|
259 |
+
|
260 |
+
return $this->save();
|
261 |
+
}
|
262 |
+
|
263 |
+
public function akismet_submit_ham() {
|
264 |
if ( empty( $this->id ) || empty( $this->akismet ) )
|
265 |
return;
|
266 |
|
languages/flamingo-de_DE.mo
ADDED
Binary file
|
languages/flamingo-de_DE.po
ADDED
@@ -0,0 +1,362 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: Flamingo\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2012-10-19 00:15+0900\n"
|
6 |
+
"PO-Revision-Date: 2013-07-23 12:40+0100\n"
|
7 |
+
"Last-Translator: Christian Becker-Kapraun <alariel@alariel.de>\n"
|
8 |
+
"Language-Team: \n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Poedit-SourceCharset: utf-8\n"
|
13 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_c\n"
|
14 |
+
"X-Poedit-Basepath: ../..\n"
|
15 |
+
"Plural-Forms: nplurals=1; plural=0;\n"
|
16 |
+
"X-Generator: Poedit 1.5.3\n"
|
17 |
+
"X-Poedit-SearchPath-0: flamingo\n"
|
18 |
+
|
19 |
+
#: flamingo/admin/admin.php:9
|
20 |
+
#: flamingo/admin/admin.php:14
|
21 |
+
#: flamingo/admin/admin.php:256
|
22 |
+
msgid "Flamingo Address Book"
|
23 |
+
msgstr "Flamingo Adressbuch"
|
24 |
+
|
25 |
+
#: flamingo/admin/admin.php:9
|
26 |
+
msgid "Flamingo"
|
27 |
+
msgstr "Flamingo"
|
28 |
+
|
29 |
+
#: flamingo/admin/admin.php:14
|
30 |
+
msgid "Address Book"
|
31 |
+
msgstr "Adressbuch"
|
32 |
+
|
33 |
+
#: flamingo/admin/admin.php:20
|
34 |
+
#: flamingo/includes/class-inbound-message.php:24
|
35 |
+
msgid "Flamingo Inbound Messages"
|
36 |
+
msgstr "Flamingo Eingehende Nachrichten"
|
37 |
+
|
38 |
+
#: flamingo/admin/admin.php:20
|
39 |
+
#: flamingo/admin/admin.php:489
|
40 |
+
msgid "Inbound Messages"
|
41 |
+
msgstr "Eingehende Nachrichten"
|
42 |
+
|
43 |
+
#: flamingo/admin/admin.php:66
|
44 |
+
msgid "Contact updated."
|
45 |
+
msgstr "Kontakt aktualisiert."
|
46 |
+
|
47 |
+
#: flamingo/admin/admin.php:68
|
48 |
+
msgid "Contact deleted."
|
49 |
+
msgstr "Kontakt gelöscht."
|
50 |
+
|
51 |
+
#: flamingo/admin/admin.php:70
|
52 |
+
msgid "Messages trashed."
|
53 |
+
msgstr "Nachrichten in den Müll verschoben."
|
54 |
+
|
55 |
+
#: flamingo/admin/admin.php:72
|
56 |
+
msgid "Messages restored."
|
57 |
+
msgstr "Nachrichten wiederhergestellt."
|
58 |
+
|
59 |
+
#: flamingo/admin/admin.php:74
|
60 |
+
msgid "Messages deleted."
|
61 |
+
msgstr "Nachrichten gelöscht."
|
62 |
+
|
63 |
+
#: flamingo/admin/admin.php:76
|
64 |
+
msgid "Messages got marked as spam."
|
65 |
+
msgstr "Nachrichten wurden als Spam markiert."
|
66 |
+
|
67 |
+
#: flamingo/admin/admin.php:78
|
68 |
+
msgid "Messages got marked as not spam."
|
69 |
+
msgstr "Nachrichten wurden als \"Kein Spam\" markiert."
|
70 |
+
|
71 |
+
#: flamingo/admin/admin.php:105
|
72 |
+
msgid "You are not allowed to edit this item."
|
73 |
+
msgstr "Sie dürfen dieses Element nicht editieren."
|
74 |
+
|
75 |
+
#: flamingo/admin/admin.php:144
|
76 |
+
#: flamingo/admin/admin.php:377
|
77 |
+
msgid "You are not allowed to delete this item."
|
78 |
+
msgstr "Sie dürfen dieses Element nicht löschen."
|
79 |
+
|
80 |
+
#: flamingo/admin/admin.php:147
|
81 |
+
#: flamingo/admin/admin.php:380
|
82 |
+
msgid "Error in deleting."
|
83 |
+
msgstr "Fehler während des Löschens."
|
84 |
+
|
85 |
+
#: flamingo/admin/admin.php:170
|
86 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:11
|
87 |
+
msgid "Email"
|
88 |
+
msgstr "Email"
|
89 |
+
|
90 |
+
#: flamingo/admin/admin.php:170
|
91 |
+
#: flamingo/admin/includes/meta-boxes.php:140
|
92 |
+
msgid "Full name"
|
93 |
+
msgstr "Voller Name"
|
94 |
+
|
95 |
+
#: flamingo/admin/admin.php:171
|
96 |
+
#: flamingo/admin/includes/meta-boxes.php:145
|
97 |
+
msgid "First name"
|
98 |
+
msgstr "Vorname"
|
99 |
+
|
100 |
+
#: flamingo/admin/admin.php:171
|
101 |
+
#: flamingo/admin/includes/meta-boxes.php:150
|
102 |
+
msgid "Last name"
|
103 |
+
msgstr "Nachname"
|
104 |
+
|
105 |
+
#: flamingo/admin/admin.php:215
|
106 |
+
#: flamingo/admin/admin.php:451
|
107 |
+
msgid "Save"
|
108 |
+
msgstr "Speichern"
|
109 |
+
|
110 |
+
#: flamingo/admin/admin.php:218
|
111 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:13
|
112 |
+
msgid "Tags"
|
113 |
+
msgstr "Tags"
|
114 |
+
|
115 |
+
#: flamingo/admin/admin.php:221
|
116 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:12
|
117 |
+
msgid "Name"
|
118 |
+
msgstr "Name"
|
119 |
+
|
120 |
+
#: flamingo/admin/admin.php:234
|
121 |
+
msgid "Contacts"
|
122 |
+
msgstr "Kontakte"
|
123 |
+
|
124 |
+
#: flamingo/admin/admin.php:260
|
125 |
+
#: flamingo/admin/admin.php:493
|
126 |
+
#, php-format
|
127 |
+
msgid "Search results for “%s”"
|
128 |
+
msgstr "Suchergebnisse für “%s”"
|
129 |
+
|
130 |
+
#: flamingo/admin/admin.php:269
|
131 |
+
msgid "Search Contacts"
|
132 |
+
msgstr "Suche Kontakte"
|
133 |
+
|
134 |
+
#: flamingo/admin/admin.php:310
|
135 |
+
msgid "You are not allowed to move this item to the Trash."
|
136 |
+
msgstr "Sie dürfen dieses Element nicht in den Müll verschieben."
|
137 |
+
|
138 |
+
#: flamingo/admin/admin.php:313
|
139 |
+
msgid "Error in moving to Trash."
|
140 |
+
msgstr "Fehler während des Verschiebens in den Müll."
|
141 |
+
|
142 |
+
#: flamingo/admin/admin.php:340
|
143 |
+
msgid "You are not allowed to restore this item from the Trash."
|
144 |
+
msgstr "Sie dürfen dieses Element aus dem Müll nicht wiederherstellen."
|
145 |
+
|
146 |
+
#: flamingo/admin/admin.php:343
|
147 |
+
msgid "Error in restoring from Trash."
|
148 |
+
msgstr "Fehler während des wiederherstellens aus dem Müll."
|
149 |
+
|
150 |
+
#: flamingo/admin/admin.php:407
|
151 |
+
msgid "You are not allowed to spam this item."
|
152 |
+
msgstr "Sie dürfen dieses Element nicht als Spam markieren."
|
153 |
+
|
154 |
+
#: flamingo/admin/admin.php:435
|
155 |
+
msgid "You are not allowed to unspam this item."
|
156 |
+
msgstr "Sie dürfen dieses Element nicht als \"Kein Spam\" markieren."
|
157 |
+
|
158 |
+
#: flamingo/admin/admin.php:454
|
159 |
+
msgid "Fields"
|
160 |
+
msgstr "Felder"
|
161 |
+
|
162 |
+
#: flamingo/admin/admin.php:467
|
163 |
+
msgid "Messages"
|
164 |
+
msgstr "Nachrichten"
|
165 |
+
|
166 |
+
#: flamingo/admin/admin.php:504
|
167 |
+
msgid "Search Messages"
|
168 |
+
msgstr "Suche Nachrichten"
|
169 |
+
|
170 |
+
#: flamingo/admin/edit-contact-form.php:17
|
171 |
+
msgid "Edit Contact"
|
172 |
+
msgstr "Editiere Kontakt"
|
173 |
+
|
174 |
+
#: flamingo/admin/edit-contact-form.php:43
|
175 |
+
msgid "Enter email here"
|
176 |
+
msgstr "Geben Sie hier die EMail-Adresse ein"
|
177 |
+
|
178 |
+
#: flamingo/admin/edit-inbound-form.php:17
|
179 |
+
msgid "Inbound Message"
|
180 |
+
msgstr "Eingehende Nachricht"
|
181 |
+
|
182 |
+
#: flamingo/admin/edit-inbound-form.php:42
|
183 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:14
|
184 |
+
msgid "Date"
|
185 |
+
msgstr "Datum"
|
186 |
+
|
187 |
+
#: flamingo/admin/edit-inbound-form.php:47
|
188 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:11
|
189 |
+
msgid "Subject"
|
190 |
+
msgstr "Betreff"
|
191 |
+
|
192 |
+
#: flamingo/admin/edit-inbound-form.php:52
|
193 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:12
|
194 |
+
msgid "From"
|
195 |
+
msgstr "Von"
|
196 |
+
|
197 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:14
|
198 |
+
msgid "History"
|
199 |
+
msgstr "History"
|
200 |
+
|
201 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:15
|
202 |
+
msgid "Last Contact"
|
203 |
+
msgstr "Letzter Kontakt"
|
204 |
+
|
205 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:82
|
206 |
+
#: flamingo/admin/includes/meta-boxes.php:11
|
207 |
+
msgid "Delete"
|
208 |
+
msgstr "Löschen"
|
209 |
+
|
210 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:106
|
211 |
+
msgid "View all tags"
|
212 |
+
msgstr "Zeige alle Tags"
|
213 |
+
|
214 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:112
|
215 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:173
|
216 |
+
msgid "Filter"
|
217 |
+
msgstr "Filter"
|
218 |
+
|
219 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:115
|
220 |
+
msgid "Export"
|
221 |
+
msgstr "Exportiere"
|
222 |
+
|
223 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:138
|
224 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:207
|
225 |
+
msgid "Edit"
|
226 |
+
msgstr "Ändern"
|
227 |
+
|
228 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:142
|
229 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:227
|
230 |
+
#, php-format
|
231 |
+
msgid "Edit “%s”"
|
232 |
+
msgstr "Ändere “%s”"
|
233 |
+
|
234 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:154
|
235 |
+
msgid "No Tags"
|
236 |
+
msgstr "Keine Tags"
|
237 |
+
|
238 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:183
|
239 |
+
msgid "User"
|
240 |
+
msgstr "Benutzer"
|
241 |
+
|
242 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:196
|
243 |
+
#, php-format
|
244 |
+
msgid "Comment (%d)"
|
245 |
+
msgstr "Kommentar (%d)"
|
246 |
+
|
247 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:235
|
248 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:260
|
249 |
+
#: flamingo/includes/class-inbound-message.php:115
|
250 |
+
msgid "Y/m/d g:i:s A"
|
251 |
+
msgstr "d.m.Y h:i:s"
|
252 |
+
|
253 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:242
|
254 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:267
|
255 |
+
#, php-format
|
256 |
+
msgid "%s ago"
|
257 |
+
msgstr "vor %s"
|
258 |
+
|
259 |
+
#: flamingo/admin/includes/class-contacts-list-table.php:244
|
260 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:269
|
261 |
+
msgid "Y/m/d"
|
262 |
+
msgstr "d.m.Y"
|
263 |
+
|
264 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:13
|
265 |
+
msgid "Channel"
|
266 |
+
msgstr "Kanal"
|
267 |
+
|
268 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:131
|
269 |
+
msgid "Restore"
|
270 |
+
msgstr "Wiederherstellen"
|
271 |
+
|
272 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:134
|
273 |
+
#: flamingo/admin/includes/meta-boxes.php:107
|
274 |
+
msgid "Delete Permanently"
|
275 |
+
msgstr "Endgültig löschen"
|
276 |
+
|
277 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:136
|
278 |
+
#: flamingo/admin/includes/meta-boxes.php:109
|
279 |
+
msgid "Move to Trash"
|
280 |
+
msgstr "In den Müll verschieben"
|
281 |
+
|
282 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:167
|
283 |
+
msgid "View all channels"
|
284 |
+
msgstr "Zeige alle Kanäle"
|
285 |
+
|
286 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:178
|
287 |
+
msgid "Empty Trash"
|
288 |
+
msgstr "Müll leeren"
|
289 |
+
|
290 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:215
|
291 |
+
msgid "Not Spam"
|
292 |
+
msgstr "Kein Spam"
|
293 |
+
|
294 |
+
#: flamingo/admin/includes/class-inbound-messages-list-table.php:221
|
295 |
+
msgid "Spam"
|
296 |
+
msgstr "Spam"
|
297 |
+
|
298 |
+
#: flamingo/admin/includes/meta-boxes.php:17
|
299 |
+
#, php-format
|
300 |
+
msgid ""
|
301 |
+
"You are about to delete this contact '%s'\n"
|
302 |
+
" 'Cancel' to stop, 'OK' to delete."
|
303 |
+
msgstr ""
|
304 |
+
"Sie sind dabei, diesen Kontakt '%s' zu löschen.\n"
|
305 |
+
" 'Abbruch' zum Abbrechen, 'OK' zum Löschen."
|
306 |
+
|
307 |
+
#: flamingo/admin/includes/meta-boxes.php:22
|
308 |
+
msgid "Update Contact"
|
309 |
+
msgstr "Kontakt aktualisieren"
|
310 |
+
|
311 |
+
#: flamingo/admin/includes/meta-boxes.php:24
|
312 |
+
msgid "Add Contact"
|
313 |
+
msgstr "Kontakt hinzufügen"
|
314 |
+
|
315 |
+
#: flamingo/admin/includes/meta-boxes.php:68
|
316 |
+
msgid "Separate tags with commas"
|
317 |
+
msgstr "Tags getrennt durch Kommas"
|
318 |
+
|
319 |
+
#: flamingo/admin/includes/meta-boxes.php:71
|
320 |
+
msgid "Choose from the most used tags"
|
321 |
+
msgstr "Wähle aus den meist genutzen Tags"
|
322 |
+
|
323 |
+
#: flamingo/admin/includes/meta-boxes.php:120
|
324 |
+
msgid "Update Message"
|
325 |
+
msgstr "Nachricht aktualisieren"
|
326 |
+
|
327 |
+
#: flamingo/admin/includes/meta-boxes.php:122
|
328 |
+
msgid "Add Message"
|
329 |
+
msgstr "Nachricht hinzufügen"
|
330 |
+
|
331 |
+
#: flamingo/includes/class-contact.php:20
|
332 |
+
msgid "Flamingo Contacts"
|
333 |
+
msgstr "Flamingo Kontakte"
|
334 |
+
|
335 |
+
#: flamingo/includes/class-contact.php:21
|
336 |
+
msgid "Flamingo Contact"
|
337 |
+
msgstr "Flamingo Kontakt"
|
338 |
+
|
339 |
+
#: flamingo/includes/class-contact.php:27
|
340 |
+
msgid "Flamingo Contact Tags"
|
341 |
+
msgstr "Flamingo Kontakt Tags"
|
342 |
+
|
343 |
+
#: flamingo/includes/class-contact.php:28
|
344 |
+
msgid "Flamingo Contact Tag"
|
345 |
+
msgstr "Flamingo Kontakt Tag"
|
346 |
+
|
347 |
+
#: flamingo/includes/class-inbound-message.php:25
|
348 |
+
msgid "Flamingo Inbound Message"
|
349 |
+
msgstr "Flamingo Eingehende Nachricht"
|
350 |
+
|
351 |
+
#: flamingo/includes/class-inbound-message.php:31
|
352 |
+
msgid "Flamingo Inbound Message Channels"
|
353 |
+
msgstr "Flamingo Eingehende Nachricht - Kanäle"
|
354 |
+
|
355 |
+
#: flamingo/includes/class-inbound-message.php:32
|
356 |
+
msgid "Flamingo Inbound Message Channel"
|
357 |
+
msgstr "Flamingo Eingehende Nachricht - Kanal"
|
358 |
+
|
359 |
+
#: flamingo/includes/class-inbound-message.php:135
|
360 |
+
msgid "(No Title)"
|
361 |
+
msgstr "(Ohne Titel)"
|
362 |
+
|
languages/{flamingo-es.mo → flamingo-es_ES.mo}
RENAMED
File without changes
|
languages/{flamingo-es.po → flamingo-es_ES.po}
RENAMED
File without changes
|
readme.txt
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
=== Flamingo ===
|
2 |
Contributors: takayukister, megumithemes
|
3 |
Tags: bird, contact, mail, crm
|
4 |
-
Requires at least: 3.
|
5 |
-
Tested up to: 3.
|
6 |
-
Stable tag: 1.0.
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
@@ -19,12 +19,13 @@ Flamingo is a WordPress plugin created to be a total CRM package. With this vers
|
|
19 |
* Chinese, Simplified (zh_CN) - [ninghao](http://ninghao.net/)
|
20 |
* Dutch (nl_NL) - [TenSheep](http://tensheep.nl/)
|
21 |
* French (fr_FR) - [Benjamin Cousin](http://www.bewod.com/)
|
|
|
22 |
* Hebrew (he_IL) - [Dan Stramer](http://www.dmdesign.co.il/)
|
23 |
* Hungarian (hu_HU) - Rózsahegyi Péter
|
24 |
* Italian (it_IT) - Rosario Capparelli
|
25 |
* Japanese (ja) - [Takayuki Miyoshi](http://ideasilo.wordpress.com)
|
26 |
* Slovak (sk_SK) - Branco Radenovich
|
27 |
-
* Spanish (
|
28 |
* Turkish (tr_TR) - Ömür YANIKOĞLU
|
29 |
* Vietnamese (vi_VN) - [ICA Design](http://www.icadesign.vn/)
|
30 |
|
@@ -41,6 +42,13 @@ If you have created your own language pack, or have an update of an existing one
|
|
41 |
|
42 |
== Changelog ==
|
43 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
44 |
= 1.0.4 =
|
45 |
|
46 |
* New: flamingo_map_meta_cap filter has been added.
|
1 |
=== Flamingo ===
|
2 |
Contributors: takayukister, megumithemes
|
3 |
Tags: bird, contact, mail, crm
|
4 |
+
Requires at least: 3.5
|
5 |
+
Tested up to: 3.7.1
|
6 |
+
Stable tag: 1.0.5
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
19 |
* Chinese, Simplified (zh_CN) - [ninghao](http://ninghao.net/)
|
20 |
* Dutch (nl_NL) - [TenSheep](http://tensheep.nl/)
|
21 |
* French (fr_FR) - [Benjamin Cousin](http://www.bewod.com/)
|
22 |
+
* German (de_DE) - Christian Becker-Kapraun
|
23 |
* Hebrew (he_IL) - [Dan Stramer](http://www.dmdesign.co.il/)
|
24 |
* Hungarian (hu_HU) - Rózsahegyi Péter
|
25 |
* Italian (it_IT) - Rosario Capparelli
|
26 |
* Japanese (ja) - [Takayuki Miyoshi](http://ideasilo.wordpress.com)
|
27 |
* Slovak (sk_SK) - Branco Radenovich
|
28 |
+
* Spanish (es_ES) - [Israel Ortuño](http://expander.es/)
|
29 |
* Turkish (tr_TR) - Ömür YANIKOĞLU
|
30 |
* Vietnamese (vi_VN) - [ICA Design](http://www.icadesign.vn/)
|
31 |
|
42 |
|
43 |
== Changelog ==
|
44 |
|
45 |
+
= 1.0.5 =
|
46 |
+
|
47 |
+
* New: Support hierarchical channels (aka "sub channels") for inbound messages.
|
48 |
+
* Improved spam management.
|
49 |
+
* Translation for German has been created.
|
50 |
+
* This version requires WordPress 3.5 or higher.
|
51 |
+
|
52 |
= 1.0.4 =
|
53 |
|
54 |
* New: flamingo_map_meta_cap filter has been added.
|