/**
  * Busca no banco de dados informações sobre acessos ao blog (Google Analytics),
  * seguidores do Twitter (Twitter API) e curtidas da página do facebook informada;
  * Caso os dados sobre tais APIS e redes sociais não estejam configurados, todos os valores são retornados como 0
  * @return array Array Contendo informações sobre Google Analytics, Twitter e Facebook
  */
 public function getApiSocialsData()
 {
     //Dados do google analytics
     $google_account = GoogleAccounts::findFirst();
     $vars['analytics_active'] = $google_account->google_analytics_active;
     if (!empty($google_account) && $google_account->google_analytics_active) {
         $data_analytics = Analytics::getAccessPerMonth($google_account->google_account_login, $google_account->google_account_key_file_name);
         $vars['sessions'] = $data_analytics['sessions'];
         $vars['months'] = $data_analytics['months'];
         $vars['total_sessions'] = $data_analytics['total_sessions'];
     } else {
         $vars['total_sessions'] = 0;
         $vars['months'] = $this->mountArrayMonths();
     }
     //Dados do Twitter
     $tw_account = TwitterAccounts::findFirst();
     $vars['tw_active'] = $tw_account->twitter_active;
     if (!empty($tw_account) && $tw_account->twitter_active) {
         $bearer_token = TwitterSdk::generateBearerToken($tw_account->twitter_account_app_id, $tw_account->twitter_account_app_secret);
         $data_twitter = TwitterSdk::getLookupTwitterProfileBlog($bearer_token, $tw_account->twitter_account_username);
         $vars['followers_count'] = $data_twitter[0]['followers_count'];
     } else {
         $vars['followers_count'] = 0;
     }
     //Dados do Facebook
     $fb_page = FacebookPages::findFirst();
     $vars['fb_active'] = $fb_page->facebook_active;
     if (!empty($fb_page) && $fb_page->facebook_active) {
         $facebook = Facebook::facebookCount("https://www.facebook.com/" . $fb_page->facebook_page_name);
         $vars['facebook_likes'] = $facebook[0]['like_count'];
     } else {
         $vars['facebook_likes'] = 0;
     }
     return $vars;
 }
Пример #2
0
 /**
  * Carrega a tela inicial de configurações
  */
 public function indexAction()
 {
     $this->session->start();
     $user = Users::findFirstByUser_id($this->session->get("user_id"));
     if ($user->user_type_id <= 2) {
         $vars = $this->getUserLoggedInformation();
         //Busca informações da conta google
         $google_account = GoogleAccounts::findFirst();
         if (!empty($google_account)) {
             $vars['google_account_login'] = $google_account->google_account_login;
             $vars['google_account_key_file_name'] = $google_account->google_account_key_file_name;
             $vars['google_analytics_script'] = $google_account->google_analytics_script;
             $vars['google_analytics_active'] = $google_account->google_analytics_active;
             $vars['google_adsense_active'] = $google_account->google_adsense_active;
         }
         //Busca informações da página do facebook
         $fb_page = FacebookPages::findFirst();
         if ($fb_page != NULL) {
             $vars['fb_page_name'] = $fb_page->facebook_page_name;
             $vars['fb_active'] = $fb_page->facebook_active;
         }
         //Busca informações do twitter
         $tw_account = TwitterAccounts::findFirst();
         if (!empty($tw_account)) {
             $vars['tw_account_app_id'] = $tw_account->twitter_account_app_id;
             $vars['tw_account_app_secret'] = $tw_account->twitter_account_app_secret;
             $vars['tw_account_username'] = $tw_account->twitter_account_username;
             $vars['tw_active'] = $tw_account->twitter_active;
         }
         //Busca as preferências do blog
         $preferences = Blogs::findFirst();
         if (!empty($preferences)) {
             $vars['title'] = $preferences->blog_name;
             $vars['url'] = $preferences->blog_url;
             $vars['mail'] = $preferences->blog_mail;
             $vars['mail_active'] = $preferences->blog_send_mail;
             $vars['blog_about'] = $preferences->blog_about;
             $vars['menus'] = $this->getSideBarMenus();
         }
         //Caso haja dados de conta a ser exibido seta as váriaveis para exibição na view
         if (!empty($vars)) {
             $this->view->setVars($vars);
         }
         $this->view->render("settings", "index");
     } else {
         $this->response->redirect(URL_PROJECT . "admin");
     }
 }