<?php

class ControllerFeedGoogleBase extends Controller
{
    private $error = array();

    public function index()
    {
        $this->language->load('feed/google_base');

        $this->document->setTitle($this->language->get('heading_title'));

        $this->load->model('setting/setting');

        if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
            $this->model_setting_setting->editSetting('google_base', $this->request->post);

            $this->session->data['success'] = $this->language->get('text_success');

            $this->redirect($this->url->link('extension/feed', 'token=' . $this->session->data['token'], 'SSL'));
        }

        $this->data['heading_title'] = $this->language->get('heading_title');

        $this->data['text_enabled'] = $this->language->get('text_enabled');
        $this->data['text_disabled'] = $this->language->get('text_disabled');
        $this->data['text_optional'] = $this->language->get('text_optional');
        $this->data['text_help'] = $this->language->get('text_help');

        $this->data['entry_status'] = $this->language->get('entry_status');
        $this->data['entry_data_feed'] = $this->language->get('entry_data_feed');
        $this->data['entry_store_code'] = $this->language->get('entry_store_code');

        $this->data['button_save'] = $this->language->get('button_save');
        $this->data['button_cancel'] = $this->language->get('button_cancel');

        $this->data['tab_general'] = $this->language->get('tab_general');

        if (isset($this->error['warning'])) {
            $this->data['error_warning'] = $this->error['warning'];
        } else {
            $this->data['error_warning'] = '';
        }

        $this->data['breadcrumbs'] = array();

        $this->data['breadcrumbs'][] = array(
            'text' => $this->language->get('text_home'),
            'href' => $this->url->link('common/home', 'token=' . $this->session->data['token'], 'SSL'),
            'separator' => false
        );

        $this->data['breadcrumbs'][] = array(
            'text' => $this->language->get('text_feed'),
            'href' => $this->url->link('extension/feed', 'token=' . $this->session->data['token'], 'SSL'),
            'separator' => ' :: '
        );

        $this->data['breadcrumbs'][] = array(
            'text' => $this->language->get('heading_title'),
            'href' => $this->url->link('feed/google_base', 'token=' . $this->session->data['token'], 'SSL'),
            'separator' => ' :: '
        );

        $this->data['action'] = $this->url->link('feed/google_base', 'token=' . $this->session->data['token'], 'SSL');

        $this->data['cancel'] = $this->url->link('extension/feed', 'token=' . $this->session->data['token'], 'SSL');

        if (isset($this->request->post['google_base_status'])) {
            $this->data['google_base_status'] = $this->request->post['google_base_status'];
        } else {
            $this->data['google_base_status'] = $this->config->get('google_base_status');
        }

        if (isset($this->request->post['google_store_code'])) {
            $this->data['google_store_code'] = $this->request->post['google_store_code'];
        } else {
            $this->data['google_store_code'] = $this->config->get('google_store_code');
        }

        if (strlen($this->data['google_store_code']) != 0) {
            $this->data['google_store_code'];
        }

        if (($this->config->get('config_linkproducao_ssl') && strpos($this->config->get('config_linkproducao_ssl'), 'futurasistemas') === false) || defined('AMBIENTE_TESTE')) {
            $this->data['data_feed'] = $this->urlloja->link('feed/google_base', '', 'SSL');
        } else {
            $this->data['warning_url'] = $this->language->get('error_url');
        }


        $this->children = array(
            'common/header',
            'common/footer'
        );

        $this->response->setOutput($this->render('feed/google_base'));
    }

    protected function validate()
    {
        if (!$this->user->hasPermission('modify', 'feed/google_base')) {
            $this->error['warning'] = $this->language->get('error_permission');
        }

        if (!$this->error) {
            return true;
        } else {
            return false;
        }
    }
}
