Browse Source

ajuste de layout para notas e de código eslint

pull/2485/head
Leandro Roberto 7 years ago
parent
commit
3d9cce09fd
  1. 16
      sapl-frontend/.eslintrc.js
  2. 4
      sapl-frontend/babel.config.js
  3. 2
      sapl-frontend/postcss.config.js
  4. 1081
      sapl-frontend/src/apps/compilacao/js/old/compilacao_edit.js
  5. 4
      sapl-frontend/src/apps/compilacao/js/old/compilacao_notas.js
  6. 1
      sapl-frontend/src/apps/compilacao/scss/compilacao.scss
  7. 189
      sapl-frontend/src/global/functions.js
  8. 1825
      sapl-frontend/src/global/image_cropping/js/jquery.Jcrop.js
  9. 1356
      sapl-frontend/src/global/image_cropping/js/jquery.color.js
  10. 4
      sapl-frontend/src/global/main.js
  11. 4
      sapl-frontend/src/hellow/components/HelloWorld.vue
  12. 10
      sapl-frontend/src/hellow/main.js
  13. 6
      sapl-frontend/src/hellow/router.js
  14. 6
      sapl-frontend/src/hellow/store.js
  15. 4
      sapl-frontend/src/hellow/views/Home.vue
  16. 23
      sapl-frontend/vue.config.js
  17. 29
      sapl/compilacao/forms.py
  18. 3
      sapl/crispy_layout_mixin.py

16
sapl-frontend/.eslintrc.js

@ -6,25 +6,25 @@ module.exports = {
jquery: true
},
extends: [
"plugin:vue/essential",
'plugin:vue/essential',
'standard'
],
],
rules: {
'generator-star-spacing': 'off',
"no-console": process.env.NODE_ENV === "production" ? "error" : "off",
"no-debugger": process.env.NODE_ENV === "production" ? "error" : "off"
'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
},
// required to lint *.vue files
plugins: [
'vue'
],
parserOptions: {
parser: "babel-eslint"
parser: 'babel-eslint'
},
globals: {
"$": true,
"jQuery": true,
'$': true,
'jQuery': true,
'_': true
}
};
}

4
sapl-frontend/babel.config.js

@ -1,3 +1,3 @@
module.exports = {
presets: ["@vue/app"]
};
presets: ['@vue/app']
}

2
sapl-frontend/postcss.config.js

@ -2,4 +2,4 @@ module.exports = {
plugins: {
autoprefixer: {}
}
};
}

1081
sapl-frontend/src/apps/compilacao/js/old/compilacao_edit.js

File diff suppressed because it is too large

4
sapl-frontend/src/apps/compilacao/js/old/compilacao_notas.js

