1 | <?php
|
---|
2 | require_once(dirname(__FILE__) . '/admin-ui.php');
|
---|
3 |
|
---|
4 | function fwp_posts_page () {
|
---|
5 | global $wpdb, $wp_db_version;
|
---|
6 |
|
---|
7 | FeedWordPressCompatibility::validate_http_request(/*action=*/ 'feedwordpress_posts_settings', /*capability=*/ 'manage_links');
|
---|
8 |
|
---|
9 | if (isset($GLOBALS['fwp_post']['save']) or isset($GLOBALS['fwp_post']['fix_mismatch'])) :
|
---|
10 | $link_id = $_REQUEST['save_link_id'];
|
---|
11 | elseif (isset($_REQUEST['link_id'])) :
|
---|
12 | $link_id = $_REQUEST['link_id'];
|
---|
13 | else :
|
---|
14 | $link_id = NULL;
|
---|
15 | endif;
|
---|
16 |
|
---|
17 | if (is_numeric($link_id) and $link_id) :
|
---|
18 | $link =& new SyndicatedLink($link_id);
|
---|
19 | else :
|
---|
20 | $link = NULL;
|
---|
21 | endif;
|
---|
22 |
|
---|
23 | $mesg = null;
|
---|
24 |
|
---|
25 | ////////////////////////////////////////////////
|
---|
26 | // Process POST request, if any /////////////////
|
---|
27 | ////////////////////////////////////////////////
|
---|
28 | if (isset($GLOBALS['fwp_post']['save'])) :
|
---|
29 | // custom post settings
|
---|
30 | foreach ($GLOBALS['fwp_post']['notes'] as $mn) :
|
---|
31 | $mn['key0'] = trim($mn['key0']);
|
---|
32 | $mn['key1'] = trim($mn['key1']);
|
---|
33 |
|
---|
34 | if (strlen($mn['key0']) > 0) :
|
---|
35 | unset($custom_settings[$mn['key0']]); // out with the old
|
---|
36 | endif;
|
---|
37 |
|
---|
38 | if (($mn['action']=='update') and (strlen($mn['key1']) > 0)) :
|
---|
39 | $custom_settings[$mn['key1']] = $mn['value']; // in with the new
|
---|
40 | endif;
|
---|
41 | endforeach;
|
---|
42 |
|
---|
43 | if (is_object($link) and $link->found()) :
|
---|
44 | $alter = array ();
|
---|
45 |
|
---|
46 | $link->settings['postmeta'] = serialize($custom_settings);
|
---|
47 |
|
---|
48 | // Post status, comment status, ping status
|
---|
49 | foreach (array('post', 'comment', 'ping') as $what) :
|
---|
50 | $sfield = "feed_{$what}_status";
|
---|
51 | if (isset($GLOBALS['fwp_post'][$sfield])) :
|
---|
52 | if ($GLOBALS['fwp_post'][$sfield]=='site-default') :
|
---|
53 | unset($link->settings["{$what} status"]);
|
---|
54 | else :
|
---|
55 | $link->settings["{$what} status"] = $GLOBALS['fwp_post'][$sfield];
|
---|
56 | endif;
|
---|
57 | endif;
|
---|
58 | endforeach;
|
---|
59 |
|
---|
60 | $alter[] = "link_notes = '".$wpdb->escape($link->settings_to_notes())."'";
|
---|
61 |
|
---|
62 | $alter_set = implode(", ", $alter);
|
---|
63 |
|
---|
64 | // issue update query
|
---|
65 | $result = $wpdb->query("
|
---|
66 | UPDATE $wpdb->links
|
---|
67 | SET $alter_set
|
---|
68 | WHERE link_id='$link_id'
|
---|
69 | ");
|
---|
70 | $updated_link = true;
|
---|
71 |
|
---|
72 | // reload link information from DB
|
---|
73 | if (function_exists('clean_bookmark_cache')) :
|
---|
74 | clean_bookmark_cache($link_id);
|
---|
75 | endif;
|
---|
76 | $link =& new SyndicatedLink($link_id);
|
---|
77 | else :
|
---|
78 | // update_option ...
|
---|
79 | if (isset($GLOBALS['fwp_post']['feed_post_status'])) :
|
---|
80 | update_option('feedwordpress_syndicated_post_status', $GLOBALS['fwp_post']['feed_post_status']);
|
---|
81 | endif;
|
---|
82 |
|
---|
83 | update_option('feedwordpress_custom_settings', serialize($custom_settings));
|
---|
84 |
|
---|
85 | update_option('feedwordpress_munge_permalink', $_REQUEST['munge_permalink']);
|
---|
86 | update_option('feedwordpress_use_aggregator_source_data', $_REQUEST['use_aggregator_source_data']);
|
---|
87 | update_option('feedwordpress_formatting_filters', $_REQUEST['formatting_filters']);
|
---|
88 |
|
---|
89 | if (isset($_REQUEST['feed_comment_status']) and ($_REQUEST['feed_comment_status'] == 'open')) :
|
---|
90 | update_option('feedwordpress_syndicated_comment_status', 'open');
|
---|
91 | else :
|
---|
92 | update_option('feedwordpress_syndicated_comment_status', 'closed');
|
---|
93 | endif;
|
---|
94 |
|
---|
95 | if (isset($_REQUEST['feed_ping_status']) and ($_REQUEST['feed_ping_status'] == 'open')) :
|
---|
96 | update_option('feedwordpress_syndicated_ping_status', 'open');
|
---|
97 | else :
|
---|
98 | update_option('feedwordpress_syndicated_ping_status', 'closed');
|
---|
99 | endif;
|
---|
100 |
|
---|
101 | $updated_link = true;
|
---|
102 | endif;
|
---|
103 | else :
|
---|
104 | $updated_link = false;
|
---|
105 | endif;
|
---|
106 |
|
---|
107 | ////////////////////////////////////////////////
|
---|
108 | // Get defaults from database //////////////////
|
---|
109 | ////////////////////////////////////////////////
|
---|
110 |
|
---|
111 | $post_status_global = get_option('feedwordpress_syndicated_post_status');
|
---|
112 | if (!$post_status_global) : $post_status_global = 'publish'; endif;
|
---|
113 |
|
---|
114 | $comment_status_global = get_option('feedwordpress_syndicated_comment_status');
|
---|
115 | if (!$comment_status_global) : $comment_status_global = 'closed'; endif;
|
---|
116 |
|
---|
117 | $ping_status_global = get_option('feedwordpress_syndicated_ping_status');
|
---|
118 | if (!$ping_status_global) : $ping_status_global = 'closed'; endif;
|
---|
119 |
|
---|
120 | $status['post'] = array('publish' => '', 'private' => '', 'draft' => '');
|
---|
121 | if (SyndicatedPost::use_api('post_status_pending')) :
|
---|
122 | $status['post']['pending'] = '';
|
---|
123 | endif;
|
---|
124 |
|
---|
125 | $status['comment'] = array('open' => '', 'closed' => '');
|
---|
126 | $status['ping'] = array('open' => '', 'closed' => '');
|
---|
127 |
|
---|
128 | if (is_object($link) and $link->found()) :
|
---|
129 | $thePostsPhrase = __('posts from this feed');
|
---|
130 |
|
---|
131 | foreach (array('post', 'comment', 'ping') as $what) :
|
---|
132 | $status[$what]['site-default'] = '';
|
---|
133 | if (isset($link->settings["{$what} status"])) :
|
---|
134 | $status[$what][$link->settings["{$what} status"]] = ' checked="checked"';
|
---|
135 | else :
|
---|
136 | $status[$what]['site-default'] = ' checked="checked"';
|
---|
137 | endif;
|
---|
138 | endforeach;
|
---|
139 |
|
---|
140 | $custom_settings = $link->settings["postmeta"];
|
---|
141 | if ($custom_settings) :
|
---|
142 | $custom_settings = unserialize($custom_settings);
|
---|
143 | endif;
|
---|
144 |
|
---|
145 | if (!is_array($custom_settings)) :
|
---|
146 | $custom_settings = array();
|
---|
147 | endif;
|
---|
148 | else :
|
---|
149 | $thePostsPhrase = __('syndicated posts');
|
---|
150 |
|
---|
151 | $status['post'][$post_status_global] = ' checked="checked"';
|
---|
152 | $status['comment'][$comment_status_global] = ' checked="checked"';
|
---|
153 | $status['ping'][$ping_status_global] = ' checked="checked"';
|
---|
154 |
|
---|
155 | $munge_permalink = get_option('feedwordpress_munge_permalink');
|
---|
156 | $formatting_filters = get_option('feedwordpress_formatting_filters');
|
---|
157 | $use_aggregator_source_data = get_option('feedwordpress_use_aggregator_source_data');
|
---|
158 |
|
---|
159 | $custom_settings = get_option('feedwordpress_custom_settings');
|
---|
160 | if ($custom_settings) :
|
---|
161 | $custom_settings = unserialize($custom_settings);
|
---|
162 | endif;
|
---|
163 |
|
---|
164 | if (!is_array($custom_settings)) :
|
---|
165 | $custom_settings = array();
|
---|
166 | endif;
|
---|
167 | endif;
|
---|
168 | ?>
|
---|
169 | <script type="text/javascript">
|
---|
170 | function contextual_appearance (item, appear, disappear, value, visibleStyle, checkbox) {
|
---|
171 | if (typeof(visibleStyle)=='undefined') visibleStyle = 'block';
|
---|
172 |
|
---|
173 | var rollup=document.getElementById(item);
|
---|
174 | var newuser=document.getElementById(appear);
|
---|
175 | var sitewide=document.getElementById(disappear);
|
---|
176 | if (rollup) {
|
---|
177 | if ((checkbox && rollup.checked) || (!checkbox && value==rollup.value)) {
|
---|
178 | if (newuser) newuser.style.display=visibleStyle;
|
---|
179 | if (sitewide) sitewide.style.display='none';
|
---|
180 | } else {
|
---|
181 | if (newuser) newuser.style.display='none';
|
---|
182 | if (sitewide) sitewide.style.display=visibleStyle;
|
---|
183 | }
|
---|
184 | }
|
---|
185 | }
|
---|
186 | </script>
|
---|
187 |
|
---|
188 | <?php if ($updated_link) : ?>
|
---|
189 | <div class="updated"><p>Syndicated posts settings updated.</p></div>
|
---|
190 | <?php elseif (!is_null($mesg)) : ?>
|
---|
191 | <div class="updated"><p><?php print wp_specialchars($mesg, 1); ?></p></div>
|
---|
192 | <?php endif; ?>
|
---|
193 |
|
---|
194 | <div class="wrap">
|
---|
195 | <form style="position: relative" action="admin.php?page=<?php print $GLOBALS['fwp_path'] ?>/<?php echo basename(__FILE__); ?>" method="post">
|
---|
196 | <div><?php
|
---|
197 | FeedWordPressCompatibility::stamp_nonce('feedwordpress_posts_settings');
|
---|
198 |
|
---|
199 | if (is_numeric($link_id) and $link_id) :
|
---|
200 | ?>
|
---|
201 | <input type="hidden" name="save_link_id" value="<?php echo $link_id; ?>" />
|
---|
202 | <?php
|
---|
203 | else :
|
---|
204 | ?>
|
---|
205 | <input type="hidden" name="save_link_id" value="*" />
|
---|
206 | <?php
|
---|
207 | endif;
|
---|
208 | ?>
|
---|
209 | </div>
|
---|
210 |
|
---|
211 | <?php $links = FeedWordPress::syndicated_links(); ?>
|
---|
212 | <?php if (fwp_test_wp_version(FWP_SCHEMA_27)) : ?>
|
---|
213 | <div class="icon32"><img src="<?php print htmlspecialchars(WP_PLUGIN_URL.'/'.$GLOBALS['fwp_path'].'/feedwordpress.png'); ?>" alt="" /></div>
|
---|
214 | <?php endif; ?>
|
---|
215 |
|
---|
216 | <h2>Syndicated Post Settings<?php if (!is_null($link) and $link->found()) : ?>: <?php echo wp_specialchars($link->link->link_name, 1); ?><?php endif; ?></h2>
|
---|
217 |
|
---|
218 | <style type="text/css">
|
---|
219 | table.edit-form th { width: 27%; vertical-align: top; }
|
---|
220 | table.edit-form td { width: 73%; vertical-align: top; }
|
---|
221 | table.edit-form td ul.options { margin: 0; padding: 0; list-style: none; }
|
---|
222 | </style>
|
---|
223 |
|
---|
224 | <?php if (fwp_test_wp_version(FWP_SCHEMA_27)) : ?>
|
---|
225 | <style type="text/css">
|
---|
226 | #post-search {
|
---|
227 | float: right;
|
---|
228 | margin:11px 12px 0;
|
---|
229 | min-width: 130px;
|
---|
230 | position:relative;
|
---|
231 | }
|
---|
232 | .fwpfs {
|
---|
233 | color: #dddddd;
|
---|
234 | background:#797979 url(<?php bloginfo('home') ?>/wp-admin/images/fav.png) repeat-x scroll left center;
|
---|
235 | border-color:#777777 #777777 #666666 !important; -moz-border-radius-bottomleft:12px;
|
---|
236 | -moz-border-radius-bottomright:12px;
|
---|
237 | -moz-border-radius-topleft:12px;
|
---|
238 | -moz-border-radius-topright:12px;
|
---|
239 | border-style:solid;
|
---|
240 | border-width:1px;
|
---|
241 | line-height:15px;
|
---|
242 | padding:3px 30px 4px 12px;
|
---|
243 | }
|
---|
244 | .fwpfs.slide-down {
|
---|
245 | border-bottom-color: #626262;
|
---|
246 | -moz-border-radius-bottomleft:0;
|
---|
247 | -moz-border-radius-bottomright:0;
|
---|
248 | -moz-border-radius-topleft:12px;
|
---|
249 | -moz-border-radius-topright:12px;
|
---|
250 | background-image:url(<?php bloginfo('home') ?>/wp-admin/images/fav-top.png);
|
---|
251 | background-position:0 top;
|
---|
252 | background-repeat:repeat-x;
|
---|
253 | border-bottom-style:solid;
|
---|
254 | border-bottom-width:1px;
|
---|
255 | }
|
---|
256 | </style>
|
---|
257 |
|
---|
258 | <script type="text/javascript">
|
---|
259 | jQuery(document).ready(function($){
|
---|
260 | $('.fwpfs').toggle(
|
---|
261 | function(){$('.fwpfs').removeClass('slideUp').addClass('slideDown'); setTimeout(function(){if ( $('.fwpfs').hasClass('slideDown') ) { $('.fwpfs').addClass('slide-down'); }}, 10) },
|
---|
262 | function(){$('.fwpfs').removeClass('slideDown').addClass('slideUp'); setTimeout(function(){if ( $('.fwpfs').hasClass('slideUp') ) { $('.fwpfs').removeClass('slide-down'); }}, 10) }
|
---|
263 | );
|
---|
264 | $('.fwpfs').bind(
|
---|
265 | 'change',
|
---|
266 | function () { this.form.submit(); }
|
---|
267 | );
|
---|
268 | $('#post-search .button').css( 'display', 'none' );
|
---|
269 | });
|
---|
270 | </script>
|
---|
271 | <?php endif; /* else : */?>
|
---|
272 | <p id="post-search">
|
---|
273 | <select name="link_id" class="fwpfs" style="max-width: 20.0em;">
|
---|
274 | <option value="*"<?php if (is_null($link) or !$link->found()) : ?> selected="selected"<?php endif; ?>>- defaults for all feeds -</option>
|
---|
275 | <?php if ($links) : foreach ($links as $ddlink) : ?>
|
---|
276 | <option value="<?php print (int) $ddlink->link_id; ?>"<?php if (!is_null($link) and ($link->link->link_id==$ddlink->link_id)) : ?> selected="selected"<?php endif; ?>><?php print wp_specialchars($ddlink->link_name, 1); ?></option>
|
---|
277 | <?php endforeach; endif; ?>
|
---|
278 | </select>
|
---|
279 | <input class="button" type="submit" name="go" value="<?php _e('Go') ?> »" />
|
---|
280 | </p>
|
---|
281 | <?php /* endif; */ ?>
|
---|
282 |
|
---|
283 | <?php if (!is_null($link) and $link->found()) : ?>
|
---|
284 | <p>These settings only affect posts syndicated from
|
---|
285 | <strong><?php echo wp_specialchars($link->link->link_name, 1); ?></strong>.</p>
|
---|
286 | <?php else : ?>
|
---|
287 | <p>These settings affect posts syndicated from any feed unless they are overridden
|
---|
288 | by settings for that specific feed.</p>
|
---|
289 | <?php endif; ?>
|
---|
290 |
|
---|
291 | <div id="poststuff">
|
---|
292 | <div id="post-body">
|
---|
293 | <?php fwp_option_box_opener('Publication', 'publicationdiv', 'postbox'); ?>
|
---|
294 | <table class="form-table" cellspacing="2" cellpadding="5">
|
---|
295 | <tr><th width="27%" scope="row" style="vertical-align:top">Status for new posts:</th>
|
---|
296 | <td width="73%" style="vertical-align:top"><ul style="margin:0; list-style:none">
|
---|
297 |
|
---|
298 | <?php if (is_object($link) and $link->found()) : ?>
|
---|
299 | <li><label><input type="radio" name="feed_post_status" value="site-default"
|
---|
300 | <?php echo $status['post']['site-default']; ?> /> Use <a href="admin.php?page=<?php print $GLOBALS['fwp_path'] ?>/<?php print basename(__FILE__); ?>">site-wide setting</a>
|
---|
301 | (currently: <strong><?php echo ($post_status_global ? $post_status_global : 'publish'); ?></strong>)</label></li>
|
---|
302 | <?php endif; ?>
|
---|
303 |
|
---|
304 | <li><label><input type="radio" name="feed_post_status" value="publish"
|
---|
305 | <?php echo $status['post']['publish']; ?> /> Publish <?php print $thePostsPhrase; ?> immediately</label></li>
|
---|
306 |
|
---|
307 | <?php if (SyndicatedPost::use_api('post_status_pending')) : ?>
|
---|
308 | <li><label><input type="radio" name="feed_post_status" value="pending"
|
---|
309 | <?php echo $status['post']['pending']; ?>/> Hold <?php print $thePostsPhrase; ?> for review; mark as Pending</label></li>
|
---|
310 | <?php endif; ?>
|
---|
311 |
|
---|
312 | <li><label><input type="radio" name="feed_post_status" value="draft"
|
---|
313 | <?php echo $status['post']['draft']; ?> /> Save <?php print $thePostsPhrase; ?> as drafts</label></li>
|
---|
314 | <li><label><input type="radio" name="feed_post_status" value="private"
|
---|
315 | <?php echo $status['post']['private']; ?> /> Save <?php print $thePostsPhrase; ?> as private posts</label></li>
|
---|
316 | </ul></td>
|
---|
317 | </tr>
|
---|
318 | </table>
|
---|
319 | <?php
|
---|
320 | fwp_option_box_closer();
|
---|
321 | ?>
|
---|
322 |
|
---|
323 | <?php if (!(is_object($link) and $link->found())) : ?>
|
---|
324 | <?php fwp_option_box_opener('Formatting', 'formattingdiv', 'postbox'); ?>
|
---|
325 | <table class="form-table" cellspacing="2" cellpadding="5">
|
---|
326 | <tr><th scope="row">Formatting filters:</th>
|
---|
327 | <td><select name="formatting_filters" size="1">
|
---|
328 | <option value="no"<?php echo ($formatting_filters!='yes')?' selected="selected"':''; ?>>Protect syndicated posts from formatting filters</option>
|
---|
329 | <option value="yes"<?php echo ($formatting_filters=='yes')?' selected="selected"':''; ?>>Expose syndicated posts to formatting filters</option>
|
---|
330 | </select>
|
---|
331 | <p class="setting-description">If you have trouble getting plugins to work that are supposed to insert
|
---|
332 | elements after posts (like relevant links or a social networking
|
---|
333 | <q>Share This</q> button), try changing this option to see if it fixes your
|
---|
334 | problem.</p>
|
---|
335 | </td></tr>
|
---|
336 | </table>
|
---|
337 | <?php fwp_option_box_closer(); ?>
|
---|
338 |
|
---|
339 | <?php
|
---|
340 | fwp_option_box_opener('Links', 'linksdiv', 'postbox');
|
---|
341 | ?>
|
---|
342 | <table class="form-table" cellspacing="2" cellpadding="5">
|
---|
343 | <tr><th scope="row">Permalinks:</th>
|
---|
344 | <td><select name="munge_permalink" size="1">
|
---|
345 | <option value="yes"<?php echo ($munge_permalink=='yes')?' selected="selected"':''; ?>>point to the copy on the original website</option>
|
---|
346 | <option value="no"<?php echo ($munge_permalink=='no')?' selected="selected"':''; ?>>point to the local copy on this website</option>
|
---|
347 | </select></td>
|
---|
348 | </tr>
|
---|
349 |
|
---|
350 | <tr><th scope="row">Posts from aggregator feeds:</th>
|
---|
351 | <td><ul class="options">
|
---|
352 | <li><label><input type="radio" name="use_aggregator_source_data" value="no"<?php echo ($use_aggregator_source_data!="yes")?' checked="checked"':''; ?>> Give the aggregator itself as the source of posts from an aggregator feed.</label></li>
|
---|
353 | <li><label><input type="radio" name="use_aggregator_source_data" value="yes"<?php echo ($use_aggregator_source_data=="yes")?' checked="checked"':''; ?>> Give the original source of the post as the source, not the aggregator.</label></li>
|
---|
354 | </ul>
|
---|
355 | <p class="setting-description">Some feeds (for example, those produced by FeedWordPress) aggregate content from several different sources, and include information about the original source of the post.
|
---|
356 | This setting controls what FeedWordPress will give as the source of posts from
|
---|
357 | such an aggregator feed.</p>
|
---|
358 | </td></tr>
|
---|
359 | </table>
|
---|
360 | <?php
|
---|
361 | fwp_option_box_closer();
|
---|
362 | fwp_linkedit_periodic_submit();
|
---|
363 | endif;
|
---|
364 |
|
---|
365 | fwp_option_box_opener(__('Comments & Pings'), 'commentstatus', 'postbox');
|
---|
366 | ?>
|
---|
367 | <table class="form-table" cellspacing="2" cellpadding="5">
|
---|
368 | <tr><th scope="row"><?php print __('Comments') ?>:</th>
|
---|
369 | <td><ul class="options">
|
---|
370 | <?php if (is_object($link) and $link->found()) : ?>
|
---|
371 | <li><label><input type="radio" name="feed_comment_status" value="site-default"
|
---|
372 | <?php echo $status['comment']['site-default']; ?> /> Use <a href="admin.php?page=<?php print $GLOBALS['fwp_path'] ?>/<?php print basename(__FILE__); ?>">site-wide setting</a>
|
---|
373 | (currently: <strong><?php echo $comment_status_global; ?></strong>)</label></li>
|
---|
374 | <?php endif; ?>
|
---|
375 |
|
---|
376 | <li><label><input type="radio" name="feed_comment_status" value="open"<?php echo $status['comment']['open'] ?> /> Allow comments on syndicated posts</label></li>
|
---|
377 | <li><label><input type="radio" name="feed_comment_status" value="closed"<?php echo $status['comment']['closed']; ?> /> Don't allow comments on syndicated posts</label></li>
|
---|
378 | </ul></td></tr>
|
---|
379 |
|
---|
380 | <tr><th scope="row"><?php print __('Pings') ?>:</th>
|
---|
381 | <td><ul class="options">
|
---|
382 | <?php if (is_object($link) and $link->found()) : ?>
|
---|
383 | <li><label><input type="radio" name="feed_ping_status" value="site-default"
|
---|
384 | <?php echo $status['ping']['site-default']; ?> /> Use <a href="admin.php?page=<?php print $GLOBALS['fwp_path'] ?>/<?php print basename(__FILE__); ?>">site-wide setting</a>
|
---|
385 | (currently: <strong><?php echo $ping_status_global; ?></strong>)</label></li>
|
---|
386 | <?php endif; ?>
|
---|
387 |
|
---|
388 | <li><label><input type="radio" name="feed_ping_status" value="open"<?php echo $status['ping']['open']; ?> /> Accept pings on syndicated posts</label></li>
|
---|
389 | <li><label><input type="radio" name="feed_ping_status" value="closed"<?php echo $status['ping']['closed']; ?> /> Don't accept pings on syndicated posts</label></li>
|
---|
390 | </ul></td></tr>
|
---|
391 | </table>
|
---|
392 | <?php
|
---|
393 | fwp_option_box_closer();
|
---|
394 | fwp_linkedit_periodic_submit();
|
---|
395 | ?>
|
---|
396 |
|
---|
397 | <?php fwp_option_box_opener('Custom Post Settings (to apply to each syndicated post)', 'postcustom', 'postbox'); ?>
|
---|
398 | <div id="postcustomstuff">
|
---|
399 | <table id="meta-list" cellpadding="3">
|
---|
400 | <tr>
|
---|
401 | <th>Key</th>
|
---|
402 | <th>Value</th>
|
---|
403 | <th>Action</th>
|
---|
404 | </tr>
|
---|
405 |
|
---|
406 | <?php
|
---|
407 | $i = 0;
|
---|
408 | foreach ($custom_settings as $key => $value) :
|
---|
409 | ?>
|
---|
410 | <tr style="vertical-align:top">
|
---|
411 | <th width="30%" scope="row"><input type="hidden" name="notes[<?php echo $i; ?>][key0]" value="<?php echo wp_specialchars($key, 'both'); ?>" />
|
---|
412 | <input id="notes-<?php echo $i; ?>-key" name="notes[<?php echo $i; ?>][key1]" value="<?php echo wp_specialchars($key, 'both'); ?>" /></th>
|
---|
413 | <td width="60%"><textarea rows="2" cols="40" id="notes-<?php echo $i; ?>-value" name="notes[<?php echo $i; ?>][value]"><?php echo wp_specialchars($value, 'both'); ?></textarea></td>
|
---|
414 | <td width="10%"><select name="notes[<?php echo $i; ?>][action]">
|
---|
415 | <option value="update">save changes</option>
|
---|
416 | <option value="delete">delete this setting</option>
|
---|
417 | </select></td>
|
---|
418 | </tr>
|
---|
419 | <?php
|
---|
420 | $i++;
|
---|
421 | endforeach;
|
---|
422 | ?>
|
---|
423 | <tr>
|
---|
424 | <th scope="row"><input type="text" size="10" name="notes[<?php echo $i; ?>][key1]" value="" /></th>
|
---|
425 | <td><textarea name="notes[<?php echo $i; ?>][value]" rows="2" cols="40"></textarea></td>
|
---|
426 | <td><em>add new setting...</em><input type="hidden" name="notes[<?php echo $i; ?>][action]" value="update" /></td>
|
---|
427 | </tr>
|
---|
428 | </table>
|
---|
429 | <?php fwp_option_box_closer(); ?>
|
---|
430 |
|
---|
431 | </div>
|
---|
432 | </div>
|
---|
433 |
|
---|
434 | <p class="submit">
|
---|
435 | <input class="button-primary" type="submit" name="save" value="Save Changes" />
|
---|
436 | </p>
|
---|
437 | </form>
|
---|
438 | </div> <!-- class="wrap" -->
|
---|
439 | <?php
|
---|
440 | } /* function fwp_posts_page () */
|
---|
441 |
|
---|
442 | fwp_posts_page();
|
---|
443 |
|
---|