c# – ¿Cómo podría poner una condición para que solo me acepte números diferentes y no repetidos? JAVA

public static void main(String() args) {
    // TODO code application logic here
    System.out.println("Ingrese el tamaño de su agrreglo");
    Scanner leer = new Scanner(System.in);
    int cantidad_num;
    cantidad_num = leer.nextInt();
    int() Arr_numeros;
    int aux = 0;
    Arr_numeros = new int(cantidad_num);
    System.out.println("Ingrese numeros");

    for (int i = 0; i < cantidad_num; i++) {
        aux = aux + Arr_numeros(i);
        Arr_numeros(i) = leer.nextInt();

    }

    System.out.println("Sus numeros son : ");
    for (int i = 0; i < cantidad_num; i++) {
        System.out.println(Arr_numeros(i));
    }

}

Me gustaría saber como podría ponerle una condición para que pida solo números diferentes y no repetidos. De igual manera que me salga un mensaje que me diga que ingrese números diferentes.

¿Cómo podría llevar esta función de php a mysql con una función o procedimiento almacenado?

estoy intentando llevar una funcionalidad que hago en php a mysql mediante una función o procedimiento almacenado, aunque me gustaría más si fuera una función.

Me gustaría que la función de mysql me devolviera la fecha mínima que tuviera para id_av.

Este es el trozo de código que me gustaría llevar a php:



<?php
// my controler
function toFunctionMySQL()
{
    $date = array();
    $listIdAv =  $this->mi_model->getListIdAv();
    foreach ($listIdAv as $av) {
        
        $dateFirstChangeStatus = $this->mi_model->getDateFirstChangeStatusForIdAv($av);
        array_push($date, $dateFirstChangeStatus);
    }
}

// my model
function getDateFirstChangeStatusForIdAv( $idAv)
{
    return $this->db->query("SELECT DATE_FORMAT( MIN(date_change) , '%d-%m-%Y %H:%i:%s' ) AS date_change FROM `av` WHERE change LIKE 'Change status %' AND id_av= $idAv")->row()->date_change;
}

function getListIdAv()
{
    return $this->db->query("SELECT id_av from av")->result_array();
}

?>

Hasta ahora lo que he hecho ha sido la siguiente función, pero me está retornando una misma fecha, según pensaba, que si hago una llamada a una función, y a esta le paso como parametro un campo de una tabla, haciendo select mifuncion(id_av) from av; me muestra la misma fecha para todos los registros.

CREATE FUNCTION `mifunction`(id_av int) RETURNS varchar(25) CHARSET latin1
BEGIN

declare dateText VARCHAR(25);

SELECT DATE_FORMAT( MIN(date_change) , '%d-%m-%Y %H:%i:%s' ) 
into dateText 
FROM `av` 
WHERE date_changeLIKE 'change status%' AND id_av = id_av ;
if dateText is null then 
    set dateText = '';
end if;
RETURN dateText;
END

¿ Alguna forma de llevar ese trozo de código de php a mysql con una función ?

html – quiero poner el footer (color oscuro) detras de la card blanca pero esta no deja, ¿qué podria hacer?