@ -32,11 +32,11 @@ function onSubmitEditNVForm (event) {
let url = ''
let model = 'nota'
let idEdit = null
let idDispositivo = $('#idDispositivo').val()
let idDispositivo = $('#id_dispositivo').val()
if (idDispositivo === null) { // trata-se de um vide
// $('#idDispositivo_ref').remove()
idDispositivo = $('#idDispositivo_base').val()
idDispositivo = $('#id_dispositivo_base').val()
model = 'vide'
}

1
sapl-frontend/src/apps/compilacao/scss/compilacao.scss

@ -337,6 +337,7 @@ a:link:after, a:visited:after {
min-height: 2.5em;
&:hover {
ul {
font-size: 1rem;
transition: opacity 0.5s linear, clip 0s 0.3s;
clip: auto;
opacity: 1;

189
sapl-frontend/src/global/functions.js

@ -1,120 +1,121 @@
window.getCookie = function(name) {
var cookieValue = null;
if (document.cookie && document.cookie !== "") {
var cookies = document.cookie.split(";");
window.getCookie = function (name) {
var cookieValue = null
if (document.cookie && document.cookie !== '') {
var cookies = document.cookie.split(';')
for (var i = 0; i < cookies.length; i++) {
var cookie = $.trim(cookies[i]);
if (cookie.substring(0, name.length + 1) === name + "=") {
cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
break;
var cookie = $.trim(cookies[i])
if (cookie.substring(0, name.length + 1) === name + '=') {
cookieValue = decodeURIComponent(cookie.substring(name.length + 1))
break
}
}
}
return cookieValue;
};
return cookieValue
}
window.autorModal = function() {
$(function() {
var dialog = $("#modal_autor").dialog({
window.autorModal = function () {
$(function () {
var dialog = $('#modal_autor').dialog({
autoOpen: false,
modal: true,
width: 500,
height: 340,
show: {
effect: "blind",
effect: 'blind',
duration: 500
},
hide: {
effect: "explode",
effect: 'explode',
duration: 500
}
});
})
$("#button-id-limpar").click(function() {
$("#nome_autor").text("");
$('#button-id-limpar').click(function () {
$('#nome_autor').text('')
function clean_if_exists(fieldname) {
function clean_if_exists (fieldname) {
if ($(fieldname).length > 0) {
$(fieldname).val("");
$(fieldname).val('')
}
}
clean_if_exists("#id_autor");
clean_if_exists("#id_autoria__autor");
});
clean_if_exists('#id_autor')
clean_if_exists('#id_autoria__autor')
})
$("#button-id-pesquisar").click(function() {
$("#q").val("");
$("#div-resultado")
$('#button-id-pesquisar').click(function () {
$('#q').val('')
$('#div-resultado')
.children()
.remove();
$("#modal_autor").dialog("open");
$("#selecionar").attr("hidden", "hidden");
});
$("#pesquisar").click(function() {
var name_in_query = $("#q").val();
//var q_0 = "q_0=nome__icontains"
//var q_1 = name_in_query
//query = q_1
$.get("/api/autor?q=" + name_in_query, function(data) {
$("#div-resultado")
.remove()
$('#modal_autor').dialog('open')
$('#selecionar').attr('hidden', 'hidden')
})
$('#pesquisar').click(function () {
var name_in_query = $('#q').val()
// var q_0 = "q_0=nome__icontains"
// var q_1 = name_in_query
// query = q_1
$.get('/api/autor?q=' + name_in_query, function (data) {
$('#div-resultado')
.children()
.remove();
.remove()
if (data.pagination.total_entries == 0) {
$("#selecionar").attr("hidden", "hidden");
$("#div-resultado").html(
$('#selecionar').attr('hidden', 'hidden')
$('#div-resultado').html(
"<span class='alert'><strong>Nenhum resultado</strong></span>"
);
return;
)
return
}
var select = $(
'<select id="resultados" style="min-width: 90%; max-width:90%;" size="5"/>'
);
)
data.results.forEach(function(item) {
data.results.forEach(function (item) {
select.append(
$("<option>")
.attr("value", item.value)
$('<option>')
.attr('value', item.value)
.text(item.text)
);
});
$("#div-resultado")
.append("<br/>")
.append(select);
$("#selecionar").removeAttr("hidden", "hidden");
if (data.pagination.total_pages > 1)
$("#div-resultado").prepend(
"<span><br/>Mostrando 10 primeiros autores relativos a sua busca.<br/></span>"
);
)
})
$('#div-resultado')
.append('<br/>')
.append(select)
$('#selecionar').removeAttr('hidden', 'hidden')
if (data.pagination.total_pages > 1) {
$('#div-resultado').prepend(
'<span><br/>Mostrando 10 primeiros autores relativos a sua busca.<br/></span>'
)
}
$("#selecionar").click(function() {
let res = $("#resultados option:selected");
let id = res.val();
let nome = res.text();
$('#selecionar').click(function () {
let res = $('#resultados option:selected')
let id = res.val()
let nome = res.text()
$("#nome_autor").text(nome);
$('#nome_autor').text(nome)
// MateriaLegislativa pesquisa Autor via a tabela Autoria
if ($("#id_autoria__autor").length) {
$("#id_autoria__autor").val(id);
if ($('#id_autoria__autor').length) {
$('#id_autoria__autor').val(id)
}
// Protocolo pesquisa a própria tabela de Autor
if ($("#id_autor").length) {
$("#id_autor").val(id);
if ($('#id_autor').length) {
$('#id_autor').val(id)
}
dialog.dialog("close");
});
});
});
});
dialog.dialog('close')
})
})
})
})
/*function get_nome_autor(fieldname) {
/* function get_nome_autor(fieldname) {
if ($(fieldname).length > 0) { // se campo existir
if ($(fieldname).val() != "") { // e não for vazio
var id = $(fieldname).val();
@ -126,22 +127,22 @@ window.autorModal = function() {
}
get_nome_autor("#id_autor");
get_nome_autor("#id_autoria__autor");*/
};
window.refreshMask = function() {
$(".telefone").mask("(99) 9999-9999", { placeholder: "(__) ____ -____" });
$(".cpf").mask("000.000.000-00", { placeholder: "___.___.___-__" });
$(".cep").mask("00000-000", { placeholder: "_____-___" });
$(".rg").mask("0.000.000", { placeholder: "_.___.___" });
$(".titulo_eleitor").mask("0000.0000.0000.0000", {
placeholder: "____.____.____.____"
});
$(".dateinput").mask("00/00/0000", { placeholder: "__/__/____" });
$(".hora, input[name=hora_inicio], input[name=hora_fim], input[name=hora]").mask("00:00", {
placeholder: "hh:mm"
});
$(".hora_hms").mask("00:00:00", { placeholder: "hh:mm:ss" });
$(".timeinput").mask("00:00:00", { placeholder: "hh:mm:ss" });
$(".cronometro").mask("00:00:00", { placeholder: "hh:mm:ss" });
};
get_nome_autor("#id_autoria__autor"); */
}
window.refreshMask = function () {
$('.telefone').mask('(99) 9999-9999', { placeholder: '(__) ____ -____' })
$('.cpf').mask('000.000.000-00', { placeholder: '___.___.___-__' })
$('.cep').mask('00000-000', { placeholder: '_____-___' })
$('.rg').mask('0.000.000', { placeholder: '_.___.___' })
$('.titulo_eleitor').mask('0000.0000.0000.0000', {
placeholder: '____.____.____.____'
})
$('.dateinput').mask('00/00/0000', { placeholder: '__/__/____' })
$('.hora, input[name=hora_inicio], input[name=hora_fim], input[name=hora]').mask('00:00', {
placeholder: 'hh:mm'
})
$('.hora_hms').mask('00:00:00', { placeholder: 'hh:mm:ss' })
$('.timeinput').mask('00:00:00', { placeholder: 'hh:mm:ss' })
$('.cronometro').mask('00:00:00', { placeholder: 'hh:mm:ss' })
}

1825
sapl-frontend/src/global/image_cropping/js/jquery.Jcrop.js

File diff suppressed because it is too large

1356
sapl-frontend/src/global/image_cropping/js/jquery.color.js

File diff suppressed because it is too large

4
sapl-frontend/src/global/main.js

@ -1,6 +1,4 @@
// eslint-disable-next-line
require('imports-loader?window.jQuery=jquery!./jquery.runner.js')
import 'jquery-mask-plugin'
import 'webpack-jquery-ui/dialog'
@ -12,6 +10,8 @@ import './functions'
import './image_cropping'
require('imports-loader?window.jQuery=jquery!./jquery.runner.js')
window.jQuery = jQuery
window.$ = jQuery

4
sapl-frontend/src/hellow/components/HelloWorld.vue

@ -88,11 +88,11 @@
<script>
export default {
name: "HelloWorld",
name: 'HelloWorld',
props: {
msg: String
}
};
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->

10
sapl-frontend/src/hellow/main.js

@ -1,7 +1,7 @@
import Vue from "vue"
import App from "./App.vue"
import router from "./router"
import store from "./store"
import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
Vue.config.productionTip = false
@ -9,4 +9,4 @@ new Vue({
router,
store,
render: h => h(App)
}).$mount("#app")
}).$mount('#app')

6
sapl-frontend/src/hellow/router.js

@ -1,10 +1,10 @@
import Vue from "vue"
import Router from "vue-router"
import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
export default new Router({
mode: "history",
mode: 'history',
base: process.env.BASE_URL,
routes: []
})

6
sapl-frontend/src/hellow/store.js

@ -1,5 +1,5 @@
import Vue from "vue"
import Vuex from "vuex"
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
@ -7,4 +7,4 @@ export default new Vuex.Store({
state: {},
mutations: {},
actions: {}
});
})

4
sapl-frontend/src/hellow/views/Home.vue

@ -7,10 +7,10 @@
<script>
// @ is an alias to /src
import HelloWorld from "@/hellow/components/HelloWorld.vue"
import HelloWorld from '@/hellow/components/HelloWorld.vue'
export default {
name: "home",
name: 'home',
components: {
HelloWorld
}

23
sapl-frontend/vue.config.js

@ -5,14 +5,13 @@ const BundleTracker = require('webpack-bundle-tracker')
const dotenv = require('dotenv')
dotenv.config({ path: '../sapl/.env' })
var THEME_CUSTOM = process.env.THEME_CUSTOM === undefined ? "sapl-oficial-theme" : process.env.THEME_CUSTOM
var THEME_CUSTOM = process.env.THEME_CUSTOM === undefined ? 'sapl-oficial-theme' : process.env.THEME_CUSTOM
module.exports = {
publicPath: 'http://localhost:8080/',
outputDir: './dist/',
chainWebpack: config => {
config.optimization
.splitChunks(false)
@ -20,7 +19,7 @@ module.exports = {
.plugin('BundleTracker')
.use(BundleTracker, [{ filename: './webpack-stats.json' }])
config.devtool = "source-map"
config.devtool = 'source-map'
config.resolve.alias
.set('__STATIC__', 'static')
@ -31,14 +30,14 @@ module.exports = {
.port(8080)
.hot(true)
.watchOptions({ poll: true })
.watchContentBase( true )
.watchContentBase(true)
.https(false)
.headers({ 'Access-Control-Allow-Origin': '\*' })
.contentBase( [
.headers({ 'Access-Control-Allow-Origin': '*' })
.contentBase([
path.join(__dirname, 'public'),
path.join(__dirname, 'src', 'assets'),
path.join(__dirname, 'node_modules', THEME_CUSTOM, 'public'),
] )
path.join(__dirname, 'node_modules', THEME_CUSTOM, 'public')
])
config.entryPoints.delete('app')
@ -52,10 +51,9 @@ module.exports = {
_: 'lodash'
}])
config.entry(THEME_CUSTOM)
.add('./src/theme-dev/main.js')
//.add(THEME_CUSTOM + '/src/main.js')
// .add(THEME_CUSTOM + '/src/main.js')
.end()
config.entry('global')
@ -66,12 +64,11 @@ module.exports = {
.add('./src/apps/compilacao/main.js')
.end()
/*config
/* config
.plugin('theme')
.use(webpack.DefinePlugin, [{
THEME_CUSTOM: JSON.stringify(THEME_CUSTOM)
}])
.end()*/
.end() */
}
}

29
sapl/compilacao/forms.py

@ -23,7 +23,8 @@ from sapl.compilacao.models import (NOTAS_PUBLICIDADE_CHOICES,
TipoTextoArticulado, TipoVide,
VeiculoPublicacao, Vide)
from sapl.compilacao.utils import DISPOSITIVO_SELECT_RELATED
from sapl.crispy_layout_mixin import SaplFormLayout, to_column, to_row
from sapl.crispy_layout_mixin import SaplFormLayout, to_column, to_row,\
form_actions
from sapl.utils import YES_NO_CHOICES
error_messages = {
@ -256,19 +257,22 @@ class NotaForm(ModelForm):
])
buttons = FormActions(
HTML('<a class="btn btn-inverse btn-close-container">'
'%s</a>' % _('Cancelar')),
*[
HTML('<a href="" class="btn btn-dark '
'btn-close-container">%s</a>' % _('Cancelar'))
],
Button(
'submit-form',
'Salvar',
css_class='btn btn-primary float-right')
css_class='btn btn-primary float-right'),
css_class='form-group row justify-content-between mr-1 ml-1'
)
self.helper = FormHelper()
self.helper.layout = Layout(
Div(
Div(HTML(_('Notas')), css_class='card-header bg-bg-light'),
Div(HTML(_('Notas')), css_class='card-header bg-light'),
Div(
row1,
to_row([(Field(
@ -327,14 +331,13 @@ class VideForm(ModelForm):
def __init__(self, *args, **kwargs):
buttons = FormActions(
HTML('<a class="btn btn-inverse btn-close-container">'
'%s</a>' % _('Cancelar')),
Button(
'submit-form',
'Salvar',
css_class='btn-primary float-right')
)
buttons = form_actions(
label=_('Salvar'),
more=[
HTML('<a href="" class="btn btn-dark '
'btn-close-container">%s</a>' % _('Cancelar'))
],
disabled=False)
dispositivo_ref = Field(
'dispositivo_ref',

3
sapl/crispy_layout_mixin.py

@ -35,7 +35,8 @@ def to_fieldsets(fields):
def form_actions(more=[Div(css_class='clearfix')],
label=_('Salvar'), name='salvar', css_class='float-right', disabled=True):
label=_('Salvar'), name='salvar',
css_class='float-right', disabled=True):
if disabled:
doubleclick = 'this.form.submit();this.disabled=true;'

Loading…
Cancel
Save