public static function isAvailable()
 {
     if (is_admin()) {
         return false;
     }
     if (PrisnaGWTConfig::getSettingValue('test_mode') == 'true' && !current_user_can('administrator')) {
         return false;
     }
     global $post;
     if (!is_object($post)) {
         return true;
     }
     $settings = PrisnaGWTConfig::getSettingsValues();
     if ($post->post_type == 'page' && array_key_exists('exclude_pages', $settings)) {
         $pages = $settings['exclude_pages']['value'];
         if (in_array($post->ID, $pages)) {
             return false;
         }
     }
     if ($post->post_type == 'post' && array_key_exists('exclude_posts', $settings)) {
         $posts = $settings['exclude_posts']['value'];
         if (in_array($post->ID, $posts)) {
             return false;
         }
     }
     if ($post->post_type == 'post' && array_key_exists('exclude_categories', $settings)) {
         $categories = $settings['exclude_categories']['value'];
         $post_categories = wp_get_post_categories($post->ID);
         if (PrisnaGWTCommon::inArray($categories, $post_categories)) {
             return false;
         }
     }
     return true;
 }
 protected function _dependence_show()
 {
     if (!is_array($this->_dependence)) {
         return true;
     }
     $result = array();
     if (is_array($this->dependence_show_value)) {
         if (count($this->dependence_show_value) == count($this->_dependence)) {
             $keys = array_keys($this->_dependence);
             for ($i = 0; $i < count($keys); $i++) {
                 $field = $this->_dependence[$keys[$i]];
                 if ($field->value == $this->dependence_show_value[$i]) {
                     $result[] = $field->id;
                 }
             }
             return count($result) == count($this->_dependence);
         }
     }
     foreach ($this->_dependence as $field) {
         if (PrisnaGWTCommon::inArray($field->value, $this->dependence_show_value)) {
             $result[] = $field->id;
         }
     }
     return count($result) == count($this->_dependence);
 }