.container-card{
    margin-bottom: 50px;
    width: 100%;
    height: 100px;
    position: relative;
}
.card-smile{
    text-align: center;
    margin: 50px 10px;
    position: absolute;
    top: -10px;
    padding: 15px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.card-smile > h3{
    font-size: 1.09em;
}



.btn-big{
    border: none;
    border-radius: 2em;
    background-color: rgba(254,85,194,255);
    color: #FFF;
    font-size: .6em;
    margin-bottom: 1.5em;
    padding: 1.2em 4em;
}


/* footer */

footer{
    background: #00252e;
    width: 100%;
    heigth:300px;
    z-index: -10;
}
<div class="conteiner2-card">
  <div class="container-card">
    <div class="card-smile">
      <h3>Ready To Build Your Community?</h3>
      <button class="btn btn-big btn-dffcolor">
        Get Started For Free
      </button>  
  </div>
</div>
</div>
<footer>
    <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Assumenda fugit a necessitatibus perspiciatis ullam ex praesentium, quas id eum. Optio nostrum labore cum esse quasi quae odio non molestias magni? </p>
</footer>

postgresql – ¿Cómo se podría combinar resultados que tengan el mismo alias?

Quisiera una forma de combinar o sumar datos con el mismo alias “estado” como en el caso de Applied y No Qualified que se repiten en alias “estado” pero tienen diferente valor de “cantidad”, ¿alguno podría echarme una mano?, esta es mi consulta:

SELECT e.eac_clave AS "estado", COUNT(e.eac_clave)
FROM vacante v LEFT JOIN estadoaplicacion e ON e.vac_id = v.vac_id AND v.vac_id = 128 
JOIN candidatoxvacante cxv ON e.eac_id = cxv.eac_id GROUP BY e.eac_clave
UNION SELECT e.eac_clave AS "estado", CASE
    WHEN COUNT(*) = 1 THEN 0
END
FROM vacante v JOIN estadoaplicacion e
ON e.vac_id = v.vac_id AND v.vac_id = 128 GROUP BY e.eac_clave 
ORDER BY "count"

javascript – ¿Cómo se podría optimizar el código?

Estoy aprendiendo, tengo un tutor en las prácticas, y me ha pedido que pregunte cómo optimizar el código, ya que es muy complicado de leer.

Me ha recomendado que use bucles for para indexar estructuras y olvidarme de dar nombre a todo, ya que los nombres son para los humanos, y lo que hace falta es que lo entienda bien la máquina.

Este es el código:

<script type="text/javascript">
   class formLOGOSTariff{

   constructor(id, params, jsonValue){
      var temCard    = document.querySelector("#temp-card").innerHTML;
      var temPower   = document.querySelector("#temp-power").innerHTML;
      var temEnergy  = document.querySelector("#temp-energy").innerHTML;
      var temBtn     = document.querySelector("#temp-btn").innerHTML;
      var temForm    = document.querySelector("#temp-form").innerHTML;
      this.id = id;
     
      let foorm = document.createElement('div');
         foorm.innerHTML = temForm;
         document.getElementById(id).appendChild(foorm);

      this.contentForm = foorm.querySelector(".content-form");


      foorm.querySelector(".btn-event-addFrm").addEventListener("click",()=>{
         this.addFrm();
          this.sndFrm();

      });
      foorm.querySelector(".btn-event-sndFrm").addEventListener("click", ()=>{
         this.sndFrm();
      });
      foorm.querySelector(".btn-event-delFrm").addEventListener("click", ()=>{
         this.delFrm();
      });

      let card = this.addFrm();

      document.body.querySelector('.btn-event-sndTo').addEventListener("click", ()=>{
         this.sndTo();
      });

      this.txtare = foorm.querySelector(".test-atex");
      this.txtare.value = JSON.stringify(jsonValue);
      this.sndTo();

      this.txtare.addEventListener("keyup", ()=>{
         if (!this.txtare.value){}
            else{
         this.sndTo();
         }
      });

      for (let i in params){
         var hdninpt = document.createElement('input');
         hdninpt.type = 'hidden';
         hdninpt.name = i;
         hdninpt.value = params(i);

         foorm.querySelector('form').appendChild(hdninpt);
      };
   }

   addPower(el)   {
      var self = this;

      var temPower   = document.querySelector("#temp-power").innerHTML;

      let power = document.createElement("div");
      power.innerHTML = temPower;
      el.querySelector(".container-power").appendChild(power);

      power.querySelectorAll(".lbl-tmp-crd").forEach(item=>{
            item.addEventListener("keyup", ()=>{
               this.sndFrm();
            });
         });

      el.querySelectorAll("label(data-name=labe_power)").forEach((item,index)=>{
            if(index>0){
              item.remove();
            }
         });

      power.querySelectorAll("input(name=t_power)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      power.querySelectorAll("input(name=v_power)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      power.querySelectorAll("input(name=p_power)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      power.querySelectorAll("input(name=plus_)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      power.querySelector(".btn-event-disAble").addEventListener("click", (e)=>{
         this.disAble(e);
         if (e.target.getAttribute("data-disable")==null){
            e.target.setAttribute("data-disable",1);
         } else {
            e.target.removeAttribute("data-disable");
         }
      });

      power.querySelector(".btn-event-addInpt").addEventListener("click", (e)=>{
         this.addInpt(e);
      });

      power.querySelector(".btn-event-erase").addEventListener("click", (e)=>{
         this.eraseBtn(e);
      });

      self.draggedNODE = null;
      power.querySelectorAll(".sortable_p").forEach(item=>{

            item.addEventListener("dragstart", function(){
               self.draggedNODE = item;
            });

            item.addEventListener("dragover", function(evt){
               evt.preventDefault();
            });

            item.addEventListener("drop", function(evt){
               evt.preventDefault();
               if (item != self.draggedNODE) {
                  item.parentNode.insertBefore(self.draggedNODE, item);
               }
            });
      });

      return power;

   }

   addBtn(el){
      var self = this;

      var temBtn = document.querySelector('#temp-btn').innerHTML;

      let btn = document.createElement('div');
         btn.innerHTML = temBtn;
            el.querySelector('.container-btn').appendChild(btn);

      btn.querySelectorAll("label(data-name=labe_btn)").forEach((item,index)=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });
      el.querySelectorAll("label(data-name=labe_btn)").forEach((item,index)=>{
            if(index>0){
              item.remove();
            }
         });

      btn.querySelectorAll("input(name=etiq-lbl-btn)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      btn.querySelectorAll("input(name=src-btn)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      btn.querySelectorAll("input(name=addClass-btn)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      btn.querySelectorAll("input(name=plus_)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      btn.querySelector(".btn-event-disAble").addEventListener("click", (e)=>{
         this.disAble(e);
      });

      btn.querySelector(".btn-event-addInpt").addEventListener("click", (e)=>{
         this.addInpt(e);
      });

      btn.querySelector(".btn-event-erase").addEventListener("click", (e)=>{
         this.eraseBtn(e);
      });

      self.draggedNODE = null;
      btn.querySelectorAll(".sortable_b").forEach(item=>{

            item.addEventListener("dragstart", function(){
               self.draggedNODE = item;
            });

            item.addEventListener("dragover", function(ev){
               ev.preventDefault();
            });

            item.addEventListener("drop", function(ev){
               ev.preventDefault();
               if (item != self.draggedNODE) {
                  item.parentNode.insertBefore(self.draggedNODE, item);
               }
            });
      });

      return btn;
   }

   addEnergy(el)   {
      var self = this;

      var temEnergy  =  document.querySelector('#temp-energy').innerHTML;

      let energy = document.createElement('div');
         energy.innerHTML = temEnergy;
            el.querySelector('.container-energy').appendChild(energy);

      energy.querySelectorAll("label(data-name=labe_energy)").forEach((item,index)=>{
            item.addEventListener("keyup", ()=>{
               this.sndFrm();
            });
         
      });
      el.querySelectorAll("label(data-name=labe_energy)").forEach((item,index)=>{
            if(index>0){
              item.remove();
            }
         });

      energy.querySelectorAll("input(name=t_energy)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      energy.querySelectorAll("input(name=v_energy)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      energy.querySelectorAll("input(name=e_energy)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      energy.querySelectorAll("input(data-extend=plus)").forEach(item=>{
         item.addEventListener("keyup", ()=>{
            this.sndFrm();
         });
      });

      energy.querySelector(".btn-event-disAble").addEventListener("click", (e)=>{
         this.disAble(e);
         if (e.target.getAttribute("data-disable")==null){
            e.target.setAttribute("data-disable",1);
         } else {
            e.target.removeAttribute("data-disable");
         }
      });

      energy.querySelector(".btn-event-addInpt").addEventListener("click", (e)=>{
         this.addInpt(e);
      })

      energy.querySelector(".btn-event-erase").addEventListener("click", (e)=>{
         this.eraseBtn(e);
      });

      self.draggedNODE = null;
      energy.querySelectorAll(".sortable_t").forEach(item=>{

            item.addEventListener("dragstart", function(){
               self.draggedNODE = item;
            });

            item.addEventListener("dragover", function(ev){
               ev.preventDefault();
            });

            item.addEventListener("drop", function(ev){
               ev.preventDefault();
               if (item != self.draggedNODE) {
                  item.parentNode.insertBefore(self.draggedNODE, item);
               }
            });
      });
         return energy;
   }

   addFrm() {
      var self = this;
      var tmp = document.querySelector('#temp-card').innerHTML;
      var cont = this.contentForm;
      let frm  = document.createElement('div');
     
         frm.innerHTML = tmp;
         cont.appendChild(frm);

         frm.querySelectorAll(".lbl-tmp-crd").forEach(item=>{
            item.addEventListener("keyup", ()=>{
               this.sndFrm();
            });
         });

         frm.querySelectorAll(".name_tarif").forEach(item=>{
            item.addEventListener("keyup", ()=>{
               this.sndFrm();
            });
         });
         frm.querySelectorAll(".btn-event-addPower").forEach(item=>{
           item.addEventListener("click", ()=>{
               this.addPower(frm);
               this.sndFrm();
            }); 
         });
         frm.querySelectorAll(".btn-event-addEnergy").forEach(item=>{
           item.addEventListener("click", ()=>{
               this.addEnergy(frm);
               this.sndFrm();
            }); 
         });
         frm.querySelectorAll(".btn-event-addBtn").forEach(item=>{
           item.addEventListener("click", ()=>{
               this.addBtn(frm);
               this.sndFrm();
            }); 
         });

         this.addPower(frm);
         this.addEnergy(frm);
         this.addBtn(frm);

        
      return frm;
   }

   sndFrm()   {
      var jotason = ();

      this.contentForm.querySelectorAll(".templatecARD").forEach(form=>{

            let obj = {
               title : form.querySelector(".name_tarif").value
            };

            let label = {};
            var tlbl = form.querySelectorAll(".lbl-tmp-crd")(0).innerHTML;
            var plbl = form.querySelectorAll(".lbl-tmp-crd")(1).innerHTML;
            var elbl = form.querySelectorAll(".lbl-tmp-crd")(2).innerHTML;
            //var blbl = form.querySelectorAll(".lbl-tmp-crd")(3).innerHTML;

            let power = {};
            form.querySelectorAll("input(name=t_power)").forEach((inpt, index)=>{
               var ob = power(index)||{};
               ob.type=inpt.value;
               power(index)=ob;
            });

            form.querySelectorAll("input(name=v_power)").forEach((inpt, index)=>{
               var ob = power(index)||{};
               ob.value=inpt.value;
               power(index)=ob;
            });

            form.querySelectorAll("input(name=p_power)").forEach((inpt, index)=>{
               var ob = power(index)||{};
               ob.cont=inpt.value;
               power(index)=ob;
            });

            form.querySelectorAll('(data-index="2")').forEach((inpt, index)=>{
               var ob = power(index)||{};
               ob.plus=inpt.value;
               power(index)=ob;
            });

            form.querySelectorAll(".btn-event-disAble.powr").forEach((input, index)=>{
               var ob = power(index)||{};
               if(input.getAttribute("data-disable")==1){
                  ob.disable=1;
                  console.log('1 power');
               }else{
                   ob.disable=null;
                   delete(ob.disable);
                   console.log('0 power');
               }
               power(index)=ob;
            });

            let energy = {};
            form.querySelectorAll("input(name=t_energy)").forEach((inpt, index)=>{
               var oj = energy(index)||{};
               oj.type=inpt.value;
               energy(index)=oj;
            });

            form.querySelectorAll("input(name=v_energy)").forEach((inpt, index)=>{
               var oj = energy(index)||{};
               oj.value=inpt.value;
               energy(index)=oj;
            });

            form.querySelectorAll("input(name=e_energy)").forEach((inpt, index)=>{
               var oj = energy(index)||{};
               oj.cont=inpt.value;
               energy(index)=oj;
            });

            form.querySelectorAll('(data-extend="plus")').forEach((inpt, index)=>{
               var oj = energy(index)||{};
               var name = inpt.getAttribute("name")
               oj(name)=inpt.value;
               energy(index)=oj;
            });

            form.querySelectorAll(".btn-event-disAble.ener").forEach((input, index)=>{
               var oj = energy(index)||{};
               if(input.getAttribute("data-disable")==1){
                  oj.disable=1;
               }else{
                   oj.disable=null;
                   delete(oj.disable);
               }
               energy(index)=oj;
            });

            let btn = {};
            form.querySelectorAll("input(name=etiq-lbl-btn)").forEach((inpt, index)=>{
               var op = btn(index)||{};
               op.label=inpt.value;
               btn(index)=op;
            });
            form.querySelectorAll("input(name=src-btn)").forEach((inpt, index)=>{
               var op = btn(index)||{};
               op.src=inpt.value;
               btn(index)=op;
            });
            form.querySelectorAll("input(name=addClass-btn)").forEach((inpt, index)=>{
               var op = btn(index)||{};
               op.addClass=inpt.value;
               btn(index)=op;
            });
            form.querySelectorAll('(data-index="2")').forEach((inpt, index)=>{
               var op = btn(index)||{};
               op.plus=inpt.value;
               btn(index)=op;
            });

            obj.T_label = tlbl;
            obj.P_label = plbl;
            obj.power = power;
            obj.E_label = elbl;
            obj.energy = energy;
            obj.btn = btn;
            jotason.push(obj);

      })
      var jsoned = JSON.stringify(jotason,undefined, 2);

      this.txtare.value=jsoned;
   }

   sndTo(){
      this.contentForm.innerHTML='';
      let pJsn = this.txtare.value;
      var dat  = JSON.parse(pJsn);
      for(let n in dat){
         (form=>{

            let formDv = this.addFrm();

            formDv.querySelector(".container-power").innerHTML='';

               for(let n1 in form.power){
                  (pow=>{
                     let power = this.addPower(formDv);
                     if(form.P_label&&power.querySelector(".lbl-tmp-crd")){
                        power.querySelector(".lbl-tmp-crd").innerHTML=form.P_label;
                        

                     }
                     power.querySelector("(name=t_power)").value=pow.type;
                     power.querySelector("(name=v_power)").value=pow.value;
                     power.querySelector("(name=p_power").value=pow.cont;
                     if(!power.querySelector("(name=plus_")){} else{
                        power.querySelector("(name=plus_").value=pow.plus;
                     }
                  })(form.power(n1))
               }

            formDv.querySelector(".container-energy").innerHTML='';

               for(let n2 in form.energy){
                  (eng=>{
                     let energy = this.addEnergy(formDv);

                     if(form.E_label&&energy.querySelector(".lbl-tmp-crd")){
                        energy.querySelector(".lbl-tmp-crd").innerHTML=form.E_label;

                       
                     }

                     energy.querySelector("(name=t_energy)").value=eng.type;
                     energy.querySelector("(name=v_energy)").value=eng.value;
                     energy.querySelector("(name=e_energy").value=eng.cont;
                    
                     let ps;
                     for(let nv in eng){
                         console.log(nv.indexOf("plus"));

                       if(nv.indexOf("plus")!=-1){
                          if(ps = energy.querySelector("name="+nv+")")){
                              ps.value=eng(nv);
                           } 
                        }

                        

                     }
                     
                  })(form.energy(n2));
               }

            formDv.querySelector(".container-btn").innerHTML='';

               for(let n3 in form.btn){
                  (but=>{
                     let btn = this.addBtn(formDv);

                     if(form.B_label&&btn.querySelector(".btn-event-addBtn")){
                        btn.querySelector(".lbl-tmp-crd").innerHTML=form.B_label;
                     }
                     btn.querySelector("(name=etiq-lbl-btn)").value=but.label;
                     btn.querySelector("(name=src-btn)").value=but.src;
                     btn.querySelector("(name=addClass-btn)").value=but.addClass;
                     if(!btn.querySelector("(name=plus_")){} else{
                        btn.querySelector("(name=plus_").value=but.plus;
                     }
                  })(form.btn(n3))
               }

            formDv.querySelector(".name_tarif").value=form.title;
            formDv.querySelector(".lbl-tmp-crd").innerHTML=form.T_label;
           
         })(dat(n));
      }
   }

   addInpt(e){
      var tag = e.target;
      var sib = tag.parentNode;


      var lgn = document.querySelectorAll('input(data-index="2")');
      
         for (var i = 0; i < lgn.length+1; i++){
            var input = document.createElement("input");
            input.type = "text";
            input.setAttribute("data-extend","plus");
            input.name = "plus_"+i;
               var tag_p = e.target;
               var sib_p = tag_p.parentNode;
         }
         sib_p.appendChild(input);
      }
      /*
      if (sib = document.querySelector(".sortable_p")){
         var input = document.createElement("input");
         input.type = "text";
         input.name = "plus_p";
            var tag_p = e.target;
            var sib_p = tag_p.parentNode;
            sib_p.appendChild(input);
      } else if (sib = document.querySelector(".sortable_t")){
         var input = document.createElement("input");
         input.type = "text";
         input.name = "plus_t";  
            var tag_t = e.target;
            var sib_p = tag_t.parentNode;
         sib_p.appendChild(input);
      } else if (sib = document.querySelector(".sortable_b")){
         var input = document.createElement("input");
         input.type = "text";
         input.name = "plus_b";
            var tag_b = e.target;
            var sib_b = tag_b.parentNode;
         sib_b.appendChild(input);
      }
   }*/

   delFrm(){
      var nm = this.contentForm.getElementsByClassName("templatecARD").length -1;
      var cont = this.contentForm.getElementsByClassName("templatecARD")(nm);
      if (nm > 0){
         if(confirm('¿Quieres borrarlo')){
            cont.remove();
            this.sndFrm();
         } else {}
      } else {}
   }

   disAble(e){
            var tag = e.target;
            if (tag.style.backgroundColor=='red'){
               tag.style.backgroundColor='green'
               console.log(tag + 'verde');
            } else {
               tag.style.backgroundColor='red';
               console.log(tag + 'rojo');
            }
   }

   eraseBtn(e){
      var e = e.target;
      var eRs = e.parentNode;

      if(confirm('¿Quieres borrarlo?')){
      eRs.remove();
      this.sndFrm();
      }
   }
}


</script>

<template id="temp-card">
 
   <div class="templatecARD" data-group="0">

      <label class="lbl-tmp-crd" contenteditable='true' data-name="label_gruop">Tarifa</label>
      <input type="text" class="name_tarif" name="tarif"/>
      
      <div>

         <div class="container-power"></div>
         <button class="btn-event-addPower" type="button" title="Añadir">+</button>

      </div>
      <div>

         <div class="container-energy" ></div>
         <button class="btn-event-addEnergy" type="button" title="Añadir">+</button>

      </div>
      <div>
         <div class="container-btn"></div>
         <button class="btn-event-addBtn" type="button" title="Añadir">+</button>
      </div>

   </div>

</template>
<!-- TEMPLATES -->
<!-- TEMPLATES -->
<!-- TEMPLATES -->
<template  id="temp-power">
   <div class="box-power">
      <label class="lbl-tmp-crd" contenteditable='true' data-name="labe_power">POWER</label>
      <div class="sortable_p" draggable="true">
            <input type="text" name="t_power"/>
            <input type="text" name="v_power"/>
            <input type="text" name="p_power">
            <button type="button" class="btn-event-addInpt" title="Añadir">+</button>
            <button type="button" class="btn-event-disAble powr" title="Deshabilitar">X</button>
            <button type="button" class="btn-event-erase" title="Borrar">-</button>
            <div class="draggl">
               <div class="bar1"></div>
               <div class="bar2"></div>
               <div class="bar3"></div>
            </div>
      </div>
   </div>

</template> 
<!-- TEMPLATES -->
<!-- TEMPLATES -->
<!-- TEMPLATES -->
<template  id="temp-energy">
   <div class="box-energy" >
      <label class="lbl-tmp-crd" contenteditable='true' data-name="labe_energy">ENERGY</label>
      <div class="sortable_t" draggable="true">
         <input type="text" name="t_energy"/>
         <input type="text" name="v_energy"/>
         <input type="text" name="e_energy">
         <button type="button" class="btn-event-addInpt" title="Añadir">+</button>
         <button type="button" class="btn-event-disAble ener" title="Deshabilitar">X</button>
         <button type="button" class="btn-event-erase" title="Borrar">-</button>
         <div class="draggl">
            <div class="bar1"></div>
            <div class="bar2"></div>
            <div class="bar3"></div>
         </div>
      </div>
   </div>

</template> 
<!-- TEMPLATES -->
<!-- TEMPLATES -->
<!-- TEMPLATES -->
<template id="temp-btn">
   <div class="box-btn">
      <label class="lbl-tmp-crd" contenteditable="true" data-name="labe_btn">BOTONES</label>
      <div class="sortable_b" draggable="true">
         <input type="text" name="etiq-lbl-btn" placeholder="label">
         <input type="text" name="src-btn" placeholder="source">
         <input type="text" name="addClass-btn" placeholder="addClass">
         <button type="button" class="btn-event-addInpt" title="Añadir">+</button>
         <button type="button" class="btn-event-disAble" title="Deshabilitar">X</button>
         <button type="button" class="btn-event-erase" title="Borrar">-</button>
         <div class="draggl">
            <div class="bar1"></div>
            <div class="bar2"></div>
            <div class="bar3"></div>
         </div>
      </div>
   </div>
</template>
<!-- TEMPLATES -->
<!-- TEMPLATES -->
<!-- TEMPLATES -->

   <!-- FORMULARIO -->
      <!-- FORMULARIO -->
         <!-- FORMULARIO -->
<template id="temp-form">
   <form method="post"  onSubmit="scene.submitAjax(this,event,true, 100);">

      <div class="content-form"></div>
      <div>
         <button class="btn-event-sndFrm" type="button" title="Actualizar">UPDATE TEXTAREA</button>
         <button class="btn-event-addFrm" type="button" title="Añadir tarifa">+</button>
         <button class="btn-event-delFrm" type="button" title="Borrar tarifa">-</button>
         <button type="submit">ENVIAR</button>
      </div>
      <textarea class="test-atex"  name="value(json)" > </textarea>
   </form>
</template>
         <!-- FORMULARIO -->
      <!-- FORMULARIO -->
   <!-- FORMULARIO -->
<?php }

$idUnico = uniqid('', true);
$idUnicoDiv ='div-'.$idUnico;
$idUnicoTex ='text-'.$idUnico;

$cjon = json_decode($this->val("json"));
if(!$cjon ){
   $cjon=();
}

 ?>
<div class="dv-content"> 
   <?=$this->getPublicNameModule()  ?>
   <div id="<?=$idUnicoDiv?>"></div>
   
   <button class='btn-event-sndTo' type="button" title="Actualizar">UPDATE FORM</button>
</div>
<script type="text/javascript">
   $(document).ready(function(){
   var nomVre1 = new formLOGOSTariff("<?=$idUnicoDiv?>",  <?=json_encode($this->getInfoDataForm())?>, <?=json_encode($cjon);?> );
});
</script>

Es parte de un módulo de vertary, pero lo importante es el código en si.

Obviamente no quiero una respuesta hecha, solamente necesitaría ideas, porque por más que mire, yo lo entiendo bien así (puede ser que porque esté empezando). Supuestamente tengo mucho código basura, y dice que se podría reducir el javascript a la tercera parte, pero no entiendo ni siquiera cómo sería capaz de hacerlo, pero me comenta siempre que con bucles for podría numerar las estructuras en vez de darlas nombre, pero creo que me falta imaginación para hacerlo.

¿Alguna idea?

angularjs – ¿Cómo podría exportar una ngtable a un excel? Ocupo angular.js

Quisiera exportar la tabla (ngtable) en un archivo .csv dándole click a Exportar listado, he intentado unos cuantos métodos pero usan algo externo a angularjs, para esta parte solo debería utilizar angular, también elimine las funciones creadas durante mis intentos pero quedaron rastros en el html. ¿Qué me recomendarían? Les agradecería mucho su apoyo.

                    <div class="dropdown open " dropdown="">
                        <button class="btn btn-sm  btn-default pull-right"
                            dropdown-toggle="" aria-haspopup="true" aria-expanded="true">
                            <i class="fa fa-bars pull-left"></i>
                        </button>
                        <ul class="dropdown-menu pull-right">
                            <li><a data-ember-action="" ng-mousedown="csv.generate()"
                                ng-href="{{ csv.link()}}"
                                download="Listado de notas de pedidos.csv"> <i
                                    class="fa  fa-download"></i> Exportar listado <!-- debería generarlo al clickear Exportar Lista -->
                            </a></li>
                        </ul>
                    </div>
                </span>
            </div>
        </div>
        <form ng-submit="filtrolike(nombrelike)">
            <div class="col-sm-5">
                <div class="form-group">
                <div class="input-group">
                    <span class="input-group-addon" style="opacity: .7">
                        <i class="calendar1 glyphicon glyphicon-search"></i>
                    </span>
                    <input type="text" class="form-control" ng-model="buscar" placeholder="Ingresar valor a filtrar" style="opacity: .7;height: 40px;width: 340px;"/> 
                </div>
            </div>
            </div>
        </form>
    </div>
    <div class="col-sm-12" style="background-color:#ffffff">
    <div class="col-sm-10 col-sm-offset-1">
    <div class="table-responsive" style="overflow-y:auto;height:400px;width:100%">
    
        <table ng-table="tableParamsPerfiles" export-csv="csv" <!-- tabla -->
            class="table table-bordered b-t b-light">
            <tr style="background:#D6FFF8">
                <th><center>Id Perfiles</center></th>
                <th><center>Nombres</center></th>
                <th><center>Ambito</center></th>
                <th><center>Estado</center></th>
                <th colspan="3"><center>Acción</center></th>
            </tr>
            <tr class="center" ng-repeat="cat in $data |filter:buscar" >
                <td data-title="'Idperfiles'" sortable="idperfiles">
                    {{cat.idperfiles}}</td>
                <td data-title="'Nombres'" sortable="nombres">{{cat.nombres}}
                </td>
                <td data-title="'Ambito'" sortable="ambito">{{cat.ambito}}</td>
                <td data-title="'Estado'" sortable="estado"><span
                    class="i  {{cat.estado=='1'?'fa fa-eye ':'fa fa-eye-slash rediconcolor'}}"></span>
                </td>
                <td style="width: 2%;" >
                <div class="btn-group" dropdown="">
                    <a dropdown-toggle="" aria-haspopup="true" aria-expanded="true">
                        <i class="glyphicon glyphicon-refresh text-success" ng-click="nuevo('',cat.idperfiles);">
                        </i>
                    </a>
                </div>
            </td>

introducir la descripción de la imagen aquí
introducir la descripción de la imagen aquí

python – como podria crear las siguientes funciones?

contexto: nos dan los indices para el valor de difentes tipos de monedas mundiales y de esa lista necesito crear las siguientes funciones:
Parte 1.- Se pide mostrar en pantalla para cada uno de los

parte 2 Se pide crear una funcion que reciba un dia_indicador y lo retorne dolarizado

Parte 3.-

Parte 4
recorra el tablero, indicando las fechas donde se cumpla que:
el dolar + 10% es superior al valor del Euro o
el YEN sea inferior a 10 veces el valor del WON

javascript – Como podría vincular HTML externos?

tengo una consulta.
estoy realizando una pagina, tengo HTML diferentes( index.html – proceso.html – productos.html -contacto.html), lo que tengo que hacer es vincular los HTML con el HTML principal que seria index.html
donde tengo los button

        <div>
        <nav class="tab">
            <button type="button" class="boton"> <i class="fas fa-home"></i> Home</button>
            <button type="button" class="boton"> <i class="fas fa-beer"></i> Proceso</button>
            <button type="button" class="boton"> <i class="fab fa-product-hunt"</i>Productos</button>
            <button type="button" class="boton"><i class="fas fa-address-book"></i> Contacto</button>
        </nav>
        </div>

como podría realizar ese método que cuando le de un clip a la pestaña “contacto” me tome el HTML que realice con ese nombre

introducir la descripción de la imagen aquí

por que use href=>contacto.html pero estoy vinculando una pagina me sale de esta forma

introducir la descripción de la imagen aquí

la idea que me saliera algo así( realice una edición de imagen para que puedan apreciar mi ejemplo)

introducir la descripción de la imagen aquí

si pudieran ayudarme con algún ejemplo que podría aplicar o orientarme, llevo mi primer año de estudio la universidad método online igual no apoyan mucho con material de estudio , me la he rebuscado para poder aprender, agradecería su apoyo, saludos