var app = angular.module('Nekretnine', ['ui.bootstrap']);


////////////////////////////////////////////////////
/// Nekretnine
////////////////////////////////////////////////////
app.controller('Kontroler', function ($scope, $timeout, $http) {

    var Ks = 6.73;
    $scope.Ks = Ks;
    var Ks1 = Ks;
    $scope.Ks1 = Ks1; 
    $scope.plata = 12;
    $scope.rataKoef = $scope.plata/2;
    $scope.rata = 33.3;
    $scope.ostaje = $scope.plata*50 - $scope.rata*$scope.rataKoef;
    $scope.slajder = $scope.rata*$scope.rataKoef;
    $scope.mjeseci = 50;  
    var ukupnZaKupovinu;  

        // prosjecna cijena kvadrata za kupovinu
        var km1 = 1036.65;
        // max kvadratura
        var im1 = 140;

        // koeficijenti kupovina podgorica
        var k1 = 1158.58;
        var k2 = 1065.65;
        var k3 = 1085.53;
        var k4 = 1167.57;
        var k5 = 986.78;
        var k6 = 909.53;
        var k7 = 950.12;

        // koeficijenti iznamljivanje podgorica
        var i1 = 5.46;
        var i2 = 6.57;
        var i3 = 5.47;
        var i4 = 6.71;
        var i5 = 4.32;
        var i6 = 4.57;
        var i7 = 3.10;


        /////////////////////////////////////////////////////////////////
        // NIKSIC
        /////////////////////////////////////////////////////////////////

         // prosjecna cijena kvadrata za kupovinu
        var km1NK = 680.12;
        // max kvadratura
        var im1NK = 145;

        // koeficijenti kupovina 
        var k1NK = 680.12;

        // koeficijenti iznamljivanje 
        var i1NK = 2.23;    


        

        // vrijednost soba iznamljivanje Podgorica        
        // garsonjera 115 - 350
        // jednosoban 136 - 600
        // dvosoban 163 - 1000        
        // trosoban 240 - 2500

        // vrijednost soba Kupovina Podgorica        
        // garsonjera 20860
        // jednosoban 29312
        // dvosoban 48936
        // trosoban 69300

        // vrijednost soba iznamljivanje Niksic
        // garsonjera 120 - 150
        // jednosoban 100 - 250
        // dvosoban 150 - 200        
        // trosoban 300 - 2500

        // vrijednost soba Kupovina Niksic      
        // garsonjera 14700 - 30000
        // jednosoban 18800 - 60000
        // dvosoban 37530 - 75000        
        // trosoban 38875 - 93500 

        // vrijednost soba iznamljivanje Podgorica
        $scope.op1 = 115; // garsonjera
        $scope.op2 = 136; // jednosoban
        $scope.op3 = 163; // dvosoban
        $scope.op4 = 200; // dvosoban
        $scope.op5 = 240; // trosoban
        $scope.op6 = 320; // t+        

        // vrijednost soba kupovina Podgorica
        $scope.kop1 = 20860; // garsonjera
        $scope.kop2 = 29312; // jednosoban
        $scope.kop3 = 48936; // dvosoban
        $scope.kop4 = 48936; // dvosoban
        $scope.kop5 = 69300; // trosoban
        $scope.kop6 = 73000; // t+

        // vrijednost soba iznamljivanje Niksic
        $scope.opNK1 = 81;
        $scope.opNK2 = 87;
        $scope.opNK3 = 125;
        $scope.opNK4 = 125;
        $scope.opNK5 = 134;
        $scope.opNK6 = 160;

        // vrijednost soba kupovina Niksic
        $scope.kopNK1 = 14700; // garsonjera
        $scope.kopNK2 = 18800; // jednosoban
        $scope.kopNK3 = 37530; // dvosoban
        $scope.kopNK4 = 37530; // dvosoban
        $scope.kopNK5 = 38875; // trosoban
        $scope.kopNK6 = 42000; // t+

        // vrijednost para
        $scope.opp1 = 1;
        $scope.opp2 = 2;
        $scope.opp3 = 4;
        $scope.opp4 = 6;
        $scope.opp5 = 7;
        $scope.opp6 = 8;
        $scope.opp7 = 9;     

    $scope.GradjevinskiRadoviIzdavanje = function (data) {
        $scope.slajder = data;        
        if ($scope.slajder == $scope.op1 || $scope.slajder == $scope.op2 || $scope.slajder == $scope.op3 || $scope.slajder == $scope.op4 || $scope.slajder == $scope.op5 || $scope.slajder == $scope.op6 || 
            $scope.slajder == $scope.opNK1 || $scope.slajder == $scope.opNK2 || $scope.slajder == $scope.opNK3 || $scope.slajder == $scope.opNK4 || $scope.slajder == $scope.opNK5 || $scope.slajder == $scope.opNK6) {
                        //var audio = new Audio('zvuk/busilica.mp3');
                        //var audio = new Audio('zvuk/sega.mp3');
                        var audio = new Audio('zvuk/sega-kraca.mp3');
                        audio.play();
        }
    }

    $scope.GradjevinskiRadoviKupovina = function (data) {
        $scope.KredirSlajder = data;
        //console.log(data);
        if ($scope.KredirSlajder == $scope.kop1 || $scope.KredirSlajder == $scope.kop2 || $scope.KredirSlajder == $scope.kop3 || $scope.KredirSlajder == $scope.kop4 || $scope.KredirSlajder == $scope.kop5 || $scope.KredirSlajder == $scope.kop6 ||
            $scope.KredirSlajder == $scope.kopNK1 || $scope.KredirSlajder == $scope.kopNK2 || $scope.KredirSlajder == $scope.kopNK3 || $scope.KredirSlajder == $scope.kopNK4 || $scope.KredirSlajder == $scope.kopNK5 || $scope.KredirSlajder == $scope.kopNK6) {
                        //var audio = new Audio('zvuk/busilica.mp3');
                        //var audio = new Audio('zvuk/sega.mp3');
                        //console.log(data);
                        var audio = new Audio('zvuk/sega-kraca.mp3');
                        audio.play();
        }
    }
        

    $scope.SakrijNovac = function (ostaje, plata) { 
        $scope.slajder1 = Math.round((ostaje)/plata*10);
        $scope.ostajeP = Math.round((ostaje)/plata*100);

        if ($scope.ostajeP < 15) {
            $scope.GotovJe = true;
        }        
        else {
            $scope.GotovJe = false;
        }

        if ($scope.ostajeP < 1) {
            var audio = new Audio('zvuk/smrt.mp3');            
            audio.play();            
        }

        //console.log($scope.ostajeP);
        //console.log($scope.slajder1);        
        //console.log(ostaje);        
    }

    //console.log(((Math.pow((1+Ks/1200), -Math.abs($scope.mjeseci*2)))*1200));

    $scope.SakrijNovac($scope.ostaje, $scope.plata*50);


    // u slucaju da se mjenja rata
    $scope.KvadIznPod = function (rata, rataKoef) {        

        var mip1 = (rata*rataKoef/i1)*100/im1;        
        var mip2 = (rata*rataKoef/i2)*100/im1;
        var mip3 = (rata*rataKoef/i3)*100/im1;
        var mip4 = (rata*rataKoef/i4)*100/im1;
        var mip5 = (rata*rataKoef/i5)*100/im1;
        var mip6 = (rata*rataKoef/i6)*100/im1;
        var mip7 = (rata*rataKoef/i7)*100/im1;

        if (mip1 < 100) {
            $scope.ip1 = rata*rataKoef/i1;
            $scope.mip1 = mip1;
            $scope.mip1preko = true;
        }
        else {
            $scope.mip1preko = false;
            $scope.mip1 = 100;
        }

        if (mip2 < 100) {
            $scope.ip2 = rata*rataKoef/i2;
            $scope.mip2 = mip2;
            $scope.mip2preko = true;
        }
        else {
            $scope.mip2preko = false;
            $scope.mip2 = 100;
        }

        if (mip3 < 100) {
            $scope.ip3 = rata*rataKoef/i3;
            $scope.mip3 = mip3;
            $scope.mip3preko = true;
        }
        else {
            $scope.mip3preko = false;
            $scope.mip3 = 100;
        }

        if (mip4 < 100) {
            $scope.ip4 = rata*rataKoef/i4;
            $scope.mip4 = mip4;
            $scope.mip4preko = true;
        }
        else {
            $scope.mip4preko = false;
            $scope.mip4 = 100;
        }

        if (mip5 < 100) {
            $scope.ip5 = rata*rataKoef/i5;
            $scope.mip5 = mip5;
            $scope.mip5preko = true;
        }
        else {
            $scope.mip5preko = false;
            $scope.mip5 = 100;
        }

        if (mip6 < 100) {
            $scope.ip6 = rata*rataKoef/i6;
            $scope.mip6 = mip6;
            $scope.mip6preko = true;
        }
        else {
            $scope.mip6preko = false;
            $scope.mip6 = 100;
        }

        if (mip7 < 100) {
            $scope.ip7 = rata*rataKoef/i7;
            $scope.mip7 = mip7;
            $scope.mip7preko = true;
        }
        else {
            $scope.mip7preko = false;
            $scope.mip7 = 100;
        }

        

    }

     // u slucaju da se mjenja mjesec
    $scope.KvadKupPod = function (ukup) {
            //console.log('nesto');

        var mkp1 = (ukup/k1)*100/im1;        
        var mkp2 = (ukup/k2)*100/im1;
        var mkp3 = (ukup/k3)*100/im1;
        var mkp4 = (ukup/k4)*100/im1;
        var mkp5 = (ukup/k5)*100/im1;
        var mkp6 = (ukup/k6)*100/im1;
        var mkp7 = (ukup/k7)*100/im1;

        if (mkp1 < 100) {
            $scope.kp1 = ukup/k1;
            $scope.mkp1 = mkp1;
            $scope.mkp1preko = true;
        }
        else {
            $scope.mkp1preko = false;
            $scope.mkp1 = 100;
        }

        if (mkp2 < 100) {
            $scope.kp2 = ukup/k2;
            $scope.mkp2 = mkp2;
            $scope.mkp2preko = true;
        }
        else {
            $scope.mkp2preko = false;
            $scope.mkp2 = 100;
        }

        if (mkp3 < 100) {
            $scope.kp3 = ukup/k3;
            $scope.mkp3 = mkp3;
            $scope.mkp3preko = true;
        }
        else {
            $scope.mkp3preko = false;
            $scope.mkp3 = 100;
        }

        if (mkp4 < 100) {
            $scope.kp4 = ukup/k4;
            $scope.mkp4 = mkp4;
            $scope.mkp4preko = true;
        }
        else {
            $scope.mkp4preko = false;
            $scope.mkp4 = 100;
        }

        if (mkp5 < 100) {
            $scope.kp5 = ukup/k5;
            $scope.mkp5 = mkp5;
            $scope.mkp5preko = true;
        }
        else {
            $scope.mkp5preko = false;
            $scope.mkp5 = 100;
        }

        if (mkp6 < 100) {
            $scope.kp6 = ukup/k6;
            $scope.mkp6 = mkp6;
            $scope.mkp6preko = true;
        }
        else {
            $scope.mkp6preko = false;
            $scope.mkp6 = 100;
        }

        if (mkp7 < 100) {
            $scope.kp7 = ukup/k7;
            $scope.mkp7 = mkp7;
            $scope.mkp7preko = true;
        }
        else {
            $scope.mkp7preko = false;
            $scope.mkp7 = 100;
        }
        
    }

    $scope.KvadIznPod($scope.rata, $scope.rataKoef);
    $scope.KvadKupPod(ukupnZaKupovinu);

    ////////////////////////////////////////////////////////////
    // NIKSIC
    ////////////////////////////////////////////////////////////

     // u slucaju da se mjenja rata
    $scope.KvadIznNK = function (rata, rataKoef) {        

        var mip1NK = (rata*rataKoef/i1NK)*100/im1NK;       
        

        if (mip1NK < 100) {
            $scope.ip1NK = rata*rataKoef/i1NK;
            $scope.mip1NK = mip1NK;
            $scope.mip1prekoNK = true;
        }
        else {
            $scope.mip1prekoNK = false;
            $scope.mip1NK = 100; 
        }       

    }

     // u slucaju da se mjenja mjesec
    $scope.KvadKupNK = function (ukup) {
            
        var mkp1NK = (ukup/k1NK)*100/im1NK; 

        if (mkp1NK < 100) {            
            $scope.kp1NK = ukup/k1NK;
            $scope.mkp1NK = mkp1NK;
            $scope.mkp1prekoNK = true;
        }
        else {
            $scope.mkp1prekoNK = false;
            $scope.mkp1NK = 100;
        }
       
    }
   

    // definisanje palte
    $scope.Plata = function(data) {
        $scope.rataKoef = parseInt(data)/2;
        $scope.ostaje = $scope.plata*50 - $scope.rata*$scope.rataKoef;
        $scope.slajder = $scope.rata*$scope.rataKoef;
        $scope.KvadKupPod(ukupnZaKupovinu);
        $scope.KvadIznPod($scope.rata, $scope.rataKoef);
        $scope.KvadIznNK($scope.rata, $scope.rataKoef);
        $scope.KvadKupNK(ukupnZaKupovinu);
        
        $scope.SakrijNovac($scope.ostaje, $scope.plata*50);
        $scope.RacunajKredit($scope.rata, $scope.rataKoef, $scope.mjeseci, Ks);

        $scope.GradjevinskiRadoviIzdavanje($scope.slajder);
    }
   
    
    $scope.Rata = function(data) {
        
        $scope.ostaje = $scope.plata*50 - data*$scope.rataKoef;
        $scope.slajder = $scope.rata*$scope.rataKoef;
        $scope.SakrijNovac($scope.ostaje, $scope.plata*50);
        $scope.RacunajKredit($scope.rata, $scope.rataKoef, $scope.mjeseci, Ks);
        $scope.KvadIznPod($scope.rata, $scope.rataKoef);
        $scope.KvadKupPod(ukupnZaKupovinu);
        $scope.KvadIznNK($scope.rata, $scope.rataKoef);
        $scope.KvadKupNK(ukupnZaKupovinu);     
        
        // odddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
        $scope.GradjevinskiRadoviIzdavanje($scope.slajder);
    };

    // definisanje palte
    $scope.Mjesec = function(data) {
        $scope.RacunajKredit($scope.rata, $scope.rataKoef, $scope.mjeseci, Ks);
        $scope.KvadKupPod(ukupnZaKupovinu);        
        $scope.KvadKupNK(ukupnZaKupovinu);
    }

    
    $scope.RacunajKredit = function (rata, koef, mjeseci, Ks) { 
        $scope.rataKredita = (rata*Ks*mjeseci*2*koef)/(1200*(1-(Math.pow((1+Ks/1200), -Math.abs(mjeseci*2)))));
        $scope.ukupnoKredit = $scope.rataKredita*mjeseci*2;
        ukupnZaKupovinu = rata*koef*mjeseci*2;
        $scope.KredirSlajder = rata*koef*mjeseci*2;
        $scope.KvadKupPod(ukupnZaKupovinu);
        //console.log(ukupnZaKupovinu);
        $scope.GradjevinskiRadoviKupovina(ukupnZaKupovinu);
    }

    $scope.RacunajKredit1 = function (rata, koef, mjeseci, Ks1) { 
        $scope.rataKredita1 = (rata*Ks1*mjeseci*2*koef)/(1200*(1-(Math.pow((1+Ks1/1200), -Math.abs(mjeseci*2)))));
        $scope.ukupnoKredit1  = $scope.rataKredita1*mjeseci*2;
    }
    
    $scope.RacunajKredit($scope.rata, $scope.rataKoef, $scope.mjeseci, Ks);
    $scope.RacunajKredit1($scope.rata, $scope.rataKoef, $scope.mjeseci, Ks1);

    $scope.KsRacunanje = function (data) {
        if (4 < parseInt(data) && parseInt(data) < 12) {
            Ks = parseInt(data);
            console.log(Ks);
            //$scope.rataKoef = parseInt(data)/2;            
            $scope.RacunajKredit($scope.rata, $scope.rataKoef, $scope.mjeseci, data);                    
            $scope.preko = false;
        }
        else {
            $scope.preko = true;
        }
    }

    $scope.Ks1Racunanje = function (data) {
        if (4 < parseInt(data) && parseInt(data) < 12) {
            Ks1 = data;        
            $scope.RacunajKredit1($scope.rata, $scope.rataKoef, $scope.mjeseci, Ks1);
            $scope.preko = false;
        }
        else {
            $scope.preko = true;
        }
    }

     $scope.KvadIznNK($scope.rata, $scope.rataKoef);
    $scope.KvadKupNK(ukupnZaKupovinu);

    // prikaz prozora za mail
    $scope.prozor = false;
    $scope.hvala = false;
    $timeout(function () {
        $scope.prozor = true;
    }, 5000);

    // uzmi mail
    $scope.Mail = function (mail) {        
        $http.post('api/mail/' + mail).success(function(data) {
            $scope.hvala = true;
            $timeout(function () {
                $scope.prozor = false;
            }, 3000);
        });
    }

    $scope.Anketa = function (data) {
        $http.post('api/anketa/', data).success(function(data) {
            $scope.hvalaAnketa = true;
            $timeout(function () {
                $scope.anketadio = true;
                $(".Ank").hide();
            }, 3000);
        });
    }

    //////////////////////////////////////////////////////////////////////////////
    // Statistika

        $http.get('api/prvi-dio/').success(function(data) {            

            $scope.PDrata = (parseFloat(data[0].pare) + parseFloat(data[1].pare))/2;
            $scope.PDm2 = (parseFloat(data[0].kvadrat) + parseFloat(data[1].kvadrat))/2;
            $scope.PDmus = parseFloat(data[0].broj)/(parseFloat(data[0].broj) + parseFloat(data[1].broj))*100;
            $scope.PDzen = 100 - $scope.PDmus;

            $scope.PDrata1 = (parseFloat(data[2].pare) + parseFloat(data[3].pare))/2;
            $scope.PDm21 = (parseFloat(data[2].kvadrat) + parseFloat(data[3].kvadrat))/2;
            $scope.PDmus1 = parseFloat(data[2].broj)/(parseFloat(data[2].broj) + parseFloat(data[3].broj))*100;
            $scope.PDzen1 = 100 - $scope.PDmus1;

            $scope.PDrata2 = (parseFloat(data[4].pare) + parseFloat(data[5].pare))/2;
            $scope.PDm22 = (parseFloat(data[4].kvadrat) + parseFloat(data[5].kvadrat))/2;
            $scope.PDmus2 = parseFloat(data[4].broj)/(parseFloat(data[4].broj) + parseFloat(data[5].broj))*100;
            $scope.PDzen2 = 100 - $scope.PDmus2;

            var ukupnoAnketara = parseFloat(data[0].broj) + parseFloat(data[1].broj) + parseFloat(data[2].broj) + parseFloat(data[3].broj) + parseFloat(data[4].broj) + parseFloat(data[5].broj);
            $scope.PDio = (parseFloat(data[0].broj) + parseFloat(data[1].broj))/ukupnoAnketara*100;
            $scope.PDio1 = (parseFloat(data[2].broj) + parseFloat(data[3].broj))/ukupnoAnketara*100;
            $scope.PDio2 = (parseFloat(data[4].broj) + parseFloat(data[5].broj))/ukupnoAnketara*100;
            
        });
        $http.get('api/misljenje/').success(function(data) { 
            $scope.Mizn = parseFloat(data[0].misljenje)/(parseFloat(data[0].misljenje) + parseFloat(data[1].misljenje))*100;
            $scope.Mkup = 100 - $scope.Mizn;
        });
});


