Exemplo n.º 1
0
 /**
  * User Contact activity. It's for contacting to user directly from profile show page
  * @author Howard <*****@*****.**>
  * @static
  * @param type $params
  * @return boolean
  */
 public static function contact_profile($params)
 {
     $replacements = $params[0];
     $notification = new wpl_notifications('email');
     $notification->prepare(3, $replacements);
     /** Disabled **/
     if (!$notification->notification_data['enabled']) {
         return false;
     }
     $user = wpl_users::get_user($params[0]['user_id']);
     $notification->replacements = $notification->set_replacements($replacements);
     $notification->rendered_content = $notification->render_notification_content();
     $notification->recipients = $notification->set_recipients(array($user->data->user_email));
     $notification->send();
     return true;
 }
Exemplo n.º 2
0
 /**
  * Sends welcome email to user after registeration
  * @author Howard <*****@*****.**>
  * @static
  * @param array $params
  * @return boolean
  */
 public static function user_registered($params)
 {
     $replacements = $params[0];
     $notification = new wpl_notifications('email');
     $notification->prepare(5, $replacements);
     /** Disabled **/
     if (!$notification->notification_data['enabled']) {
         return false;
     }
     $user = wpl_users::get_user($params[0]['user_id']);
     $replacements['name'] = isset($user->data->wpl_data) ? $user->data->wpl_data->first_name : $user->data->display_name;
     $replacements['password'] = $params[0]['password'];
     $replacements['username'] = $user->data->user_login;
     $link = wpl_global::get_wp_site_url();
     $replacements['site_address'] = '<a target="_blank" href="' . $link . '">' . $link . '</a>';
     $notification->replacements = $notification->set_replacements($replacements);
     $notification->rendered_content = $notification->render_notification_content();
     $notification->recipients = $notification->set_recipients(array($user->data->user_email));
     $notification->send();
     return true;
 }
Exemplo n.º 3
0
 /**
  * Generate email files of user
  * @author Howard R <*****@*****.**>
  * @static
  * @param int $user_id
  */
 public static function generate_email_files($user_id)
 {
     /** import library **/
     _wpl_import('libraries.images');
     $user_data = (array) wpl_users::get_user($user_id);
     $path = wpl_items::get_path($user_id, 2);
     /** delete images **/
     if (wpl_file::exists($path . 'main_email.png')) {
         wpl_file::delete($path . 'main_email.png');
     }
     if (wpl_file::exists($path . 'second_email.png')) {
         wpl_file::delete($path . 'second_email.png');
     }
     if (is_object($user_data['data']) and trim($user_data['data']->wpl_data->main_email) != '') {
         wpl_images::text_to_image($user_data['data']->wpl_data->main_email, '000000', $path . 'main_email.png');
     }
     if (is_object($user_data['data']) and trim($user_data['data']->wpl_data->secondary_email) != '') {
         wpl_images::text_to_image($user_data['data']->wpl_data->secondary_email, '000000', $path . 'second_email.png');
     }
 }
