Plugin Directory

Changeset 1139217


Ignore:
Timestamp:
04/20/2015 03:16:51 PM (11 years ago)
Author:
TheGP
Message:

3.0.6 work on page improvements for group

Location:
jumpout/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • jumpout/trunk/class.php

    r1133118 r1139217  
    3434        $settings, $settings_default,
    3535        $api_url = 'http://jumpout.makedreamprofits.ru/api/',
    36         $version = '3.0.5',
     36        $version = '3.0.6',
    3737        $popupfiles_domain = 'popupfiles.makedreamprofits.ru';
    3838
     
    4545        }
    4646
    47         $this->loadSettings();
    4847        $this->settings_default = array(
    4948            'session_token' => NULL,
     
    5756                'async' => TRUE,
    5857            ),
     58            'last_sync' => time(),
    5959        );
     60
     61        $this->loadSettings();
     62
     63        // if last sync was more than 2 days ago, auto syncing
     64        if (time() - 60 * 60 * 24 > $this->settings['last_sync'] && NULL !== $this->settings['session_token']) {
     65            $this->syncScripts();
     66        }
    6067    }
    6168
    6269    // Загружает настройки
    63     function loadSettings()
     70    private function loadSettings()
    6471    {
    6572        $this->settings = (array)get_option('jumpout_settings', $this->settings_default);
     
    6875
    6976    // Возвращает настройки
    70     function getSettings()
     77    private function getSettings()
    7178    {
    7279        return $this->settings;
     
    7481
    7582    // Сохраняет настройки
    76     function saveSettings()
     83    private function saveSettings()
    7784    {
    7885        update_option('jumpout_settings', $this->settings);
     
    149156                                    'id' => 'group-' . $row->group_id,
    150157                                    'popups' => array(),
    151                                     'work_on_page' => '',
     158                                    'work_on_page' => array(),
    152159                                );
    153160                            }
     
    157164
    158165                    // adding name & type to the group var
    159                     foreach ($result->groups as $group) {
    160                         if (isset($groups[$group->id])) {
    161                             $groups[$group->id]['uid'] = $group->uid;
    162                             $groups[$group->id]['name'] = $group->name;
    163                             $groups[$group->id]['type'] = $group->type;
    164                         }
     166                    foreach ($result->groups as $group) if (isset($groups[$group->id])) {
     167                        $groups[$group->id]['uid'] = $group->uid;
     168                        $groups[$group->id]['name'] = $group->name;
     169                        $groups[$group->id]['type'] = $group->type;
    165170                    }
    166171
    167172                    // adding all popups in group var in popups array
    168173                    foreach ($groups as $group) {
     174                        // collecting work_on_page from every popup in the group
     175                        foreach ($group['popups'] as $popup) {print_r($group['popups']);
     176                            $group['work_on_page'][] = trim($popup['work_on_page']);
     177                        }
     178                        $group['work_on_page'] = array_unique($group['work_on_page']);
     179
    169180                        array_unshift($this->settings['list'], $group);
    170181                    }
     
    175186                }
    176187
     188                $this->settings['last_sync'] = time();
    177189                $this->saveSettings();
    178190
     
    185197
    186198
    187     function receiveSessionToken($access_token) {
     199    private function receiveSessionToken($access_token) {
    188200        $session_token = file_get_contents($this->api_url . 'get_session_token/?access_token=' . (string)$access_token);
    189201
     
    208220            foreach ($settings['list'] as $key => $item) if (in_array($item['id'], $settings['activated'])) {
    209221               
    210                 if ('' == trim($item['work_on_page'])) {
    211 
     222                $display_code = FALSE;
     223
     224                if (!is_array($item['work_on_page'])) {
     225                    $item['work_on_page'] = array($item['work_on_page']);
     226                }
     227
     228                // если есть хотя бы один "работать на всех страницах"
     229                if (array_search('', $item['work_on_page']))
     230                    $display_code = TRUE;
     231
     232                foreach ($item['work_on_page'] as $work_on_page) if (FALSE === $display_code) {
     233                    if ('' == trim($work_on_page) || 0 === strpos($REQUEST_URI, $work_on_page)) {
     234                        $display_code = TRUE;
     235                    }
     236                }
     237
     238                if ($display_code) {
    212239                    echo $this->generateCode($item['id'], $item['uid']);
    213 
    214                 } elseif (0 === strpos($REQUEST_URI, $item['work_on_page'])) {
    215 
    216                     echo $this->generateCode($item['id'], $item['uid']);
    217 
    218                 }
    219 
     240                }
    220241            }
    221242        }
  • jumpout/trunk/launch.php

    r1133106 r1139217  
    44Plugin URI: http://makedreamprofits.ru/jo/
    55Description: Устанавливайте JumpOut попапы в один клик с нашим плагином для Вордпресс!
    6 Version: 3.0.5
     6Version: 3.0.6
    77Author: MakeDreamProfits
    88Author URI: http://makedreamprofits.ru
  • jumpout/trunk/readme.txt

    r1133106 r1139217  
    44Requires at least: 2.5.0
    55Tested up to: 4.1
    6 Stable tag: 3.0.5
     6Stable tag: 3.0.6
    77License: GPLv2 or later
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    3636== Changelog ==
    3737
     38= 3.0.6 =
     39* Правильное отображение “Работать на страницах” для групп, авто синхронизация если ее не было дальше чем 1 день, некоторые доработки и исправления багов
    3840= 3.0.5 =
    3941* Поддержка групп попапов.
  • jumpout/trunk/templates/list.php

    r1133039 r1139217  
    8989            </td>
    9090            <td>
    91                 <?php echo ('' != trim($item['work_on_page'])) ? $item['work_on_page'] : _e('всех', 'jumpout'); ?>
     91                <?php
     92                    if (is_array($item['work_on_page'])) {
     93                        foreach ($item['work_on_page'] as $key => $value)
     94                            if ('' == trim($value)) $item['work_on_page'][$key] = __('всех', 'jumpout');
     95                        rsort($item['work_on_page']);
     96                        echo implode(', ', $item['work_on_page']);
     97                    } else {
     98                        echo ('' != trim($item['work_on_page'])) ? $item['work_on_page'] : __('всех', 'jumpout');
     99                    }
     100                ?>
    92101            </td>
    93102        </tr>
Note: See TracChangeset for help on using the changeset viewer.