Skip to main content

Wp All Import Function Editor

I'm trying to import a csv file with wp all import set specific functions to set the sale price and the offer price. Now I would need to call the function that forms the regular price, inside the function of the offer price, to work on the result and maybe apply a percentage discount.

<?php

$GLOBALS['$commissione_paypal_lm'] = 4;
$GLOBALS['$spese_spedizione_moto_lm'] = 10;
$GLOBALS['$spese_spedizione_autocarro_lm'] = 10;
$GLOBALS['$spese_spedizione_varie_lm'] = 7;
$GLOBALS['$pfu_moto_lm'] = 1.50;
$GLOBALS['$pfu_autocarro_lm'] = 4.90;
$GLOBALS['$pfu_varie_lm'] = 2.90;
// First function for regular price,i take variables from csv and global variables
function prezzo_finale( $price = null, $pfu = null, $diametro = null ) {
    if ( !empty( $price ) ) {
        // strip any extra characters from price
        $price = preg_replace("/[^0-9,.]/", "", $price);
        $pfu = preg_replace("/[^0-9,.]/", "", $pfu);
        
        //price ommas and dots fix
        $price = str_replace(",",".",str_replace(".","",$price));
        $pfu = str_replace(",",".",str_replace(".","",$pfu));
        
        // calculate percentage
        $percent = 0;
        if ($diametro != '') {
            $term = term_exists( $diametro, 'pa_diametro', 0 ); 
            if ( $term !== 0 && $term !== null ) { 
                $percent = get_field('percentage', 'pa_diametro_' . $term["term_id"]);
            }
        }
        
        // final price
        $prezzo_finale = $price;
        if (empty( $percent ) ) {
            // Se il campo percentuale è vuoto metto 20% automatico
            $prezzo_appoggio_finale = round((($prezzo_finale + round($prezzo_finale * (20 / 100), 2) + $pfu ) * $GLOBALS['$commissione_paypal_lm'])/100,2) ;
            $prezzo_finale = ($prezzo_finale + round($prezzo_finale * (20 / 100), 2) + $pfu + $prezzo_appoggio_finale);
        }else if ($percent > 0){
            $prezzo_appoggio_finale = round((($prezzo_finale + round($prezzo_finale * ($percent / 100), 2) + $pfu ) * $GLOBALS['$commissione_paypal_lm'])/100,2) ;
            $prezzo_finale = ($prezzo_finale + round($prezzo_finale * ($percent / 100), 2) + $pfu + $prezzo_appoggio_finale);
        }else{
            // Se il campo percentuale è inferiore uguale a zero metto 20% automatico
            $prezzo_appoggio_finale = round((($prezzo_finale + round($prezzo_finale * (20 / 100), 2) + $pfu ) * $GLOBALS['$commissione_paypal_lm'])/100,2) ;
            $prezzo_finale = ($prezzo_finale + round($prezzo_finale * (20 / 100), 2) + $pfu + $prezzo_appoggio_finale);
        }

        // perform calculations
        return $prezzo_finale; 
    }
}
function prezzo_finale_lm( $fifo_ponderato = null, $diametro = null, $settori_codice= null ) {
    if ( !empty( $fifo_ponderato ) ) {
        // strip any extra characters from price
        $fifo_ponderato = preg_replace("/[^0-9,.]/", "", $fifo_ponderato);
        
        //price ommas and dots fix
        $fifo_ponderato = str_replace(",",".",str_replace(".","",$fifo_ponderato));
        
        // calculate percentage
        $percent = 0;
        if ($diametro != '') {
            $term = term_exists( $diametro, 'pa_diametro', 0 ); 
            if ( $term !== 0 && $term !== null ) { 
                $percent = get_field('percentage', 'pa_diametro_' . $term["term_id"]);
            }
        }
        
        // final price
        // moto = 10; vettura 8; isole extra valutare; paypal 3%;
        $prezzo_finale_lm = ($fifo_ponderato);
        if ($settori_codice === 'MOTO' || $settori_codice === 'SCOOTER' || $settori_codice === 'CICLOMOTORI'){
        $spese_spedizione = $GLOBALS['$spese_spedizione_moto_lm'];
        $pfu = $GLOBALS['$pfu_moto_lm'];
        }else if ($settori_codice === 'AUTOCARRO'){
        $spese_spedizione = $GLOBALS['$spese_spedizione_autocarro_lm'];
        $pfu = $GLOBALS['$pfu_autocarro_lm'];
        }else{
        $spese_spedizione = $GLOBALS['$spese_spedizione_varie_lm'];
        $pfu = $GLOBALS['$pfu_varie_lm'];
        }       
        if (empty( $percent ) ) {
            // Se il campo percentuale è vuoto metto 20% automatico
            $prezzo_appoggio_lm = round((($prezzo_finale_lm + round($prezzo_finale_lm * (20 / 100), 2) + $pfu + $spese_spedizione) * $GLOBALS['$commissione_paypal_lm'])/100,2) ;
            $prezzo_finale_lm_paypal = ($prezzo_finale_lm + round($prezzo_finale_lm * (20 / 100), 2) + $pfu + $spese_spedizione + $prezzo_appoggio_lm);
        }else if ($percent > 0){            
            $prezzo_appoggio_lm = round((($prezzo_finale_lm + round($prezzo_finale_lm * ($percent / 100), 2) + $pfu + $spese_spedizione) * $GLOBALS['$commissione_paypal_lm'])/100,2) ;
            $prezzo_finale_lm_paypal = ($prezzo_finale_lm + round($prezzo_finale_lm * ($percent / 100), 2) + $pfu + $spese_spedizione + $prezzo_appoggio_lm);
        }else{
            // Se il campo percentuale è inferiore uguale a zero metto 20% automatico
            $prezzo_appoggio_lm = round((($prezzo_finale_lm + round($prezzo_finale_lm * (20 / 100), 2) + $pfu + $spese_spedizione) * $GLOBALS['$commissione_paypal_lm'])/100,2) ;
            $prezzo_finale_lm_paypal = ($prezzo_finale_lm + round($prezzo_finale_lm * (20 / 100), 2) + $pfu + $spese_spedizione + $prezzo_appoggio_lm);
        }

        // perform calculations
        return $prezzo_finale_lm_paypal; 
                
    }
}
    // Second function for offer price,i would take regular price and work with
