File: /var/www/html/digisferach.sumar.com.py/wp-content/plugins/peepso/classes/configsectionblogposts.php
<?php
class PeepSoConfigSectionBlogposts extends PeepSoConfigSectionAbstract
{
// Builds the groups array
public function register_config_groups()
{
$this->context='left';
$this->group_profile();
$this->context='right';
if(defined('PEEPSO_DEV_BLOG_NOTIF')) {
$this->notif();
}
$this->group_activity();
// @todo #2157
}
/**
* General Settings Box
*/
private function group_profile()
{
$this->args('descript', __('Show "Blog" tab in user profiles','peepso-core'));
$this->set_field(
'blogposts_profile_enable',
__('Enabled', 'peepso-core'),
'yesno_switch'
);
$this->args('descript', __('The profile tab will not appear if the user has no blog posts','peepso-core').'<br>'.__('Does not apply to profile owner if User Submissions are enabled','peeps-core'));
$this->set_field(
'blogposts_profile_hideempty',
__('Hide when empty', 'peepso-core'),
'yesno_switch'
);
// Two columns
$this->set_field(
'blogposts_columns_header',
__('Two column layout', 'peepso-core'),
'separator'
);
$this->set_field(
'blogposts_profile_two_column_enable',
__('Enabled', 'peepso-core'),
'yesno_switch'
);
$this->args('int', TRUE);
$this->args('default', 350);
$this->set_field(
'blogposts_profile_two_column_height',
__('Box height (px)', 'peepso-core'),
'text'
);
// Featured images
// Text settings
$this->set_field(
'blogposts_images_header',
__('Featured images', 'peepso-core'),
'separator'
);
$this->set_field(
'blogposts_profile_featured_image_enable',
__('Enabled', 'peepso-core'),
'yesno_switch'
);
$this->args('descript', __('Display an empty box if an image is not found (to maintain the layout)', 'peepso-core'));
$this->set_field(
'blogposts_profile_featured_image_enable_if_empty',
__('Placeholder', 'peepso-core'),
'yesno_switch'
);
$options = array(
'top' => __('Top (rectangle)', 'peepso-core'),
'left' => __('Left (square)', 'peepso-core'),
'right' => __('Right (square)', 'peepso-core'),
);
$this->args('options', $options);
$this->set_field(
'blogposts_profile_featured_image_position',
__('Position', 'peepso-core'),
'select'
);
$this->args('int', TRUE);
$this->args('default', 150);
// Once again the args will be included automatically. Note that args set before previous field are gone
$this->set_field(
'blogposts_profile_featured_image_height',
__('Height (px)', 'peepso-core'),
'text'
);
// Text settings
$this->set_field(
'blogposts_text_header',
__('Text', 'peepso-core'),
'separator'
);
$this->args('int', TRUE);
$this->args('default', 50);
// Once again the args will be included automatically. Note that args set before previous field are gone
$this->args('descript', __('0 for no content', 'peepso-core'));
$this->set_field(
'blogposts_profile_content_length',
__('Length limit (words)', 'peepso-core'),
'text'
);
$this->args('descript', __('Forced removal of some shortcodes immune to native WP methods (eg Divi Builder and similar). This is an experimental feature, we recommend using plain-text excerpts instead.' ,'peepso-core'));
$this->set_field(
'blogposts_profile_content_force_strip_shortcodes',
__('Aggressive shortcode removal', 'peepso-core'),
'yesno_switch'
);
// Author Box
$this->set_field(
'blogposts_author_box_header',
__('Author box', 'peepso-core'),
'separator'
);
$this->args('descript', __('Adds a small "about the author" box under blog posts','peepso-core'));
$this->set_field(
'blogposts_authorbox_enable',
__('Enabled', 'peepso-core'),
'yesno_switch'
);
$this->set_field(
'blogposts_authorbox_author_name_pre_text',
__('Text before author name', 'peepso-core'),
'text'
);
// USP
$this->set_field(
'blogposts_submissions_header_usp',
__('User Submitted Posts integration', 'peepso-core'),
'separator'
);
if ( !PeepSo::usp_enabled()) {
$url = '<a href="plugin-install.php?tab=plugin-information&plugin=user-submitted-posts&TB_iframe=true&width=772&height=291" class="thickbox">User Submitted Posts</a>';
$this->set_field(
'blogposts_submissions_enable_descript_usp',
sprintf(__('This feature requires the %s plugin.', 'peepso-core'), $url),
'message'
);
} else {
$this->set_field(
'blogposts_submissions_enable_usp',
__('Enabled', 'peepso-core'),
'yesno_switch'
);
// For USP PRO we need the form ID for shortcode
if(PeepSo::usp_pro_enabled()) {
$this->args(
'descript',
sprintf(
__('Defaults to [user-submitted-posts] but you can override it with any %s shortcode','peepso-core'),
'<a href="'.admin_url('edit.php?post_type=usp_form').'">'.__('USP Forms', 'usp-pro').'</a>'
)
);
$this->set_field(
'blogposts_submissions_usp_pro_shortcode',
__('USP PRO Form shortcode', 'peepso-core'),
'text'
);
}
}
// CM Frontend Submissions
$this->set_field(
'blogposts_submissions_header',
__('CMinds User Submissions integration', 'peepso-core'),
'separator'
);
if ( !class_exists( 'CMUserSubmittedPosts' ) ) {
$url = '<a href="https://www.cminds.com/wordpress-plugins-library/cm-user-submitted-posts/?af=7789" target="_blank">CMinds User Submitted Posts</a>';
$this->set_field(
'blogposts_submissions_enable_descript',
sprintf(__('This feature requires the %s plugin.', 'peepso-core'), $url),
'message'
);
} else {
$this->set_field(
'blogposts_submissions_enable',
__('Enabled', 'peepso-core'),
'yesno_switch'
);
}
$this->set_group(
'blogposts_general',
__('Author Profiles', 'peepso-core')
);
}
private function notif()
{
$this->set_field(
'blogposts_notif_enable',
__('Notify users about new posts', 'peepso-core'),
'yesno_switch'
);
$this->set_group(
'blogposts_notif',
__('Activity Stream', 'peepso-core')
);
}
/**
* General Settings Box
*/
private function group_activity()
{
$this->set_field(
'blogposts_activity_enable',
__('Post to Activity Stream', 'peepso-core'),
'yesno_switch'
);
// Action text
$this->args('default', PeepSo::get_option('blogposts_activity_type_post_text_default',''));
$this->set_field(
'blogposts_activity_type_post_text',
'Action text',
'text'
);
$this->args('descript', __('The title of the post will be displayed after the action text as a link','peepso-core'));
$this->set_field(
'blogposts_activity_title_after_action_text',
__('Append title after action text', 'peepso-core'),
'yesno_switch'
);
$privacy = PeepSoPrivacy::get_instance();
$privacy_settings = $privacy->get_access_settings();
$options = array();
foreach($privacy_settings as $key => $value) {
if(in_array($key, array(30,40))) { continue; }
$options[$key] = $value['label'];
}
$this->args('options', $options);
$this->set_field(
'blogposts_activity_privacy',
__('Default privacy', 'peepso-core'),
'select'
);
if(class_exists('PeepSoBlogPosts')) {
if(PeepSo::get_option('hashtags_enable',1)) {
$this->set_field(
'blogposts_hashtags_separator',
__('Hashtags integration', 'peepso-core'),
'separator'
);
$options = array(
'below_author' => __('Below author name','peepso-core'),
'above_embed' => __('Above post preview', 'peepso-core'),
'below_embed' => __('Below post preview', 'peepso-core'),
);
$this->args('options', $options);
$this->args('default','below_author');
$this->set_field(
'blogposts_hashtags_peepso_post_location',
__('Hashtags in PeepSo stream post', 'peepso-core'),
'select'
);
$options = array(
0 => __('No','peepso-core'),
'above_post' => __('Above post', 'peepso-core'),
'below_post' => __('Below post', 'peepso-core'),
'above_post below_post' => __('Above & below post', 'peepso-core'),
);
$this->args('options', $options);
$this->set_field(
'blogposts_hashtags_wp_post_location',
__('Hashtags in WordPress post', 'peepso-core'),
'select'
);
$this->args('descript', __('Applied only when saving a blog post.','peepso-core'));
$this->args('default',1);
$this->set_field(
'blogposts_hashtags_sort',
__('Sort alphabetically', 'peepso-core'),
'yesno_switch'
);
$this->args('descript', __('Applies only when adding a new post.','peepso-core'));
$this->set_field(
'blogposts_hashtags_always_use_wp_tags',
__('Enable "Use WordPress tags" for new posts', 'peepso-core'),
'yesno_switch'
);
$this->args('descript', __('Applies only when adding a new post.','peepso-core'));
$this->set_field(
'blogposts_hashtags_always_use_wp_cats',
__('Enable "Use WordPress categories" for new posts', 'peepso-core'),
'yesno_switch'
);
}
}
// Comment integration
$this->set_field(
'blogposts_comments_integration_separator',
__('Comments integration', 'peepso-core'),
'separator'
);
$this->args('descript', __('Replaces WordPress comments with PeepSo comments and likes/reactions.','peepso-core'));
$this->set_field(
'blogposts_comments_enable',
__('Enabled', 'peepso-core'),
'yesno_switch'
);
$this->args('descript', __('Hides the default PeepSo cover shown to guests.','peepso-core'));
$this->set_field(
'blogposts_comments_no_cover',
__('Hide "join now" cover', 'peepso-core'),
'yesno_switch'
);
// Header - call to action
$this->args('descript', __('Optional. Displays above the entire comments integration','peepso-core'));
$this->set_field(
'blogposts_comments_header_call_to_action',
'Header (general)',
'text'
);
// Header - likes or reactions
$this->args('descript', __('Optional. Displays before reactions','peepso-core'));
$this->set_field(
'blogposts_comments_header_reactions',
'Header (reactions)',
'text'
);
// Header - comments
$this->args('descript', __('Optional. Displays above comments','peepso-core'));
$this->set_field(
'blogposts_comments_header_comments',
'Header (comments)',
'text'
);
$this->set_group(
'blogposts_general',
__('Activity Stream', 'peepso-core')
);
}
}