Exemplo n.º 4
0
 /**
  * For creating admin bar menu
  * @author Howard <*****@*****.**>
  * @global object $wp_admin_bar
  */
 public function wpl_admin_bar_menu()
 {
     $cur_user_id = wpl_users::get_cur_user_id();
     $cur_user_data = wpl_users::get_user($cur_user_id);
     $cur_role = wpl_users::get_role($cur_user_id, false);
     $wpl_roles = wpl_users::get_wpl_roles();
     $menus = wpl_global::get_menus('menu', 'backend');
     $submenus = wpl_global::get_menus('submenu', 'backend');
     global $wp_admin_bar;
     /** generate pages object **/
     $controller = new wpl_controller();
     if (wpl_users::is_administrator($cur_user_id) or $cur_user_data->data->wpl_data->id) {
         /** add menus **/
         foreach ($menus as $menu) {
             $menu_slug = (!wpl_users::is_administrator($cur_user_id) and $menu->capability != 'current') ? 'wpl_admin_profile' : $menu->menu_slug;
             $wp_admin_bar->add_menu(array('id' => $menu->menu_slug, 'title' => __($menu->menu_title, WPL_TEXTDOMAIN), 'href' => wpl_global::get_wp_admin_url() . 'admin.php?page=' . $menu_slug));
         }
         /** add sub menus **/
         foreach ($submenus as $submenu) {
             if (!wpl_users::has_menu_access($submenu->menu_slug)) {
                 continue;
             }
             if (!wpl_users::is_administrator($cur_user_id) and $submenu->capability != 'current') {
                 continue;
             }
             $menu_title = $submenu->separator ? $controller->wpl_add_separator() . __($submenu->menu_title, WPL_TEXTDOMAIN) : __($submenu->menu_title, WPL_TEXTDOMAIN);
             $wp_admin_bar->add_menu(array('id' => $submenu->menu_slug, 'parent' => $submenu->parent, 'title' => $menu_title, 'href' => wpl_global::get_wp_admin_url() . 'admin.php?page=' . $submenu->menu_slug));
         }
     }
 }
Exemplo n.º 5
0
 /**
  * Sets recipients
  * @author Howard R <*****@*****.**>
  * @param array $recipients
  * @return array
  */
 public function set_recipients($recipients)
 {
     if (!is_array($recipients)) {
         $recipients = array($recipients);
     }
     $ex = trim($this->notification_data['additional_memberships']) != '' ? explode(',', $this->notification_data['additional_memberships']) : array();
     if (is_array($ex) and count($ex) >= 1) {
         foreach ($ex as $value) {
             array_push($recipients, $value);
         }
     }
     $ex = trim($this->notification_data['additional_users']) != '' ? explode(',', $this->notification_data['additional_users']) : array();
     if (is_array($ex) and count($ex) >= 1) {
         foreach ($ex as $value) {
             array_push($recipients, $value);
         }
     }
     $ex = trim($this->notification_data['additional_emails']) != '' ? explode(',', $this->notification_data['additional_emails']) : array();
     if (is_array($ex) and count($ex) >= 1) {
         foreach ($ex as $value) {
             array_push($recipients, $value);
         }
     }
     $emails = array();
     foreach ($recipients as $recipient) {
         /** user **/
         if (is_numeric($recipient) and $recipient >= 0) {
             $user_data = wpl_users::get_user($recipient);
             array_push($emails, array($user_data->ID, $user_data->user_email));
         } elseif (is_numeric($recipient) and $recipient < 0) {
             $users = wpl_users::get_wpl_users("AND `membership_id`='{$recipient}'");
             foreach ($users as $user) {
                 array_push($emails, array($user->ID, $user->user_email));
             }
         } elseif (is_string($recipient)) {
             $user_id = wpl_users::get_id_by_email($recipient);
             if (!$user_id) {
                 $user_id = 0;
             }
             array_push($emails, array($user_id, $recipient));
         }
     }
     return $emails;
 }
Exemplo n.º 6
0
 private function generate_edit_page($user_id = '')
 {
     $this->user_info = wpl_users::get_user($user_id);
     $this->fields = wpl_db::columns('wpl_users');
     $this->user_data = wpl_users::get_wpl_user($user_id);
     $this->data = $this->user_data;
     $this->units = wpl_units::get_units(4);
     $this->listings = wpl_listing_types::get_listing_types();
     $this->property_types = wpl_property_types::get_property_types();
     $this->memberships = wpl_users::get_wpl_memberships();
     $this->membership_types = wpl_users::get_membership_types();
     parent::render($this->tpl_path, 'edit');
     exit;
 }
