Пример #1
0
 /**
  * Output inner content of the meta box
  *
  * @since 1.1
  * @param stdClass $post current post
  */
 public static function content($post)
 {
     global $facebook;
     if (!isset($facebook)) {
         return;
     }
     // Use nonce for verification
     wp_nonce_field(plugin_basename(__FILE__), self::NONCE_NAME);
     if (!class_exists('Facebook_User')) {
         require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/facebook-user.php';
     }
     $facebook_user_permissions = Facebook_User::get_permissions();
     if (is_array($facebook_user_permissions) && !empty($facebook_user_permissions) && isset($facebook_user_permissions['publish_actions']) && isset($facebook_user_permissions['publish_stream'])) {
         $saved_mentions = get_post_meta($post->ID, self::POST_META_KEY_MENTIONS, true);
         echo '<label for="suggest-friends">' . esc_html(__("Friend's Name", 'facebook')) . '</label>';
         echo '<input type="text" class="widefat" id="suggest-friends" autocomplete="off" name="' . self::FIELD_AUTOCOMPLETE . '" size="44" placeholder="' . esc_attr(__('Type to find a friend.', 'facebook')) . '"';
         // add a value attribute just in case noscript. tokeninput should handle this in JS case
         if (is_array($saved_mentions)) {
             $mentions = array();
             foreach ($saved_mentions as $mention) {
                 if (!(isset($mention['id']) && isset($mention['name']))) {
                     continue;
                 }
                 $mentions[] = '[' . esc_attr($mention['id']) . '|' . esc_attr($mention['name']) . ']';
             }
             if (!empty($mentions)) {
                 echo ' value="' . implode(',', $mentions) . '"';
             }
             unset($mentions);
         }
         echo ' />';
         echo '<script type="text/javascript">jQuery("#suggest-friends").bind("facebook-friends-mentions-onload",function(){';
         if (is_array($saved_mentions)) {
             echo 'FB_WP.admin.mentions.friend_suggest.stored_values=' . json_encode($saved_mentions) . ';';
         }
         echo 'FB_WP.admin.mentions.friend_suggest.hint=' . json_encode(__('Type to find a friend.', 'facebook')) . ';';
         echo 'FB_WP.admin.mentions.friend_suggest.noresults=' . json_encode(__('No friend found.', 'facebook')) . ';';
         echo '});</script>';
         unset($saved_mentions);
         $saved_message = get_post_meta($post->ID, self::POST_META_KEY_MESSAGE, true);
         echo '<label for="friends-mention-message">' . esc_html(__('Message', 'facebook')) . '</label> ';
         echo '<input type="text" class="widefat" id="friends-mention-message" name="' . self::FIELD_MESSAGE . '" size="44" placeholder="' . esc_attr(__('Write something...', 'facebook')) . '"';
         if ($saved_message) {
             echo ' value="' . esc_attr($saved_message) . '"';
         }
         echo ' />';
         unset($saved_message);
         $post_type = get_post_type($post);
         echo '<p class="howto">';
         echo esc_html(sprintf(__('This will add the %1$s and message to the Timeline of each friend mentioned. They will also appear in the contents of the %1$s.', 'facebook'), $post_type));
         echo '</p>';
     } else {
         echo '<p>' . esc_html(__('Facebook social publishing is enabled.', 'facebook')) . '</p>';
         echo '<p>' . sprintf(esc_html(__('%1$s to get full functionality including mentioning %2$s.', 'facebook')), '<span class="facebook-login" data-scope="page" style="font-weight:bold">' . esc_html(__('Link your Facebook account to your WordPress account', 'facebook')) . '</span>', esc_html(__('Facebook friends', 'facebook'))) . '</p>';
     }
 }