{"id":1430,"date":"2018-12-05T17:49:49","date_gmt":"2018-12-05T19:49:49","guid":{"rendered":"http:\/\/ri.taesa.com.br\/?page_id=1430"},"modified":"2019-06-26T22:03:37","modified_gmt":"2019-06-27T01:03:37","slug":"policies","status":"publish","type":"page","link":"https:\/\/ri.taesa.com.br\/en\/compliance\/policies\/","title":{"rendered":"Policies"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column][vc_column_text]TAESA, in line with the best corporate governance practices and in compliance with applicable laws, recognizes the importance of mechanisms for the prevention, detection and correction of unethical conduct, illegal acts and potential irregularities that may cause financial, image and business impacts to the Company.<\/p>\n<p>In order to reinforce its commitment to the principles of integrity, ethics and transparency, TAESA establishes several compliance policies, which set the guidelines, values and conduct required by the Company, based on its <a href=\"http:\/\/ri.taesa.com.br\/en\/corporate-governance\/code-of-ethical-conduct-and-compliance\/\" target=\"_blank\" rel=\"noopener noreferrer\">Code of Ethical Conduct and Compliance<\/a>.[\/vc_column_text][\/vc_column][\/vc_row][vc_row css=&#8221;.vc_custom_1559588341975{margin-top: 20px !important;}&#8221;][vc_column]<div id=\"app\">\n\n    <div class=\"form-row\">\n\t\t\t\t            <div class=\"col-12 col-md mb-4\">\n                <select @change=\"filtro()\" v-model=\"ano_selecionado\" name=\"ano\" id=\"\" class=\"form-control\">\n                    <option value=\"\">All years<\/option>\n                    <option v-for=\"ano in anos\" :value=\"ano\" v-text=\"ano\"><\/option>\n                <\/select>\n            <\/div>\n\t\t\t\t            <div class=\"col-12 col-md mb-4\">\n                <div class=\"form-content taesa-search\">\n                    <input placeholder=\"Search\" v-model=\"busca\" name=\"busca\" value=\"\" class=\"form-control\" type=\"text\">\n\n                <\/div>\n            <\/div>\n\t\t        <div class=\"col-12 col-md mb-4 text-right align-self-center\">\n            <small>{{resposta.count}} results<\/small>\n        <\/div>\n    <\/div>\n\n    <div style=\"min-height: 200px;\" class=\"mb-4 position-relative\">\n        <div v-if=\"isLoading\" class=\"lds-rolling\"><\/div>\n        <div v-for=\"(post,idx) in posts\" class=\"carregado\" :class=\"{carregando:isLoading}\">\n\n            <a href :href=\"post.link\" @click=\"isZip($event,idx)\" :target=\"post.target_link\" class=\"no-underline\">\n                <div class=\"noticia d-block d-lg-flex\">\n\t\t\t\t\t                        <div class=\"data col-12 col-lg-1\">\n                            <div class=\"d-flex align-items-center justify-content-center\">\n                                <div class=\"text-center\" style=\"line-height: 1.2;\">\n                                    <p class=\"text-uppercase d-inline-block d-lg-block\" v-text=\"post.d_M\"><\/p>\n                                    <small class=\"fs-16 fs-lg-12\" v-text=\"post.ano\"><\/small>\n                                <\/div>\n                            <\/div>\n\n                        <\/div>\n\t\t\t\t\t                    <div class=\"texto col-12 col-lg-11\">\n                        <div class=\"d-block d-lg-flex align-items-center\">\n                            <div class=\"col-12 col-lg-10 p-0\">\n                                <div class=\"d-flex align-items-center\">\n                                    <i style=\"font-size: 2rem;\" class=\"text-cor-secundaria d-inline-block align-middle mr-3\" :class=\"post.icone_pt\"><\/i>\n                                    <div>\n                                        <!--span class=\"\" v-html=\"post.titulo_pt\"><\/span> <span>|<\/span-->\n                                        <span v-html=\"post.titulo\"><\/span>\n                                    <\/div>\n\n                                <\/div>\n                            <\/div>\n                            <div class=\"col-12 col-lg-2 p-0 text-center d-none d-lg-block text-lg-right\">\n                                <i style=\"font-size: 1.5rem;\" v-if=\"!post.documento_multi\" :class=\"post.icone_link\" class=\"text-cor-secundaria d-inline-block align-middle\"><\/i>\n                                <i style=\"font-size: 1.5rem;\" v-if=\"post.documento_multi\" class=\"taesa-zip text-cor-secundaria d-inline-block align-middle\"><\/i>\n                            <\/div>\n                        <\/div>\n\n                    <\/div>\n                <\/div>\n            <\/a>\n\n        <\/div>\n    <\/div>\n\n\n    <nav v-if=\"paginas.length > 0 && !isLoading\" aria-label=\"Page navigation example\">\n        <ul class=\"pagination justify-content-center\">\n            <li class=\"page-item\">\n                <button class=\"page-link\" v-if=\"currentPage > 1\" @click=\"gotoPageAjax(1)\" aria-label=\"Previous\">\n                    <<\n                <\/button>\n            <\/li>\n            <li class=\"page-item\">\n                <button class=\"page-link\" v-if=\"currentPage > 1\" @click=\"prevPageAjax\" aria-label=\"Previous\">\n                    <i class=\"taesa-prev\"><\/i>\n                <\/button>\n            <\/li>\n            <li class=\"page-item\" :class=\"{'active':currentPage === pagina}\" v-for=\"(pagina,index) in paginas\">\n                <button class=\"page-link\" @click=\"gotoPageAjax(pagina)\" :disabled=\"currentPage === pagina || carregandoPagina || pagina === '...' \" v-text=\"pagina\"><\/button>\n            <\/li>\n            <li class=\"page-item\">\n                <button class=\"page-link\" v-if=\"currentPage < qtdPagina\" @click=\"nextPageAjax\" aria-label=\"Next\">\n                    <i class=\"taesa-next\"><\/i>\n                <\/button>\n            <\/li>\n            <li class=\"page-item\">\n                <button class=\"page-link\" v-if=\"currentPage < qtdPagina\" @click=\"gotoPageAjax(qtdPagina)\" aria-label=\"Next\">\n                    >>\n                <\/button>\n            <\/li>\n        <\/ul>\n    <\/nav>\n\n<\/div>\n\n<script type=\"application\/javascript\">\n    attrs = {\"pt\":\"politicas\",\"ppp\":10,\"slug\":\"all\",\"cat\":\"\",\"exccat\":\"post_conteudo\",\"orderby\":\"\",\"order\":\"\",\"taxonomy\":\"\",\"semdata\":\"0\",\"semcat\":\"1\",\"semanos\":\"0\",\"sembusca\":\"0\"};\n    var app = new Vue({\n        el: '#app',\n        data: {\n            resposta: {},\n            meus_posts: [],\n            posts: [],\n            anos: [],\n            busca: \"\",\n            post_selecionado: \"\",\n            ano_selecionado: \"\",\n            currentPage: 1,\n            pageNumber: 0,\n            postsPerPage: 10,\n            paginas: [],\n            qtdPagina: 0,\n            maxPaginas: 3,\n            pagina: 0,\n            carregandoPagina: false,\n            isLoading: true,\n            doSearch: _.debounce(function () {\n                this.filtro();\n            }, 1000)\n        },\n        watch: {\n            busca: function (newvalue, oldvalue) {\n                if (newvalue.length >= 3 && newvalue !== oldvalue) {\n                    this.busca = newvalue;\n                    this.pagina = 0;\n                    this.pageNumber = 0;\n                    this.doSearch();\n                }\n            }\n        },\n        methods: {\n\n            loadData: function (param) {\n                var vm = this;\n                vm.carregandoPagina = true;\n                vm.isLoading = true;\n                axios.get(ajaxurl + '?' + param).then(function (response) {\n\n                    var data_ajax = response.data.data;\n\n                    \/\/console.log(data_ajax);\n\n                    if (data_ajax.count >= 0) {\n                        \/\/console.log(\"valido\");\n                        vm.resposta = data_ajax;\n                        vm.posts = data_ajax.post.posts;\n\n                        if (vm.meus_posts.length === 0) {\n                            vm.meus_posts = data_ajax.meuspt.posts;\n                        }\n\n                        \/\/vm.postsPerPage = data_ajax.max_num_pages;\n                        vm.qtdPagina = Math.ceil(data_ajax.count \/ vm.postsPerPage);\n\n                        if (vm.qtdPagina > 1) {\n                            vm.paginas = Array.apply(null, {length: vm.qtdPagina}).map(function (value, index) {\n                                return index + 1;\n                            });\n                            if (vm.qtdPagina > vm.maxPaginas + 5) {\n                                vm.cortePagina();\n\n                            }\n                        } else {\n                            vm.paginas = [];\n                        }\n\n                        \/\/ for (var x = 0; x <= data_ajax.filtro.tamanho; x++) {\n                        \/\/     vm.anos.push((data_ajax.filtro.current_year - x));\n                        \/\/ }\n\n                        vm.anos = data_ajax.anos;\n\n                    }\n                    vm.isLoading = false;\n                    vm.carregandoPagina = false;\n                });\n\n            },\n\n            filtro: function () {\n                \/\/console.log(this.busca);\n                this.currentPage = 1;\n                var param = jQuery.param({\n                    action: 'meuspts',\n                    pt: this.post_selecionado != '' ? this.post_selecionado : attrs['pt'],\n                    slugs: attrs['pt'],\n                    ano: this.ano_selecionado != '' ? this.ano_selecionado : '',\n                    ppp: this.postsPerPage,\n                    cat: attrs['cat'],\n                    exccat: attrs['exccat'],\n                    lang: lang,\n                    busca: this.busca != '' ? this.busca : '',\n                });\n\n                this.loadData(param);\n            },\n\n            nextPageAjax: function () {\n                this.currentPage++;\n                var param = jQuery.param({\n                    action: 'meuspts',\n                    pt: this.post_selecionado != '' ? this.post_selecionado : attrs['pt'],\n                    slugs: attrs['pt'],\n                    ano: this.ano_selecionado != '' ? this.ano_selecionado : '',\n                    ppp: this.postsPerPage,\n                    p: this.currentPage,\n                    cat: attrs['cat'],\n                    exccat: attrs['exccat'],\n                    lang: lang,\n                    busca: this.busca != '' ? this.busca : '',\n                });\n\n                this.loadData(param);\n            },\n            gotoPageAjax: function (pg) {\n                this.currentPage = pg;\n\n                var param = jQuery.param({\n                    action: 'meuspts',\n                    pt: this.post_selecionado != '' ? this.post_selecionado : attrs['pt'],\n                    slugs: attrs['pt'],\n                    ano: this.ano_selecionado != '' ? this.ano_selecionado : '',\n                    ppp: this.postsPerPage,\n                    p: this.currentPage,\n                    cat: attrs['cat'],\n                    exccat: attrs['exccat'],\n                    lang: lang,\n                    busca: this.busca != '' ? this.busca : '',\n                });\n\n                this.loadData(param);\n\n            },\n            prevPageAjax: function () {\n                this.currentPage--;\n                var param = jQuery.param({\n                    action: 'meuspts',\n                    pt: this.post_selecionado != '' ? this.post_selecionado : attrs['pt'],\n                    slugs: attrs['pt'],\n                    ano: this.ano_selecionado != '' ? this.ano_selecionado : '',\n                    ppp: this.postsPerPage,\n                    p: this.currentPage,\n                    cat: attrs['cat'],\n                    exccat: attrs['exccat'],\n                    lang: lang,\n                    busca: this.busca != '' ? this.busca : '',\n                });\n\n                this.loadData(param);\n            },\n\n            cortePagina: function () {\n\n                var pagina_inicio = [];\n                var pagina_end = [];\n\n                \/\/console.log(this.currentPage);\n\n                var min = this.currentPage - 1;\n\n                var max = this.maxPaginas + (this.currentPage - 1);\n\n                if (this.currentPage > 1) {\n                    min = min - 1;\n                }\n\n                pagina_inicio = _.slice(this.paginas, min, max);\/\/0,3 1,4 2,5\n                pagina_end = _.slice(this.paginas, -(this.maxPaginas));\n\n                var diferenca = _.difference(pagina_inicio, pagina_end);\n\n                if (this.currentPage === 1 || diferenca.length === this.maxPaginas + 1) {\n                    pagina_inicio.push(\"...\");\n                }\n\n                var juntar = _.union(pagina_inicio, pagina_end);\n\n                if (this.paginas.length === this.currentPage) {\n                    juntar.sort();\n                }\n\n                \/\/console.log(pagina_inicio, pagina_end, juntar, diferenca);\n\n                this.paginas = juntar;\n\n            },\n\n            isZip: function (e, idx) {\n                \/\/console.log(this.posts[idx].documento_multi);\n                if (this.posts[idx].documento_multi !== false) {\n                    e.preventDefault();\n                    const urls = this.posts[idx].documento_multi.map(function (x) {\n                        return x.replace('http:\/\/', 'https:\/\/')\n                    });\n                    this.downloadUrls(urls, this.posts[idx].id);\n                }\n\n            },\n\n            downloadUrls: function (urls, id) {\n                var vm = this;\n                var zip = new JSZip();\n\n                Promise.all(urls.map(function (url) {\n                    return vm.request(url, zip)\n                }))\n                    .then(function () {\n                        zip.generateAsync({\n                            type: \"blob\"\n                        })\n                            .then(function (content) {\n                                saveAs(content, \"doc_\" + id + \".zip\");\n                            });\n                    })\n\n            },\n\n            request: function (url, zip) {\n\n                return new Promise(function (resolve) {\n\n                    JSZipUtils.getBinaryContent(url, function (err, data) {\n                        if (!err) {\n                            var filename = url.substr(url.lastIndexOf('\/') + 1);\n                            var dic = {binary: true};\n                            zip.file(filename, data, dic);\n                            resolve()\n\n                        }\n                    });\n\n                })\n\n            },\n\n        },\n        computed: {},\n        created: function () {\n\n            var param = jQuery.param({\n                action: 'meuspts',\n                pt: attrs['pt'],\n                slugs: attrs['pt'],\n                ppp: this.postsPerPage,\n                cat: attrs['cat'],\n                exccat: attrs['exccat'],\n                lang: lang,\n            });\n\n            this.loadData(param);\n        }\n    });\n<\/script>\n[vc_column_text css=&#8221;.vc_custom_1560872836677{margin-top: 20px !important;}&#8221;]<\/p>\n<h6><em>(*) Information available in Portuguese only<\/em><\/h6>\n<p>[\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n<\/div><span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_column_text]TAESA, in line with the best corporate governance practices and in compliance with applicable laws, recognizes the importance of mechanisms for the prevention, detection and correction of unethical conduct, illegal acts and potential irregularities that may cause financial, image and business impacts to the Company. In order to reinforce its commitment to the principles of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2293,"parent":69982,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1430","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/pages\/1430","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/comments?post=1430"}],"version-history":[{"count":0,"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/pages\/1430\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/pages\/69982"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/media\/2293"}],"wp:attachment":[{"href":"https:\/\/ri.taesa.com.br\/en\/wp-json\/wp\/v2\/media?parent=1430"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}