Exemplo n.º 7
0
 /**
  * Sets Dublin Core Meta Tags
  * @author Howard <*****@*****.**>
  * @return boolean
  */
 public function dublincore()
 {
     $settings = wpl_global::get_settings();
     $dc_status = isset($settings['dc_status']) ? $settings['dc_status'] : false;
     /** check status of geo tags **/
     if (!$dc_status) {
         return false;
     }
     $current_link_url = wpl_global::get_full_url();
     $html = wpl_html::getInstance();
     /** WPL views and WordPress views (Page/Post) **/
     if (trim($this->view) != '' and $dc_status == 2 or $dc_status == 1) {
         if (trim($settings['dc_coverage']) != '') {
             $html->set_custom_tag('<meta name="DC.coverage" content="' . $settings['dc_coverage'] . '" />');
         }
         if (trim($settings['dc_contributor']) != '') {
             $html->set_custom_tag('<meta name="DC.contributor" content="' . $settings['dc_contributor'] . '" />');
         }
         if (trim($settings['dc_publisher']) != '') {
             $html->set_custom_tag('<meta name="DC.publisher" content="' . $settings['dc_publisher'] . '" />');
         }
         if (trim($settings['dc_copyright']) != '') {
             $html->set_custom_tag('<meta name="DC.rights" content="' . $settings['dc_copyright'] . '" />');
         }
         if (trim($settings['dc_source']) != '') {
             $html->set_custom_tag('<meta name="DC.source" content="' . $settings['dc_source'] . '" />');
         }
         if (trim($settings['dc_relation']) != '') {
             $html->set_custom_tag('<meta name="DC.relation" content="' . $settings['dc_relation'] . '" />');
         }
         $html->set_custom_tag('<meta name="DC.type" content="Text" />');
         $html->set_custom_tag('<meta name="DC.format" content="text/html" />');
         $html->set_custom_tag('<meta name="DC.identifier" content="' . $current_link_url . '" />');
         $locale = apply_filters('plugin_locale', get_locale(), WPL_TEXTDOMAIN);
         $html->set_custom_tag('<meta name="DC.language" scheme="RFC1766" content="' . $locale . '" />');
     }
     if ($this->view == 'property_show') {
         $proeprty_id = wpl_request::getVar('pid');
         $property_data = wpl_property::get_property_raw_data($proeprty_id);
         $user_data = (array) wpl_users::get_user($property_data['user_id']);
         $html->set_custom_tag('<meta name="DC.title" content="' . $this->property_page_title . '" />');
         $html->set_custom_tag('<meta name="DC.subject" content="' . $this->property_page_title . '" />');
         $html->set_custom_tag('<meta name="DC.description" content="' . $this->property_description . '" />');
         $html->set_custom_tag('<meta name="DC.date" content="' . $property_data['add_date'] . '" />');
         $html->set_custom_tag('<meta name="DC.creator" content="' . $user_data['data']->user_login . '" />');
     } elseif ($this->view == 'profile_show') {
         $user_id = wpl_request::getVar('uid');
         $user_data = (array) wpl_users::get_user($user_id);
         $html->set_custom_tag('<meta name="DC.title" content="' . $this->user_title . '" />');
         $html->set_custom_tag('<meta name="DC.subject" content="' . $this->user_title . '" />');
         $html->set_custom_tag('<meta name="DC.description" content="' . $this->user_description . '" />');
         $html->set_custom_tag('<meta name="DC.date" content="' . $user_data['data']->user_registered . '" />');
         $html->set_custom_tag('<meta name="DC.creator" content="' . $user_data['data']->user_login . '" />');
     } elseif (is_single()) {
         $post_author_id = wpl_global::get_post_field('post_author');
         $author_username = wpl_global::get_the_author_meta('user_login', $post_author_id);
         $html->set_custom_tag('<meta name="DC.title" content="' . wpl_global::get_the_title() . '" />');
         $html->set_custom_tag('<meta name="DC.subject" content="' . wpl_global::get_the_title() . '" />');
         $html->set_custom_tag('<meta name="DC.date" content="' . wpl_global::get_the_date() . '" />');
         $html->set_custom_tag('<meta name="DC.creator" content="' . $author_username . '" />');
     }
 }