Skip to content

Instantly share code, notes, and snippets.

@eliantor
Created June 15, 2012 10:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eliantor/2935737 to your computer and use it in GitHub Desktop.
Save eliantor/2935737 to your computer and use it in GitHub Desktop.
package sincro.safetrack.fragment;
import static sincro.safetrack.utility.MetodiStatici.equalString;
import it.skymedia.safetrack.bean.Documento;
import it.skymedia.safetrack.bean.Indirizzo;
import it.skymedia.safetrack.bean.Persona;
import it.skymedia.safetrack.bean.Persona.Tipo;
import it.skymedia.safetrack.bean.Riferimento;
import it.skymedia.safetrack.bean.Veicolo;
import java.io.File;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import sincro.safetrack.R;
import sincro.safetrack.SafeTrack;
import sincro.safetrack.activity.AbstractActivityPaint;
import sincro.safetrack.activity.ActivityPersona;
import sincro.safetrack.adapter.AdapterSpinner;
import sincro.safetrack.adapter.AdapterTestimoni;
import sincro.safetrack.adapter.AdapterTestimoni.GestoreClickTestimone;
import sincro.safetrack.listener.FakeExpListener;
import sincro.safetrack.listener.ToucherEditText;
import sincro.safetrack.listener.WatcherEditText;
import sincro.safetrack.utility.MioRiferimentoEdit;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.app.ListFragment;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.view.inputmethod.InputMethodManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.PopupWindow;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class FragmentVeicolo extends ListFragment implements GestoreClickTestimone,OnClickListener {
private final static String TAG="FragmentVeicolo";
private final static String TAG_AUDIO_PLAYER="audio player";
private View v;
private Veicolo veicolo;
private SimpleDateFormat s = new SimpleDateFormat("dd/MM/yyyy");
//BOTTONI E IMAGEVIEW DI DINAMICA
private Button lanciaTrackPaint;
private Button lanciaRegistrazione;
private ImageView immagine;
private boolean immaginePresente=false;
private boolean audioPresente;
private Riferimento riferimentoImmagine;
private Riferimento riferimentoAudio;
//*******************************
//parametri per lista passegeri
private Set<Persona> setPasseggeri;
private List<Persona> miaLista=new ArrayList<Persona>();
private Persona personaSelezionata;
private Button aggiungiPasseggero;
//***POPUP AGGIUNGITESTIMONE E WIDGET DEL POPUP---vedi visulizzaPopup()
private PopupWindow pwAggiungiPass = null;
//private AlertDialog customDialog = null;
private View contentView;
private EditText cognome;
private EditText nome;
private EditText cF;
private Button ok;
private Button chiudi;
//*****************************
//Listener
private FakeExpListener clickListener;
private WatcherEditText textWatcher;
private ToucherEditText textToucher;
//********************
//Layout da rendere visibili o no
private View datiVeicolo;
private View danniVisibili;
private View datiAssicurazione;
private View datiConducente;
private View datiAssicurato;
private View listaPasseggeri;
private View dinamica;
//**************************
private View schedaCorrente=null;
//TextView cliccabili per far apparire o scomparire i layout
private TextView tv_datiVeicolo;
private TextView tv_danniVisibili;
private TextView tv_datiAssicurazione;
private TextView tv_datiConducente;
private TextView tv_datiAssicurato;
private TextView tv_listaPasseggeri;
private TextView tv_dinamica;
//*********************************
//Button con la stessa funzionalit� delle TextView sopra
private Button bt_datiVeicolo;
private Button bt_danniVisibili;
private Button bt_datiAssicurazione;
private Button bt_datiConducente;
private Button bt_datiAssicurato;
private Button bt_listaPasseggeri;
private Button bt_dinamica;
//********************************
//**************DATI VEICOLO
private EditText targa,telaio,marca,modello;
private CheckBox targaEstera;
private Spinner tipoVeicolo;
//**************************
//************DANNI VISIBILI
private EditText et_danniVisibili;
//**************************
//***********DATI ASSICURAZIONE
private EditText numeroPoliza,compagnia,agenzia,citta,provincia,comune,
indirizzoAss,validitaDa,validitaA;
//**************************
//************DATI CONDUCENTE
private boolean nuovoConducente=false;
View layout_innestato_domicilio_conducente;
private Persona conducente=null;
private Documento patente=null;
private Indirizzo residenza=null;
private Indirizzo domicilio=null;
private String sesso;
private EditText cognomeCond,dataNascitaCond,numeroPatenteCond,
limitazioniCond,recapitoFissoCond,cittaResCond,
indirizzoResCond,cittaDomCond,indirizzoDomCond,
nomeCond,nazionalitaCond,validitaCond,
classePatenteCond,recapitoMobileCond,provinciaResCond,
provinciaDomCond,codiceFiscaleCond,rilasciatoCond,
comuneResCond,comuneDomCond,note;
/// XXX conducente
private EditText nazioneDomCond,nazioneResCond;
private CheckBox resUgualeDomCond,resUgualeDomCond_no,sessoMCond,sessoFCond;
private boolean conducenteCaricato=false;
//***************************
//**************DATI ASSICURATO
private View layout_innestato_check_persona_giuridica;
//private View layout_innestato_anagrafe_ass;
private View layout_innestato_residenza_ass;
private View layout_innestato_domicilio_ass;
private View layout_innestato_sede_legale;
private CheckBox ass_uguale_cond;
private CheckBox ass_uguale_cond_no;
private boolean nuovoAssicurato=false;
private Persona assicurato=null;
private Indirizzo residenzaAssicurato = null;
private Indirizzo domicilioAssicurato = null;
private Indirizzo indirizzo= null;
private EditText cognome_ass,recapitoFisso_ass,cittaRes_ass,
indirizzoRes_ass,cittaDom_ass,indirizzoDom_ass,
cittaPG,indirizzoPG,nome_ass,recapitoMobile_ass,
provinciaRes_ass,provinciaDom_ass,
provinciaPG,codiceFiscale_ass,comuneRes_ass,comuneDom_ass,
comunePG;
/// XXX Assicurato
private EditText nazioneDom_ass,nazioneRes_ass,nazionePG;
private CheckBox personaGiuridica,personaGiuridica_no,resUgualeDom_ass,resUgualeDom_ass_no;
private boolean assicuratoCaricato=false;
private boolean preservaDati=false;
//****************************
private TrackPaintLauncher listener;
public interface TrackPaintLauncher{
public void launcherTrackPaintPressed();
public void signal();
public void setGoodResult(Veicolo veicolo,boolean reOpen);
}
@Override
public void onAttach(Activity activity) {
try {
listener=(TrackPaintLauncher)activity;
} catch (ClassCastException e) {
throw new ClassCastException("Devi implementare l'interfaccia TrackPaintLauncher in ActivityVeicolo");
}
super.onAttach(activity);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
v=inflater.inflate(R.layout.fake_expandable, container);
aggiungiPasseggero=(Button)v.findViewById(R.id.bt_layout_lista_passeggeri_aggiungi);
//***************
//LAYOUT
datiVeicolo=v.findViewById(R.id.layout_riga_exp_dati_veicolo);
danniVisibili=v.findViewById(R.id.layout_riga_exp_danni_visibili);
datiAssicurazione=v.findViewById(R.id.layout_riga_exp_assicurazione);
datiConducente=v.findViewById(R.id.layout_riga_exp_dati_conducente);
datiAssicurato=v.findViewById(R.id.layout_riga_exp_dati_assicurato);
listaPasseggeri=v.findViewById(R.id.layout_lista_passeggeri);
dinamica=v.findViewById(R.id.layout_immagine_trackpaint);
layout_innestato_domicilio_conducente=v.findViewById(R.id.layout_innestato_domicilio_conducente);
layout_innestato_check_persona_giuridica=v.findViewById(R.id.layout_innestato_check_persona_giuridica);
//layout_innestato_anagrafe_ass=v.findViewById(R.id.layout_innestato_anagrafe_ass);
layout_innestato_residenza_ass=v.findViewById(R.id.layout_innestato_residenza_ass);
layout_innestato_domicilio_ass=v.findViewById(R.id.layout_innestato_domicilio_ass);
layout_innestato_sede_legale=v.findViewById(R.id.layout_innestato_sede_legale);
//***********
//TITOLI
tv_datiVeicolo=(TextView)v.findViewById(R.id.tv_fake_dati_veicolo);
tv_danniVisibili=(TextView)v.findViewById(R.id.tv_fake_danni_visibili);
tv_datiAssicurazione=(TextView)v.findViewById(R.id.tv_fake_dati_assicurazione);
tv_datiConducente=(TextView)v.findViewById(R.id.tv_fake_dati_conducente);
tv_datiAssicurato=(TextView)v.findViewById(R.id.tv_fake_dati_assicurato);
tv_listaPasseggeri=(TextView)v.findViewById(R.id.tv_fake_lista_passeggeri);
tv_dinamica=(TextView)v.findViewById(R.id.tv_fake_dinamica_soggettiva);
//************
//BOTTONI
bt_datiVeicolo=(Button)v.findViewById(R.id.bt_fake_dati_veicolo);
bt_danniVisibili=(Button)v.findViewById(R.id.bt_fake_danni_visibili);
bt_datiAssicurazione=(Button)v.findViewById(R.id.bt_fake_dati_assicurazione);
bt_datiConducente=(Button)v.findViewById(R.id.bt_fake_dati_conducente);
bt_datiAssicurato=(Button)v.findViewById(R.id.bt_fake_dati_assicurato);
bt_listaPasseggeri=(Button)v.findViewById(R.id.bt_fake_lista_passeggeri);
bt_dinamica=(Button)v.findViewById(R.id.bt_fake_dinamica_soggettiva);
//*************
//CAMPI DI DATI VEICOLO
targa = (EditText)v.findViewById(R.id.targa);
telaio = (EditText)v.findViewById(R.id.telaio);
marca = (EditText)v.findViewById(R.id.marca);
modello = (EditText)v.findViewById(R.id.modello);
tipoVeicolo = (Spinner) v.findViewById(R.id.tipoVeicolo);
targaEstera = (CheckBox) v.findViewById(R.id.targa_estera);
targa.setEnabled(false);
//************************************************************************
//************************************************************************
//*************************************************************************
//CAMPI DI DANNI VISIBILI*********************
et_danniVisibili=(EditText)v.findViewById(R.id.dannivisibili);
/*
*
*/
//CAMPI DATI ASSICURAZIONE***********************
numeroPoliza=(EditText)v.findViewById(R.id.numPolizza);
compagnia = (EditText)v.findViewById(R.id.compagnia_ass);
agenzia = (EditText)v.findViewById(R.id.agenzia);
citta=(EditText)v.findViewById(R.id.cittaAss);
comune = (EditText)v.findViewById(R.id.comuneAss);
provincia = (EditText)v.findViewById(R.id.provinciaAss);
indirizzoAss = (EditText)v.findViewById(R.id.indirizzo);
/*
*
*/
//CAMPI DI DATI CONDUCENTE*************
nomeCond = (EditText)v.findViewById(R.id.nome);
cognomeCond = (EditText)v.findViewById(R.id.cognome);
codiceFiscaleCond = (EditText)v.findViewById(R.id.codiceFiscale);
dataNascitaCond = (EditText)v.findViewById(R.id.dataNascita);
nazionalitaCond = (EditText)v.findViewById(R.id.nazionalita);
sessoMCond = (CheckBox) v.findViewById(R.id.sessoM);
sessoFCond = (CheckBox) v.findViewById(R.id.sessoF);
note=(EditText)v.findViewById(R.id.note);
///XXX inserted nazione
nazioneResCond = (EditText)v.findViewById(R.id.nazioneRes);
nazioneDomCond = (EditText)v.findViewById(R.id.nazioneConDom);
nazioneRes_ass = (EditText)v.findViewById(R.id.nazioneRes_ass);
nazioneDom_ass = (EditText)v.findViewById(R.id.nazioneDom_ass);
nazionePG = (EditText)v.findViewById(R.id.nazionePG);
//Patente
numeroPatenteCond = (EditText)v.findViewById(R.id.numeroPatente);
validitaCond = (EditText)v.findViewById(R.id.validita);
rilasciatoCond = (EditText)v.findViewById(R.id.rilasciato);
limitazioniCond = (EditText)v.findViewById(R.id.limitazioni);
classePatenteCond = (EditText)v.findViewById(R.id.classePatente);
recapitoFissoCond = (EditText)v.findViewById(R.id.recapitoFisso);
recapitoMobileCond = (EditText)v.findViewById(R.id.recapitoMobile);
//Residenza
cittaResCond = (EditText)v.findViewById(R.id.cittaRes);
comuneResCond = (EditText)v.findViewById(R.id.comuneRes);
provinciaResCond = (EditText)v.findViewById(R.id.provinciaRes);
indirizzoResCond = (EditText)v.findViewById(R.id.indirizzoRes);
resUgualeDomCond=(CheckBox)v.findViewById(R.id.resUgualeDom);
resUgualeDomCond_no=(CheckBox)v.findViewById(R.id.resUgualeDom_no);
//Domicilio
cittaDomCond = (EditText)v.findViewById(R.id.cittaCondDom);
comuneDomCond = (EditText)v.findViewById(R.id.comuneCondDom);
provinciaDomCond = (EditText)v.findViewById(R.id.provinciaCondDom);
indirizzoDomCond = (EditText)v.findViewById(R.id.indirizzoCondDom);
/*
*
*/
//CAMPI DATI ASSICURATO*******************
ass_uguale_cond=(CheckBox)v.findViewById(R.id.check_ass_uguale_cond);
ass_uguale_cond_no=(CheckBox)v.findViewById(R.id.check_ass_uguale_cond_no);
nome_ass = (EditText)v.findViewById(R.id.nome_ass);
cognome_ass = (EditText)v.findViewById(R.id.cognome_ass);
codiceFiscale_ass = (EditText)v.findViewById(R.id.codiceFiscale_ass);
recapitoFisso_ass = (EditText)v.findViewById(R.id.recapitoFisso_ass);
recapitoMobile_ass = (EditText)v.findViewById(R.id.recapitoMobile_ass);
personaGiuridica = (CheckBox)v.findViewById(R.id.persona_giuridica);
personaGiuridica_no = (CheckBox)v.findViewById(R.id.persona_giuridica_no);
//Residenza
cittaRes_ass = (EditText)v.findViewById(R.id.cittaRes_ass);
comuneRes_ass = (EditText)v.findViewById(R.id.comuneRes_ass);
provinciaRes_ass = (EditText)v.findViewById(R.id.provinciaRes_ass);
indirizzoRes_ass = (EditText)v.findViewById(R.id.indirizzoRes_ass);
resUgualeDom_ass=(CheckBox)v.findViewById(R.id.resUgualeDom_ass);
resUgualeDom_ass_no=(CheckBox)v.findViewById(R.id.resUgualeDom_ass_no);
//Domicilio
cittaDom_ass = (EditText)v.findViewById(R.id.cittaDom_ass);
comuneDom_ass = (EditText)v.findViewById(R.id.comuneDom_ass);
provinciaDom_ass = (EditText)v.findViewById(R.id.provinciaDom_ass);
indirizzoDom_ass = (EditText)v.findViewById(R.id.indirizzoDom_ass);
//Indirizzo PersonaGiuridica
cittaPG = (EditText)v.findViewById(R.id.cittaPG);
comunePG = (EditText)v.findViewById(R.id.comunePG);
provinciaPG = (EditText)v.findViewById(R.id.provinciaPG);
indirizzoPG = (EditText)v.findViewById(R.id.indirizzoPG);
gestisciPersonaGiuridica(false);
/*
*
*/
//******CAMPI DINAMICA
lanciaRegistrazione=(Button)v.findViewById(R.id.bt_layout_immagine_trackpaint_audio);
lanciaTrackPaint=(Button)v.findViewById(R.id.bt_layout_immagine_trackpaint_launch_destroy);
immagine=(ImageView)v.findViewById(R.id.iv_layout_imagine_bitmap);
return v;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
if(savedInstanceState!=null){
veicolo=(Veicolo)savedInstanceState.getSerializable("vei");
}
//RECUPERO IL VEICOLO
Intent intent=getActivity().getIntent();
if(veicolo==null)
veicolo=(Veicolo)intent.getExtras().get("veicolo");
tv_datiVeicolo.setText(String.format("%s (%s)", tv_datiVeicolo.getText(),veicolo.getNominativoVeicolo()));
//*******************
//CREAZIONE LISTENER
clickListener=new FakeExpListener(this);
textWatcher=new WatcherEditText(getActivity(),veicolo,this);
textToucher=new ToucherEditText(textWatcher);
textWatcher.settaToucher(textToucher);
//*********************
//popolo spinner
setSpinnerValues(Veicolo.Tipo.values(),tipoVeicolo);
tipoVeicolo.setSelection(veicolo.getTipo().getTipo());
//CREAZIONE LISTA PASSEGGERI
setPasseggeri=veicolo.getPersone();
Object[] arrayObject=setPasseggeri.toArray();
for(int i=0;i<arrayObject.length;i++){
Persona persona=(Persona)arrayObject[i];
Persona.Tipo tipo=persona.getTipo();
if(tipo==Persona.Tipo.PASSEGGERO){
miaLista.add(persona);
}
}
popolaCampi();
settaListener();
//****************SETTO IL CLICKLISTENER E CREO L'ADAPTER PER LA LISTA PASSEGGERI
AdapterTestimoni adapterTestimoni=new AdapterTestimoni(getActivity(), R.layout.soggetti, miaLista);
this.setListAdapter(adapterTestimoni);
aggiungiPasseggero.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
visualizzaPopup();
}
});
//********************************************************************************
if(riferimentoImmagine!=null){
if(!(riferimentoImmagine.getNome().equals("")||riferimentoImmagine.getNome()==null)){
immaginePresente=true;
immagine.setImageURI(Uri.parse(SafeTrack.getInstance().getWorkingDirectory(SafeTrack.IMAGE)+"/"+riferimentoImmagine.getNome()));
}
}
if(riferimentoAudio!=null){
audioPresente=true;
}
clickListener.onClick(tv_danniVisibili);
clickListener.onClick(tv_datiConducente);
clickListener.onClick(tv_datiAssicurazione);
clickListener.onClick(tv_datiAssicurato);
clickListener.onClick(tv_listaPasseggeri);
clickListener.onClick(tv_dinamica);
schedaCorrente=datiVeicolo;
}
//****POPOLO LE EDIT TEXT
////XXX populate nations
private void popolaCampi(){
//DATI VEICOLO
targa.setText(veicolo.getTarga());
telaio.setText(veicolo.getTelaio());
marca.setText(veicolo.getMarca());
modello.setText(veicolo.getModello());
targaEstera.setChecked(veicolo.getTargaEstera());
//****
//DANNI VISIBILI
et_danniVisibili.setText(veicolo.getDanniVisibili());
//****
//DATI ASSICURAZIONE
numeroPoliza.setText(veicolo.getNumPolizza());
compagnia.setText(veicolo.getCompagniaAss());
agenzia.setText(veicolo.getAgenziaAss());
if(veicolo.getIndirizzoAss() != null){
citta.setText(veicolo.getIndirizzoAss().getCitta());
comune.setText(veicolo.getIndirizzoAss().getComune());
provincia.setText(veicolo.getIndirizzoAss().getProvincia());
indirizzoAss.setText(veicolo.getIndirizzoAss().getIndirizzo());
}
validitaDa = (EditText)v.findViewById(R.id.validaDa);
if(veicolo.getValidaDa() != null)
validitaDa.setText(s.format(veicolo.getValidaDa()));
validitaA = (EditText)v.findViewById(R.id.validaA);
if(veicolo.getValidaA() != null)
validitaA.setText(s.format(veicolo.getValidaA()));
//*****
//DATI CONDUCENTE
caricaConducente();
if(!nuovoConducente){
if(conducente != null){
nomeCond.setText(conducente.getNome());
cognomeCond.setText(conducente.getCognome());
codiceFiscaleCond.setText(conducente.getCodiceFiscale());
if(conducente.getDataNascita() != null)
dataNascitaCond.setText(s.format(conducente.getDataNascita()));
nazionalitaCond.setText(conducente.getNazionalita());
if(conducente.getSesso() != null && !conducente.getSesso().trim().equals("")){
if(conducente.getSesso().equalsIgnoreCase("M")){
sessoMCond.setChecked(true);
sessoFCond.setChecked(false);
}else{
sessoMCond.setChecked(false);
sessoFCond.setChecked(true);
}
}
if(patente != null) {
numeroPatenteCond.setText(patente.getNumero());
if(patente.getValidita() != null)
validitaCond.setText(s.format(patente.getValidita()));
rilasciatoCond.setText(patente.getRilasciato());
limitazioniCond.setText(patente.getLimitazioni());
classePatenteCond.setText(patente.getClassePatente());
}
recapitoFissoCond.setText(conducente.getRecapitoFisso());
recapitoMobileCond.setText(conducente.getRecapitoMobile());
note.setText(veicolo.getNote());
if (residenza != null){
System.out.println("DatiConducenteAdapter --> residenza = "+residenza.getCitta());
cittaResCond.setText(residenza.getCitta());
comuneResCond.setText(residenza.getComune());
provinciaResCond.setText(residenza.getProvincia());
indirizzoResCond.setText(residenza.getIndirizzo());
nazioneResCond.setText(residenza.getPaese());
}
if (domicilio != null){
System.out.println("DatiConducenteAdapter --> domicilio = "+domicilio.getCitta());
cittaDomCond.setText(domicilio.getCitta());
comuneDomCond.setText(domicilio.getComune());
provinciaDomCond.setText(domicilio.getProvincia());
indirizzoDomCond.setText(domicilio.getIndirizzo());
nazioneDomCond.setText(domicilio.getPaese());
}
}
domicilio.setTipo(Indirizzo.Tipo.RESIDENZA);
if(residenza.toString().equals(domicilio.toString()))
resUgualeDomCond.setChecked(true);
else{
resUgualeDomCond_no.setChecked(true);
layout_innestato_domicilio_conducente.setVisibility(View.VISIBLE);
}
domicilio.setTipo(Indirizzo.Tipo.DOMICILIO);
}else{
resUgualeDomCond.setChecked(true);
}
conducenteCaricato=true;
//DATI ASSICURATO
caricaAssicurato();
if(!nuovoAssicurato){
if(assicurato != null){
nome_ass.setText(assicurato.getNome());
cognome_ass.setText(assicurato.getCognome());
codiceFiscale_ass.setText(assicurato.getCodiceFiscale());
recapitoFisso_ass.setText(assicurato.getRecapitoFisso());
recapitoMobile_ass.setText(assicurato.getRecapitoMobile());
if (residenzaAssicurato != null){
cittaRes_ass.setText(residenzaAssicurato.getCitta());
comuneRes_ass.setText(residenzaAssicurato.getComune());
provinciaRes_ass.setText(residenzaAssicurato.getProvincia());
indirizzoRes_ass.setText(residenzaAssicurato.getIndirizzo());
nazioneRes_ass.setText(residenzaAssicurato.getPaese());
}
if (domicilioAssicurato != null){
cittaDom_ass.setText(domicilioAssicurato.getCitta());
comuneDom_ass.setText(domicilioAssicurato.getComune());
provinciaDom_ass.setText(domicilioAssicurato.getProvincia());
indirizzoDom_ass.setText(domicilioAssicurato.getIndirizzo());
nazioneDom_ass.setText(domicilioAssicurato.getPaese());
}
if (indirizzo != null){
layout_innestato_residenza_ass.setVisibility(View.GONE);
layout_innestato_domicilio_ass.setVisibility(View.GONE);
layout_innestato_sede_legale.setVisibility(View.VISIBLE);
personaGiuridica.setChecked(true);
cittaPG.setEnabled(true);
comunePG.setEnabled(true);
provinciaPG.setEnabled(true);
indirizzoPG.setEnabled(true);
nazionePG.setEnabled(true);
ass_uguale_cond_no.setChecked(true);
if(indirizzo.getCitta()!=null) cittaPG.setText(indirizzo.getCitta());
if(indirizzo.getComune()!=null) comunePG.setText(indirizzo.getComune());
if(indirizzo.getProvincia()!=null) provinciaPG.setText(indirizzo.getProvincia());
if(indirizzo.getIndirizzo()!=null) indirizzoPG.setText(indirizzo.getIndirizzo());
if(indirizzo.getPaese()!= null) nazionePG.setText(indirizzo.getPaese());
// if(!indirizzo.getCitta().equals("")||!indirizzo.getComune().equals("")
// ||!indirizzo.getProvincia().equals("")||!indirizzo.getIndirizzo().equals("")){
//
// }
}
else{
personaGiuridica_no.setChecked(true);
domicilioAssicurato.setTipo(Indirizzo.Tipo.RESIDENZA);
if(residenzaAssicurato.toString().equals(domicilioAssicurato.toString())){
resUgualeDom_ass.setChecked(true);
}
else{
layout_innestato_domicilio_ass.setVisibility(View.VISIBLE);
resUgualeDom_ass_no.setChecked(true);
}
domicilioAssicurato.setTipo(Indirizzo.Tipo.DOMICILIO);
}
}
}else{
resUgualeDom_ass.setChecked(true);
}
assicuratoCaricato=true;
//*****
//CAMPI DINAMICA
lanciaTrackPaint.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
lanciaTrackPaint();
}
});
lanciaRegistrazione.setOnClickListener(this);
}
//**************************
//SETTAGGIO DEL TOUCHLISTENER E DEL TEXT WATCHER*******************
//XXX done check duplicates
private void settaListener(){
//SETTO IL CLICK LISTENER SUI TITOLI E I BOTTONI
tv_datiVeicolo.setOnClickListener(clickListener);
tv_danniVisibili.setOnClickListener(clickListener);
tv_datiAssicurazione.setOnClickListener(clickListener);
tv_datiConducente.setOnClickListener(clickListener);
tv_datiAssicurato.setOnClickListener(clickListener);
tv_listaPasseggeri.setOnClickListener(clickListener);
tv_dinamica.setOnClickListener(clickListener);
bt_datiVeicolo.setOnClickListener(clickListener);
bt_danniVisibili.setOnClickListener(clickListener);
bt_datiAssicurazione.setOnClickListener(clickListener);
bt_datiConducente.setOnClickListener(clickListener);
bt_datiAssicurato.setOnClickListener(clickListener);
bt_listaPasseggeri.setOnClickListener(clickListener);
bt_dinamica.setOnClickListener(clickListener);
//***********************
//DATI VEICOLO
//***************SETTO I TOUCHER****************************************
targa.setOnTouchListener(textToucher);
telaio.setOnTouchListener(textToucher);
marca.setOnTouchListener(textToucher);
modello.setOnTouchListener(textToucher);
targaEstera.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(veicolo.getTargaEstera()!=isChecked){
veicolo.setTargaEstera(isChecked);
}
}
});
//***********************************************************************
//***********************************************************************
//***************SETTO I WATCHER****************************************
targa.addTextChangedListener(textWatcher);
telaio.addTextChangedListener(textWatcher);
marca.addTextChangedListener(textWatcher);
modello.addTextChangedListener(textWatcher);
//************************************************************************
//************************************************************************
//DANNI VISIBILI
et_danniVisibili.setOnTouchListener(textToucher);
et_danniVisibili.addTextChangedListener(textWatcher);
//*************************
//**************************
//DATI ASSICURAZIONE
//********SETTO I TOUCHER**************************************
numeroPoliza.setOnTouchListener(textToucher);
compagnia.setOnTouchListener(textToucher);
agenzia.setOnTouchListener(textToucher);
citta.setOnTouchListener(textToucher);
comune.setOnTouchListener(textToucher);
provincia.setOnTouchListener(textToucher);
indirizzoAss.setOnTouchListener(textToucher);
validitaDa.setOnTouchListener(textToucher);
validitaA.setOnTouchListener(textToucher);
//*************************************************************
//************************************************************
//*********SETTO I WATCHER*************************************
numeroPoliza.addTextChangedListener(textWatcher);
compagnia.addTextChangedListener(textWatcher);
agenzia.addTextChangedListener(textWatcher);
citta.addTextChangedListener(textWatcher);
comune.addTextChangedListener(textWatcher);
provincia.addTextChangedListener(textWatcher);
indirizzoAss.addTextChangedListener(textWatcher);
validitaDa.addTextChangedListener(textWatcher);
validitaA.addTextChangedListener(textWatcher);
//*******************************************************************
//*******************************************************************
//DATI CONDUCENTE
//*********SETTO IL LISTENER DELLA CHECKBOX*****************************************************
resUgualeDomCond.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
textWatcher.salvaTesto(false);
textToucher.resetId();
if(isChecked){
if(conducenteCaricato){
copiaResidenzaSuDomicilio(1);
gestisciDomicilioConducente(false);
}
if(resUgualeDomCond_no.isChecked())
resUgualeDomCond_no.setChecked(false);
if(ass_uguale_cond.isChecked()&&!resUgualeDom_ass.isChecked())
resUgualeDom_ass.setChecked(true);
layout_innestato_domicilio_conducente.setVisibility(View.GONE);
}else{
if(!resUgualeDomCond_no.isChecked())
resUgualeDomCond_no.setChecked(true);
}
chiudiTastiera();
}
});
resUgualeDomCond_no.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
textWatcher.salvaTesto(false);
textToucher.resetId();
if(isChecked){
if(conducenteCaricato){
gestisciDomicilioConducente(true);
resetDomicilioConducente();
}
if(resUgualeDomCond.isChecked())
resUgualeDomCond.setChecked(false);
if(ass_uguale_cond.isChecked()&&!resUgualeDom_ass_no.isChecked())
resUgualeDom_ass_no.setChecked(true);
layout_innestato_domicilio_conducente.setVisibility(View.VISIBLE);
}else{
if(!resUgualeDomCond.isChecked())
resUgualeDomCond.setChecked(true);
}
chiudiTastiera();
}
});
sessoMCond.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if ( isChecked ){
sesso = "M";
sessoFCond.setChecked(false);
salvaSessoConducente(sesso);
//pensare a come gestirlo
}
}
});
sessoFCond.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if ( isChecked ){
sesso = "F";
sessoMCond.setChecked(false);
salvaSessoConducente(sesso);
//pensare a come gestirlo
}
}
});
//**********************************************************************
//**********************************************************************
//*********SETTO I TOUCHER**********************************************
nomeCond.setOnTouchListener(textToucher);
cognomeCond.setOnTouchListener(textToucher);
codiceFiscaleCond.setOnTouchListener(textToucher);
dataNascitaCond.setOnTouchListener(textToucher);
nazionalitaCond.setOnTouchListener(textToucher);
numeroPatenteCond.setOnTouchListener(textToucher);
validitaCond.setOnTouchListener(textToucher);
rilasciatoCond.setOnTouchListener(textToucher);
limitazioniCond.setOnTouchListener(textToucher);
classePatenteCond.setOnTouchListener(textToucher);
recapitoFissoCond.setOnTouchListener(textToucher);
recapitoMobileCond.setOnTouchListener(textToucher);
cittaResCond.setOnTouchListener(textToucher);
comuneResCond.setOnTouchListener(textToucher);
provinciaResCond.setOnTouchListener(textToucher);
indirizzoResCond.setOnTouchListener(textToucher);
/// XXX nazioneRes
nazioneResCond.setOnTouchListener(textToucher);
nazioneDomCond.setOnTouchListener(textToucher);
nazioneRes_ass.setOnTouchListener(textToucher);
nazioneDom_ass.setOnTouchListener(textToucher);
cittaDomCond.setOnTouchListener(textToucher);
comuneDomCond.setOnTouchListener(textToucher);
provinciaDomCond.setOnTouchListener(textToucher);
indirizzoDomCond.setOnTouchListener(textToucher);
note.setOnTouchListener(textToucher);
//**********************************************************************
//**********************************************************************
//*********SETTO I WATCHER**********************************************
nomeCond.addTextChangedListener(textWatcher);
cognomeCond.addTextChangedListener(textWatcher);
codiceFiscaleCond.addTextChangedListener(textWatcher);
dataNascitaCond.addTextChangedListener(textWatcher);
nazionalitaCond.addTextChangedListener(textWatcher);
numeroPatenteCond.addTextChangedListener(textWatcher);
validitaCond.addTextChangedListener(textWatcher);
rilasciatoCond.addTextChangedListener(textWatcher);
limitazioniCond.addTextChangedListener(textWatcher);
classePatenteCond.addTextChangedListener(textWatcher);
recapitoFissoCond.addTextChangedListener(textWatcher);
recapitoMobileCond.addTextChangedListener(textWatcher);
cittaResCond.addTextChangedListener(textWatcher);
comuneResCond.addTextChangedListener(textWatcher);
provinciaResCond.addTextChangedListener(textWatcher);
indirizzoResCond.addTextChangedListener(textWatcher);
//XXX nazioneRes
nazioneResCond.addTextChangedListener(textWatcher);
nazioneDomCond.addTextChangedListener(textWatcher);
nazioneRes_ass.addTextChangedListener(textWatcher);
nazioneDom_ass.addTextChangedListener(textWatcher);
cittaDomCond.addTextChangedListener(textWatcher);
comuneDomCond.addTextChangedListener(textWatcher);
provinciaDomCond.addTextChangedListener(textWatcher);
indirizzoDomCond.addTextChangedListener(textWatcher);
note.addTextChangedListener(textWatcher);
//**********************************************************************
//**********************************************************************
//DATI ASSICURATO
//*****************LISTENER CHECKBOX
ass_uguale_cond.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
textWatcher.salvaTesto(false);
if(isChecked){
if(personaGiuridica.isChecked())
personaGiuridica_no.setChecked(true);
copiaConducente();
layout_innestato_check_persona_giuridica.setVisibility(View.GONE);
gestisciAssicurato(false);
if(ass_uguale_cond_no.isChecked())
ass_uguale_cond_no.setChecked(false);
}else{
if(!ass_uguale_cond_no.isChecked())
ass_uguale_cond_no.setChecked(true);
}
chiudiTastiera();
}
});
ass_uguale_cond_no.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
if(!preservaDati){
resetAssicurato();
layout_innestato_check_persona_giuridica.setVisibility(View.VISIBLE);
if(!resUgualeDom_ass.isChecked())
resUgualeDom_ass.setChecked(true);
if(ass_uguale_cond.isChecked())
ass_uguale_cond.setChecked(false);
gestisciAssicurato(true);
}
}else{
if(!ass_uguale_cond.isChecked())
ass_uguale_cond.setChecked(true);
}
chiudiTastiera();
}
});
resUgualeDom_ass.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
textWatcher.salvaTesto(false);
if(isChecked){
if(assicuratoCaricato){
copiaResidenzaSuDomicilio(2);
gestisciDomicilioAssicurato(false);
}
if(resUgualeDom_ass_no.isChecked())
resUgualeDom_ass_no.setChecked(false);
layout_innestato_domicilio_ass.setVisibility(View.GONE);
}else{
if(!resUgualeDom_ass_no.isChecked())
resUgualeDom_ass_no.setChecked(true);
}
chiudiTastiera();
}
});
resUgualeDom_ass_no.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
if(assicuratoCaricato){
resetDomicilioAssicurato();
if(!ass_uguale_cond.isChecked())
gestisciDomicilioAssicurato(true);
}
if(resUgualeDom_ass.isChecked())
resUgualeDom_ass.setChecked(false);
layout_innestato_domicilio_ass.setVisibility(View.VISIBLE);
}else{
if(!resUgualeDom_ass.isChecked())
resUgualeDom_ass.setChecked(true);
}
chiudiTastiera();
}
});
personaGiuridica.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
textWatcher.salvaTesto(false);
if(isChecked){
if(indirizzo==null){
creaIndirizzoPG();
}
layout_innestato_sede_legale.setVisibility(View.VISIBLE);
layout_innestato_residenza_ass.setVisibility(View.GONE);
// if(layout_innestato_domicilio_ass.getVisibility()==View.VISIBLE)
layout_innestato_domicilio_ass.setVisibility(View.GONE);
if(personaGiuridica_no.isChecked())
personaGiuridica_no.setChecked(false);
if(!ass_uguale_cond_no.isChecked())
ass_uguale_cond_no.setChecked(true);
gestisciPersonaGiuridica(true);
resetAssicurato();
}else{
if(!personaGiuridica_no.isChecked())
personaGiuridica_no.setChecked(true);
}
chiudiTastiera();
}
});
personaGiuridica_no.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
if(residenzaAssicurato==null){
creaIndirizziAss();
}
layout_innestato_sede_legale.setVisibility(View.GONE);
layout_innestato_residenza_ass.setVisibility(View.VISIBLE);
//// if(layout_innestato_domicilio_ass.getVisibility()==View.VISIBLE)
// layout_innestato_domicilio_ass.setVisibility(View.GONE);
if(!resUgualeDom_ass.isChecked())
resUgualeDom_ass.setChecked(true);
if(personaGiuridica.isChecked())
personaGiuridica.setChecked(false);
gestisciPersonaGiuridica(false);
resetPersonaGiuridica();
}else{
if(!personaGiuridica.isChecked())
personaGiuridica.setChecked(true);
}
chiudiTastiera();
}
});
//*****************************************
//SETTO I TOUCHER*******************************************
nome_ass.setOnTouchListener(textToucher);
cognome_ass.setOnTouchListener(textToucher);
codiceFiscale_ass.setOnTouchListener(textToucher);
recapitoFisso_ass.setOnTouchListener(textToucher);
recapitoMobile_ass.setOnTouchListener(textToucher);
cittaRes_ass.setOnTouchListener(textToucher);
comuneRes_ass.setOnTouchListener(textToucher);
provinciaRes_ass.setOnTouchListener(textToucher);
indirizzoRes_ass.setOnTouchListener(textToucher);
nazioneRes_ass.setOnTouchListener(textToucher);
cittaDom_ass.setOnTouchListener(textToucher);
comuneDom_ass.setOnTouchListener(textToucher);
provinciaDom_ass.setOnTouchListener(textToucher);
indirizzoDom_ass.setOnTouchListener(textToucher);
nazioneDom_ass.setOnTouchListener(textToucher);
cittaPG.setOnTouchListener(textToucher);
comunePG.setOnTouchListener(textToucher);
provinciaPG.setOnTouchListener(textToucher);
indirizzoPG.setOnTouchListener(textToucher);
nazionePG.setOnTouchListener(textToucher);
//***************************************************************
//***************************************************************
//SETTO I WATCHER********************************************
nome_ass.addTextChangedListener(textWatcher);
cognome_ass.addTextChangedListener(textWatcher);
codiceFiscale_ass.addTextChangedListener(textWatcher);
recapitoFisso_ass.addTextChangedListener(textWatcher);
recapitoMobile_ass.addTextChangedListener(textWatcher);
cittaRes_ass.addTextChangedListener(textWatcher);
comuneRes_ass.addTextChangedListener(textWatcher);
provinciaRes_ass.addTextChangedListener(textWatcher);
indirizzoRes_ass.addTextChangedListener(textWatcher);
nazioneRes_ass.addTextChangedListener(textWatcher);
cittaDom_ass.addTextChangedListener(textWatcher);
comuneDom_ass.addTextChangedListener(textWatcher);
provinciaDom_ass.addTextChangedListener(textWatcher);
indirizzoDom_ass.addTextChangedListener(textWatcher);
nazioneDom_ass.addTextChangedListener(textWatcher);
cittaPG.addTextChangedListener(textWatcher);
comunePG.addTextChangedListener(textWatcher);
provinciaPG.addTextChangedListener(textWatcher);
indirizzoPG.addTextChangedListener(textWatcher);
nazionePG.addTextChangedListener(textWatcher);
//********************************************************************
//*********************************************************************
//CONTROLLI AGGIUNTIVI
if(!(layout_innestato_sede_legale.getVisibility()==View.GONE&&!nuovoAssicurato)){
ass_uguale_cond_no.setChecked(true);
}else{
if(controllaAssUgualeCond()){
ass_uguale_cond.setChecked(true);
}else{
preservaDati=true;
ass_uguale_cond_no.setChecked(true);
preservaDati=false;
}
}
}
//******************************************************************
//*****************************************************************
//**************************************************************************
//METODI DI DINAMICA
private void lanciaTrackPaint(){
textWatcher.salvaTesto(false);
if(immaginePresente==false){
startTrackPaint();
//lancia trackpaint crea riferimento e mette la foto nell'image view
}else{
//cancellaFoto();
startTrackPaint();
//lancia trackpaint cancella il riferimento ne crea uno nuovo e mette la foto
}
}
private void lanciaRegistrazione(){
if(audioPresente){
FragmentManager fm=this.getFragmentManager();
FragmentTransaction ft=fm.beginTransaction();
Fragment audio=fm.findFragmentByTag(TAG_AUDIO_PLAYER);
if(audio!=null) ft.remove(audio);
ft.addToBackStack(null);
File directory=SafeTrack.getInstance().getWorkingDirectory();
File file=new File(directory,riferimentoAudio.getPath());
FragmentAudioPlayer fragAudio=FragmentAudioPlayer.nuovaIstanza(file.getAbsolutePath());
fragAudio.show(ft, TAG_AUDIO_PLAYER);
}
}
public void restituisciVeicolo(boolean reOpen){
listener.setGoodResult(veicolo,reOpen);
}
private void startTrackPaint(){
listener.launcherTrackPaintPressed();
}
public void salvaImmagineCopiata(File file){
immagine.setImageURI(null);
Uri localUri = Uri.fromFile(file);
immagine.setImageURI(localUri);
if(riferimentoImmagine==null){
riferimentoImmagine=new Riferimento();
conducente.addRiferimento(riferimentoImmagine);
}
riferimentoImmagine.setTipo(Riferimento.Tipo.DISEGNO);
riferimentoImmagine.setPath(SafeTrack.IMAGE+"/"+file.getName());
riferimentoImmagine.setNome(file.getName());
immaginePresente=true;
salvataggioFinale(true);
}
public void salvaAudioCopiato(File file){
if(riferimentoAudio==null){
riferimentoAudio=new Riferimento();
conducente.addRiferimento(riferimentoAudio);
}
riferimentoAudio.setTipo(Riferimento.Tipo.AUDIO);
riferimentoAudio.setPath(SafeTrack.AUDIO+"/"+file.getName());
riferimentoAudio.setNome(file.getName());
audioPresente=true;
}
//*********************
//METODI DELLA LISTA PASSEGGERI************************************************
//*****on click di aggiungi passeggero
private void visualizzaPopup() {
LayoutInflater inflater = (LayoutInflater)
getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
contentView = inflater.inflate(R.layout.popup_aggiungi_testimone, null);
cognome = (EditText) contentView.findViewById(R.id.et_popup_aggiungi_testimone_cognome);
nome = (EditText) contentView.findViewById(R.id.et_popup_aggiungi_testimone_nome);
cF = (EditText) contentView.findViewById(R.id.et_popup_aggiungi_testimone_codice_fiscale);
ok=(Button)contentView.findViewById(R.id.bt_popup_aggiungi_testimone_ok);
chiudi=(Button)contentView.findViewById(R.id.bt_popup_aggiungi_testimone_chiudi);
ok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
controlloDatiTestimone();
}
});
chiudi.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pwAggiungiPass.dismiss();
}
});
pwAggiungiPass = new PopupWindow(getActivity());
pwAggiungiPass.setHeight(WindowManager.LayoutParams.WRAP_CONTENT);
pwAggiungiPass.setWidth(600);
pwAggiungiPass.setInputMethodMode(PopupWindow.INPUT_METHOD_FROM_FOCUSABLE);
pwAggiungiPass.setFocusable(true);
pwAggiungiPass.setContentView(contentView);
pwAggiungiPass.showAtLocation(contentView, Gravity.CENTER, 0, 0);
pwAggiungiPass.update();
}
//******ON CLICK SU OK DEL POPUP
private void controlloDatiTestimone() {
Log.d(TAG,"Salvo testimone ");
String strCognome = cognome.getText().toString();
String strNome = nome.getText().toString();
if(strCognome != null && !strCognome.trim().equals("") && strNome != null && !strNome.trim().equals("")){
Log.d(TAG,"cognome = "+ strCognome);
Log.d(TAG,"nome = "+ strNome);
Log.d(TAG,"cF = "+ cF.getText());
Persona persona = new Persona();
persona.setTipo(Persona.Tipo.PASSEGGERO);
persona.setCognome(strCognome);
persona.setNome(strNome);
persona.setCodiceFiscale(cF.getText().toString());
salvaTestimone(persona);
pwAggiungiPass.dismiss();
}else{
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Alert Dialog");
builder.setMessage("Inserire Cognome e Nome");
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
return;
}});
builder.show();
}
}
//****AGGIUNTA DELLA PERSONA ALLA LISTA
private void salvaTestimone(Persona persona) {
Log.d(TAG,"aggiungi Persona");
veicolo.addPersona(persona);
//setPasseggeri.add(persona);
AdapterTestimoni adapter=(AdapterTestimoni)this.getListAdapter();
adapter.add(persona);
adapter.notifyDataSetChanged();
}
//******************************METODI DELL'INTERFACCIA GESTORE CLICK TESTIMONE
@Override
public void eliminaTestimone(int position) {
veicolo.removePersona((Persona)this.getListAdapter().getItem(position));
AdapterTestimoni adapter=(AdapterTestimoni)this.getListAdapter();
adapter.remove(miaLista.get(position));
adapter.notifyDataSetChanged();
}
@Override
public void dettagliTestimone(int position) {
Log.d(TAG,"apriDatiPasseggero");
personaSelezionata = (Persona)this.getListAdapter().getItem(position);
Intent intent = new Intent(v.getContext(), ActivityPersona.class);
intent.putExtra("persona", personaSelezionata);
intent.putExtra("activity", "passeggeri");
this.startActivityForResult(intent, 0);
AdapterTestimoni adapter=(AdapterTestimoni)this.getListAdapter();
adapter.removeItem(position);
adapter.notifyDataSetChanged();
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Persona personaMod=personaSelezionata;
AdapterTestimoni adapter=(AdapterTestimoni)this.getListAdapter();
if(resultCode==Activity.RESULT_OK&&requestCode==0){
if(data != null){
personaMod = (Persona)data.getExtras().get("returnPersona");
veicolo.removePersona(personaSelezionata);
veicolo.addPersona(personaMod);
}
adapter.add(personaMod);
adapter.notifyDataSetChanged();
}
if(resultCode==Activity.RESULT_OK&&requestCode==AbstractActivityPaint.TAG_REQUEST_PAINT){
super.onActivityResult(requestCode, resultCode, data);
}
}
//******************************FINE METODI GESTORE CLICK TESTIMONE
//*********************FINE METODI LISTA PASSEGGERI**********************
//METODI DI APERTURA E CHIUSURA DELLE VIEW ********************************************
//metodo che nasconde la tastiera virtuale
private void chiudiTastiera(){
InputMethodManager inm=(InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
inm.hideSoftInputFromWindow(datiVeicolo.getWindowToken(), 0);
}
public void switcherDatiVeicolo(){
textWatcher.salvaTesto(false);
if(datiVeicolo.getVisibility()==View.VISIBLE){
datiVeicolo.setVisibility(View.GONE);
bt_datiVeicolo.setBackgroundResource(android.R.drawable.arrow_down_float);
}
else{
datiVeicolo.setVisibility(View.VISIBLE);
bt_datiVeicolo.setBackgroundResource(android.R.drawable.arrow_up_float);
if(schedaCorrente!=datiVeicolo)
schedaCorrente.setVisibility(View.GONE);
schedaCorrente=datiVeicolo;
}
textToucher.resetId();
chiudiTastiera();
}
public void switcherDanniVisibili(){
textWatcher.salvaTesto(false);
if(danniVisibili.getVisibility()==View.VISIBLE){
danniVisibili.setVisibility(View.GONE);
bt_danniVisibili.setBackgroundResource(android.R.drawable.arrow_down_float);
}
else{
danniVisibili.setVisibility(View.VISIBLE);
bt_danniVisibili.setBackgroundResource(android.R.drawable.arrow_up_float);
if(schedaCorrente!=danniVisibili)
schedaCorrente.setVisibility(View.GONE);
schedaCorrente=danniVisibili;
}
textToucher.resetId();
chiudiTastiera();
}
public void switcherDatiAssicurazione(){
textWatcher.salvaTesto(false);
if(datiAssicurazione.getVisibility()==View.VISIBLE){
datiAssicurazione.setVisibility(View.GONE);
bt_datiAssicurazione.setBackgroundResource(android.R.drawable.arrow_down_float);
}
else{
datiAssicurazione.setVisibility(View.VISIBLE);
bt_datiAssicurazione.setBackgroundResource(android.R.drawable.arrow_up_float);
if(schedaCorrente!=datiAssicurazione)
schedaCorrente.setVisibility(View.GONE);
schedaCorrente=datiAssicurazione;
}
textToucher.resetId();
chiudiTastiera();
}
public void switcherDatiConducente(){
textWatcher.salvaTesto(false);
if(datiConducente.getVisibility()==View.VISIBLE){
datiConducente.setVisibility(View.GONE);
bt_datiConducente.setBackgroundResource(android.R.drawable.arrow_down_float);
}
else{
datiConducente.setVisibility(View.VISIBLE);
bt_datiConducente.setBackgroundResource(android.R.drawable.arrow_up_float);
if(schedaCorrente!=datiConducente)
schedaCorrente.setVisibility(View.GONE);
schedaCorrente=datiConducente;
}
textToucher.resetId();
chiudiTastiera();
}
public void switcherDatiAssicurato(){
textWatcher.salvaTesto(false);
if(datiAssicurato.getVisibility()==View.VISIBLE){
bt_datiAssicurato.setBackgroundResource(android.R.drawable.arrow_down_float);
datiAssicurato.setVisibility(View.GONE);
}
else{
bt_datiAssicurato.setBackgroundResource(android.R.drawable.arrow_up_float);
datiAssicurato.setVisibility(View.VISIBLE);
if(schedaCorrente!=datiAssicurato)
schedaCorrente.setVisibility(View.GONE);
schedaCorrente=datiAssicurato;
}
textToucher.resetId();
chiudiTastiera();
}
public void switcherListaPasseggeri(){
textWatcher.salvaTesto(false);
if(listaPasseggeri.getVisibility()==View.VISIBLE){
listaPasseggeri.setVisibility(View.GONE);
bt_listaPasseggeri.setBackgroundResource(android.R.drawable.arrow_down_float);
}
else{
listaPasseggeri.setVisibility(View.VISIBLE);
bt_listaPasseggeri.setBackgroundResource(android.R.drawable.arrow_up_float);
if(schedaCorrente!=listaPasseggeri)
schedaCorrente.setVisibility(View.GONE);
schedaCorrente=listaPasseggeri;
}
textToucher.resetId();
chiudiTastiera();
}
public void switcherDinamica(){
textWatcher.salvaTesto(false);
if(dinamica.getVisibility()==View.VISIBLE){
dinamica.setVisibility(View.GONE);
bt_dinamica.setBackgroundResource(android.R.drawable.arrow_down_float);
}
else{
dinamica.setVisibility(View.VISIBLE);
bt_dinamica.setBackgroundResource(android.R.drawable.arrow_up_float);
if(schedaCorrente!=dinamica)
schedaCorrente.setVisibility(View.GONE);
schedaCorrente=dinamica;
if(riferimentoImmagine!=null){
if(!((riferimentoImmagine.getNome().equals(""))||!(riferimentoImmagine.getNome()==null))){
immagine.setImageURI(null);
immaginePresente=true;
immagine.setImageURI(Uri.parse(SafeTrack.getInstance().getWorkingDirectory()+"/"+riferimentoImmagine.getPath()));
}
}
}
textToucher.resetId();
chiudiTastiera();
}
//******************FINE METODI APERTURA E CHIUSURA VIEW*************************************
//*************METODI DI UTILITA***************************************************************
// done
private void resetDomicilioConducente(){
domicilio.setCitta("");
cittaDomCond.setText("");
domicilio.setComune("");
comuneDomCond.setText("");
domicilio.setIndirizzo("");
indirizzoDomCond.setText("");
domicilio.setProvincia("");
provinciaDomCond.setText("");
domicilio.setPaese("");
nazioneDomCond.setText("");
}
// done
private void resetDomicilioAssicurato(){
domicilioAssicurato.setCitta("");
cittaDom_ass.setText("");
domicilioAssicurato.setComune("");
comuneDom_ass.setText("");
domicilioAssicurato.setProvincia("");
provinciaDom_ass.setText("");
domicilioAssicurato.setIndirizzo("");
indirizzoDom_ass.setText("");
domicilioAssicurato.setPaese("");
nazioneDom_ass.setText("");
}
// done
private void resetAssicurato(){
resetDomicilioAssicurato();
residenzaAssicurato.setCitta("");
cittaRes_ass.setText("");
residenzaAssicurato.setComune("");
comuneRes_ass.setText("");
residenzaAssicurato.setProvincia("");
provinciaRes_ass.setText("");
residenzaAssicurato.setIndirizzo("");
indirizzoRes_ass.setText("");
nazioneRes_ass.setText("");
residenzaAssicurato.setPaese("");
cognome_ass.setText("");
assicurato.setCognome(null);
recapitoFisso_ass.setText("");
assicurato.setRecapitoFisso(null);
nome_ass.setText("");
assicurato.setNome(null);
recapitoMobile_ass.setText("");
assicurato.setRecapitoMobile(null);
codiceFiscale_ass.setText("");
assicurato.setCodiceFiscale(null);
}
/// done
private void copiaConducente(){
assicurato.setCognome(conducente.getCognome());
assicurato.setNome(conducente.getNome());
assicurato.setCodiceFiscale(conducente.getCodiceFiscale());
assicurato.setRecapitoFisso(conducente.getRecapitoFisso());
assicurato.setRecapitoMobile(conducente.getRecapitoMobile());
residenzaAssicurato.setCitta(residenza.getCitta());
residenzaAssicurato.setComune(residenza.getComune());
residenzaAssicurato.setProvincia(residenza.getProvincia());
residenzaAssicurato.setIndirizzo(residenza.getIndirizzo());
residenzaAssicurato.setPaese(residenza.getPaese());
cognome_ass.setText(conducente.getCognome());
nome_ass.setText(conducente.getNome());
codiceFiscale_ass.setText(conducente.getCodiceFiscale());
recapitoFisso_ass.setText(conducente.getRecapitoFisso());
recapitoMobile_ass.setText(conducente.getRecapitoMobile());
cittaRes_ass.setText(residenza.getCitta());
comuneRes_ass.setText(residenza.getComune());
provinciaRes_ass.setText(residenza.getProvincia());
indirizzoRes_ass.setText(residenza.getIndirizzo());
nazioneRes_ass.setText("");
if(resUgualeDomCond.isChecked()){
if(!resUgualeDom_ass.isChecked()){
resUgualeDom_ass.setChecked(true);
}else{
copiaResidenzaSuDomicilio(2);
}
}else{
if(!resUgualeDom_ass_no.isChecked())
resUgualeDom_ass_no.setChecked(true);
cittaDom_ass.setText(domicilio.getCitta());
comuneDom_ass.setText(domicilio.getComune());
provinciaDom_ass.setText(domicilio.getProvincia());
indirizzoDom_ass.setText(domicilio.getIndirizzo());
nazioneDom_ass.setText(domicilio.getPaese());
}
domicilioAssicurato.setCitta(domicilio.getCitta());
domicilioAssicurato.setComune(domicilio.getComune());
domicilioAssicurato.setProvincia(domicilio.getProvincia());
domicilioAssicurato.setIndirizzo(domicilio.getIndirizzo());
domicilioAssicurato.setPaese(domicilio.getPaese());
}
private boolean controllaAssUgualeCond(){
boolean control=false;
if(residenzaAssicurato!=null&&domicilioAssicurato!=null){
if(residenza.toString().equals(residenzaAssicurato.toString())&&domicilio.toString().equals(domicilioAssicurato.toString())){
if(equalString(conducente.getCognome(), assicurato.getCognome())&&
equalString(conducente.getNome(), assicurato.getNome())&&
equalString(conducente.getCodiceFiscale(), assicurato.getCodiceFiscale())&&
equalString(conducente.getRecapitoFisso(), assicurato.getRecapitoFisso())&&
equalString(conducente.getRecapitoMobile(), assicurato.getRecapitoMobile())){
control=true;
}
}
}
return control;
}
// done
private void resetPersonaGiuridica(){
cittaPG.setText("");
comunePG.setText("");
provinciaPG.setText("");
indirizzoPG.setText("");
nazionePG.setText("");
indirizzo.setCitta("");
indirizzo.setComune("");
indirizzo.setProvincia("");
indirizzo.setIndirizzo("");
indirizzo.setPaese("");
}
// done
private void gestisciDomicilioConducente(boolean opzione){
cittaDomCond.setEnabled(opzione);
comuneDomCond.setEnabled(opzione);
provinciaDomCond.setEnabled(opzione);
indirizzoDomCond.setEnabled(opzione);
nazioneDomCond.setEnabled(opzione);
}
// done
private void gestisciDomicilioAssicurato(boolean opzione){
cittaDom_ass.setEnabled(opzione);
comuneDom_ass.setEnabled(opzione);
provinciaDom_ass.setEnabled(opzione);
indirizzoDom_ass.setEnabled(opzione);
nazioneDom_ass.setEnabled(opzione);
if(!opzione){
int grigio=getResources().getColor(R.color.grigio);
cittaDom_ass.setTextColor(grigio);
comuneDom_ass.setTextColor(grigio);
provinciaDom_ass.setTextColor(grigio);
indirizzoDom_ass.setTextColor(grigio);
nazioneDom_ass.setTextColor(grigio);
}else{
int nero=getResources().getColor(R.color.nero);
cittaDom_ass.setTextColor(nero);
comuneDom_ass.setTextColor(nero);
provinciaDom_ass.setTextColor(nero);
indirizzoDom_ass.setTextColor(nero);
nazioneDom_ass.setTextColor(nero);
}
}
//done
private void gestisciPersonaGiuridica(boolean opzione){
cittaPG.setEnabled(opzione);
comunePG.setEnabled(opzione);
provinciaPG.setEnabled(opzione);
indirizzoPG.setEnabled(opzione);
nazionePG.setEnabled(opzione);
}
//done
private void gestisciAssicurato(boolean opzione){
gestisciDomicilioAssicurato(opzione);
cognome_ass.setEnabled(opzione);
nome_ass.setEnabled(opzione);
codiceFiscale_ass.setEnabled(opzione);
recapitoFisso_ass.setEnabled(opzione);
recapitoMobile_ass.setEnabled(opzione);
cittaRes_ass.setEnabled(opzione);
comuneRes_ass.setEnabled(opzione);
provinciaRes_ass.setEnabled(opzione);
indirizzoRes_ass.setEnabled(opzione);
nazioneRes_ass.setEnabled(opzione);
resUgualeDom_ass.setEnabled(opzione);
resUgualeDom_ass_no.setEnabled(opzione);
if(!opzione){
int grigio=getResources().getColor(R.color.grigio);
cognome_ass.setTextColor(grigio);
nome_ass.setTextColor(grigio);
codiceFiscale_ass.setTextColor(grigio);
recapitoFisso_ass.setTextColor(grigio);
recapitoMobile_ass.setTextColor(grigio);
cittaRes_ass.setTextColor(grigio);
comuneRes_ass.setTextColor(grigio);
provinciaRes_ass.setTextColor(grigio);
indirizzoRes_ass.setTextColor(grigio);
nazioneRes_ass.setTextColor(grigio);
}else{
int nero=getResources().getColor(R.color.nero);
cognome_ass.setTextColor(nero);
nome_ass.setTextColor(nero);
codiceFiscale_ass.setTextColor(nero);
recapitoFisso_ass.setTextColor(nero);
recapitoMobile_ass.setTextColor(nero);
cittaRes_ass.setTextColor(nero);
comuneRes_ass.setTextColor(nero);
provinciaRes_ass.setTextColor(nero);
indirizzoRes_ass.setTextColor(nero);
nazioneRes_ass.setTextColor(nero);
}
}
private void setSpinnerValues(Veicolo.Tipo[] values,Spinner tipoVeicolo) {
if (values == null) {
System.out.println("setValues values == null");
tipoVeicolo.setOnItemSelectedListener(null);
tipoVeicolo.setAdapter(new ArrayAdapter<String>(getActivity(), android.R.layout.simple_spinner_item, new String[0]));
} else {
AdapterSpinner adapterSpinner=new AdapterSpinner(getActivity(), R.layout.layout_mia_riga_spinner, values);
tipoVeicolo.setAdapter(adapterSpinner);
tipoVeicolo.setOnItemSelectedListener(new OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> arg0,
View arg1, int arg2, long arg3)
{
System.out.println("valore spinner="+arg0.getSelectedItem());
Veicolo.Tipo tipoVeicolo = (Veicolo.Tipo)arg0.getSelectedItem();
System.out.println("Tipologia ="+tipoVeicolo.toString());
veicolo.setTipo(tipoVeicolo);
}
public void onNothingSelected(AdapterView<?> arg0) {}
});
}
}
// done
public void copiaResidenzaSuDomicilio(int tipo){
if(tipo==1){
if(domicilio!=null&&residenza!=null){
if(residenza.getCitta()!=null){
domicilio.setCitta(residenza.getCitta());
cittaDomCond.setText(residenza.getCitta());
}
if(residenza.getComune()!=null){
domicilio.setComune(residenza.getComune());
comuneDomCond.setText(residenza.getComune());
}
if(residenza.getProvincia()!=null){
domicilio.setProvincia(residenza.getProvincia());
provinciaDomCond.setText(residenza.getProvincia());
}
if(residenza.getIndirizzo()!=null){
domicilio.setIndirizzo(residenza.getIndirizzo());
indirizzoDomCond.setText(residenza.getIndirizzo());
}
if(residenza.getPaese()!=null){
domicilio.setPaese(residenza.getPaese());
nazioneDomCond.setText(residenza.getPaese());
}
}
}else{
if(domicilioAssicurato!=null&&residenzaAssicurato!=null){
if(residenzaAssicurato.getCitta()!=null){
domicilioAssicurato.setCitta(residenzaAssicurato.getCitta());
cittaDom_ass.setText(residenzaAssicurato.getCitta());
}
if(residenzaAssicurato.getComune()!=null){
domicilioAssicurato.setComune(residenzaAssicurato.getComune());
comuneDom_ass.setText(residenzaAssicurato.getComune());
}
if(residenzaAssicurato.getProvincia()!=null){
domicilioAssicurato.setProvincia(residenzaAssicurato.getProvincia());
provinciaDom_ass.setText(residenzaAssicurato.getProvincia());
}
if(residenzaAssicurato.getIndirizzo()!=null){
domicilioAssicurato.setIndirizzo(residenzaAssicurato.getIndirizzo());
indirizzoDom_ass.setText(residenzaAssicurato.getIndirizzo());
}
if(residenzaAssicurato.getPaese()!=null){
domicilioAssicurato.setPaese(residenzaAssicurato.getPaese());
nazioneDom_ass.setText(residenzaAssicurato.getPaese());
}
}
}
}
private void caricaConducente(){
if(!conducenteCaricato){
for (Iterator<Persona> iterator = veicolo.getPersone().iterator(); iterator.hasNext();) {
Persona persona = iterator.next();
if (persona.getTipo() == Tipo.CONDUCENTE){
conducente = persona;
break;
}
}
if(conducente==null){
nuovoConducente=true;
conducente=new Persona(Persona.Tipo.CONDUCENTE);
patente=new Documento();
patente.setTipo(Documento.Tipo.PATENTE);
conducente.addDocumento(patente);
//residenza=new Indirizzo(Indirizzo.Tipo.RESIDENZA, "", "", "", "");
residenza=new Indirizzo(Indirizzo.Tipo.RESIDENZA);
conducente.addIndirizzo(residenza);
//domicilio=new Indirizzo(Indirizzo.Tipo.DOMICILIO, "", "", "", "");
domicilio=new Indirizzo(Indirizzo.Tipo.DOMICILIO);
conducente.addIndirizzo(domicilio);
veicolo.addPersona(conducente);
}else{
for (Iterator<Documento> iterator = conducente.getDocumenti().iterator(); iterator.hasNext();) {
Documento doc = iterator.next();
if (doc.getTipo() == Documento.Tipo.PATENTE){
patente = doc;
break;
}
}
for (Iterator<Indirizzo> iterator = conducente.getIndirizzi().iterator(); iterator.hasNext();) {
Indirizzo indirizzo = iterator.next();
if (indirizzo.getTipo() == Indirizzo.Tipo.RESIDENZA){
residenza = indirizzo;
}
else if (indirizzo.getTipo() == Indirizzo.Tipo.DOMICILIO) {
domicilio = indirizzo;
}
}
if(conducente.getRiferimenti()!=null){
for (Iterator<Riferimento> iterator = conducente.getRiferimenti().iterator(); iterator.hasNext();) {
Riferimento riferimento = iterator.next();
if (riferimento.getTipo() == Riferimento.Tipo.DISEGNO){
riferimentoImmagine = riferimento;
immaginePresente=true;
}
else if (riferimento.getTipo() == Riferimento.Tipo.AUDIO) {
riferimentoAudio = riferimento;
audioPresente=true;
}
}
}
}
}
}
private void caricaAssicurato(){
if(!assicuratoCaricato){
for (Iterator<Persona> iterator = veicolo.getPersone().iterator(); iterator.hasNext();) {
Persona persona = iterator.next();
if (persona.getTipo() == Tipo.INTESTAZIONE_ASSICURAZIONE){
assicurato = persona;
break;
}
}
if(assicurato==null){
nuovoAssicurato=true;
assicurato=new Persona(Persona.Tipo.INTESTAZIONE_ASSICURAZIONE);
//residenzaAssicurato=new Indirizzo(Indirizzo.Tipo.RESIDENZA, "", "", "", "");
residenzaAssicurato=new Indirizzo(Indirizzo.Tipo.RESIDENZA);
assicurato.addIndirizzo(residenzaAssicurato);
//domicilioAssicurato=new Indirizzo(Indirizzo.Tipo.DOMICILIO, "", "", "", "");
domicilioAssicurato=new Indirizzo(Indirizzo.Tipo.DOMICILIO);
assicurato.addIndirizzo(domicilioAssicurato);
//indirizzo=new Indirizzo(Indirizzo.Tipo.SEDE_LEGALE, "", "", "", "");
indirizzo=new Indirizzo(Indirizzo.Tipo.SEDE_LEGALE);
assicurato.addIndirizzoPg(indirizzo);
//assicurato.addRiferimento(new Riferimento());
veicolo.addPersona(assicurato);
}else{
for (Iterator<Indirizzo> iterator = assicurato.getIndirizzi().iterator(); iterator.hasNext();) {
Indirizzo indirizzo = iterator.next();
if (indirizzo.getTipo() == Indirizzo.Tipo.RESIDENZA){
if(residenzaAssicurato==null)
residenzaAssicurato = indirizzo;
}
if (indirizzo.getTipo() == Indirizzo.Tipo.DOMICILIO) {
if(domicilioAssicurato==null)
domicilioAssicurato = indirizzo;
}
}
for (Iterator<Indirizzo> iterator = assicurato.getIndirizziPg().iterator(); iterator.hasNext();) {
Indirizzo indirizzo = iterator.next();
if (indirizzo.getTipo() == Indirizzo.Tipo.SEDE_LEGALE){
if(this.indirizzo==null)
this.indirizzo=indirizzo;
}
}
}
}
}
//***************FINE METODI DI UTILITA***********
//****************METODI DI SALVATAGGIO************
public void salvataggioFinale(boolean reOpen){
textWatcher.salvaTesto(false);
listener.setGoodResult(veicolo,reOpen);
}
public void salvaSessoConducente(String sesso){
conducente.setSesso(sesso);
}
public void salvaDati(MioRiferimentoEdit mioRif){
switch(mioRif.getGroup()){
case R.id.layout_riga_exp_dati_veicolo:
salvaDatiVeicolo(mioRif);
break;
case R.id.layout_riga_exp_danni_visibili:
veicolo.setDanniVisibili(mioRif.getText());
break;
case R.id.layout_riga_exp_assicurazione:
salvaDatiAssicurazione(mioRif);
break;
case R.id.layout_riga_exp_dati_conducente:
salvaDatiConducente(mioRif);
break;
case R.id.layout_riga_exp_dati_assicurato:
salvaDatiAssicurato(mioRif);
break;
case R.id.layout_innestato_domicilio_conducente:
salvaDatiConducente(mioRif);
break;
default:
salvaDatiAssicurato(mioRif);
break;
}
}
// done
private void salvaDatiAssicurato(MioRiferimentoEdit mioRif){
String dato=mioRif.getText();
switch(mioRif.getViewId()){
case R.id.nome_ass:
assicurato.setNome(dato);
break;
case R.id.cognome_ass:
assicurato.setCognome(dato);
break;
case R.id.codiceFiscale_ass:
assicurato.setCodiceFiscale(dato);
break;
case R.id.recapitoFisso_ass:
assicurato.setRecapitoFisso(dato);
break;
case R.id.recapitoMobile_ass:
assicurato.setRecapitoMobile(dato);
break;
case R.id.cittaRes_ass:
residenzaAssicurato.setCitta(dato);
if(resUgualeDom_ass.isChecked())
domicilioAssicurato.setCitta(dato);
break;
case R.id.comuneRes_ass:
residenzaAssicurato.setComune(dato);
if(resUgualeDom_ass.isChecked())
domicilioAssicurato.setComune(dato);
break;
case R.id.provinciaRes_ass:
residenzaAssicurato.setProvincia(dato);
if(resUgualeDom_ass.isChecked())
domicilioAssicurato.setProvincia(dato);
break;
case R.id.indirizzoRes_ass:
residenzaAssicurato.setIndirizzo(dato);
if(resUgualeDom_ass.isChecked())
domicilioAssicurato.setIndirizzo(dato);
break;
case R.id.nazioneRes_ass:
residenzaAssicurato.setPaese(dato);
if(resUgualeDom_ass.isChecked())
domicilioAssicurato.setPaese(dato);
break;
case R.id.cittaDom_ass:
domicilioAssicurato.setCitta(dato);
break;
case R.id.comuneDom_ass:
domicilioAssicurato.setComune(dato);
break;
case R.id.provinciaDom_ass:
domicilioAssicurato.setProvincia(dato);
break;
case R.id.indirizzoDom_ass:
domicilioAssicurato.setIndirizzo(dato);
break;
case R.id.nazioneDom_ass:
domicilioAssicurato.setPaese(dato);
break;
case R.id.cittaPG:
indirizzo.setCitta(dato);
break;
case R.id.comunePG:
indirizzo.setComune(dato);
break;
case R.id.provinciaPG:
indirizzo.setProvincia(dato);
break;
case R.id.indirizzoPG:
indirizzo.setIndirizzo(dato);
break;
case R.id.nazionePG:
indirizzo.setPaese(dato);
break;
}
}
// done
private void salvaDatiConducente(MioRiferimentoEdit mioRif){
String dato=mioRif.getText();
switch(mioRif.getViewId()){
case R.id.nome:
conducente.setNome(dato);
if(ass_uguale_cond.isChecked()){
assicurato.setNome(dato);
nome_ass.setText(dato);
}
break;
case R.id.cognome:
conducente.setCognome(dato);
if(ass_uguale_cond.isChecked()){
assicurato.setCognome(dato);
cognome_ass.setText(dato);
}
break;
case R.id.codiceFiscale:
conducente.setCodiceFiscale(dato);
if(ass_uguale_cond.isChecked()){
assicurato.setCodiceFiscale(dato);
codiceFiscale_ass.setText(dato);
}
break;
case R.id.dataNascita:
try {
conducente.setDataNascita(s.parse(dato));
} catch (ParseException e) {
Toast.makeText(getActivity(), dato, Toast.LENGTH_SHORT).show();
}
break;
case R.id.nazionalita:
conducente.setNazionalita(dato);
break;
case R.id.recapitoFisso:
conducente.setRecapitoFisso(dato);
if(ass_uguale_cond.isChecked()){
assicurato.setRecapitoFisso(dato);
recapitoFisso_ass.setText(dato);
}
break;
case R.id.recapitoMobile:
conducente.setRecapitoMobile(dato);
if(ass_uguale_cond.isChecked()){
assicurato.setRecapitoMobile(dato);
recapitoMobile_ass.setText(dato);
}
break;
case R.id.note:
veicolo.setNote(dato);
break;
case R.id.numeroPatente:
patente.setNumero(dato);
break;
case R.id.validita:
try {
patente.setValidita(s.parse(dato));
} catch (ParseException e) {
Toast.makeText(getActivity(), dato, Toast.LENGTH_SHORT).show();
}
break;
case R.id.rilasciato:
patente.setRilasciato(dato);
break;
case R.id.limitazioni:
patente.setLimitazioni(dato);
break;
case R.id.classePatente:
patente.setClassePatente(dato);
break;
case R.id.cittaRes:
residenza.setCitta(dato);
if(ass_uguale_cond.isChecked()){
residenzaAssicurato.setCitta(dato);
cittaRes_ass.setText(dato);
if(resUgualeDomCond.isChecked()){
domicilio.setCitta(dato);
domicilioAssicurato.setCitta(dato);
}
}else{
if(resUgualeDomCond.isChecked())
domicilio.setCitta(dato);
}
break;
case R.id.comuneRes:
residenza.setComune(dato);
if(ass_uguale_cond.isChecked()){
residenzaAssicurato.setComune(dato);
comuneRes_ass.setText(dato);
if(resUgualeDomCond.isChecked()){
domicilio.setComune(dato);
domicilioAssicurato.setComune(dato);
}
}else{
if(resUgualeDomCond.isChecked())
domicilio.setComune(dato);
}
break;
case R.id.provinciaRes:
residenza.setProvincia(dato);
if(ass_uguale_cond.isChecked()){
residenzaAssicurato.setProvincia(dato);
provinciaRes_ass.setText(dato);
if(resUgualeDomCond.isChecked()){
domicilio.setProvincia(dato);
domicilioAssicurato.setProvincia(dato);
}
}else{
if(resUgualeDomCond.isChecked())
domicilio.setProvincia(dato);
}
break;
case R.id.indirizzoRes:
residenza.setIndirizzo(dato);
if(ass_uguale_cond.isChecked()){
residenzaAssicurato.setIndirizzo(dato);
indirizzoRes_ass.setText(dato);
if(resUgualeDomCond.isChecked()){
domicilio.setIndirizzo(dato);
domicilioAssicurato.setIndirizzo(dato);
}
}else{
if(resUgualeDomCond.isChecked())
domicilio.setIndirizzo(dato);
}
break;
case R.id.nazioneRes:
residenza.setPaese(dato);
if(ass_uguale_cond.isChecked()){
residenzaAssicurato.setPaese(dato);
nazioneRes_ass.setText(dato);
if(resUgualeDomCond.isChecked()){
domicilio.setPaese(dato);
domicilioAssicurato.setPaese(dato);
}
}else{
if(resUgualeDomCond.isChecked())
domicilio.setPaese(dato);
}
break;
case R.id.cittaCondDom:
domicilio.setCitta(dato);
if(ass_uguale_cond.isChecked()){
domicilioAssicurato.setCitta(dato);
cittaDom_ass.setText(dato);
}
break;
case R.id.comuneCondDom:
domicilio.setComune(dato);
if(ass_uguale_cond.isChecked()){
domicilioAssicurato.setComune(dato);
comuneDom_ass.setText(dato);
}
break;
case R.id.provinciaCondDom:
domicilio.setProvincia(dato);
if(ass_uguale_cond.isChecked()){
domicilioAssicurato.setProvincia(dato);
provinciaDom_ass.setText(dato);
}
break;
case R.id.indirizzoCondDom:
domicilio.setIndirizzo(dato);
if(ass_uguale_cond.isChecked()){
domicilioAssicurato.setIndirizzo(dato);
indirizzoDom_ass.setText(dato);
}
break;
case R.id.nazioneConDom:
domicilio.setPaese(dato);
if(ass_uguale_cond.isChecked()){
domicilioAssicurato.setPaese(dato);
nazioneDom_ass.setText(dato);
}
break;
}
}
private void salvaDatiVeicolo(MioRiferimentoEdit mioRif){
String dato=mioRif.getText();
switch(mioRif.getViewId()){
case R.id.targa:
veicolo.setTarga(dato);
break;
case R.id.telaio:
veicolo.setTelaio(dato);
break;
case R.id.marca:
veicolo.setMarca(dato);
break;
case R.id.modello:
veicolo.setModello(dato);
break;
}
}
private void salvaDatiAssicurazione(MioRiferimentoEdit mioRif){
String dato=mioRif.getText();
switch(mioRif.getViewId()){
case R.id.numPolizza:
veicolo.setNumPolizza(dato);
break;
case R.id.compagnia_ass:
veicolo.setCompagniaAss(dato);
break;
case R.id.agenzia:
veicolo.setAgenziaAss(dato);
break;
case R.id.cittaAss:
if(veicolo.getIndirizzoAss()==null)
veicolo.setIndirizzoAss(new Indirizzo(Indirizzo.Tipo.SEDE_LEGALE));
veicolo.getIndirizzoAss().setCitta(dato);
break;
case R.id.comuneAss:
if(veicolo.getIndirizzoAss()==null)
veicolo.setIndirizzoAss(new Indirizzo(Indirizzo.Tipo.SEDE_LEGALE));
veicolo.getIndirizzoAss().setComune(dato);
break;
case R.id.provinciaAss:
if(veicolo.getIndirizzoAss()==null)
veicolo.setIndirizzoAss(new Indirizzo(Indirizzo.Tipo.SEDE_LEGALE));
veicolo.getIndirizzoAss().setProvincia(dato);
break;
case R.id.indirizzo:
if(veicolo.getIndirizzoAss()==null)
veicolo.setIndirizzoAss(new Indirizzo(Indirizzo.Tipo.SEDE_LEGALE));
veicolo.getIndirizzoAss().setIndirizzo(dato);
break;
case R.id.validaDa:
try {
veicolo.setValidaDa(s.parse(dato));
} catch (ParseException e) {
Toast.makeText(getActivity(), dato, Toast.LENGTH_SHORT);
}
break;
case R.id.validaA:
try {
veicolo.setValidaA(s.parse(dato));
} catch (ParseException e) {
Toast.makeText(getActivity(), dato, Toast.LENGTH_SHORT);
}
break;
}
}
//******************************FINE METODI DI SALVATAGGIO
@Override
public void onSaveInstanceState(Bundle outState) {
outState.putSerializable("vei", veicolo);
super.onSaveInstanceState(outState);
}
@Override
public void onClick(View v) {
lanciaRegistrazione();
}
public void ottimizzaDati(){
if(personaGiuridica.isChecked()){
assicurato.removeIndirizzo(residenzaAssicurato);
assicurato.removeIndirizzo(domicilioAssicurato);
}else{
assicurato.removeIndirizzoPG(indirizzo);
}
//TODO mods ??? which?
veicolo.setPersoneABordo(miaLista!= null && miaLista.size()>0);
}
private void creaIndirizzoPG(){
indirizzo=new Indirizzo(Indirizzo.Tipo.SEDE_LEGALE);
assicurato.addIndirizzoPg(indirizzo);
}
private void creaIndirizziAss(){
residenzaAssicurato=new Indirizzo(Indirizzo.Tipo.RESIDENZA);
domicilioAssicurato=new Indirizzo(Indirizzo.Tipo.DOMICILIO);
assicurato.addIndirizzo(residenzaAssicurato);
assicurato.addIndirizzo(domicilioAssicurato);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment