Advertisement
Guest User

Untitled

a guest
Apr 8th, 2018
245
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ASP 14.58 KB | None | 0 0
  1. @model ControleDePonto2.Models.CadastroUsuarioModel
  2. @{
  3.     ViewData["Title"] = "Controle De Ponto-Alterar";
  4.     Layout = "~/Views/Shared/_Layout.cshtml";
  5. }
  6. <script type="text/javascript">
  7.     function retira_acentos(palavra) {
  8.         com_acento = 'áàãâäéèêëíìîïóòõôöúùûüçÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÖÔÚÙÛÜÇ';
  9.         sem_acento = 'aaaaaeeeeiiiiooooouuuucAAAAAEEEEIIIIOOOOOUUUUC';
  10.         nova = '';
  11.         for (i = 0; i < palavra.length; i++) {
  12.             if (com_acento.search(palavra.substr(i, 1)) >= 0) {
  13.                 nova += sem_acento.substr(com_acento.search(palavra.substr(i, 1)), 1);
  14.             }
  15.             else {
  16.                 nova += palavra.substr(i, 1);
  17.             }
  18.         }
  19.         return nova.toUpperCase();
  20.     }
  21.     function getEndereco() {
  22.         if ($.trim($("#CEP").val()) != "") {
  23.  
  24.             var cep_code = $("#CEP").val();
  25.             if (cep_code.length <= 0) return;
  26.             $.get("http://apps.widenet.com.br/busca-cep/api/cep.json", { code: cep_code },
  27.                 function (result) {
  28.                     if (result.status != 1) {
  29.                         alert(result.message || "Houve um erro desconhecido");
  30.                         return;
  31.                     }
  32.                     $("#Municipio").val(retira_acentos(unescape(result.city)));
  33.                     $("#Bairro").val(unescape(result.district));
  34.                     $("#Rua").val(unescape(result.address));
  35.                     $("#UF").val(unescape(result.state));
  36.                 });
  37.         }
  38.     }
  39. </script>
  40.  
  41. <style>
  42.     .col-lg-10 {
  43.         margin-bottom: 10px;
  44.     }
  45.  
  46.     .well {
  47.         margin-bottom: 40px;
  48.     }
  49. </style>
  50.  
  51. <h2>Alteração de Dados</h2>
  52. @if (TempData["mensagemErro"] != null)
  53. {
  54.     <div class="alert alert-danger alert-dismissible" role="alert">
  55.         <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  56.         @TempData["mensagemErro"].ToString()
  57.     </div>
  58. }
  59.  
  60. @using (Html.BeginForm("Alterar", "Admin", FormMethod.Post))
  61. {
  62.     <div class="panel panel-primary">
  63.         <div class="panel panel-heading">
  64.             <h3 class="panel-title">Dados do Funcionário</h3>
  65.         </div>
  66.         <div class="panel-body" id="dadosfuncionario">
  67.             <fieldset class="scheduler-border">
  68.                 @Html.HiddenFor(model => model.id)
  69.                 <div class="form-group">
  70.                     @Html.LabelFor(model => model.CPF, new { @class = "col-lg-2 control-label" })
  71.                     <div class="col-lg-10">
  72.                         @Html.TextBoxFor(model => model.CPF, new { @class = "form-control", @placeholder = "___.___.___-__" })
  73.                         @Html.ValidationMessageFor(model => model.CPF, null, new { @style = "color: #f00" })
  74.                     </div>
  75.                 </div>
  76.                 <div class="form-group">
  77.                     @Html.LabelFor(model => model.Nome, new { @class = "col-lg-2 control-label" })
  78.                     <div class="col-lg-10">
  79.                         @Html.TextBoxFor(model => model.Nome, new { @class = "form-control", @placeholder = "Nome Completo", @style = "text-transform:uppercase;" })
  80.                         @Html.ValidationMessageFor(model => model.Nome, null, new { @style = "color: #f00" })
  81.                     </div>
  82.                 </div>
  83.                 <div class="form-group">
  84.                     @Html.LabelFor(model => model.Email, new { @class = "col-lg-2 control-label" })
  85.                     <div class="col-lg-10">
  86.                         @Html.TextBoxFor(model => model.Email, new { @class = "form-control", @placeholder = "email@email.com", @style = "text-transform:uppercase;" })
  87.                         @Html.ValidationMessageFor(model => model.Email, null, new { @style = "color: #f00" })
  88.                     </div>
  89.                 </div>
  90.                 <div class="form-group">
  91.                     @Html.LabelFor(model => model.Telefone, new { @class = "col-lg-2 control-label" })
  92.                     <div class="col-lg-10">
  93.                         @Html.TextBoxFor(model => model.Telefone, new { @class = "form-control", @placeholder = "(0xx) _____-____" })
  94.                         @Html.ValidationMessageFor(model => model.Telefone, null, new { @style = "color: #f00" })
  95.                     </div>
  96.                 </div>
  97.                 <div class="form-group">
  98.                     @Html.LabelFor(model => model.Senha, new { @class = "col-lg-2 control-label control-label" })
  99.                     <div class="col-lg-10">
  100.                         @Html.TextBoxFor(model => model.Senha, new { @class = "form-control" })
  101.                         @Html.ValidationMessageFor(model => model.Senha, null, new { @style = "color: #f00" })
  102.                     </div>
  103.                 </div>
  104.                 <div class="form-group">
  105.                     @Html.LabelFor(model => model.Confirma_Senha, new { @class = "col-lg-2 control-label" })
  106.                     <div class="col-lg-10">
  107.                         @Html.TextBoxFor(model => model.Confirma_Senha, new { @class = "form-control" })
  108.                         @Html.ValidationMessageFor(model => model.Confirma_Senha, null, new { @style = "color: #f00" })
  109.                     </div>
  110.                 </div>
  111.             </fieldset>
  112.             <div class="well well-sm" style="position: relative; top: 20px;">
  113.                 <div class="panel panel-heading">
  114.                     <h3 class="panel-title">Endereço</h3>
  115.                 </div>
  116.                 <div class="panel-body">
  117.                     <div class="form-group">
  118.                         @Html.LabelFor(model => model.CEP, new { @class = "col-lg-2 control-label" })
  119.                         <div class="col-lg-10">
  120.                             @Html.TextBoxFor(model => model.CEP, new { @id = "CEP", @class = "form-control pt-3", @placeholder = "CEP", @onblur = "getEndereco()" })
  121.                             @Html.ValidationMessageFor(model => model.CEP, null, new { @style = "color: #f00" })
  122.                         </div>
  123.                     </div>
  124.                     <div class="form-group">
  125.                         @Html.LabelFor(model => model.Rua, new { @class = "col-lg-2 control-label" })
  126.                         <div class="col-lg-10">
  127.                             @Html.TextBoxFor(model => model.Rua, new { @id = "Rua", @class = "form-control", @placeholder = "Rua", @style = "text-transform: uppercase;" })
  128.                             @Html.ValidationMessageFor(model => model.Rua, null, new { @style = "color: #f00" })
  129.                         </div>
  130.                     </div>
  131.                     <div class="form-group">
  132.                         @Html.LabelFor(model => model.Numero, new { @class = "col-lg-2 control-label" })
  133.                         <div class="col-lg-10">
  134.                             @Html.TextBoxFor(model => model.Numero, new { @id = "Numero", @class = "form-control", @placeholder = "Numero", @style = "text-transform: uppercase;" })
  135.                             @Html.ValidationMessageFor(model => model.Numero, null, new { @style = "color: #f00" })
  136.                         </div>
  137.                     </div>
  138.                     <div class="form-group">
  139.                         @Html.LabelFor(model => model.Complemento, new { @class = "col-lg-2 control-label" })
  140.                         <div class="col-lg-10">
  141.                             @Html.TextBoxFor(model => model.Complemento, new { @class = "form-control", @placeholder = "Complemento", @style = "text-transform: uppercase;" })
  142.                             @Html.ValidationMessageFor(model => model.Complemento, null, new { @style = "color: #f00" })
  143.                         </div>
  144.                     </div>
  145.                     <div class="form-group">
  146.                         @Html.LabelFor(model => model.Bairro, new { @class = "col-lg-2 control-label" })
  147.                         <div class="col-lg-10">
  148.                             @Html.TextBoxFor(model => model.Bairro, new { @id = "Bairro", @class = "form-control", @placeholder = "Bairro", @style = "text-transform: uppercase;" })
  149.                             @Html.ValidationMessageFor(model => model.Bairro, null, new { @style = "color: #f00" })
  150.                         </div>
  151.                     </div>
  152.                 </div>
  153.             </div>
  154.             <!-- Horarios -->
  155.             <div id="horarios_funcionario" class="well well-sm" style="margin-top: 5px;">
  156.                 <div class="panel panel-heading">
  157.                     <h3 class="panel-title">Horários (favor utilizar padrão 24h)</h3>
  158.                 </div>
  159.                 <div id="horarios" class="panel-body">
  160.                     @if (int.Parse(TempData["alteracaoAcesso"].ToString()) == 1)
  161.                     {
  162.                         for (var i = 0; i < Model.ListaHorarios.Count; i++)
  163.                         {
  164.                             <div id="clonedInput1" class="clonedInput" style="text-align: center; margin:auto; width: 50%; padding: 5px; border-radius: 5px; margin-bottom: 10px; border: 1px solid #77ba94;">
  165.                                 <div class="actions" style="margin-bottom: 2px; margin-top: 2px;">
  166.                                     <a class="clone" style="font-size:15px; cursor: pointer; color:#77ba94;"><span class="glyphicon glyphicon-plus"></span> ADICIONAR HORÁRIO</a>
  167.                                     <img class="remove" src="~/Images/cross.png" width="16" height="16" border="0" style="cursor: pointer; position: relative; float: right;">
  168.                                 </div>
  169.                                 <hr />
  170.                                 <div class="row" style="padding: 2px;">
  171.                                     <div class="col-xs-8 col-sm-6">
  172.                                         <!--Inicio de horario-->
  173.                                         <div class="row" style="margin-bottom: 10px;">
  174.                                             @Html.LabelFor(model => Model.ListaHorarios[i].Inicio, new { @class = "col-sm-3 control-label" })
  175.                                             @Html.TextBoxFor(model => Model.ListaHorarios[i].Inicio, new { @id = "inicio", @name = "horario_inicio", @size = "5", @class = "form-control-sm", @placeholder = "hh:mm" })
  176.                                         </div>
  177.                                         <!--Fim de horario-->
  178.                                         <div class="row">
  179.                                             @Html.LabelFor(model => Model.ListaHorarios[i].Fim, new { @class = "col-sm-3 control-label" })
  180.                                             @Html.TextBoxFor(model => Model.ListaHorarios[i].Fim, new { @id = "fim", @name = "horario_fim", @size = "5", @class = "form-control-sm", @placeholder = "hh:mm" })
  181.                                         </div>
  182.                                     </div>
  183.                                     <!--Descricao de horario-->
  184.                                     <div class="col-xs-8 col-sm-6" style="width: 220px; float:left; margin-left: 0px;">
  185.                                         @Html.LabelFor(model => Model.ListaHorarios[i].Descricao, new { @class = "control-label" })
  186.                                         @Html.TextBoxFor(model => Model.ListaHorarios[i].Descricao, new { @id = "descricao", @name = "descricao", @size = "5", @placeholder = "DESCRIÇÃO" })
  187.                                     </div>
  188.                                 </div>
  189.                             </div>
  190.                         }
  191.                     }
  192.                 </div>
  193.                 <input type="submit" value="Confirmar Alterações" class="btn btn-primary" style="margin: 0 auto; float: right;">
  194.             </div>
  195.         </div>
  196.     </div>
  197. }
  198.  
  199. @if (TempData["mensagemSucesso"] != null)
  200. {
  201.     <div class="alert alert-success">
  202.         @TempData["mensagemSucesso"]
  203.     </div>
  204. }
  205.  
  206. <script type="text/javascript">
  207.     (function ($) {
  208.         $(document).ready(function () {
  209.             // validar e-mail
  210.             function validateEmail(email) {
  211.                 var re = /^(([^<>()[\]\\.,;:\s@@\"]+(\.[^<>()[\]\\.,;:\s@@\"]+)*)|(\".+\"))@@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  212.                 return re.test(email);
  213.             }
  214.  
  215.             $("#Email").on("change", function () {
  216.                 if (!validateEmail($("#Email").val())) {
  217.                     $("#resultEmail").text("E-mail inválido!");
  218.                 } else {
  219.                     $("#resultEmail").text("");
  220.                 }
  221.             })
  222.  
  223.             // mascaras
  224.             $('#CPF').mask('999.999.999-99');
  225.             $('#Telefone').mask("(99) 9999-99999");
  226.             $('#Telefone').change(function (event) { // mascara dinamica
  227.                 var target, phone, element;
  228.                 target = (event.currentTarget) ? event.currentTarget : event.srcElement;
  229.                 phone = target.value.replace(/\D/g, '');
  230.                 element = $(target); element.unmask();
  231.                 if (phone.length > 10) {
  232.                     element.mask("(99) 99999-9999");
  233.                 }
  234.                 else {
  235.                     element.mask("(99) 9999-99999");
  236.                 }
  237.             });
  238.  
  239.             $("#CEP").mask("99.999-999");
  240.             $("input[name*='horario_inicio']").mask("99:99");
  241.             $("input[name*='horario_fim']").mask("99:99");
  242.  
  243.             // clonagem de horarios
  244.             var regex = /^(.+?)(\d+)$/i;
  245.             var cloneIndex = $(".clonedInput").length;
  246.  
  247.             function clone() {
  248.                 $(this).parents(".clonedInput").clone()
  249.                     .appendTo("#horarios")
  250.                     .attr("id", "clonedInput" + cloneIndex)
  251.                     .find("*")
  252.                     .each(function () {
  253.                         var id = this.id || "";
  254.                         var match = id.match(regex) || [];
  255.                         if (match.length == 3) {
  256.                             this.id = match[1] + (cloneIndex);
  257.                         }
  258.                     })
  259.                     .on('click', 'a.clone', clone)
  260.                     .on('click', 'img.remove', remove);
  261.                 $("input[name*='horario_inicio']").mask("99:99");
  262.                 $("input[name*='horario_fim']").mask("99:99");
  263.                 cloneIndex++;
  264.             }
  265.             function remove() {
  266.                 if ($(this).parents("#horarios").children().length > 1) {
  267.                     $(this).parents(".clonedInput").remove();
  268.                 }
  269.             }
  270.  
  271.             $("a.clone").on("click", clone);
  272.  
  273.             $("img.remove").on("click", remove);
  274.         });
  275.     })(jQuery);
  276. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement