Merge branch 'release/produkcija'

# Conflicts:
#	frontend/payments/classes/class.UserAccess.php
This commit is contained in:
Robert 2021-12-06 16:04:05 +01:00
commit e19456368c
5 changed files with 126 additions and 48 deletions

View File

@ -237,6 +237,13 @@ function nakupovanje_1ka_menu()
function nakupovanje_1ka_api() function nakupovanje_1ka_api()
{ {
if(empty($_SERVER['HTTP_X_REQUESTED_WITH']) || strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest') {
header('Location: //1ka.si');
die();
}
require($_SERVER['DOCUMENT_ROOT'] . '/settings.php'); require($_SERVER['DOCUMENT_ROOT'] . '/settings.php');
$api_url = $site_url . 'frontend/payments/api.php'; $api_url = $site_url . 'frontend/payments/api.php';
@ -357,7 +364,9 @@ function cenik_paketov_1ka_poslovni_uporabniki()
function nakupovanje_1ka_instalacija_na_1ka() function nakupovanje_1ka_instalacija_na_1ka()
{ {
return theme('nakupovanje_1ka_virtualna_domena'); require(drupal_get_path('module', 'nakupovanje_1ka') . '/../../../../../../settings_optional.php');
return theme('nakupovanje_1ka_virtualna_domena', compact('recaptcha_sitekey'));
} }
function nakupovanje_1ka_lastna_instalacija() function nakupovanje_1ka_lastna_instalacija()

View File

@ -26,7 +26,6 @@
jQuery(document).ready(function () { jQuery(document).ready(function () {
// Odjava v Drupalu // Odjava v Drupalu
jQuery('#poslji-odjavo').on('click', function(e){ jQuery('#poslji-odjavo').on('click', function(e){
console.log('klik odjava')
e.preventDefault(); e.preventDefault();
jQuery('[name="odjava"]').submit(); jQuery('[name="odjava"]').submit();
@ -690,11 +689,22 @@
prikaziPoljeEracun(); prikaziPoljeEracun();
if (jQuery('#racun-na-podjetje').is(':checked')) { if (jQuery('#racun-na-podjetje').is(':checked')) {
jQuery('.polje-za-podjetje').attr('required', 'required'); jQuery('.polje-za-podjetje').attr('required', 'required');
jQuery('#polje-drzava').val('').hide();
jQuery('#polje-drzava-select').val('').show();
} else { } else {
jQuery('.polje-za-podjetje').removeAttr('required'); jQuery('.polje-za-podjetje').removeAttr('required');
jQuery('.polje-za-podjetje').val(''); jQuery('.polje-za-podjetje').val('');
jQuery('#zavezanec-za-ddv').prop('checked', false); jQuery('#zavezanec-za-ddv').prop('checked', false);
pridobiLokacijoNakupovalca();
jQuery('#polje-drzava').show();
jQuery('#polje-drzava-select').hide();
} }
}); });
@ -702,8 +712,8 @@
jQuery('#polje-drzava, [name="payment_method"]').on('change', function(){ jQuery('#polje-drzava, [name="payment_method"]').on('change', function(){
if( if(
jQuery('[name="payment_method"]:checked').val() == 1 && jQuery('[name="payment_method"]:checked').val() == 1 &&
jQuery('[name="podjetje_drzava"] :selected').val() != 'Slovenija' && jQuery('[name="podjetje_drzava"]').val() != 'Slovenija' &&
jQuery('[name="podjetje_drzava"] :selected').val() != 'Slovenia' jQuery('[name="podjetje_drzava"]').val() != 'Slovenia'
) { ) {
jQuery('.tuje-bancno-nakazilo').show(); jQuery('.tuje-bancno-nakazilo').show();
@ -747,10 +757,13 @@
} }
} }
//Preverjanje polja država //Preverjanje polja država select za podjetje
if(jQuery('[name="podjetje_drzava"]').is(':visible') && (jQuery('[name="podjetje_drzava"] :selected').val() == '' || jQuery('[name="podjetje_drzava"] :selected').val() == undefined || jQuery('[name="podjetje_drzava"] :selected').val().length < 2)){ if(jQuery('#polje-drzava-select').is(':visible') &&
jQuery('#nakup-1ka #polje-drzava').attr('readonly', false); (jQuery('#polje-drzava-select :selected').val() == '' ||
jQuery('[name="podjetje_drzava"]').addClass('error error-field'); jQuery('#polje-drzava-select :selected').val() == undefined ||
jQuery('#polje-drzava-select :selected').val().length < 2)){
jQuery('#polje-drzava-select').addClass('error error-field');
} }
// Dodamo opozorilov input polja in tudi sklop obarvamo rdeče // Dodamo opozorilov input polja in tudi sklop obarvamo rdeče
@ -778,7 +791,7 @@
jQuery.post('/d/nakupovanje-api/check_ddv', { jQuery.post('/d/nakupovanje-api/check_ddv', {
cena: skupnaCena, cena: skupnaCena,
podjetje_drzava: jQuery('[name="podjetje_drzava"] :selected').val(), podjetje_drzava: jQuery('[name="podjetje_drzava"]').val(),
podjetje_davcna: jQuery('[name="podjetje_davcna"]').val() podjetje_davcna: jQuery('[name="podjetje_davcna"]').val()
}).done(function (val) { }).done(function (val) {
val = JSON.parse(val); val = JSON.parse(val);
@ -812,7 +825,7 @@
jQuery('#forma-telefon').text(jQuery('#f-telefon').val()); jQuery('#forma-telefon').text(jQuery('#f-telefon').val());
jQuery('#col-forma-telefon').show(); jQuery('#col-forma-telefon').show();
} }
jQuery('#forma-d-drzava').text(jQuery('[name="podjetje_drzava"] :selected').val()); jQuery('#forma-d-drzava').text(jQuery('[name="podjetje_drzava"]').val());
// Iz forme poberemo pdoatke o podjetju // Iz forme poberemo pdoatke o podjetju
if (jQuery('#racun-na-podjetje').is(':checked')) { if (jQuery('#racun-na-podjetje').is(':checked')) {
@ -1011,38 +1024,7 @@
posodobiCenoPaketa(); posodobiCenoPaketa();
// IP lokacija // IP lokacija
jQuery.post('/d/nakupovanje-api/get_lokacija').done(function (val) { pridobiLokacijoNakupovalca();
jQuery('#nakup-1ka #polje-drzava').attr('readonly', false);
val = JSON.parse(val);
if(val.drzava && val.drzava.length > 1){
if(val.drzava == 'Slovenia' && jQuery('[name="lang"]').val() == 'sl'){
val.drzava = "Slovenija";
}
jQuery('#nakup-1ka #polje-drzava').val(val.drzava);
jQuery('#nakup-1ka #polje-drzava').attr('readonly', true);
}
});
// Preverimo, če je že prej opravil nakup
jQuery.post('/d/nakupovanje-api/get_lokacija').done(function (val) {
jQuery('#nakup-1ka #polje-drzava').attr('readonly', false);
val = JSON.parse(val);
if(val.drzava && val.drzava.length > 1){
if(val.drzava == 'Slovenia' && jQuery('[name="lang"]').val() == 'sl'){
val.drzava = "Slovenija";
}
jQuery('#nakup-1ka #polje-drzava').val(val.drzava);
jQuery('#nakup-1ka #polje-drzava').attr('readonly', true);
}
});
} }
jQuery('#nakup-1ka .izbira').on('change', function () { jQuery('#nakup-1ka .izbira').on('change', function () {
@ -1053,12 +1035,35 @@
prikaziPoljeEracun(); prikaziPoljeEracun();
}); });
jQuery('#nakup-1ka #polje-drzava-select').on('change', function(){
jQuery('#nakup-1ka #polje-drzava').val(jQuery(this).val());
});
jQuery('[name="podjetje_davcna"]').keyup(function () { jQuery('[name="podjetje_davcna"]').keyup(function () {
jQuery('#nakup-1ka #polje-drzava').attr('readonly', true); jQuery('#nakup-1ka #polje-drzava').attr('readonly', true);
var davcna = jQuery('[name="podjetje_davcna"]').val().replace(/\D/g, ''); // samo številke var davcna = jQuery('[name="podjetje_davcna"]').val().replace(/\D/g, ''); // samo številke
if(davcna.length > 7) { if(davcna.length > 7) {
jQuery('#nakup-1ka #polje-drzava').attr('readonly', false);
jQuery.post('/d/nakupovanje-api/get_lokacija', {
podjetje_davcna: davcna
}).done(function (val) {
// jQuery('#nakup-1ka #polje-drzava').attr('readonly', false);
val = JSON.parse(val);
if(val.drzava && val.drzava.length > 1){
if(val.drzava == 'Slovenia' && jQuery('[name="lang"]').val() == 'sl'){
val.drzava = "Slovenija";
}
jQuery('#nakup-1ka #polje-drzava').val(val.drzava);
jQuery('#nakup-1ka #polje-drzava').attr('readonly', true);
}
});
// jQuery('#nakup-1ka #polje-drzava').attr('readonly', false);
// $("#obvestilceDavcna").val("Iščemo ime podjetja s to davčno številko ..."); // $("#obvestilceDavcna").val("Iščemo ime podjetja s to davčno številko ...");
// $.ajax({ // $.ajax({
// url: "https://www.go-tel.si/tecaji/poizvedba.php", // url: "https://www.go-tel.si/tecaji/poizvedba.php",
@ -1122,12 +1127,15 @@
} }
); );
if (jQuery('.error-field, .error-color').length > 0) { if (jQuery('.error-field, .error-color').length > 0 || jQuery('#varnostno-polje').val().length > 0 ) {
return ''; return '';
} }
//Onemogočimo dvojno pošiljanje //Onemogočimo dvojno pošiljanje
var pocakaj = jQuery(this).attr('data-wait'); var pocakaj = jQuery(this).attr('data-wait');
var textOddaj = jQuery(this).val();
jQuery(this).attr('data-wait', textOddaj);
jQuery(this).val(pocakaj).attr('disabled', 'disabled'); jQuery(this).val(pocakaj).attr('disabled', 'disabled');
@ -1140,6 +1148,9 @@
jQuery('#narocilo-poslovni-uporabniki').hide(); jQuery('#narocilo-poslovni-uporabniki').hide();
jQuery('#nakup-1ka-poslovni-uporabniki .uspesno-oddano-narocilo').show(); jQuery('#nakup-1ka-poslovni-uporabniki .uspesno-oddano-narocilo').show();
jQuery('.vsebina h1').text('Uspešno oddano naročilo'); jQuery('.vsebina h1').text('Uspešno oddano naročilo');
} else if(val.error) {
jQuery(this).attr('data-wait', pocakaj);
jQuery(this).val(textOddaj).attr('disabled', '');
} }
}); });
@ -1459,8 +1470,8 @@ function posodobiCenoPaketa() {
jQuery('.cena-z-ddv-text').show(); jQuery('.cena-z-ddv-text').show();
jQuery('.zavezanec-za-ddv').hide(); jQuery('.zavezanec-za-ddv').hide();
if (jQuery('#zavezanec-za-ddv').is(':checked') && jQuery('#racun-na-podjetje').is(':checked') && if (jQuery('#zavezanec-za-ddv').is(':checked') && jQuery('#racun-na-podjetje').is(':checked') &&
jQuery('[name="podjetje_drzava"] :selected').val() != 'Slovenija' && jQuery('[name="podjetje_drzava"]').val() != 'Slovenija' &&
jQuery('[name="podjetje_drzava"] :selected').val() != 'Slovenia') { jQuery('[name="podjetje_drzava"]').val() != 'Slovenia') {
cenaIzpisGledeNaDDV = '_without_tax'; cenaIzpisGledeNaDDV = '_without_tax';
jQuery('.cena-z-ddv-text').hide(); jQuery('.cena-z-ddv-text').hide();
jQuery('.zavezanec-za-ddv').show(); jQuery('.zavezanec-za-ddv').show();
@ -1551,4 +1562,26 @@ function prikaziPoljeEracun(){
} }
function pridobiLokacijoNakupovalca(){
jQuery.post('/d/nakupovanje-api/get_lokacija').done(function (val) {
// jQuery('#nakup-1ka #polje-drzava').attr('readonly', false);
val = JSON.parse(val);
if(val.drzava && val.drzava.length > 1){
if(val.drzava == 'Slovenia' && jQuery('[name="lang"]').val() == 'sl'){
val.drzava = "Slovenija";
}
jQuery('#nakup-1ka #polje-drzava').val(val.drzava);
jQuery('#nakup-1ka #polje-drzava').attr('readonly', true);
}
});
}

View File

@ -384,12 +384,19 @@
);?> );?>
<div class="w-clearfix"> <div class="w-clearfix">
<div class="col _3-3-3-12"> <div class="col _3-3-3-12">
<select name="podjetje_drzava" class="input-field w-input" id="polje-drzava" required="required">
<select class="input-field w-input" id="polje-drzava-select" style="display: none;">
<option disabled="disabled"> - <?php printf ($language->language == 'sl' ? 'Izberite državo' : 'Select a country'); ?> -</option> <option disabled="disabled"> - <?php printf ($language->language == 'sl' ? 'Izberite državo' : 'Select a country'); ?> -</option>
<?php foreach($country_list as $country): ?> <?php foreach($country_list as $country): ?>
<option value="<?php printf($country); ?>" <?php printf ($language->language == 'sl' && $country == 'Slovenija' ? 'selected="selected"' : ''); ?>><?php printf($country); ?></option> <option value="<?php printf($country); ?>" <?php printf ($language->language == 'sl' && $country == 'Slovenija' ? 'selected="selected"' : ''); ?> >
<?php printf($country); ?>
</option>
<?php endforeach; ?> <?php endforeach; ?>
</select> </select>
<input type="text" name="podjetje_drzava" value="" class="input-field w-input" id="polje-drzava" required='required' readonly>
</div> </div>
</div> </div>

View File

@ -111,6 +111,19 @@
</div> </div>
</div> </div>
<?php if(!empty($recaptcha_sitekey)): ?>
<div class="w-clearfix" style="padding-top: 1rem;">
<div class="col _6-6-6-12">
<div class="g-recaptcha" data-sitekey="<?php echo($recaptcha_sitekey); ?>"></div>
</div>
</div>
<?php endif; ?>
<!-- // SPAM protection, če nimamo reCaptcha-->
<div class="form_row" style="display: none">
<input type="text" class="varnostno-polje" name="varnostno-polje" id="varnostno-polje" value="" style="display: none;"/>
</div>
<div class="col w-clearfix gumbi"> <div class="col w-clearfix gumbi">
<input type="button" value="<?php echo($language->language == 'sl' ? 'Oddaj' : 'Submit'); ?>" data-wait="Prosim počakajte..." class="submit-btn naprej w-button"> <input type="button" value="<?php echo($language->language == 'sl' ? 'Oddaj' : 'Submit'); ?>" data-wait="Prosim počakajte..." class="submit-btn naprej w-button">
<p class="paragraph"> <p class="paragraph">

View File

@ -1342,6 +1342,22 @@ class UserNarocila{
// Lastna instalacija - paket // Lastna instalacija - paket
$strinjanje_s_pogoji = isset($narocilo_data['strinjanje_s_pogoji']) ? $narocilo_data['strinjanje_s_pogoji'] : ''; $strinjanje_s_pogoji = isset($narocilo_data['strinjanje_s_pogoji']) ? $narocilo_data['strinjanje_s_pogoji'] : '';
// Varnostno preverimo, če robot izpolni polje
$varnostno_polje = isset($narocilo_data['varnostno-polje']) ? $narocilo_data['varnostno-polje'] : '';
if(!empty($varnostno_polje)){
return ['false' => true];
}
// Preverimo ReCaptcha
if (in_array($paket, [1,2]) && AppSettings::getInstance()->getSetting('google-secret_captcha') !== false) {
$recaptchaResponse = isset($narocilo_data['g-recaptcha-response']) ? $narocilo_data['g-recaptcha-response'] : '';
$requestReCaptcha = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret=' . AppSettings::getInstance()->getSetting('google-secret_captcha') . '&response=' . $recaptchaResponse);
if (!strstr($requestReCaptcha, 'true')) {
return ['false' => true];
}
}
// Posljemo mail s podatki povprasevanja // Posljemo mail s podatki povprasevanja
$subject = $lang['srv_narocilo_poslovni_email_1ka_subject']; $subject = $lang['srv_narocilo_poslovni_email_1ka_subject'];