function prezzo_offerta_lm() {

        if (prezzo_finale_lm()){
        return prezzo_finale_lm();
        // and for example apply discount as global variable
        }else{
        
        }

        // perform calculations
        
}
?>

This is shortcode i use for regular price:

[prezzo_finale_lm({fifo_ponderato[1]},{diametro[1]},{settori_codice[1]})]

Thank you all for any advice.



source https://stackoverflow.com/questions/69003644/wp-all-import-function-editor

Comments

Popular posts from this blog

Prop `className` did not match in next js app

I have written a sample code ( Github Link here ). this is a simple next js app, but giving me error when I refresh the page. This seems to be the common problem and I tried the fix provided in the internet but does not seem to fix my issue. The error is Warning: Prop className did not match. Server: "MuiBox-root MuiBox-root-1" Client: "MuiBox-root MuiBox-root-2". Did changes for _document.js, modified _app.js as mentioned in official website and solutions in stackoverflow. but nothing seems to work. Could someone take a look and help me whats wrong with the code? Via Active questions tagged javascript - Stack Overflow https://ift.tt/2FdjaAW

How to show number of registered users in Laravel based on usertype?

i'm trying to display data from the database in the admin dashboard i used this: <?php use Illuminate\Support\Facades\DB; $users = DB::table('users')->count(); echo $users; ?> and i have successfully get the correct data from the database but what if i want to display a specific data for example in this user table there is "usertype" that specify if the user is normal user or admin i want to user the same code above but to display a specific usertype i tried this: <?php use Illuminate\Support\Facades\DB; $users = DB::table('users')->count()->WHERE usertype =admin; echo $users; ?> but it didn't work, what am i doing wrong? source https://stackoverflow.com/questions/68199726/how-to-show-number-of-registered-users-in-laravel-based-on-usertype

Why is my reports service not connecting?

I am trying to pull some data from a Postgres database using Node.js and node-postures but I can't figure out why my service isn't connecting. my routes/index.js file: const express = require('express'); const router = express.Router(); const ordersCountController = require('../controllers/ordersCountController'); const ordersController = require('../controllers/ordersController'); const weeklyReportsController = require('../controllers/weeklyReportsController'); router.get('/orders_count', ordersCountController); router.get('/orders', ordersController); router.get('/weekly_reports', weeklyReportsController); module.exports = router; My controllers/weeklyReportsController.js file: const weeklyReportsService = require('../services/weeklyReportsService'); const weeklyReportsController = async (req, res) => { try { const data = await weeklyReportsService; res.json({data}) console