Ejemplo n.º 1
0
 /**
  * Show the pending update notice on admin pages
  *
  */
 public static function show_pending_update_notice(&$vars)
 {
     if (ShareaholicUtilities::is_admin_page() && ShareaholicUtilities::has_accepted_terms_of_service() && !db_table_exists('shareaholic_content_settings') && user_access('administer modules')) {
         $message = sprintf(t('Action required: You have pending updates required by Shareaholic. Please go to update.php for more information.'));
         $vars['page'] = self::header_message_html($message) . $vars['page'];
     }
 }
Ejemplo n.º 2
0
 /**
  * Function to return relevant plugin debug info
  *
  * @return debug info in JSON
  */
 public static function debug_info()
 {
     global $wpdb;
     if (ShareaholicUtilities::get_option('disable_debug_info') == "on") {
         exit;
     }
     if (ShareaholicUtilities::get_option('disable_internal_share_counts_api') == NULL || ShareaholicUtilities::get_option('disable_internal_share_counts_api') == "off") {
         $server_side_share_count_status = "on";
     } else {
         $server_side_share_count_status = "off";
     }
     if (ShareaholicUtilities::has_accepted_terms_of_service() == 1) {
         $tos_status = "accepted";
     } else {
         $tos_status = "pending";
     }
     if (function_exists('curl_version')) {
         $curl_version = curl_version();
     }
     $info = array('plugin_version' => Shareaholic::VERSION, 'site_id' => ShareaholicUtilities::get_option('api_key'), 'domain' => get_bloginfo('url'), 'language' => get_bloginfo('language'), 'tos_status' => $tos_status, 'stats' => array('posts_total' => $wpdb->get_var("SELECT count(ID) FROM {$wpdb->posts} where post_type = 'post' AND post_status = 'publish'"), 'pages_total' => $wpdb->get_var("SELECT count(ID) FROM {$wpdb->posts} where post_type = 'page' AND post_status = 'publish'"), 'comments_total' => wp_count_comments()->approved, 'users_total' => $wpdb->get_var("SELECT count(ID) FROM {$wpdb->users}")), 'diagnostics' => array('theme' => get_option('template'), 'multisite' => is_multisite(), 'shareaholic_server_reachable' => ShareaholicUtilities::connectivity_check(), 'server_side_share_count_api_reachable' => ShareaholicUtilities::share_counts_api_connectivity_check(), 'php_version' => phpversion(), 'wp_version' => get_bloginfo('version'), 'curl' => array('status' => ShareaholicPublic::has_curl(), 'version' => $curl_version), 'plugins' => array('active' => get_option('active_plugins', array()), 'sitewide' => get_site_option('active_sitewide_plugins', array()))), 'app_locations' => array('share_buttons' => ShareaholicUtilities::get_option('share_buttons'), 'recommendations' => ShareaholicUtilities::get_option('recommendations')), 'advanced_settings' => array('server_side_share_count_api' => $server_side_share_count_status));
     header('Content-Type: application/json');
     echo json_encode($info);
     exit;
 }
Ejemplo n.º 3
0
 /**
  * This function fires after the plugin has been activated.
  */
 public function after_activation()
 {
     $this->terms_of_service();
     ShareaholicUtilities::log_event("Activate");
     // workaround: http://codex.wordpress.org/Function_Reference/register_activation_hook
     add_option('Activated_Plugin_Shareaholic', 'shareaholic');
     if (ShareaholicUtilities::has_accepted_terms_of_service() && ShareaholicUtilities::get_option('api_key') != NULL) {
         ShareaholicUtilities::notify_content_manager_sitemap();
         ShareaholicUtilities::notify_content_manager_singledomain();
     }
     if (!ShareaholicUtilities::get_version()) {
         ShareaholicUtilities::log_event("Install_Fresh");
     }
     // Activate the Shareaholic Cron Job for new users
     ShareaholicCron::activate();
 }
Ejemplo n.º 4
0
 /**
  * Outputs the actual html for the form
  */
 private static function draw_admin_form()
 {
     $action = str_replace('%7E', '~', $_SERVER['REQUEST_URI']);
     $settings = ShareaholicUtilities::get_settings();
     if (!ShareaholicUtilities::has_accepted_terms_of_service()) {
         ShareaholicUtilities::load_template('terms_of_service_modal', array('image_url' => SHAREAHOLIC_ASSET_DIR . 'img'));
     }
     ShareaholicUtilities::load_template('settings', array('shareaholic_url' => Shareaholic::URL, 'settings' => $settings, 'action' => $action, 'share_buttons' => isset($settings['share_buttons']) ? $settings['share_buttons'] : array(), 'recommendations' => isset($settings['recommendations']) ? $settings['recommendations'] : array(), 'directory' => dirname(plugin_basename(__FILE__))));
 }
Ejemplo n.º 5
0
 /**
  * Check if the installation has accepted ToS and we created an apikey
  *
  */
 public static function has_tos_and_apikey()
 {
     return ShareaholicUtilities::has_accepted_terms_of_service() && ShareaholicUtilities::get_option('api_key');
 }
    </fieldset>

    <fieldset class="app">
      <legend><h2><?php 
echo t('Your Shareaholic Site ID');
?>
</h2></legend>
      <?php 
if (ShareaholicUtilities::get_option('api_key')) {
    echo '<code>' . ShareaholicUtilities::get_option('api_key') . '</code>';
} else {
    echo t('Not set.');
}
?>
    </fieldset>

    <div class='clear'></div>

    <?php 
$form = drupal_get_form('shareaholic_reset_plugin_form');
print drupal_render($form);
if (!ShareaholicUtilities::has_accepted_terms_of_service()) {
    ShareaholicAdmin::draw_tos_popup();
}
print '</div>';
?>
  </div>
</div>
<?php 
ShareaholicAdmin::show_footer();
ShareaholicAdmin::include_snapengage();