function Main() { switch ($this->formArray["formAction"]) { case "remove": //echo "removeOwnerRPTOP(".$this->formArray["rptopID"].",".$this->formArray["ownerID"].",".$this->formArray["personID"].",".$this->formArray["companyID"].")"; $OwnerList = new SoapObject(NCCBIZ . "OwnerList.php", "urn:Object"); if (count($this->formArray["personID"]) || count($this->formArray["companyID"])) { if (!($deletedRows = $OwnerList->removeOwnerRPTOP($this->formArray["rptopID"], $this->formArray["ownerID"], $this->formArray["personID"], $this->formArray["companyID"]))) { $this->tpl->set_var("msg", "SOAP failed"); //echo "SOAP failed"; } else { $this->tpl->set_var("msg", $deletedRows . " records deleted"); } } else { $this->tpl->set_var("msg", "0 records deleted"); } header("location: RPTOPDetails.php" . $this->sess->url("") . $this->sess->add_query(array("rptopID" => $this->formArray["rptopID"]))); exit; break; default: $this->tpl->set_var("msg", ""); } //select $RPTOPDetails = new SoapObject(NCCBIZ . "RPTOPDetails.php", "urn:Object"); if (!($xmlStr = $RPTOPDetails->getRPTOP($this->formArray["rptopID"]))) { exit("xml failed"); } else { //echo($xmlStr); if (!($domDoc = domxml_open_mem($xmlStr))) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", "error xmlDoc"); } else { $rptop = new RPTOP(); $rptop->parseDomDocument($domDoc); //print_r($rptop); foreach ($rptop as $key => $value) { switch ($key) { case "owner": //$RPTOPEncode = new SoapObject(NCCBIZ."RPTOPEncode.php", "urn:Object"); if (is_a($value, "Owner")) { $this->formArray["ownerID"] = $rptop->owner->getOwnerID(); $xmlStr = $rptop->owner->domDocument->dump_mem(true); if (!$xmlStr) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", ""); } else { if (!($domDoc = domxml_open_mem($xmlStr))) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", "error xmlDoc"); } else { $this->displayOwnerList($domDoc); } } } else { $this->tpl->set_block("rptsTemplate", "PersonList", "PersonListBlock"); $this->tpl->set_var("PersonListBlock", ""); $this->tpl->set_block("rptsTemplate", "CompanyList", "CompanyListBlock"); $this->tpl->set_var("CompanyListBlock", ""); } break; case "cityAssessor": if (is_numeric($value)) { $cityAssessor = new Person(); $cityAssessor->selectRecord($value); $this->tpl->set_var("cityAssessorID", $cityAssessor->getPersonID()); $this->tpl->set_var("cityAssessorName", $cityAssessor->getFullName()); $this->formArray["cityAssessorName"] = $cityAssessor->getFullName(); } else { $cityAssessor = $value; $this->tpl->set_var("cityAssessorID", $cityAssessor); $this->tpl->set_var("cityAssessorName", $cityAssessor); $this->formArray["cityAssessorName"] = $cityAssessor; } break; case "cityTreasurer": if (is_numeric($value)) { $cityTreasurer = new Person(); $cityTreasurer->selectRecord($value); $this->tpl->set_var("cityTreasurerID", $cityTreasurer->getPersonID()); $this->tpl->set_var("cityTreasurerName", $cityTreasurer->getFullName()); $this->formArray["cityTreasurerName"] = $cityTreasurer->getFullName(); } else { $cityTreasurer = $value; $this->tpl->set_var("cityTreasurerID", $cityTreasurer); $this->tpl->set_var("cityTreasurerName", $cityTreasurer); $this->formArray["cityTreasurerName"] = $cityTreasurer; } break; case "tdArray": $this->tpl->set_block("rptsTemplate", "defaultTDList", "defaultTDListBlock"); $this->tpl->set_block("rptsTemplate", "toggleTDList", "toggleTDListBlock"); $this->tpl->set_block("rptsTemplate", "TDList", "TDListBlock"); $this->tpl->set_block("rptsTemplate", "JSTDList", "JSTDListBlock"); $this->tpl->set_block("TDList", "DueTypeList", "DueTypeListBlock"); $this->tpl->set_block("TDList", "BacktaxesList", "BacktaxesListBlock"); $this->tpl->set_block("JSTDList", "JSBacktaxesList", "JSBacktaxesListBlock"); $this->tpl->set_block("BacktaxesList", "BacktaxDueTypeList", "BacktaxDueTypeListBlock"); $tdCtr = 0; if (count($value)) { $this->tpl->set_block("rptsTemplate", "TDDBEmpty", "TDDBEmptyBlock"); $this->tpl->set_var("TDDBEmptyBlock", ""); foreach ($value as $tkey => $tvalue) { $this->tpl->set_var("tdID", $tvalue->getTDID()); $this->tpl->set_var("taxDeclarationNumber", $tvalue->getTaxDeclarationNumber()); $this->tpl->set_var("afsID", $tvalue->getAfsID()); $this->tpl->set_var("cancelsTDNumber", $tvalue->getCancelsTDNumber()); $this->tpl->set_var("canceledByTDNumber", $tvalue->getCanceledByTDNumber()); $this->tpl->set_var("taxBeginsWithTheYear", $tvalue->getTaxBeginsWithTheYear()); $this->tpl->set_var("ceasesWithTheYear", $tvalue->getCeasesWithTheYear()); $this->tpl->set_var("enteredInRPARForBy", $tvalue->getEnteredInRPARForBy()); $this->tpl->set_var("enteredInRPARForYear", $tvalue->getEnteredInRPARForYear()); $this->tpl->set_var("previousOwner", $tvalue->getPreviousOwner()); $this->tpl->set_var("previousAssessedValue", $tvalue->getPreviousAssessedValue()); list($dateArr["year"], $dateArr["month"], $dateArr["day"]) = explode("-", $tvalue->getProvincialAssessorDate()); $this->tpl->set_var("pa_yearValue", removePreZero($dateArr["year"])); $this->tpl->set_var("pa_month", removePreZero($dateArr["month"])); $this->tpl->set_var("pa_dayValue", removePreZero($dateArr["day"])); list($dateArr["year"], $dateArr["month"], $dateArr["day"]) = explode("-", $tvalue->getCityMunicipalAssessorDate()); $this->tpl->set_var("cm_yearValue", removePreZero($dateArr["year"])); $this->tpl->set_var("cm_month", removePreZero($dateArr["month"])); $this->tpl->set_var("cm_dayValue", removePreZero($dateArr["day"])); $this->tpl->set_var("provincialAssessorName", $tvalue->provincialAssessor); $this->tpl->set_var("cityMunicipalAssessorName", $tvalue->cityMunicipalAssessor); $this->tpl->set_var("propertyType", $tvalue->getPropertyType()); $this->tpl->set_var("basicTax", ""); $this->tpl->set_var("sefTax", ""); $this->tpl->set_var("total", ""); $AFSDetails = new SoapObject(NCCBIZ . "AFSDetails.php", "urn:Object"); if (!($xmlStr = $AFSDetails->getAFS($tvalue->getAfsID()))) { // } else { if (!($domDoc = domxml_open_mem($xmlStr))) { // } else { $afs = new AFS(); $afs->parseDomDocument($domDoc); $this->formArray["landTotalMarketValue"] += $afs->getLandTotalMarketValue(); $this->formArray["landTotalAssessedValue"] += $afs->getLandTotalAssessedValue(); $this->formArray["plantTotalMarketValue"] += $afs->getPlantTotalMarketValue(); $this->formArray["plantTotalAssessedValue"] += $afs->getPlantTotalAssessedValue(); $this->formArray["bldgTotalMarketValue"] += $afs->getBldgTotalMarketValue(); $this->formArray["bldgTotalAssessedValue"] += $afs->getBldgTotalAssessedValue(); $this->formArray["machTotalMarketValue"] += $afs->getMachTotalMarketValue(); $this->formArray["machTotalAssessedValue"] += $afs->getMachTotalAssessedValue(); $this->formArray["totalMarketValue"] += $afs->getTotalMarketValue(); $this->formArray["totalAssessedValue"] += $afs->getTotalAssessedValue(); $this->tpl->set_var("marketValue", number_format($afs->getTotalMarketValue(), 2, '.', ',')); $this->tpl->set_var("assessedValue", number_format($afs->getTotalAssessedValue(), 2, '.', ',')); $this->tpl->set_var("taxability", $afs->getTaxability()); $this->tpl->set_var("effectivity", $afs->getEffectivity()); $this->formArray["idle"] = "No"; if ($tvalue->getPropertyType() == "Land") { if (is_array($afs->landArray)) { // if land is stripped if (count($afs->landArray) > 1) { foreach ($afs->landArray as $land) { if ($land->getIdle() == "Yes") { $this->formArray["idle"] = "Yes"; break; } } } else { $this->formArray["idle"] = $afs->landArray[0]->getIdle(); } } } if ($this->formArray["idle"] == "") { $this->formArray["idle"] = "No"; } $this->tpl->set_var("idle", $this->formArray["idle"]); } } // grab DueRecords from tdID $DueList = new SoapObject(NCCBIZ . "DueList.php", "urn:Object"); $dueArrayList = array("Annual" => "", "Q1" => "", "Q2" => "", "Q3" => "", "Q4" => ""); $this->tpl->set_var("dueYear", $rptop->getTaxableYear()); if (!($xmlStr = $DueList->getDueList($tvalue->getTdID(), $rptop->getTaxableYear()))) { foreach ($dueArrayList as $dueKey => $dueValue) { $this->tpl->set_var("basicTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("sefTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("idleTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("taxDue[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("dueDate[" . $dueKey . "]", "-"); } } else { if (!($domDoc = domxml_open_mem($xmlStr))) { foreach ($dueArrayList as $dueKey => $dueValue) { $this->tpl->set_var("basicTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("sefTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("idleTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("taxDue[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("dueDate[" . $dueKey . "]", "-"); } } else { $dueRecords = new DueRecords(); $dueRecords->parseDomDocument($domDoc); foreach ($dueRecords->getArrayList() as $due) { foreach ($due as $dueKey => $dueValue) { switch ($dueKey) { case "dueType": if ($dueValue == "Annual") { $this->formArray["totalTaxDue"] += $due->getTaxDue(); } $dueArrayList[$dueValue] = $due; $this->tpl->set_var("basicTax[" . $dueValue . "]", formatCurrency($due->getBasicTax())); $this->tpl->set_var("sefTax[" . $dueValue . "]", formatCurrency($due->getSEFTax())); $this->tpl->set_var("idleTax[" . $dueValue . "]", formatCurrency($due->getIdleTax())); $this->tpl->set_var("taxDue[" . $dueValue . "]", formatCurrency($due->getTaxDue())); $this->tpl->set_var("dueDate[" . $dueValue . "]", date("M. d, Y", strtotime($due->getDueDate()))); $this->tpl->set_var("dueID[" . $dueValue . "]", $due->getDueID()); break; } } } // initialize discountPeriod and discountPercentage for earlyPaymentDiscount $treasurySettings = $this->getTreasurySettings(); $this->tpl->set_var("discountPercentage", $treasurySettings->getDiscountPercentage() . "%"); $this->tpl->set_var("discountPeriod", "January 01, " . $rptop->getTaxableYear() . " - " . date("F d, Y", strtotime($rptop->getTaxableYear() . "-" . $treasurySettings->getDiscountPeriod()))); $this->formArray["discountPercentage"] = $treasurySettings->getDiscountPercentage(); $this->formArray["discountPeriod"] = $treasurySettings->getDiscountPeriod(); $this->formArray["discountPeriod_End"] = strtotime($rptop->getTaxableYear() . "-" . $this->formArray["discountPeriod"]); $this->formArray["discountPeriod_Start"] = strtotime($rptop->getTaxableYear() . "-01-01"); // initialize advancedDiscountPercentage for advancedPayment $this->tpl->set_var("advancedDiscountPercentage", $treasurySettings->getAdvancedDiscountPercentage() . "%"); $this->formArray["advancedDiscountPercentage"] = $treasurySettings->getAdvancedDiscountPercentage(); $this->tpl->set_var("q1AdvancedDiscountPercentage", $treasurySettings->getQ1AdvancedDiscountPercentage() . "%"); $this->formArray["q1AdvancedDiscountPercentage"] = $treasurySettings->getQ1AdvancedDiscountPercentage(); // initialize penaltyLUTArray $penaltyLUTArray = $this->getPenaltyLUTArray(); // get paymentHistory $defaultDueType = "Annual"; $allowableDueTypesArray = array("Annual", "Q1", "Q2", "Q3", "Q4"); /* alxjvr 2006.03.22 if(!$paymentHistory = $this->getPaymentHistory($dueArrayList,"")){ $defaultDueType = "Annual"; $allowableDueTypesArray = array("Annual","Q1"); } else{ $defaultDueType = $paymentHistory->arrayList[0]->getDueType(); if($defaultDueType=="Annual"){ $allowableDueTypesArray = array("Annual"); } else{ switch($defaultDueType){ case "Q1": $allowableDueTypesArray = array("Q1", "Q2"); break; case "Q2": $allowableDueTypesArray = array("Q2", "Q3"); break; case "Q3": $allowableDueTypesArray = array("Q3", "Q4"); break; case "Q4": $allowableDueTypesArray = array("Q4"); break; } } } */ foreach ($dueArrayList as $dKey => $due) { $dueArrayList[$dKey]->setEarlyPaymentDiscountPeriod($this->formArray["discountPeriod"]); $dueArrayList[$dKey]->setEarlyPaymentDiscountPercentage($this->formArray["discountPercentage"]); // compute earlyPaymentDiscount as of today // check if today is within the discountPeriod and compute Discount // AND if today is BEFORE annual dueDate $dueArrayList[$dKey]->setEarlyPaymentDiscount(0.0); if ($due->getDueType() == "Annual") { if (strtotime($this->now) >= $this->formArray["discountPeriod_Start"] && strtotime($this->now) <= $this->formArray["discountPeriod_End"]) { if (strtotime($this->now) <= strtotime($dueArrayList[$dKey]->getDueDate())) { $dueArrayList[$dKey]->setEarlyPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"] / 100)); } } } else { // if today is BEFORE dueDate if (strtotime($this->now) <= strtotime($due->getDueDate()) && strtotime($this->now) >= $this->formArray["discountPeriod_Start"]) { $dueArrayList[$dKey]->setEarlyPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"] / 100)); } // commented out: February 08, 2005 // earlyPaymentDiscount aren't given to Quarterly Dues except for Quarter 1 /* if($due->getDueType()=="Q1"){ if(strtotime($this->now) >= $this->formArray["discountPeriod_Start"] && strtotime($this->now) <= $this->formArray["discountPeriod_End"]){ if(strtotime($this->now) <= strtotime($dueArrayList[$dKey]->getDueDate())){ $dueArrayList[$dKey]->setEarlyPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"]/100)); } } } */ } // compute advancedPaymentDiscount as of today // check if today is BEFORE January 1 of the year of the annual dueDate $dueArrayList[$dKey]->setAdvancedPaymentDiscount(0.0); if (strtotime($this->now) < strtotime(date("Y", strtotime($dueArrayList[$dKey]->getDueDate())) . "-01-01")) { // for advanced payments, give 20% discount to annual dues [advanced discount] // give 10% discount to quarterly dues [early discount] if ($due->getDueType() == "Annual") { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["advancedDiscountPercentage"] / 100)); } else { // commented out: February 08, 2005 // advancedPaymentDiscount aren't given to Quarterly Dues // except for Quarter 1 if ($due->getDueType() == "Q1") { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["q1AdvancedDiscountPercentage"] / 100)); } else { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"] / 100)); } } } $latestPaymentDate[$dKey] = $this->getLatestPaymentDateForDue($dueArrayList[$dKey]); $amountPaidForDue = $this->getAmountPaidForDue($dueArrayList); $amnestyStatus = $this->getAmnestyStatusForDue($dueArrayList); $totalEarlyPaymentDiscount = $this->getTotalEarlyPaymentDiscountForDue($dueArrayList); $totalAdvancedPaymentDiscount = $this->getTotalAdvancedPaymentDiscountForDue($dueArrayList); if ($totalEarlyPaymentDiscount > 0) { $earlyPaymentDiscountForDueType = $this->getTotalEarlyPaymentDiscountForDueType($dueArrayList[$dKey]); if ($earlyPaymentDiscountForDueType > 0) { $dueArrayList[$dKey]->setEarlyPaymentDiscount($earlyPaymentDiscountForDueType); } } if ($totalAdvancedPaymentDiscount > 0) { $advancedPaymentDiscountForDueType = $this->getTotalAdvancedPaymentDiscountForDueType($dueArrayList[$dKey]); if ($advancedPaymentDiscountForDueType > 0) { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($advancedPaymentDiscountForDueType); } } if ($amnestyStatus) { $this->tpl->set_var("amnesty_status", "checked"); } else { $this->tpl->set_var("amnesty_status", ""); } // calculate Penalties verses either today or verses the last paymentDate if ($latestPaymentDate[$dKey] != "" || $latestPaymentDate[$dKey] != "now") { $dueArrayList[$dKey] = $this->computePenalty($latestPaymentDate[$dKey], $dueArrayList[$dKey]); // if balance is 0 leave penalty as is, otherwise calculatePenalty according to date now $balance = $dueArrayList[$dKey]->getInitialNetDue() - $amountPaidForDue; // 0.1 is used instead of 0 because sometimes rounded off balances intended to be 0 end up appearing as 0.002 or so... if (round($balance, 4) > 0.1) { $dueArrayList[$dKey] = $this->computePenalty($this->now, $dueArrayList[$dKey]); } } else { $dueArrayList[$dKey] = $this->computePenalty($this->now, $dueArrayList[$dKey]); } $this->tpl->set_var("advancedPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getAdvancedPaymentDiscount())); $this->tpl->set_var("earlyPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getEarlyPaymentDiscount())); $this->tpl->set_var("monthsOverDue[" . $dKey . "]", $dueArrayList[$dKey]->getMonthsOverDue()); $this->tpl->set_var("penaltyPercentage[" . $dKey . "]", $dueArrayList[$dKey]->getPenaltyPercentage() * 100); $this->tpl->set_var("penalty[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getPenalty())); $this->tpl->set_var("totalPaid[" . $dKey . "]", formatCurrency($this->getAmountPaidForDueID($dueArrayList[$dKey]->getDueID()))); $this->tpl->set_var("initialNetDue[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getInitialNetDue())); $this->initialNetDue[$dKey] = $dueArrayList[$dKey]->getInitialNetDue(); } // revert Back to Annual mode if Quarterly Dues have Penalties foreach ($dueArrayList as $dKey => $due) { if ($dKey != "Annual") { if ($dueArrayList[$dKey]->getPenalty() > 0) { $defaultDueType = "Annual"; $allowableDueTypesArray = array("Annual"); $revertedBackToAnnual = true; break; } } } foreach ($allowableDueTypesArray as $allowableDueType) { $this->tpl->set_var("allowableDueType", $allowableDueType); $this->tpl->parse("DueTypeListBlock", "DueTypeList", true); } $this->tpl->set_var("dueType[Annual]_status", "checked"); $this->tpl->set_var("dueType[Q1]_status", ""); $this->tpl->set_var("dueType[Q2]_status", ""); $this->tpl->set_var("dueType[Q3]_status", ""); $this->tpl->set_var("dueType[Q4]_status", ""); $this->tpl->set_var("dueDate", date("M. d, Y", strtotime($dueArrayList[$defaultDueType]->getDueDate()))); $this->tpl->set_var("basicTax", formatCurrency($dueArrayList[$defaultDueType]->getBasicTax())); $this->tpl->set_var("sefTax", formatCurrency($dueArrayList[$defaultDueType]->getSEFTax())); $this->tpl->set_var("idleTax", formatCurrency($dueArrayList[$defaultDueType]->getIdleTax())); $this->tpl->set_var("taxDue", formatCurrency($dueArrayList[$defaultDueType]->getTaxDue())); $this->tpl->set_var("advancedPaymentDiscount", formatCurrency($dueArrayList[$defaultDueType]->getAdvancedPaymentDiscount())); $this->tpl->set_var("earlyPaymentDiscount", formatCurrency($dueArrayList[$defaultDueType]->getEarlyPaymentDiscount())); $this->tpl->set_var("penalty", formatCurrency($dueArrayList[$defaultDueType]->getPenalty())); // get amountPaid for defaultDueType // but if dues have been reverted back to "Annual" mode from "Quarterly" mode // get amountPaid for all the quarters that have been paid so far if ($revertedBackToAnnual) { $amountPaid = 0; $amountPaid += $this->getAmountpaidForDueID($dueArrayList["Annual"]->getDueID()); $amountPaid += $this->getAmountpaidForDueID($dueArrayList["Q1"]->getDueID()); $amountPaid += $this->getAmountpaidForDueID($dueArrayList["Q2"]->getDueID()); $amountPaid += $this->getAmountpaidForDueID($dueArrayList["Q3"]->getDueID()); $amountPaid += $this->getAmountpaidForDueID($dueArrayList["Q4"]->getDueID()); } else { $amountPaid = $this->getAmountPaidForDueID($dueArrayList[$defaultDueType]->getDueID()); } $this->tpl->set_var("amountPaid", formatCurrency($amountPaid)); $balance = $dueArrayList[$defaultDueType]->getTaxDue(); if ($dueArrayList[$defaultDueType]->getAdvancedPaymentDiscount() > 0) { $balance = $dueArrayList[$defaultDueType]->getTaxDue() - $dueArrayList[$defaultDueType]->getAdvancedPaymentDiscount(); } else { if ($dueArrayList[$defaultDueType]->getEarlyPaymentDiscount() > 0) { $balance = $dueArrayList[$defaultDueType]->getTaxDue() - $dueArrayList[$defaultDueType]->getEarlyPaymentDiscount(); } } $balance = round($balance + $dueArrayList[$defaultDueType]->getPenalty() - $amountPaid, 2); $this->tpl->set_var("balance", formatCurrency($balance)); } } // display Backtaxes and previousTD Backtaxes $this->formArray["totalBacktaxesBalance"] = 0; $this->displayBacktaxTD($tvalue->getTdID()); $precedingTDArray = $this->getPrecedingTDArray($tvalue); if (is_array($precedingTDArray)) { foreach ($precedingTDArray as $precedingTD) { $this->displayBacktaxTD($precedingTD->getTdID()); } } $this->tpl->set_var("total", number_format($this->formArray["totalBacktaxesDue"], 2)); $this->tpl->set_var("totalBacktaxesBalance", number_format($this->formArray["totalBacktaxesBalance"], 2)); // grab dueID's and backtaxTDID's to run through payments // create $dueIDArray foreach ($dueArrayList as $due) { $this->dueIDArray[] = $due->getDueID(); } $this->displayTotalPaid(); $this->displayNetDue(); $this->tpl->set_var("ctr", $tdCtr); $this->tpl->parse("defaultTDListBlock", "defaultTDList", true); $this->tpl->parse("toggleTDListBlock", "toggleTDList", true); $this->tpl->parse("TDListBlock", "TDList", true); $this->tpl->parse("JSTDListBlock", "JSTDList", true); $this->tpl->set_var("DueTypeListBlock", ""); // added following line Feb.22,2005 to solve erpts issue (2005-22), backtaxTD blocking bug. $this->tpl->set_var("BacktaxesListBlock", ""); $tdCtr++; } } else { $this->tpl->set_var("defaultTDListBlock", "//no default"); $this->tpl->set_var("toggleTDListBlock", "//no Toggle"); $this->tpl->set_var("TDListBlock", ""); $this->tpl->set_var("JSTDListBlock", ""); } $this->tpl->set_var("tdCtr", $tdCtr); break; case "landTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "landTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "plantTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "plantTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "bldgTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "bldgTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "machTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "machTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "totalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "totalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; default: $this->formArray[$key] = $value; } } $this->formArray["totalMarketValue"] = $this->formArray["landTotalMarketValue"] + $this->formArray["plantTotalMarketValue"] + $this->formArray["bldgTotalMarketValue"] + $this->formArray["machTotalMarketValue"]; $this->formArray["totalAssessedValue"] = $this->formArray["landTotalAssessedValue"] + $this->formArray["plantTotalAssessedValue"] + $this->formArray["bldgTotalAssessedValue"] + $this->formArray["machTotalAssessedValue"]; unset($rptop); $AFSEncode = new SoapObject(NCCBIZ . "AFSEncode.php", "urn:Object"); $rptop = new RPTOP(); $rptop->setRptopID($this->formArray["rptopID"]); $rptop->setLandTotalMarketValue($this->formArray["landTotalMarketValue"]); $rptop->setLandTotalAssessedValue($this->formArray["landTotalAssessedValue"]); $rptop->setPlantTotalMarketValue($this->formArray["plantTotalMarketValue"]); $rptop->setPlantTotalPlantAssessedValue($this->formArray["plantTotalAssessedValue"]); $rptop->setBldgTotalMarketValue($this->formArray["bldgTotalMarketValue"]); $rptop->setBldgTotalAssessedValue($this->formArray["bldgTotalAssessedValue"]); $rptop->setMachTotalMarketValue($this->formArray["machTotalMarketValue"]); $rptop->setMachTotalAssessedValue($this->formArray["machTotalAssessedValue"]); $rptop->setTotalMarketValue($this->formArray["totalMarketValue"]); $rptop->setTotalAssessedValue($this->formArray["totalAssessedValue"]); $rptop->setCreatedBy($this->userID); $rptop->setModifiedBy($this->userID); $rptop->setDomDocument(); $RPTOPEncode = new SoapObject(NCCBIZ . "RPTOPEncode.php", "urn:Object"); $rptop->setDomDocument(); $doc = $rptop->getDomDocument(); $xmlStr = $doc->dump_mem(true); //echo $xmlStr; if (!($ret = $RPTOPEncode->updateRPTOPtotals($xmlStr))) { echo "ret=" . $ret; } //echo $ret; } } $this->setForm(); $this->setPageDetailPerms(); $this->tpl->set_var("uname", $this->user["uname"]); $this->tpl->set_var("today", date("F j, Y", strtotime($this->now))); $this->tpl->set_var("Session", $this->sess->url("") . $this->sess->add_query(array("rptopID" => $this->formArray["rptopID"], "ownerID" => $this->formArray["ownerID"]))); $this->tpl->parse("templatePage", "rptsTemplate"); $this->tpl->finish("templatePage"); $this->tpl->p("templatePage"); }
function Main() { switch ($this->formArray["formAction"]) { case "remove": //echo "removeOwnerRPTOP(".$this->formArray["rptopID"].",".$this->formArray["ownerID"].",".$this->formArray["personID"].",".$this->formArray["companyID"].")"; $OwnerList = new SoapObject(NCCBIZ . "OwnerList.php", "urn:Object"); if (count($this->formArray["personID"]) || count($this->formArray["companyID"])) { if (!($deletedRows = $OwnerList->removeOwnerRPTOP($this->formArray["rptopID"], $this->formArray["ownerID"], $this->formArray["personID"], $this->formArray["companyID"]))) { $this->tpl->set_var("msg", "SOAP failed"); //echo "SOAP failed"; } else { $this->tpl->set_var("msg", $deletedRows . " records deleted"); } } else { $this->tpl->set_var("msg", "0 records deleted"); } header("location: RPTOPDetails.php" . $this->sess->url("") . $this->sess->add_query(array("rptopID" => $this->formArray["rptopID"]))); exit; break; default: $this->tpl->set_var("msg", ""); } //select $RPTOPDetails = new SoapObject(NCCBIZ . "RPTOPDetails.php", "urn:Object"); if (!($xmlStr = $RPTOPDetails->getRPTOP($this->formArray["rptopID"]))) { exit("xml failed"); } else { //echo($xmlStr); if (!($domDoc = domxml_open_mem($xmlStr))) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", "error xmlDoc"); } else { $rptop = new RPTOP(); $rptop->parseDomDocument($domDoc); //print_r($rptop); foreach ($rptop as $key => $value) { switch ($key) { case "owner": //$RPTOPEncode = new SoapObject(NCCBIZ."RPTOPEncode.php", "urn:Object"); if (is_a($value, "Owner")) { $this->formArray["ownerID"] = $rptop->owner->getOwnerID(); $xmlStr = $rptop->owner->domDocument->dump_mem(true); if (!$xmlStr) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", ""); } else { if (!($domDoc = domxml_open_mem($xmlStr))) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", "error xmlDoc"); } else { $this->displayOwnerList($domDoc); } } } else { $this->tpl->set_block("rptsTemplate", "PersonList", "PersonListBlock"); $this->tpl->set_var("PersonListBlock", ""); $this->tpl->set_block("rptsTemplate", "CompanyList", "CompanyListBlock"); $this->tpl->set_var("CompanyListBlock", ""); } break; case "cityAssessor": if (is_numeric($value)) { $cityAssessor = new Person(); $cityAssessor->selectRecord($value); $this->tpl->set_var("cityAssessorID", $cityAssessor->getPersonID()); $this->tpl->set_var("cityAssessorName", $cityAssessor->getFullName()); $this->formArray["cityAssessorName"] = $cityAssessor->getFullName(); } else { $cityAssessor = $value; $this->tpl->set_var("cityAssessorID", $cityAssessor); $this->tpl->set_var("cityAssessorName", $cityAssessor); $this->formArray["cityAssessorName"] = $cityAssessor; } break; case "cityTreasurer": if (is_numeric($value)) { $cityTreasurer = new Person(); $cityTreasurer->selectRecord($value); $this->tpl->set_var("cityTreasurerID", $cityTreasurer->getPersonID()); $this->tpl->set_var("cityTreasurerName", $cityTreasurer->getFullName()); $this->formArray["cityTreasurerName"] = $cityTreasurer->getFullName(); } else { $cityTreasurer = $value; $this->tpl->set_var("cityTreasurerID", $cityTreasurer); $this->tpl->set_var("cityTreasurerName", $cityTreasurer); $this->formArray["cityTreasurerName"] = $cityTreasurer; } break; case "tdArray": //$this->tpl->set_block("rptsTemplate", "defaultTDList", "defaultTDListBlock"); //$this->tpl->set_block("rptsTemplate", "toggleTDList", "toggleTDListBlock"); //$this->tpl->set_block("rptsTemplate", "TDList", "TDListBlock"); //$this->tpl->set_block("TDList", "BacktaxesList", "BacktaxesListBlock"); $tdCtr = 0; if (count($value)) { $this->tpl->set_block("rptsTemplate", "TDDBEmpty", "TDDBEmptyBlock"); $this->tpl->set_var("TDDBEmptyBlock", ""); /* $this->tpl->set_block("TDList", "Land", "LandBlock"); $this->tpl->set_block("TDList", "PlantsTrees", "PlantsTreesBlock"); $this->tpl->set_block("TDList", "ImprovementsBuildings", "ImprovementsBuildingsBlock"); $this->tpl->set_block("TDList", "Machineries", "MachineriesBlock"); */ foreach ($value as $tkey => $tvalue) { //foreach($tvalue as $column => $val){ // $this->tpl->set_var($column,$val); //} /* $this->tpl->set_var("tdID",$tvalue->getTDID()); $this->tpl->set_var("taxDeclarationNumber",$tvalue->getTaxDeclarationNumber()); $this->tpl->set_var("afsID",$tvalue->getAfsID()); $this->tpl->set_var("cancelsTDNumber",$tvalue->getCancelsTDNumber()); $this->tpl->set_var("canceledByTDNumber",$tvalue->getCanceledByTDNumber()); $this->tpl->set_var("taxBeginsWithTheYear",$tvalue->getTaxBeginsWithTheYear()); $this->tpl->set_var("ceasesWithTheYear",$tvalue->getCeasesWithTheYear()); $this->tpl->set_var("enteredInRPARForBy",$tvalue->getEnteredInRPARForBy()); $this->tpl->set_var("enteredInRPARForYear",$tvalue->getEnteredInRPARForYear()); $this->tpl->set_var("previousOwner",$tvalue->getPreviousOwner()); $this->tpl->set_var("previousAssessedValue",$tvalue->getPreviousAssessedValue()); list($dateArr["year"],$dateArr["month"],$dateArr["day"]) = explode("-",$tvalue->getProvincialAssessorDate()); $this->tpl->set_var("pa_yearValue",removePreZero($dateArr["year"])); $this->tpl->set_var("pa_month",removePreZero($dateArr["month"])); $this->tpl->set_var("pa_dayValue",removePreZero($dateArr["day"])); list($dateArr["year"],$dateArr["month"],$dateArr["day"]) = explode("-",$tvalue->getCityMunicipalAssessorDate()); $this->tpl->set_var("cm_yearValue",removePreZero($dateArr["year"])); $this->tpl->set_var("cm_month",removePreZero($dateArr["month"])); $this->tpl->set_var("cm_dayValue",removePreZero($dateArr["day"])); $this->tpl->set_var("provincialAssessorName",$tvalue->provincialAssessor); $this->tpl->set_var("cityMunicipalAssessorName",$tvalue->cityMunicipalAssessor); //$this->tpl->set_var("assessedValue",$tvalue->getAssessedValue()); $this->tpl->set_var("propertyType",$tvalue->getPropertyType()); $this->tpl->set_var("basicTax",""); $this->tpl->set_var("sefTax", ""); $this->tpl->set_var("total", ""); //$this->tpl->set_var("basicTax",$tvalue->getBasicTax()); //$this->tpl->set_var("sefTax",$tvalue->getSefTax()); //$this->tpl->set_var("total",$tvalue->getTotal()); */ $this->tdRecord["arpNumber"] = $tvalue->getTaxDeclarationNumber(); $AFSDetails = new SoapObject(NCCBIZ . "AFSDetails.php", "urn:Object"); if (!($xmlStr = $AFSDetails->getAFS($tvalue->getAfsID()))) { //$this->tpl->set_block("rptsTemplate", "AFSTable", "AFSTableBlock"); //$this->tpl->set_var("AFSTableBlock", "afs not found"); } else { //echo $xmlStr; if (!($domDoc = domxml_open_mem($xmlStr))) { //$this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); //$this->tpl->set_var("OwnerListTableBlock", "error xmlDoc"); } else { $afs = new AFS(); $afs->parseDomDocument($domDoc); $odID = $afs->getOdID(); $od = new OD(); $od->selectRecord($odID); if (is_object($od->locationAddress)) { $locationAddress = $od->getLocationAddress(); $this->tdRecord["location"] = $locationAddress->getBarangay() . ", " . $locationAddress->getMunicipalityCity(); } switch ($tvalue->getPropertyType()) { case "ImprovementsBuildings": if (is_array($afs->getImprovementsBuildingsArray())) { $improvementsBuildings = $afs->improvementsBuildingsArray[0]; $actualUse = $improvementsBuildings->getActualUse(); if (is_numeric($actualUse)) { $improvementsBuildingsActualUses = new ImprovementsBuildingsActualUses(); $improvementsBuildingsActualUses->selectRecord($actualUse); $actualUse = $improvementsBuildingsActualUses->getCode(); //$actualUse = $improvementsBuildingsActualUses->getDescription(); } $this->tdRecord["class"] = $actualUse; } break; case "Machineries": if (is_array($afs->getMachineriesArray())) { $machineries = $afs->machineriesArray[0]; $actualUse = $machineries->getActualUse(); if (is_numeric($actualUse)) { $machineriesActualUses = new MachineriesActualUses(); $machineriesActualUses->selectRecord($actualUse); $actualUse = $machineriesActualUses->getCode(); //$actualUse = $machineriesActualUses->getDescription(); } $this->tdRecord["class"] = $actualUse; } break; case "Land": default: if (is_array($afs->getLandArray())) { $land = $afs->landArray[0]; $actualUse = $land->getActualUse(); if (is_numeric($actualUse)) { $landActualUses = new LandActualUses(); $landActualUses->selectRecord($actualUse); $actualUse = $landActualUses->getCode(); //$actualUse = $landActualUses->getDescription(); } $this->tdRecord["class"] = $actualUse; } else { if (is_array($afs->getPlantsTreesArray())) { if (is_numeric($actualUse)) { $plantsTreesActualUses = new PlantsTreesActualUses(); $plantsTreesActualUses->selectRecord($actualUse); $actualUse = $plantsTreesActualUses->getCode(); //$actualUse = $plantsTreesActualUses->getDescription(); } $this->tdRecord["class"] = $actualUse; } } } $this->formArray["landTotalMarketValue"] += $afs->getLandTotalMarketValue(); $this->formArray["landTotalAssessedValue"] += $afs->getLandTotalAssessedValue(); $this->formArray["plantTotalMarketValue"] += $afs->getPlantTotalMarketValue(); $this->formArray["plantTotalAssessedValue"] += $afs->getPlantTotalAssessedValue(); $this->formArray["bldgTotalMarketValue"] += $afs->getBldgTotalMarketValue(); $this->formArray["bldgTotalAssessedValue"] += $afs->getBldgTotalAssessedValue(); $this->formArray["machTotalMarketValue"] += $afs->getMachTotalMarketValue(); $this->formArray["machTotalAssessedValue"] += $afs->getMachTotalAssessedValue(); $this->formArray["totalMarketValue"] += $afs->getTotalMarketValue(); $this->formArray["totalAssessedValue"] += $afs->getTotalAssessedValue(); $this->tpl->set_var("marketValue", number_format($afs->getTotalMarketValue(), 2, '.', ',')); $this->tpl->set_var("assessedValue", number_format($afs->getTotalAssessedValue(), 2, '.', ',')); $this->tpl->set_var("taxability", $afs->getTaxability()); $this->tpl->set_var("effectivity", $afs->getEffectivity()); $this->formArray["idle"] = "No"; if ($tvalue->getPropertyType() == "Land") { if (is_array($afs->landArray)) { // if land is stripped if (count($afs->landArray) > 1) { foreach ($afs->landArray as $land) { if ($land->getIdle() == "Yes") { $this->formArray["idle"] = "Yes"; break; } } } else { $this->formArray["idle"] = $afs->landArray[0]->getIdle(); } } } if ($this->formArray["idle"] == "") { $this->formArray["idle"] = "No"; } $this->tpl->set_var("idle", $this->formArray["idle"]); } } // grab DueRecords from tdID $DueList = new SoapObject(NCCBIZ . "DueList.php", "urn:Object"); $dueArrayList = array("Annual" => "", "Q1" => "", "Q2" => "", "Q3" => "", "Q4" => ""); if (!($xmlStr = $DueList->getDueList($tvalue->getTdID(), $rptop->getTaxableYear()))) { if ($this->formArray["rptopID"] != "") { $redirectMessage = "Dues are uncalculated. <a href='CalculateRPTOPDetails.php" . $this->sess->url("") . "&rptopID=" . $this->formArray["rptopID"] . "'>Click here</a> to go to calculation page or <a href='SOA.php" . $this->sess->url("") . "'>return to list</a>."; } else { $redirectMessage = "Dues are uncalculated. <a href='SOA.php" . $this->sess->url("") . "'>Click here</a> to return to list."; } exit($redirectMessage); } else { if (!($domDoc = domxml_open_mem($xmlStr))) { if ($this->formArray["rptopID"] != "") { $redirectMessage = "Dues are uncalculated. <a href='CalculateRPTOPDetails.php" . $this->sess->url("") . "&rptopID=" . $this->formArray["rptopID"] . "'>Click here</a> to go to calculation page or <a href='SOA.php" . $this->sess->url("") . "'>return to list</a>."; } else { $redirectMessage = "Dues are uncalculated. <a href='SOA.php" . $this->sess->url("") . "'>Click here</a> to return to list."; } exit($redirectMessage); } else { $dueRecords = new DueRecords(); $dueRecords->parseDomDocument($domDoc); foreach ($dueRecords->getArrayList() as $due) { foreach ($due as $dueKey => $dueValue) { switch ($dueKey) { case "dueType": if ($dueValue == "Annual") { $this->formArray["totalTaxDue"] += $due->getTaxDue(); } $dueArrayList[$dueValue] = $due; $this->tpl->set_var("basicTax[" . $dueValue . "]", formatCurrency($due->getBasicTax())); $this->tpl->set_var("sefTax[" . $dueValue . "]", formatCurrency($due->getSEFTax())); $this->tpl->set_var("idleTax[" . $dueValue . "]", formatCurrency($due->getIdleTax())); $this->tpl->set_var("taxDue[" . $dueValue . "]", formatCurrency($due->getTaxDue())); $this->tpl->set_var("dueDate[" . $dueValue . "]", date("M. d, Y", strtotime($due->getDueDate()))); $dueDateYear = date("Y", strtotime($due->getDueDate())); $this->tdRecord["year"] = $dueDateYear; break; } } } $treasurySettings = new TreasurySettings(); $treasurySettings->selectRecord(); // initialize discountPeriod and discountPercentage for earlyPaymentDiscount $this->tpl->set_var("discountPercentage", $treasurySettings->getDiscountPercentage() . "%"); $this->tpl->set_var("discountPeriod", "January 01, " . $dueDateYear . " - " . date("F d, Y", strtotime($dueDateYear . "-" . $treasurySettings->getDiscountPeriod()))); $this->formArray["discountPercentage"] = $treasurySettings->getDiscountPercentage(); $this->formArray["discountPeriod"] = $treasurySettings->getDiscountPeriod(); $this->formArray["discountPeriod_End"] = strtotime($dueDateYear . "-" . $this->formArray["discountPeriod"]); $this->formArray["discountPeriod_Start"] = strtotime($dueDateYear . "-01-01"); // initialize advancedDiscountPercentage for advancedPayment $this->tpl->set_var("advancedDiscountPercentage", $treasurySettings->getAdvancedDiscountPercentage() . "%"); $this->formArray["advancedDiscountPercentage"] = $treasurySettings->getAdvancedDiscountPercentage(); $this->tpl->set_var("q1AdvancedDiscountPercentage", $treasurySettings->getQ1AdvancedDiscountPercentage() . "%"); $this->formArray["q1AdvancedDiscountPercentage"] = $treasurySettings->getQ1AdvancedDiscountPercentage(); // initialize penaltyLUTArray $penaltyLUTArray = $treasurySettings->getPenaltyLUT(); $this->penaltyLUTArray = $treasurySettings->getPenaltyLUT(); foreach ($dueArrayList as $dKey => $due) { $dueArrayList[$dKey]->setEarlyPaymentDiscountPeriod($this->formArray["discountPeriod"]); $dueArrayList[$dKey]->setEarlyPaymentDiscountPercentage($this->formArray["discountPercentage"]); // compute earlyPaymentDiscount as of today // check if today is within the discountPeriod and compute Discount // AND if today is BEFORE annual dueDate $dueArrayList[$dKey]->setEarlyPaymentDiscount(0.0); if ($due->getDueType() == "Annual") { if (strtotime($this->now) >= $this->formArray["discountPeriod_Start"] && strtotime($this->now) <= $this->formArray["discountPeriod_End"]) { if (strtotime($this->now) <= strtotime($dueArrayList[$dKey]->getDueDate())) { $dueArrayList[$dKey]->setEarlyPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"] / 100)); } } } else { // if today is BEFORE dueDate if (strtotime($this->now) <= strtotime($due->getDueDate()) && strtotime($this->now) >= $this->formArray["discountPeriod_Start"]) { $dueArrayList[$dKey]->setEarlyPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"] / 100)); } // commented out Febuary 08, 2005 : Provide Quarterly Discounts // earlyPaymentDiscount aren't given to Quarterly Dues except for Quarter 1 /* if($due->getDueType()=="Q1"){ if(strtotime($this->now) >= $this->formArray["discountPeriod_Start"] && strtotime($this->now) <= $this->formArray["discountPeriod_End"]){ if(strtotime($this->now) <= strtotime($dueArrayList[$dKey]->getDueDate())){ $dueArrayList[$dKey]->setEarlyPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"]/100)); } } } */ } // compute advancedPaymentDiscount as of today // check if today is BEFORE January 1 of the year of the annual dueDate $dueArrayList[$dKey]->setAdvancedPaymentDiscount(0.0); if (strtotime($this->now) < strtotime(date("Y", strtotime($dueArrayList[$dKey]->getDueDate())) . "-01-01")) { // for advanced payments, give 20% discount to annual dues [advanced discount] // give 10% discount to quarterly dues [early discount] if ($due->getDueType() == "Annual") { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["advancedDiscountPercentage"] / 100)); } else { if ($due->getDueType() == "Q1") { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["q1AdvancedDiscountPercentage"] / 100)); } else { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"] / 100)); } // commented out: February 08, 2005 // advancedPaymentDiscount aren't given to Quarterly Dues except for Quarter 1 /* if($due->getDueType()=="Q1"){ $dueArrayList[$dKey]->setAdvancedPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["q1AdvancedDiscountPercentage"]/100)); } */ } } $latestPaymentDate[$dKey] = $this->getLatestPaymentDateForDue($dueArrayList[$dKey]); $amountPaidForDue = $this->getAmountPaidForDue($dueArrayList); $latestPaymentDueType = $this->getLatestPaymentDueType($dueArrayList); $amnestyStatus[$dKey] = $this->getAmnestyStatusForDue($dueArrayList[$dKey]); $totalEarlyPaymentDiscount = $this->getTotalEarlyPaymentDiscountForDue($dueArrayList); $totalAdvancedPaymentDiscount = $this->getTotalAdvancedPaymentDiscountForDue($dueArrayList); if ($totalEarlyPaymentDiscount > 0) { $earlyPaymentDiscountForDueType = $this->getTotalEarlyPaymentDiscountForDueType($dueArrayList[$dKey]); if ($earlyPaymentDiscountForDueType > 0) { $dueArrayList[$dKey]->setEarlyPaymentDiscount($earlyPaymentDiscountForDueType); } } if ($totalAdvancedPaymentDiscount > 0) { $advancedPaymentDiscountForDueType = $this->getTotalAdvancedPaymentDiscountForDueType($dueArrayList[$dKey]); if ($advancedPaymentDiscountForDueType > 0) { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($advancedPaymentDiscountForDueType); } } // calculate Penalties verses either today or verses the last paymentDate if ($latestPaymentDate[$dKey] != "" || $latestPaymentDate[$dKey] != "now") { $dueArrayList[$dKey] = $this->computePenalty($latestPaymentDate[$dKey], $dueArrayList[$dKey]); // if balance is 0 leave penalty as is, otherwise calculatePenalty according to date now $balance = round($dueArrayList[$dKey]->getInitialNetDue() - $amountPaidForDue, 4); // 0.1 is used instead of 0 because a lot of balances may end up as 0.002 or so... if ($balance > 0.1) { $dueArrayList[$dKey] = $this->computePenalty($this->now, $dueArrayList[$dKey]); } } else { $dueArrayList[$dKey] = $this->computePenalty($this->now, $dueArrayList[$dKey]); } //print_r($dueArrayList[$dKey]); //echo "<hr>"; $this->tpl->set_var("advancedPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getAdvancedPaymentDiscount())); $this->tpl->set_var("earlyPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getEarlyPaymentDiscount())); $this->tpl->set_var("monthsOverDue[" . $dKey . "]", $dueArrayList[$dKey]->getMonthsOverDue()); $this->tpl->set_var("penaltyPercentage[" . $dKey . "]", $dueArrayList[$dKey]->getPenaltyPercentage() * 100); $this->tpl->set_var("penalty[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getPenalty())); $this->initialNetDue[$dKey] = $dueArrayList[$dKey]->getInitialNetDue(); if ($amnestyStatus[$dKey]) { $this->initialNetDue[$dKey] -= $dueArrayList[$dKey]->getPenalty(); $this->tpl->set_var("amnesty[" . $dKey . "]", "Yes"); } else { $this->tpl->set_var("amnesty[" . $dKey . "]", "No"); } $this->tpl->set_var("initialNetDue[" . $dKey . "]", formatCurrency($this->initialNetDue[$dKey])); } // out of the loop, // verify balances to make disable penalties and discounts for Annual if ALL QUARTERS have been paid // and to disable penalties and discounts for Quarters if ALL of ANNUAL has been paid // example: Q1, Q2, Q3 and Q4 have been fully paid. Annual should not show any payables. // Likewise if Annual has been fully paid, Q1, Q2, Q3 and Q4 should not show any payables. $totalQuarterlyNetDue = 0; $totalQuarterlyNetDue += $dueArrayList["Q1"]->getBasicTax() + $dueArrayList["Q1"]->getSefTax() + $dueArrayList["Q1"]->getIdleTax(); $totalQuarterlyNetDue -= $dueArrayList["Q1"]->getEarlyPaymentDiscount() + $dueArrayList["Q1"]->getAdvancedPaymentDiscount(); if (!$amnestyStatus["Q1"]) { $totalQuarterlyNetDue += $dueArrayList["Q1"]->getPenalty(); } $totalQuarterlyNetDue += $dueArrayList["Q2"]->getBasicTax() + $dueArrayList["Q2"]->getSefTax() + $dueArrayList["Q2"]->getIdleTax(); $totalQuarterlyNetDue -= $dueArrayList["Q2"]->getEarlyPaymentDiscount() + $dueArrayList["Q2"]->getAdvancedPaymentDiscount(); if (!$amnestyStatus["Q2"]) { $totalQuarterlyNetDue += $dueArrayList["Q2"]->getPenalty(); } $totalQuarterlyNetDue += $dueArrayList["Q3"]->getBasicTax() + $dueArrayList["Q3"]->getSefTax() + $dueArrayList["Q3"]->getIdleTax(); $totalQuarterlyNetDue -= $dueArrayList["Q3"]->getEarlyPaymentDiscount() + $dueArrayList["Q3"]->getAdvancedPaymentDiscount(); if (!$amnestyStatus["Q3"]) { $totalQuarterlyNetDue += $dueArrayList["Q3"]->getPenalty(); } $totalQuarterlyNetDue += $dueArrayList["Q4"]->getBasicTax() + $dueArrayList["Q4"]->getSefTax() + $dueArrayList["Q4"]->getIdleTax(); $totalQuarterlyNetDue -= $dueArrayList["Q4"]->getEarlyPaymentDiscount() + $dueArrayList["Q4"]->getAdvancedPaymentDiscount(); if (!$amnestyStatus["Q4"]) { $totalQuarterlyNetDue += $dueArrayList["Q4"]->getPenalty(); } $totalAnnualNetDue = 0; $totalAnnualNetDue += $dueArrayList["Annual"]->getBasicTax() + $dueArrayList["Annual"]->getSefTax() + $dueArrayList["Annual"]->getIdleTax(); $totalAnnualNetDue -= $dueArrayList["Annual"]->getEarlyPaymentDiscount() + $dueArrayList["Annual"]->getAdvancedPaymentDiscount(); if (!$amnestyStatus["Annual"]) { $totalAnnualNetDue += $dueArrayList["Annual"]->getPenalty(); } if ($latestPaymentDueType != "Annual" && $totalQuarterlyNetDue - $amountPaidForDue <= 0) { // all QUARTERLY DUES have been paid, modify Annual Due values $dueArrayList["Annual"]->setAdvancedPaymentDiscount(0); $dueArrayList["Annual"]->setEarlyPaymentDiscount(0); $dueArrayList["Annual"]->setMonthsOverDue(0); $dueArrayList["Annual"]->setPenaltyPercentage(0); $dueArrayList["Annual"]->setPenalty(0); $this->initialNetDue["Annual"] = $dueArrayList["Annual"]->getInitialNetDue(); $this->tpl->set_var("advancedPaymentDiscount[Annual]", formatCurrency($dueArrayList["Annual"]->getAdvancedPaymentDiscount())); $this->tpl->set_var("earlyPaymentDiscount[Annual]", formatCurrency($dueArrayList["Annual"]->getEarlyPaymentDiscount())); $this->tpl->set_var("monthsOverDue[Annual]", $dueArrayList["Annual"]->getMonthsOverDue()); $this->tpl->set_var("penaltyPercentage[Annual]", $dueArrayList["Annual"]->getPenaltyPercentage() * 100); $this->tpl->set_var("penalty[Annual]", formatCurrency($dueArrayList["Annual"]->getPenalty())); $this->tpl->set_var("amnesty[Annual]", "No"); $this->tpl->set_var("initialNetDue[Annual]", formatCurrency($this->initialNetDue["Annual"])); } else { if ($latestPaymentDueType == "Annual" && $totalAnnualNetDue - $amountPaidForDue <= 0) { // all of ANNUAL Due has been fully paid, modify Quarterly Due values $quarterlyDueKeys = array("Q1", "Q2", "Q3", "Q4"); foreach ($quarterlyDueKeys as $dKey) { $dueArrayList[$dKey]->setAdvancedPaymentDiscount(0); $dueArrayList[$dKey]->setEarlyPaymentDiscount(0); $dueArrayList[$dKey]->setMonthsOverDue(0); $dueArrayList[$dKey]->setPenaltyPercentage(0); $dueArrayList[$dKey]->setPenalty(0); $this->initialNetDue[$dKey] = $dueArrayList[$dKey]->getInitialNetDue(); $this->tpl->set_var("advancedPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getAdvancedPaymentDiscount())); $this->tpl->set_var("earlyPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getEarlyPaymentDiscount())); $this->tpl->set_var("monthsOverDue[" . $dKey . "]", $dueArrayList[$dKey]->getMonthsOverDue()); $this->tpl->set_var("penaltyPercentage[" . $dKey . "]", $dueArrayList[$dKey]->getPenaltyPercentage() * 100); $this->tpl->set_var("penalty[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getPenalty())); $this->tpl->set_var("amnesty[" . $dKey . "]", "No"); $this->tpl->set_var("initialNetDue[" . $dKey . "]", formatCurrency($this->initialNetDue[$dKey])); } } } } } // display Backtaxes and previousTD Backtaxes $this->formArray["totalBacktaxesBalance"] = 0; $this->displayBacktaxTD($tvalue->getTdID()); $precedingTDArray = $this->getPrecedingTDArray($tvalue); if (is_array($precedingTDArray)) { foreach ($precedingTDArray as $precedingTD) { $this->displayBacktaxTD($precedingTD->getTdID()); } } $this->tpl->set_var("total", number_format($this->formArray["totalBacktaxesDue"], 2)); $this->tpl->set_var("totalBacktaxesBalance", number_format($this->formArray["totalBacktaxesBalance"], 2)); // grab dueID's and backtaxTDID's to run through payments // create $dueIDArray foreach ($dueArrayList as $due) { $this->dueIDArray[] = $due->getDueID(); } $this->displayTotalPaid(); $this->displayNetDue(); $this->tdArrayList[$this->tdRecord["year"] . $this->tdArrayListCounter] = $this->tdRecord; $this->tdArrayListCounter++; unset($this->tdRecord); $this->tpl->set_var("ctr", $tdCtr); //$this->tpl->parse("defaultTDListBlock", "defaultTDList", true); //$this->tpl->parse("toggleTDListBlock", "toggleTDList", true); //$this->tpl->parse("TDListBlock", "TDList", true); //$this->tpl->set_var("BacktaxesListBlock", ""); /* $this->tpl->set_var("LandBlock", ""); $this->tpl->set_var("PlantsTreesBlock", ""); $this->tpl->set_var("ImprovementsBuildingsBlock", ""); $this->tpl->set_var("MachineriesBlock", ""); */ $tdCtr++; } } else { $this->tpl->set_var("defaultTDListBlock", "//no default"); $this->tpl->set_var("toggleTDListBlock", "//no Toggle"); $this->tpl->set_var("TDListBlock", ""); } $this->tpl->set_var("tdCtr", $tdCtr); break; case "landTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "landTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "plantTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "plantTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "bldgTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "bldgTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "machTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "machTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "totalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "totalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; default: $this->formArray[$key] = $value; } } $this->formArray["totalMarketValue"] = $this->formArray["landTotalMarketValue"] + $this->formArray["plantTotalMarketValue"] + $this->formArray["bldgTotalMarketValue"] + $this->formArray["machTotalMarketValue"]; $this->formArray["totalAssessedValue"] = $this->formArray["landTotalAssessedValue"] + $this->formArray["plantTotalAssessedValue"] + $this->formArray["bldgTotalAssessedValue"] + $this->formArray["machTotalAssessedValue"]; unset($rptop); $AFSEncode = new SoapObject(NCCBIZ . "AFSEncode.php", "urn:Object"); $rptop = new RPTOP(); $rptop->setRptopID($this->formArray["rptopID"]); $rptop->setLandTotalMarketValue($this->formArray["landTotalMarketValue"]); $rptop->setLandTotalAssessedValue($this->formArray["landTotalAssessedValue"]); $rptop->setPlantTotalMarketValue($this->formArray["plantTotalMarketValue"]); $rptop->setPlantTotalPlantAssessedValue($this->formArray["plantTotalAssessedValue"]); $rptop->setBldgTotalMarketValue($this->formArray["bldgTotalMarketValue"]); $rptop->setBldgTotalAssessedValue($this->formArray["bldgTotalAssessedValue"]); $rptop->setMachTotalMarketValue($this->formArray["machTotalMarketValue"]); $rptop->setMachTotalAssessedValue($this->formArray["machTotalAssessedValue"]); $rptop->setTotalMarketValue($this->formArray["totalMarketValue"]); $rptop->setTotalAssessedValue($this->formArray["totalAssessedValue"]); $rptop->setCreatedBy($this->userID); $rptop->setModifiedBy($this->userID); $rptop->setDomDocument(); $RPTOPEncode = new SoapObject(NCCBIZ . "RPTOPEncode.php", "urn:Object"); $rptop->setDomDocument(); $doc = $rptop->getDomDocument(); $xmlStr = $doc->dump_mem(true); //echo $xmlStr; if (!($ret = $RPTOPEncode->updateRPTOPtotals($xmlStr))) { echo "ret=" . $ret; } //echo $ret; } } if (is_array($this->tdArrayList)) { ksort($this->tdArrayList); reset($this->tdArrayList); // $this->tpl->set_block("rptsTemplate", "TDList", "TDListBlock"); $this->tpl->set_block("rptsTemplate", "Page", "PageBlock"); $this->tpl->set_block("Page", "TDList", "TDListBlock"); $this->tpl->set_block("Page", "TotalDue", "TotalDueBlock"); $this->formArray["totalTaxDue"] = 0; $maxRows = 20; $numRows = count($this->tdArrayList); $numPages = ceil($numRows / $maxRows); $rowStr = ""; $j = 0; $page = 0; foreach ($this->tdArrayList as $tdRecord) { ++$j; if ($j > $maxRows) { $this->formArray["tdYPosValue"] = "564"; $this->tpl->set_var("TDListBlock", $rowStr); $this->tpl->set_var("PageNumber", ++$page); if ($page == $numPages) { $this->tpl->set_var("TotalDueBlock", $this->tpl->subst("TotalDue")); } else { $this->tpl->set_var("TotalDueBlock", ""); } $this->tpl->parse("PageBlock", "Page", true); $rowStr = ""; $j = 1; } $this->tpl->set_var("arpNumber", $tdRecord["arpNumber"]); $this->tpl->set_var("class", $tdRecord["class"]); $this->tpl->set_var("location", $tdRecord["location"]); $this->tpl->set_var("year", $tdRecord["year"]); $this->tpl->set_var("taxDue", formatCurrency($tdRecord["taxDue"])); $this->tpl->set_var("tdYPos", $this->formArray["tdYPosValue"]); $this->formArray["tdYPosValue"] -= 15; $this->formArray["totalTaxDue"] += $tdRecord["taxDue"]; $rowStr .= $this->tpl->subst("TDList"); } $this->tpl->set_var("TDListBlock", $rowStr); $this->tpl->set_var("PageNumber", ++$page); if ($page == $numPages) { $this->tpl->set_var("TotalDueBlock", $this->tpl->subst("TotalDue")); } else { $this->tpl->set_var("TotalDueBlock", ""); } $this->tpl->parse("PageBlock", "Page", true); // echo $this->tpl->subst("Page"); /* $maxRows = 5; $numRows = count($this->tdArrayList); $numPages = ceil($numRows/$maxRows); $tdRecord = current($this->tdArrayList); for ($page=0; $page<$numPages; ++$page) { $rowStr = ""; $this->formArray["tdYPosValue"] = "564"; for ($currRow=0; $currRow<$maxRows; ++$currRow) { // $tdRecord = $this->tdArrayList[($page*$maxRows)+$currRow]; $this->tpl->set_var("arpNumber", $tdRecord["arpNumber"]); $this->tpl->set_var("class", $tdRecord["class"]); $this->tpl->set_var("location", $tdRecord["location"]); $this->tpl->set_var("year", $tdRecord["year"]); $this->tpl->set_var("taxDue", formatCurrency($tdRecord["taxDue"])); $this->tpl->set_var("tdYPos", $this->formArray["tdYPosValue"]); $this->formArray["tdYPosValue"]-=15; $rowStr .= $this->tpl->subst("TDList"); $this->formArray["totalTaxDue"] += $tdRecord["taxDue"]; $tdRecord = next($this->tdArrayList); } echo $rowStr; $this->tpl->set_var("TDListBlock", $rowStr); $this->tpl->set_var("PageNum", $page+1); $this->tpl->parse("PageBlock", "Page", true); } foreach($this->tdArrayList as $tdRecord){ $this->tpl->set_var("arpNumber", $tdRecord["arpNumber"]); $this->tpl->set_var("class", $tdRecord["class"]); $this->tpl->set_var("location", $tdRecord["location"]); $this->tpl->set_var("year", $tdRecord["year"]); $this->tpl->set_var("taxDue", formatCurrency($tdRecord["taxDue"])); $this->tpl->set_var("tdYPos", $this->formArray["tdYPosValue"]); $this->formArray["totalTaxDue"] += $tdRecord["taxDue"]; $this->tpl->parse("TDListBlock", "TDList", true); $this->formArray["tdYPosValue"]-=15; } */ } $this->setForm(); /* $this->setPageDetailPerms(); $this->tpl->set_var("uname", $this->user["uname"]); $this->tpl->set_var("today", date("F j, Y",strtotime($this->now))); $this->tpl->set_var("Session", $this->sess->url("").$this->sess->add_query(array("rptopID"=>$this->formArray["rptopID"],"ownerID" => $this->formArray["ownerID"]))); $this->tpl->parse("templatePage", "rptsTemplate"); $this->tpl->finish("templatePage"); $this->tpl->p("templatePage"); */ $this->tpl->set_var("today", date("F j, Y", strtotime($this->now))); $this->setLguDetails(); $this->tpl->parse("templatePage", "rptsTemplate"); $this->tpl->finish("templatePage"); $testpdf = new PDFWriter(); $testpdf->setOutputXML($this->tpl->get("templatePage"), "test"); if (isset($this->formArray["print"])) { $testpdf->writePDF($name); //,$this->formArray["print"]); } else { $testpdf->writePDF($name); } // header("location: ".$testpdf->pdfPath); exit; }
function getAmountPaidForQuarters($due, $taxType) { $DueList = new SoapObject(NCCBIZ . "DueList.php", "urn:Object"); if (!($xmlStr = $DueList->getDueList($due->getTdID(), date("Y", strtotime($due->getDueDate()))))) { return 0; } else { if (!($domDoc = domxml_open_mem($xmlStr))) { return 0; } else { $dueRecords = new DueRecords(); $dueRecords->parseDomDocument($domDoc); $amountPaid = 0; foreach ($dueRecords->getArrayList() as $due) { if ($due->getDueType() != "Annual") { $amountPaid += $this->getPaidTotals($due->getDueID(), "", $due->getDueType(), $taxType); } } } } return $amountPaid; }
function setDues() { $dueArray[0] = new Due(); $this->formArray["dueType"] = "Annual"; $dueArray[0]->setDueID($this->formArray["dueID"]); $dueArray[0]->setTdID($this->formArray["tdID"]); $dueArray[0]->setDueType($this->formArray["dueType"]); $dueArray[0]->setDueDate($this->formArray["dueDate"]); $dueArray[0]->setBasicTax(un_number_format($this->formArray["basicTax"])); $dueArray[0]->setBasicTaxRate($this->formArray["basicTaxRate"]); $dueArray[0]->setSefTax(un_number_format($this->formArray["sefTax"])); $dueArray[0]->setSefTaxRate($this->formArray["sefTaxRate"]); $dueArray[0]->setIdleTax(un_number_format($this->formArray["idleTax"])); $dueArray[0]->setIdleTaxRate($this->formArray["idleTaxRate"]); $dueArray[0]->setDomDocument(); // set Quarter Dues $dueIDArray = array("Annual" => "", "Q1" => "", "Q2" => "", "Q3" => "", "Q4" => ""); $DueList = new SoapObject(NCCBIZ . "DueList.php", "urn:Object"); if (!($xmlStr = $DueList->getDueList($this->formArray["tdID"], date("Y", strtotime($this->formArray["dueDate"]))))) { // error xmlStr } else { if (!($domDoc = domxml_open_mem($xmlStr))) { // error domDoc } else { //print_r(htmlspecialchars($xmlStr)); //exit; $dueRecords = new DueRecords(); $dueRecords->parseDomDocument($domDoc); foreach ($dueRecords->getArrayList() as $due) { foreach ($due as $dueKey => $dueValue) { switch ($dueKey) { case "dueType": $dueIDArray[$dueValue] = $due->getDueID(); break; } } } } } $dueArray[1] = new Due(); $dueArray[1]->setDueID($dueIDArray["Q1"]); $dueArray[1]->setTdID($this->formArray["tdID"]); $dueArray[1]->setDueType("Q1"); $dueArray[1]->setDueDate(date("Y", strtotime($this->formArray["dueDate"])) . "-03-31"); // March 31 $dueArray[1]->setBasicTax(roundUpNearestFiveCent(un_number_format($this->formArray["basicTax"]) / 4)); $dueArray[1]->setBasicTaxRate($this->formArray["basicTaxRate"]); $dueArray[1]->setSefTax(roundUpNearestFiveCent(un_number_format($this->formArray["sefTax"]) / 4)); $dueArray[1]->setSefTaxRate($this->formArray["sefTaxRate"]); $dueArray[1]->setIdleTax(roundUpNearestFiveCent(un_number_format($this->formArray["idleTax"]) / 4)); $dueArray[1]->setIdleTaxRate($this->formArray["idleTaxRate"]); $dueArray[1]->setDomDocument(); $dueArray[2] = new Due(); $dueArray[2]->setDueID($dueIDArray["Q2"]); $dueArray[2]->setTdID($this->formArray["tdID"]); $dueArray[2]->setDueType("Q2"); $dueArray[2]->setDueDate(date("Y", strtotime($this->formArray["dueDate"])) . "-06-30"); // June 30 $dueArray[2]->setBasicTax(roundUpNearestFiveCent(un_number_format($this->formArray["basicTax"]) / 4)); $dueArray[2]->setBasicTaxRate($this->formArray["basicTaxRate"]); $dueArray[2]->setSefTax(roundUpNearestFiveCent(un_number_format($this->formArray["sefTax"]) / 4)); $dueArray[2]->setSefTaxRate($this->formArray["sefTaxRate"]); $dueArray[2]->setIdleTax(roundUpNearestFiveCent(un_number_format($this->formArray["idleTax"]) / 4)); $dueArray[2]->setIdleTaxRate($this->formArray["idleTaxRate"]); $dueArray[2]->setDomDocument(); $dueArray[3] = new Due(); $dueArray[3]->setDueID($dueIDArray["Q3"]); $dueArray[3]->setTdID($this->formArray["tdID"]); $dueArray[3]->setDueType("Q3"); $dueArray[3]->setDueDate(date("Y", strtotime($this->formArray["dueDate"])) . "-09-30"); // Sept 30 $dueArray[3]->setBasicTax(roundUpNearestFiveCent(un_number_format($this->formArray["basicTax"]) / 4)); $dueArray[3]->setBasicTaxRate($this->formArray["basicTaxRate"]); $dueArray[3]->setSefTax(roundUpNearestFiveCent(un_number_format($this->formArray["sefTax"]) / 4)); $dueArray[3]->setSefTaxRate($this->formArray["sefTaxRate"]); $dueArray[3]->setIdleTax(roundUpNearestFiveCent(un_number_format($this->formArray["idleTax"]) / 4)); $dueArray[3]->setIdleTaxRate($this->formArray["idleTaxRate"]); $dueArray[3]->setDomDocument(); $dueArray[4] = new Due(); $dueArray[4]->setDueID($dueIDArray["Q4"]); $dueArray[4]->setTdID($this->formArray["tdID"]); $dueArray[4]->setDueType("Q4"); $dueArray[4]->setDueDate(date("Y", strtotime($this->formArray["dueDate"])) . "-12-31"); // Dec 31 $dueArray[4]->setBasicTax(roundUpNearestFiveCent(un_number_format($this->formArray["basicTax"]) / 4)); $dueArray[4]->setBasicTax(un_number_format($this->formArray["basicTax"]) - $dueArray[4]->getBasicTax() * 3); $dueArray[4]->setSefTax(roundUpNearestFiveCent(un_number_format($this->formArray["sefTax"]) / 4)); $dueArray[4]->setSefTax(un_number_format($this->formArray["sefTax"]) - $dueArray[4]->getSefTax() * 3); $dueArray[4]->setIdleTax(roundUpNearestFiveCent(un_number_format($this->formArray["idleTax"]) / 4)); $dueArray[4]->setIdleTax(un_number_format($this->formArray["idleTax"]) - $dueArray[4]->getIdleTax() * 3); $dueArray[4]->setBasicTaxRate($this->formArray["basicTaxRate"]); $dueArray[4]->setSefTaxRate($this->formArray["sefTaxRate"]); $dueArray[4]->setIdleTaxRate($this->formArray["idleTaxRate"]); $dueArray[4]->setDomDocument(); return $dueArray; }
function refreshTDHistory($td) { $ODDetails = new SoapObject(NCCBIZ . "ODDetails.php", "urn:Object"); if ($this->formArray["odID"] = $ODDetails->getOdIDFromTdID($td->getTdID())) { $ODHistoryList = new SoapObject(NCCBIZ . "ODHistoryList.php", "urn:Object"); $ODHistoryRecords = new ODHistoryRecords(); if (!($xmlStr = $ODHistoryList->getPrecedingODList($this->formArray["odID"]))) { // do nothing. no preceding OD return false; } else { if (!($domDoc = domxml_open_mem($xmlStr))) { // no nothing. no preceding OD } else { $ODHistoryRecords->parseDomDocument($domDoc); $precedingODList = $ODHistoryRecords->arrayList; $AFSEncode = new SoapObject(NCCBIZ . "AFSEncode.php", "urn:Object"); $AFSDetails = new SoapObject(NCCBIZ . "AFSDetails.php", "urn:Object"); $TDDetails = new SoapObject(NCCBIZ . "TDDetails.php", "urn:Object"); foreach ($precedingODList as $key => $odHistory) { $previousODID = $odHistory->getPreviousODID(); $previousAFSID = $AFSEncode->getAfsID($previousODID); $previousAFSxml = $AFSDetails->getAfs($previousAFSID); $previousAFSdomDoc = domxml_open_mem($previousAFSxml); $previousAFS = new AFS(); $previousAFS->parseDomDocument($previousAFSdomDoc); $precedingTDxml = $TDDetails->getTDFromAfsID($previousAFSID); $precedingTDdomDoc = domxml_open_mem($precedingTDxml); $precedingTD = new TD(); $precedingTD->parseDomDocument($precedingTDdomDoc); // capture DUES of precedingTD $DueList = new SoapObject(NCCBIZ . "DueList.php", "urn:Object"); if (!($xmlStr = $DueList->getDueList($precedingTD->getTdID(), $this->formArray["taxableYear"] - 1))) { // no Dues for precedingTD //echo "no dues"; } else { if (!($domDoc = domxml_open_mem($xmlStr))) { // no Dues for precedingTD //echo "no dues"; } else { $dueRecords = new DueRecords(); $dueRecords->parseDomDocument($domDoc); foreach ($dueRecords->getArrayList() as $due) { foreach ($due as $dueKey => $dueValue) { switch ($dueKey) { case "dueType": $dueArray[$dueValue] = $due; break; } } } $BacktaxTDDetails = new SoapObject(NCCBIZ . "BacktaxTDDetails.php", "urn:Object"); $BacktaxTDEncode = new SoapObject(NCCBIZ . "BacktaxTDEncode.php", "urn:Object"); if (!($xmlStr = $BacktaxTDDetails->getBacktaxTD($td->getTdID(), $this->formArray["taxableYear"] - 1))) { // backtax for Due does not exist, create backtax record $backtaxTD = $this->setBacktaxTDFromDueArray($td->getTdID(), "", $dueArray, $precedingTD, $previousAFS); $backtaxTD->setDomDocument(); $backtaxTDDoc = $backtaxTD->getDomDocument(); $backtaxTDXmlStr = $backtaxTDDoc->dump_mem(true); if (!($backtaxTDID = $BacktaxTDEncode->saveBacktaxTD($backtaxTDXmlStr))) { echo "Error saving BacktaxTD"; } } else { if (!($domDoc = domxml_open_mem($xmlStr))) { // backtax for Due does not exist, create backtax $backtaxTD = $this->setBacktaxTDFromDueArray($td->getTdID(), "", $dueArray, $precedingTD, $previousAFS); $backtaxTD->setDomDocument(); $backtaxTDDoc = $backtaxTD->getDomDocument(); $backtaxTDXmlStr = $backtaxTDDoc->dump_mem(true); if (!($backtaxTDID = $BacktaxTDEncode->saveBacktaxTD($backtaxTDXmlStr))) { echo "Error saving BacktaxTD"; } } else { // update backtax record from Due $backtaxTD = new BacktaxTD(); $backtaxTD->parseDomDocument($domDoc); $backtaxTD = $this->setBacktaxTDFromDueArray($td->getTdID(), $backtaxTD->getBacktaxTDID(), $dueArray, $precedingTD, $previousAFS); $backtaxTD->setDomDocument(); $backtaxTDDoc = $backtaxTD->getDomDocument(); $backtaxTDXmlStr = $backtaxTDDoc->dump_mem(true); if (!($backtaxTDID = $BacktaxTDEncode->updateBacktaxTD($backtaxTDXmlStr))) { echo "Error updating BacktaxTD"; } } } } } } } } } }
function getDueCount($condition = "") { $dueRecords = new DueRecords(); return $dueRecords->countRecords($condition); }
function Main() { switch ($this->formArray["formAction"]) { case "remove": //echo "removeOwnerRPTOP(".$this->formArray["rptopID"].",".$this->formArray["ownerID"].",".$this->formArray["personID"].",".$this->formArray["companyID"].")"; $OwnerList = new SoapObject(NCCBIZ . "OwnerList.php", "urn:Object"); if (count($this->formArray["personID"]) || count($this->formArray["companyID"])) { if (!($deletedRows = $OwnerList->removeOwnerRPTOP($this->formArray["rptopID"], $this->formArray["ownerID"], $this->formArray["personID"], $this->formArray["companyID"]))) { $this->tpl->set_var("msg", "SOAP failed"); //echo "SOAP failed"; } else { $this->tpl->set_var("msg", $deletedRows . " records deleted"); } } else { $this->tpl->set_var("msg", "0 records deleted"); } header("location: RPTOPDetails.php" . $this->sess->url("") . $this->sess->add_query(array("rptopID" => $this->formArray["rptopID"]))); exit; break; default: $this->tpl->set_var("msg", ""); } //select $RPTOPDetails = new SoapObject(NCCBIZ . "RPTOPDetails.php", "urn:Object"); if (!($xmlStr = $RPTOPDetails->getRPTOP($this->formArray["rptopID"]))) { exit("xml failed"); } else { //echo($xmlStr); if (!($domDoc = domxml_open_mem($xmlStr))) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", "error xmlDoc"); } else { $rptop = new RPTOP(); $rptop->parseDomDocument($domDoc); //print_r($rptop); foreach ($rptop as $key => $value) { switch ($key) { case "owner": //$RPTOPEncode = new SoapObject(NCCBIZ."RPTOPEncode.php", "urn:Object"); if (is_a($value, "Owner")) { $this->formArray["ownerID"] = $rptop->owner->getOwnerID(); $xmlStr = $rptop->owner->domDocument->dump_mem(true); if (!$xmlStr) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", ""); } else { if (!($domDoc = domxml_open_mem($xmlStr))) { $this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); $this->tpl->set_var("OwnerListTableBlock", "error xmlDoc"); } else { $this->displayOwnerList($domDoc); } } } else { $this->tpl->set_block("rptsTemplate", "PersonList", "PersonListBlock"); $this->tpl->set_var("PersonListBlock", ""); $this->tpl->set_block("rptsTemplate", "CompanyList", "CompanyListBlock"); $this->tpl->set_var("CompanyListBlock", ""); } break; case "cityAssessor": if (is_numeric($value)) { $cityAssessor = new Person(); $cityAssessor->selectRecord($value); $this->tpl->set_var("cityAssessorID", $cityAssessor->getPersonID()); $this->tpl->set_var("cityAssessorName", $cityAssessor->getFullName()); $this->formArray["cityAssessorName"] = $cityAssessor->getFullName(); } else { $cityAssessor = $value; $this->tpl->set_var("cityAssessorID", $cityAssessor); $this->tpl->set_var("cityAssessorName", $cityAssessor); $this->formArray["cityAssessorName"] = $cityAssessor; } break; case "cityTreasurer": if (is_numeric($value)) { $cityTreasurer = new Person(); $cityTreasurer->selectRecord($value); $this->tpl->set_var("cityTreasurerID", $cityTreasurer->getPersonID()); $this->tpl->set_var("cityTreasurerName", $cityTreasurer->getFullName()); $this->formArray["cityTreasurerName"] = $cityTreasurer->getFullName(); } else { $cityTreasurer = $value; $this->tpl->set_var("cityTreasurerID", $cityTreasurer); $this->tpl->set_var("cityTreasurerName", $cityTreasurer); $this->formArray["cityTreasurerName"] = $cityTreasurer; } break; case "tdArray": $this->tpl->set_block("rptsTemplate", "defaultTDList", "defaultTDListBlock"); $this->tpl->set_block("rptsTemplate", "toggleTDList", "toggleTDListBlock"); $this->tpl->set_block("rptsTemplate", "TDList", "TDListBlock"); $tdCtr = 0; if (count($value)) { $this->tpl->set_block("rptsTemplate", "TDDBEmpty", "TDDBEmptyBlock"); $this->tpl->set_var("TDDBEmptyBlock", ""); /* $this->tpl->set_block("TDList", "Land", "LandBlock"); $this->tpl->set_block("TDList", "PlantsTrees", "PlantsTreesBlock"); $this->tpl->set_block("TDList", "ImprovementsBuildings", "ImprovementsBuildingsBlock"); $this->tpl->set_block("TDList", "Machineries", "MachineriesBlock"); */ foreach ($value as $tkey => $tvalue) { //foreach($tvalue as $column => $val){ // $this->tpl->set_var($column,$val); //} $this->tpl->set_var("tdID", $tvalue->getTDID()); $this->tpl->set_var("taxDeclarationNumber", $tvalue->getTaxDeclarationNumber()); $this->tpl->set_var("afsID", $tvalue->getAfsID()); $this->tpl->set_var("cancelsTDNumber", $tvalue->getCancelsTDNumber()); $this->tpl->set_var("canceledByTDNumber", $tvalue->getCanceledByTDNumber()); $this->tpl->set_var("taxBeginsWithTheYear", $tvalue->getTaxBeginsWithTheYear()); $this->tpl->set_var("ceasesWithTheYear", $tvalue->getCeasesWithTheYear()); $this->tpl->set_var("enteredInRPARForBy", $tvalue->getEnteredInRPARForBy()); $this->tpl->set_var("enteredInRPARForYear", $tvalue->getEnteredInRPARForYear()); $this->tpl->set_var("previousOwner", $tvalue->getPreviousOwner()); $this->tpl->set_var("previousAssessedValue", $tvalue->getPreviousAssessedValue()); list($dateArr["year"], $dateArr["month"], $dateArr["day"]) = explode("-", $tvalue->getProvincialAssessorDate()); $this->tpl->set_var("pa_yearValue", removePreZero($dateArr["year"])); $this->tpl->set_var("pa_month", removePreZero($dateArr["month"])); $this->tpl->set_var("pa_dayValue", removePreZero($dateArr["day"])); list($dateArr["year"], $dateArr["month"], $dateArr["day"]) = explode("-", $tvalue->getCityMunicipalAssessorDate()); $this->tpl->set_var("cm_yearValue", removePreZero($dateArr["year"])); $this->tpl->set_var("cm_month", removePreZero($dateArr["month"])); $this->tpl->set_var("cm_dayValue", removePreZero($dateArr["day"])); $this->tpl->set_var("provincialAssessorName", $tvalue->provincialAssessor); $this->tpl->set_var("cityMunicipalAssessorName", $tvalue->cityMunicipalAssessor); //$this->tpl->set_var("assessedValue",$tvalue->getAssessedValue()); $this->tpl->set_var("propertyType", $tvalue->getPropertyType()); $this->tpl->set_var("basicTax", ""); $this->tpl->set_var("sefTax", ""); $this->tpl->set_var("total", ""); //$this->tpl->set_var("basicTax",$tvalue->getBasicTax()); //$this->tpl->set_var("sefTax",$tvalue->getSefTax()); //$this->tpl->set_var("total",$tvalue->getTotal()); $AFSDetails = new SoapObject(NCCBIZ . "AFSDetails.php", "urn:Object"); if (!($xmlStr = $AFSDetails->getAFS($tvalue->getAfsID()))) { //$this->tpl->set_block("rptsTemplate", "AFSTable", "AFSTableBlock"); //$this->tpl->set_var("AFSTableBlock", "afs not found"); } else { //echo $xmlStr; if (!($domDoc = domxml_open_mem($xmlStr))) { //$this->tpl->set_block("rptsTemplate", "OwnerListTable", "OwnerListTableBlock"); //$this->tpl->set_var("OwnerListTableBlock", "error xmlDoc"); } else { $afs = new AFS(); $afs->parseDomDocument($domDoc); $this->formArray["landTotalMarketValue"] += $afs->getLandTotalMarketValue(); $this->formArray["landTotalAssessedValue"] += $afs->getLandTotalAssessedValue(); $this->formArray["plantTotalMarketValue"] += $afs->getPlantTotalMarketValue(); $this->formArray["plantTotalAssessedValue"] += $afs->getPlantTotalAssessedValue(); $this->formArray["bldgTotalMarketValue"] += $afs->getBldgTotalMarketValue(); $this->formArray["bldgTotalAssessedValue"] += $afs->getBldgTotalAssessedValue(); $this->formArray["machTotalMarketValue"] += $afs->getMachTotalMarketValue(); $this->formArray["machTotalAssessedValue"] += $afs->getMachTotalAssessedValue(); $this->formArray["totalMarketValue"] += $afs->getTotalMarketValue(); $this->formArray["totalAssessedValue"] += $afs->getTotalAssessedValue(); $this->tpl->set_var("marketValue", number_format($afs->getTotalMarketValue(), 2, '.', ',')); $this->tpl->set_var("assessedValue", number_format($afs->getTotalAssessedValue(), 2, '.', ',')); $this->tpl->set_var("taxability", $afs->getTaxability()); $this->tpl->set_var("effectivity", $afs->getEffectivity()); $this->formArray["idle"] = "No"; if ($tvalue->getPropertyType() == "Land") { if (is_array($afs->landArray)) { // if land is stripped if (count($afs->landArray) > 1) { foreach ($afs->landArray as $land) { if ($land->getIdle() == "Yes") { $this->formArray["idle"] = "Yes"; break; } } } else { $this->formArray["idle"] = $afs->landArray[0]->getIdle(); } } } if ($this->formArray["idle"] == "") { $this->formArray["idle"] = "No"; } $this->tpl->set_var("idle", $this->formArray["idle"]); } } // grab DueRecords from tdID $this->formArray["totalTaxDue"] = 0.0; $DueList = new SoapObject(NCCBIZ . "DueList.php", "urn:Object"); $dueArrayList = array("Annual" => "", "Q1" => "", "Q2" => "", "Q3" => "", "Q4" => ""); if (!($xmlStr = $DueList->getDueList($tvalue->getTdID()))) { foreach ($dueArrayList as $dueKey => $dueValue) { $this->tpl->set_var("basicTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("sefTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("idleTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("taxDue[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("dueDate[" . $dueKey . "]", "-"); } } else { if (!($domDoc = domxml_open_mem($xmlStr))) { foreach ($dueArrayList as $dueKey => $dueValue) { $this->tpl->set_var("basicTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("sefTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("idleTax[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("taxDue[" . $dueKey . "]", "uncalculated"); $this->tpl->set_var("dueDate[" . $dueKey . "]", "-"); } } else { $dueRecords = new DueRecords(); $dueRecords->parseDomDocument($domDoc); foreach ($dueRecords->getArrayList() as $due) { foreach ($due as $dueKey => $dueValue) { switch ($dueKey) { case "dueType": if ($dueValue == "Annual") { $this->formArray["totalTaxDue"] += $due->getTaxDue(); } $dueArrayList[$dueValue] = $due; $this->tpl->set_var("basicTax[" . $dueValue . "]", formatCurrency($due->getBasicTax())); $this->tpl->set_var("sefTax[" . $dueValue . "]", formatCurrency($due->getSEFTax())); $this->tpl->set_var("idleTax[" . $dueValue . "]", formatCurrency($due->getIdleTax())); $this->tpl->set_var("taxDue[" . $dueValue . "]", formatCurrency($due->getTaxDue())); $this->tpl->set_var("dueDate[" . $dueValue . "]", date("M. d, Y", strtotime($due->getDueDate()))); break; } } } $treasurySettings = new TreasurySettings(); $treasurySettings->selectRecord(); // initialize discountPeriod and discountPercentage for earlyPaymentDiscount $this->tpl->set_var("discountPercentage", $treasurySettings->getDiscountPercentage() . "%"); $this->tpl->set_var("discountPeriod", "January 01, " . date("Y") . " - " . date("F d, Y", strtotime(date("Y") . "-" . $treasurySettings->getDiscountPeriod()))); $this->formArray["discountPercentage"] = $treasurySettings->getDiscountPercentage(); $this->formArray["discountPeriod"] = $treasurySettings->getDiscountPeriod(); $this->formArray["discountPeriod_End"] = strtotime(date("Y") . "-" . $this->formArray["discountPeriod"]); $this->formArray["discountPeriod_Start"] = strtotime(date("Y") . "-01-01"); // initialize penaltyLUTArray $penaltyLUTArray = $treasurySettings->getPenaltyLUT(); foreach ($dueArrayList as $dKey => $due) { $dueArrayList[$dKey]->setEarlyPaymentDiscountPeriod($this->formArray["discountPeriod"]); $dueArrayList[$dKey]->setEarlyPaymentDiscountPercentage($this->formArray["discountPercentage"]); // compute earlyPaymentDiscount as of today // check if today is within the discountPeriod and compute Discount if (strtotime($this->now) >= $this->formArray["discountPeriod_Start"] && strtotime($this->now) <= $this->formArray["discountPeriod_End"]) { $dueArrayList[$dKey]->setEarlyPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"] / 100)); } else { $dueArrayList[$dKey]->setEarlyPaymentDiscount(0.0); } // compute Penalty as of today // check if today is exceeding dueDate and compute penalty if (strtotime($this->now) > strtotime($dueArrayList[$dKey]->getDueDate())) { // count months // numYears = today[year] - dueDate[year] $numYears = date("Y", strtotime($this->now)) - date("Y", strtotime($dueArrayList[$dKey]->getDueDate())); // numMonths = today[month] - dueDate[month] $numMonths = date("n", strtotime($this->now)) - date("n", strtotime($dueArrayList[$dKey]->getDueDate())); // totalMonths = (numYears*12) + numMonths $totalMonths = $numYears * 12 + $numMonths; // associate penaltyPercentage if ($totalMonths >= count($penaltyLUTArray)) { $penaltyPercentage = 0.72; } else { $penaltyPercentage = $penaltyLUTArray[$totalMonths]; } $penalty = $dueArrayList[$dKey]->getTaxDue() * $penaltyPercentage; $dueArrayList[$dKey]->setMonthsOverDue($totalMonths); $dueArrayList[$dKey]->setPenaltyPercentage($penaltyPercentage); $dueArrayList[$dKey]->setPenalty($penalty); } else { $dueArrayList[$dKey]->setMonthsOverDue(0); $dueArrayList[$dKey]->setPenaltyPercentage(0.0); $dueArrayList[$dKey]->setPenalty(0.0); } $this->tpl->set_var("earlyPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getEarlyPaymentDiscount())); $this->tpl->set_var("monthsOverDue[" . $dKey . "]", $dueArrayList[$dKey]->getMonthsOverDue()); $this->tpl->set_var("penaltyPercentage[" . $dKey . "]", $dueArrayList[$dKey]->getPenaltyPercentage() * 100); $this->tpl->set_var("penalty[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getPenalty())); } $this->tpl->set_var("netDue", formatCurrency($dueArrayList["Annual"]->getNetDue())); } } $this->tpl->set_var("ctr", $tdCtr); $this->tpl->parse("defaultTDListBlock", "defaultTDList", true); $this->tpl->parse("toggleTDListBlock", "toggleTDList", true); $this->tpl->parse("TDListBlock", "TDList", true); /* $this->tpl->set_var("LandBlock", ""); $this->tpl->set_var("PlantsTreesBlock", ""); $this->tpl->set_var("ImprovementsBuildingsBlock", ""); $this->tpl->set_var("MachineriesBlock", ""); */ $tdCtr++; } } else { $this->tpl->set_var("defaultTDListBlock", "//no default"); $this->tpl->set_var("toggleTDListBlock", "//no Toggle"); $this->tpl->set_var("TDListBlock", ""); } $this->tpl->set_var("tdCtr", $tdCtr); break; case "landTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "landTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "plantTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "plantTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "bldgTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "bldgTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "machTotalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "machTotalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "totalMarketValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; case "totalAssessedValue": if (!$this->formArray[$key]) { $this->formArray[$key] = $value; } break; default: $this->formArray[$key] = $value; } } $this->formArray["totalMarketValue"] = $this->formArray["landTotalMarketValue"] + $this->formArray["plantTotalMarketValue"] + $this->formArray["bldgTotalMarketValue"] + $this->formArray["machTotalMarketValue"]; $this->formArray["totalAssessedValue"] = $this->formArray["landTotalAssessedValue"] + $this->formArray["plantTotalAssessedValue"] + $this->formArray["bldgTotalAssessedValue"] + $this->formArray["machTotalAssessedValue"]; unset($rptop); $AFSEncode = new SoapObject(NCCBIZ . "AFSEncode.php", "urn:Object"); $rptop = new RPTOP(); $rptop->setRptopID($this->formArray["rptopID"]); $rptop->setLandTotalMarketValue($this->formArray["landTotalMarketValue"]); $rptop->setLandTotalAssessedValue($this->formArray["landTotalAssessedValue"]); $rptop->setPlantTotalMarketValue($this->formArray["plantTotalMarketValue"]); $rptop->setPlantTotalPlantAssessedValue($this->formArray["plantTotalAssessedValue"]); $rptop->setBldgTotalMarketValue($this->formArray["bldgTotalMarketValue"]); $rptop->setBldgTotalAssessedValue($this->formArray["bldgTotalAssessedValue"]); $rptop->setMachTotalMarketValue($this->formArray["machTotalMarketValue"]); $rptop->setMachTotalAssessedValue($this->formArray["machTotalAssessedValue"]); $rptop->setTotalMarketValue($this->formArray["totalMarketValue"]); $rptop->setTotalAssessedValue($this->formArray["totalAssessedValue"]); $rptop->setCreatedBy($this->userID); $rptop->setModifiedBy($this->userID); $rptop->setDomDocument(); $RPTOPEncode = new SoapObject(NCCBIZ . "RPTOPEncode.php", "urn:Object"); $rptop->setDomDocument(); $doc = $rptop->getDomDocument(); $xmlStr = $doc->dump_mem(true); //echo $xmlStr; if (!($ret = $RPTOPEncode->updateRPTOPtotals($xmlStr))) { echo "ret=" . $ret; } //echo $ret; } } $this->setForm(); $this->setPageDetailPerms(); $this->tpl->set_var("uname", $this->user["uname"]); $this->tpl->set_var("today", date("F j, Y", strtotime($this->now))); $this->tpl->set_var("Session", $this->sess->url("") . $this->sess->add_query(array("rptopID" => $this->formArray["rptopID"], "ownerID" => $this->formArray["ownerID"]))); $this->tpl->parse("templatePage", "rptsTemplate"); $this->tpl->finish("templatePage"); $this->tpl->p("templatePage"); }
function Main() { $RPTOPDetails = new SoapObject(NCCBIZ . "RPTOPDetails.php", "urn:Object"); if (!($xmlStr = $RPTOPDetails->getRPTOP($this->formArray["rptopID"]))) { exit("xml failed"); } else { if (!($domDoc = domxml_open_mem($xmlStr))) { exit("error domDoc"); } else { $rptop = new RPTOP(); $rptop->parseDomDocument($domDoc); foreach ($rptop as $key => $value) { switch ($key) { case "owner": if (is_a($value, "Owner")) { $this->formArray["ownerID"] = $rptop->owner->getOwnerID(); $xmlStr = $rptop->owner->domDocument->dump_mem(true); if (!$xmlStr) { $this->formArray["ownerName"] = ""; } else { if (!($domDoc = domxml_open_mem($xmlStr))) { $this->formArray["ownerName"] = ""; } else { $this->displayOwnerList($domDoc); } } } else { $this->formArray["ownerNames"] = ""; } break; case "tdArray": $tdCtr = 0; if (count($value)) { foreach ($value as $tkey => $tvalue) { $this->tdRecord["arpNumber"] = $tvalue->getTaxDeclarationNumber(); $AFSDetails = new SoapObject(NCCBIZ . "AFSDetails.php", "urn:Object"); if (!($xmlStr = $AFSDetails->getAFS($tvalue->getAfsID()))) { // error xml } else { if (!($domDoc = domxml_open_mem($xmlStr))) { // error domDoc } else { $afs = new AFS(); $afs->parseDomDocument($domDoc); $odID = $afs->getOdID(); $od = new OD(); $od->selectRecord($odID); if (is_object($od->locationAddress)) { $locationAddress = $od->getLocationAddress(); $this->tdRecord["location"] = $locationAddress->getBarangay() . ", " . $locationAddress->getMunicipalityCity(); } $this->tdRecord["assessedValue"] = $afs->getTotalAssessedValue(); switch ($tvalue->getPropertyType()) { case "ImprovementsBuildings": if (is_array($afs->getImprovementsBuildingsArray())) { $improvementsBuildings = $afs->improvementsBuildingsArray[0]; $actualUse = $improvementsBuildings->getActualUse(); if (is_numeric($actualUse)) { $improvementsBuildingsActualUses = new ImprovementsBuildingsActualUses(); $improvementsBuildingsActualUses->selectRecord($actualUse); $actualUse = $improvementsBuildingsActualUses->getCode(); //$actualUse = $improvementsBuildingsActualUses->getDescription(); } $this->tdRecord["class"] = $actualUse; } break; case "Machineries": if (is_array($afs->getMachineriesArray())) { $machineries = $afs->machineriesArray[0]; $actualUse = $machineries->getActualUse(); if (is_numeric($actualUse)) { $machineriesActualUses = new MachineriesActualUses(); $machineriesActualUses->selectRecord($actualUse); $actualUse = $machineriesActualUses->getCode(); //$actualUse = $machineriesActualUses->getDescription(); } $this->tdRecord["class"] = $actualUse; } break; case "Land": default: if (is_array($afs->getLandArray())) { $land = $afs->landArray[0]; $actualUse = $land->getActualUse(); if (is_numeric($actualUse)) { $landActualUses = new LandActualUses(); $landActualUses->selectRecord($actualUse); $actualUse = $landActualUses->getCode(); //$actualUse = $landActualUses->getDescription(); } $this->tdRecord["class"] = $actualUse; } else { if (is_array($afs->getPlantsTreesArray())) { if (is_numeric($actualUse)) { $plantsTreesActualUses = new PlantsTreesActualUses(); $plantsTreesActualUses->selectRecord($actualUse); $actualUse = $plantsTreesActualUses->getCode(); //$actualUse = $plantsTreesActualUses->getDescription(); } $this->tdRecord["class"] = $actualUse; } } } } } // grab DueRecords from tdID $DueList = new SoapObject(NCCBIZ . "DueList.php", "urn:Object"); $dueArrayList = array("Annual" => "", "Q1" => "", "Q2" => "", "Q3" => "", "Q4" => ""); if (!($xmlStr = $DueList->getDueList($tvalue->getTdID(), $rptop->getTaxableYear()))) { // error xml // taxDue = uncalculated } else { if (!($domDoc = domxml_open_mem($xmlStr))) { // error domDoc // taxDue = uncalculated } else { $dueRecords = new DueRecords(); $dueRecords->parseDomDocument($domDoc); foreach ($dueRecords->getArrayList() as $due) { foreach ($due as $dueKey => $dueValue) { switch ($dueKey) { case "dueType": if ($dueValue == "Annual") { $this->formArray["totalTaxDue"] += $due->getTaxDue(); $this->tdRecord["basic"] = $due->getBasicTax(); $this->tdRecord["sef"] = $due->getSEFTax(); } $dueArrayList[$dueValue] = $due; $this->tpl->set_var("basicTax[" . $dueValue . "]", formatCurrency($due->getBasicTax())); $this->tpl->set_var("sefTax[" . $dueValue . "]", formatCurrency($due->getSEFTax())); $this->tpl->set_var("idleTax[" . $dueValue . "]", formatCurrency($due->getIdleTax())); $this->tpl->set_var("taxDue[" . $dueValue . "]", formatCurrency($due->getTaxDue())); $this->tpl->set_var("dueDate[" . $dueValue . "]", date("M. d, Y", strtotime($due->getDueDate()))); $dueDateYear = date("Y", strtotime($due->getDueDate())); $this->tdRecord["year"] = $dueDateYear; break; } } } $treasurySettings = new TreasurySettings(); $treasurySettings->selectRecord(); // initialize discountPeriod and discountPercentage for earlyPaymentDiscount $this->tpl->set_var("discountPercentage", $treasurySettings->getDiscountPercentage() . "%"); $this->tpl->set_var("discountPeriod", "January 01, " . $dueDateYear . " - " . date("F d, Y", strtotime($dueDateYear . "-" . $treasurySettings->getDiscountPeriod()))); $this->formArray["discountPercentage"] = $treasurySettings->getDiscountPercentage(); $this->formArray["discountPeriod"] = $treasurySettings->getDiscountPeriod(); $this->formArray["discountPeriod_End"] = strtotime($dueDateYear . "-" . $this->formArray["discountPeriod"]); $this->formArray["discountPeriod_Start"] = strtotime($dueDateYear . "-01-01"); // initialize advancedDiscountPercentage for advancedPayment $this->tpl->set_var("advancedDiscountPercentage", $treasurySettings->getAdvancedDiscountPercentage() . "%"); $this->formArray["advancedDiscountPercentage"] = $treasurySettings->getAdvancedDiscountPercentage(); // initialize penaltyLUTArray $penaltyLUTArray = $treasurySettings->getPenaltyLUT(); $this->penaltyLUTArray = $treasurySettings->getPenaltyLUT(); foreach ($dueArrayList as $dKey => $due) { $dueArrayList[$dKey]->setEarlyPaymentDiscountPeriod($this->formArray["discountPeriod"]); $dueArrayList[$dKey]->setEarlyPaymentDiscountPercentage($this->formArray["discountPercentage"]); // compute earlyPaymentDiscount as of today // check if today is within the discountPeriod and compute Discount // AND if today is BEFORE annual dueDate $dueArrayList[$dKey]->setEarlyPaymentDiscount(0.0); if (strtotime($this->now) >= $this->formArray["discountPeriod_Start"] && strtotime($this->now) <= $this->formArray["discountPeriod_End"]) { if (strtotime($this->now) <= strtotime($dueArrayList[$dKey]->getDueDate())) { $dueArrayList[$dKey]->setEarlyPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["discountPercentage"] / 100)); } } // compute advancedPaymentDiscount as of today // check if today is BEFORE January 1 of the year of the annual dueDate $dueArrayList[$dKey]->setAdvancedPaymentDiscount(0.0); if (strtotime($this->now) < strtotime(date("Y", strtotime($dueArrayList[$dKey]->getDueDate())) . "-01-01")) { $dueArrayList[$dKey]->setAdvancedPaymentDiscount($dueArrayList[$dKey]->getTaxDue() * ($this->formArray["advancedDiscountPercentage"] / 100)); } $latestPaymentDate = $this->getLatestPaymentDate($dueArrayList); $amountPaidForDue = $this->getAmountPaidForDue($dueArrayList); $amnestyStatus = $this->getAmnestyStatusForDue($dueArrayList); // calculate Penalties verses either today or verses the last paymentDate if ($latestPaymentDate != "") { $dueArrayList[$dKey] = $this->computePenalty($latestPaymentDate, $dueArrayList[$dKey]); // if balance is 0 leave penalty as is, otherwise calculatePenalty according to date now $balance = $dueArrayList[$dKey]->getInitialNetDue() - $amountPaidForDue; if (round($balance, 4) > 0) { $dueArrayList[$dKey] = $this->computePenalty($this->now, $dueArrayList[$dKey]); } } else { $dueArrayList[$dKey] = $this->computePenalty($this->now, $dueArrayList[$dKey]); } $this->tpl->set_var("advancedPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getAdvancedPaymentDiscount())); $this->tpl->set_var("earlyPaymentDiscount[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getEarlyPaymentDiscount())); $this->tpl->set_var("monthsOverDue[" . $dKey . "]", $dueArrayList[$dKey]->getMonthsOverDue()); $this->tpl->set_var("penaltyPercentage[" . $dKey . "]", $dueArrayList[$dKey]->getPenaltyPercentage() * 100); $this->tpl->set_var("penalty[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getPenalty())); $this->tpl->set_var("initialNetDue[" . $dKey . "]", formatCurrency($dueArrayList[$dKey]->getInitialNetDue())); $this->initialNetDue[$dKey] = $dueArrayList[$dKey]->getInitialNetDue(); if ($amnestyStatus) { $this->initialNetDue[$dKey] -= $dueArrayList[$dKey]->getPenalty(); $this->tpl->set_var("amnesty[" . $dKey . "]", "Yes"); } else { $this->tpl->set_var("amnesty[" . $dKey . "]", "No"); } if ($dKey == "Annual") { $this->tdRecord["penalty"] = $dueArrayList[$dKey]->getPenalty(); } } } } // display Backtaxes and previousTD Backtaxes $this->formArray["totalBacktaxesBalance"] = 0; $this->displayBacktaxTD($tvalue->getTdID()); $precedingTDArray = $this->getPrecedingTDArray($tvalue); if (is_array($precedingTDArray)) { foreach ($precedingTDArray as $precedingTD) { $this->displayBacktaxTD($precedingTD->getTdID()); } } $this->tpl->set_var("total", number_format($this->formArray["totalBacktaxesDue"], 2)); $this->tpl->set_var("totalBacktaxesBalance", number_format($this->formArray["totalBacktaxesBalance"], 2)); // grab dueID's and backtaxTDID's to run through payments // create $dueIDArray foreach ($dueArrayList as $due) { $this->dueIDArray[] = $due->getDueID(); } $this->displayTotalPaid(); $this->displayNetDue(); $this->tdArrayList[$this->tdRecord["year"] . $this->tdArrayListCounter] = $this->tdRecord; $this->tdArrayListCounter++; unset($this->tdRecord); $tdCtr++; } } else { // 0 } $this->tpl->set_var("tdCtr", $tdCtr); break; } } } } if (is_array($this->tdArrayList)) { ksort($this->tdArrayList); reset($this->tdArrayList); $this->tpl->set_block("rptsTemplate", "TDList", "TDListBlock"); $this->formArray["totalTaxDue"] = 0; foreach ($this->tdArrayList as $tdRecord) { $this->tpl->set_var("tdYPos", $this->formArray["tdYPosValue"]); $this->tpl->set_var("arpNumber", $tdRecord["arpNumber"]); $this->tpl->set_var("class", $tdRecord["class"]); if (strlen($tdRecord["location"]) > 25) { $this->formArray["tdYPosValue"] -= 15; } $this->tpl->set_var("location", $tdRecord["location"]); $this->tpl->set_var("year", $tdRecord["year"]); $this->tpl->set_var("assessedValue", formatCurrency($tdRecord["assessedValue"])); $this->tpl->set_var("basic", formatCurrency($tdRecord["basic"])); $this->tpl->set_var("sef", formatCurrency($tdRecord["sef"])); $this->tpl->set_var("penalty", formatCurrency($tdRecord["penalty"])); $this->tpl->set_var("taxDue", formatCurrency($tdRecord["taxDue"])); $this->formArray["totalTaxDue"] += $tdRecord["taxDue"]; $this->tpl->parse("TDListBlock", "TDList", true); $this->formArray["tdYPosValue"] -= 15; } } $this->setForm(); $this->setLguDetails(); $this->tpl->parse("templatePage", "rptsTemplate"); $this->tpl->finish("templatePage"); $testpdf = new PDFWriter(); $testpdf->setOutputXML($this->tpl->get("templatePage"), "test"); if (isset($this->formArray["print"])) { $testpdf->writePDF($name); //,$this->formArray["print"]); } else { $testpdf->writePDF($name); } // header("location: ".$testpdf->pdfPath); exit; }
function Main() { switch ($this->formArray["formAction"]) { case "delete": //print_r($this->formArray); if (count($this->formArray["rptopID"]) > 0) { $RPTOPList = new SoapObject(NCCBIZ . "RPTOPList.php", "urn:Object"); if (!($deletedRows = $RPTOPList->deleteRPTOP($this->formArray["rptopID"]))) { $this->tpl->set_var("msg", "SOAP failed"); } else { $this->tpl->set_var("msg", $deletedRows . " records deleted"); } } else { $this->tpl->set_var("msg", "0 records deleted"); } break; case "updateCalculation": if (is_array($this->formArray["rptopID"])) { $RPTOPDetails = new SoapObject(NCCBIZ . "RPTOPDetails.php", "urn:Object"); $AFSDetails = new SoapObject(NCCBIZ . "AFSDetails.php", "urn:Object"); $DueDetails = new SoapObject(NCCBIZ . "DueDetails.php", "urn:Object"); $DueEncode = new SoapObject(NCCBIZ . "DueEncode.php", "urn:Object"); $DueList = new SoapObject(NCCBIZ . "DueList.php", "urn:Object"); $dueIDArray = array("Annual" => "", "Q1" => "", "Q2" => "", "Q3" => "", "Q4" => ""); $treasurySettings = new TreasurySettings(); $treasurySettings->selectRecord(); $this->formArray["masterBasicTaxRate"] = $treasurySettings->getPctRPTax(); $this->formArray["masterSEFTaxRate"] = $treasurySettings->getPctSEF(); $this->formArray["masterIdleTaxRate"] = $treasurySettings->getPctIdle(); $this->formArray["discountPeriod"] = $treasurySettings->getDiscountPeriod(); $this->formArray["annualDueDate"] = $treasurySettings->getAnnualDueDate(); foreach ($this->formArray["rptopID"] as $rptopID) { if (!($xmlStr = $RPTOPDetails->getRPTOP($rptopID))) { // error xmlStr } else { if (!($domDoc = domxml_open_mem($xmlStr))) { // error domDoc } else { $rptop = new RPTOP(); $rptop->parseDomDocument($domDoc); $this->formArray["taxableYear"] = $rptop->getTaxableYear(); $tdArray = $rptop->getTDArray(); if (is_array($tdArray)) { foreach ($tdArray as $td) { $this->formArray["assessedValue"] = ""; $this->formArray["taxability"] = ""; $this->formArray["idle"] = ""; $this->formArray["tdID"] = $td->getTdID(); $this->formArray["dueID"] = ""; $this->formArray["propertyType"] = $td->getPropertyType(); if (!($afsXmlStr = $AFSDetails->getAFS($td->getAfsID()))) { // error afsXmlStr } else { if (!($afsDomDoc = domxml_open_mem($afsXmlStr))) { // error afsDomDoc } else { $afs = new AFS(); $afs->parseDomDocument($afsDomDoc); $this->formArray["assessedValue"] = $afs->getTotalAssessedValue(); $this->formArray["taxability"] = $afs->getTaxability(); $this->formArray["effectivity"] = $afs->getEffectivity(); $this->formArray["dueDate"] = date("Y-n-d", strtotime($this->formArray["taxableYear"] . "-" . $this->formArray["annualDueDate"])); if ($this->formArray["propertyType"] == "Land") { if (is_array($afs->getLandArray())) { $this->formArray["idle"] = $afs->landArray[0]->getIdle(); } } } } if (!($dueXmlStr = $DueList->getDueList($td->getTdID(), $rptop->getTaxableYear()))) { $this->formArray["dueID"] = ""; $dueIDArray["Annual"] = ""; } else { if (!($dueDomDoc = domxml_open_mem($dueXmlStr))) { $this->formArray["dueID"] = ""; $dueIDArray["Annual"] = ""; } else { //print_r(htmlspecialchars($xmlStr)); //exit; $dueRecords = new DueRecords(); $dueRecords->parseDomDocument($dueDomDoc); foreach ($dueRecords->getArrayList() as $due) { foreach ($due as $dueKey => $dueValue) { switch ($dueKey) { case "dueType": $dueIDArray[$dueValue] = $due->getDueID(); break; } } } $this->formArray["dueID"] = $dueIDArray["Annual"]; } } $this->formArray["basicTaxRate"] = $this->formArray["masterBasicTaxRate"]; $this->formArray["sefTaxRate"] = $this->formArray["masterSEFTaxRate"]; $this->formArray["idleTaxRate"] = $this->formArray["masterIdleTaxRate"]; $this->formArray["basicTax"] = un_number_format($this->formArray["assessedValue"]) * $this->formArray["basicTaxRate"]; $this->formArray["sefTax"] = un_number_format($this->formArray["assessedValue"]) * $this->formArray["sefTaxRate"]; // if land->idle is "Yes", compute idleTax, otherwise set idleTax to zero if ($this->formArray["propertyType"] == "Land") { if ($this->formArray["idle"] == "Yes") { $this->formArray["idleTax"] = un_number_format($this->formArray["assessedValue"]) * $this->formArray["idleTaxRate"]; } else { $this->formArray["idleTax"] = "0.00"; } } // if afs->taxability is "Exempt", reset computations to zero. if ($this->formArray["taxability"] == "Exempt") { $this->formArray["basicTax"] = "0.00"; $this->formArray["sefTax"] = "0.00"; $this->formArray["idleTax"] = "0.00"; } if ($dueIDArray["Annual"] != "") { $dueArray = $this->setDues(); foreach ($dueArray as $due) { $doc = $due->getDomDocument(); $xmlStr = $doc->dump_mem(true); if (!($ret = $DueEncode->updateDue($xmlStr))) { // error update } unset($doc); unset($xmlStr); } } else { $dueArray = $this->setDues(); foreach ($dueArray as $due) { $doc = $due->getDomDocument(); $xmlStr = $doc->dump_mem(true); if (!($ret = $DueEncode->saveDue($xmlStr))) { // error save } unset($doc); unset($xmlStr); } } $this->formArray["taxableYear"] = $rptop->getTaxableYear(); $this->refreshTDHistory($td); } } unset($tdArray); } } } } if ($this->formArray["searchKey"] != "") { $this->formArray["formAction"] = "search"; } else { $this->formArray["formAction"] = ""; } header("Location: CalculateRPTOPBatch.php" . $this->sess->url("") . "&page=" . $this->formArray["page"] . "&sortBy=" . $this->formArray["sortBy"] . "&sortOrder=" . $this->formArray["sortOrder"] . "&formAction=" . $this->formArray["formAction"] . "&searchKey=" . $this->formArray["searchKey"]); exit; break; case "search": $RPTOPList = new SoapObject(NCCBIZ . "RPTOPList.php", "urn:Object"); $this->tpl->set_block("rptsTemplate", "Pages", "PagesBlock"); $this->tpl->set_block("rptsTemplate", "PagesList", "PagesListBlock"); if (!($count = $RPTOPList->getSearchCount($this->formArray["searchKey"]))) { $this->tpl->set_var("PagesBlock", ""); $this->tpl->set_var("PagesListBlock", ""); $numOfPages = 1; $this->tpl->set_block("rptsTemplate", "PageNavigator", "PageNavigatorBlock"); $this->tpl->set_var("PageNavigatorBlock", ""); } else { $numOfPages = ceil($count / PAGE_BY); // page list nav $this->formArray["pageLinksInLine"] = 7; if ($this->formArray["page"] < round($this->formArray["pageLinksInLine"] / 2)) { $startPageLinks = 1; } else { $startPageLinks = $this->formArray["page"] - round($this->formArray["pageLinksInLine"] / 2); if ($startPageLinks < 1) { $startPageLinks = 1; } } $endPageLinks = $startPageLinks + ($this->formArray["pageLinksInLine"] - 1); if ($endPageLinks > $numOfPages) { $endPageLinks = $numOfPages; } for ($i = $startPageLinks; $i <= $endPageLinks; $i++) { if ($i == $this->formArray["page"]) { $this->tpl->set_var("pageListPages", ""); $this->tpl->set_var("pageListPagesUrl", ""); $this->tpl->set_var("pageListPaged", $i); } else { $this->tpl->set_var("pageListPages", $i); $this->tpl->set_var("pageListPagesUrl", $i . "&formAction=search&searchKey=" . urlencode($this->formArray["searchKey"])); $this->tpl->set_var("pageListPaged", ""); } $this->tpl->parse("PagesListBlock", "PagesList", true); } // drop down nav for ($i = 1; $i <= $numOfPages; $i++) { if ($i == $this->formArray["page"]) { $this->tpl->set_var("pages", $i); $this->tpl->set_var("pagesUrl", $i . "&formAction=search&searchKey=" . urlencode($this->formArray["searchKey"])); $this->tpl->set_var("paged", "selected"); } else { $this->tpl->set_var("pages", $i); $this->tpl->set_var("pagesUrl", $i . "&formAction=search&searchKey=" . urlencode($this->formArray["searchKey"])); $this->tpl->set_var("paged", ""); } $this->tpl->parse("PagesBlock", "Pages", true); } } if ($numOfPages == $this->formArray["page"]) { $this->tpl->set_var("nextTxt", ""); } else { $this->tpl->set_var("next", $this->formArray["page"] + 1 . "&formAction=search&searchKey=" . urlencode($this->formArray["searchKey"])); $this->tpl->set_var("nextTxt", "next"); } if ($this->formArray["page"] == 1) { $this->tpl->set_var("previousTxt", ""); } else { $this->tpl->set_var("previous", $this->formArray["page"] - 1 . "&formAction=search&searchKey=" . urlencode($this->formArray["searchKey"])); $this->tpl->set_var("previousTxt", "previous"); } $this->tpl->set_var("pageOf", $this->formArray["page"] . " of " . $numOfPages); $condition = $this->sortBlocks(); if (!($xmlStr = $RPTOPList->searchRPTOP($this->formArray["page"], $condition, $this->formArray["searchKey"]))) { $this->tpl->set_var("pageOf", ""); $this->tpl->set_block("rptsTemplate", "RPTOPTable", "RPTOPTableBlock"); $this->tpl->set_var("RPTOPTableBlock", ""); $this->tpl->set_block("rptsTemplate", "RPTOPDBEmpty", "RPTOPDBEmptyBlock"); $this->tpl->set_var("RPTOPDBEmptyBlock", ""); $this->tpl->set_block("rptsTemplate", "Pages", "PagesBlock"); $this->tpl->set_var("PagesBlock", ""); $this->tpl->set_var("PagesListBlock", ""); $this->tpl->set_var("previousTxt", ""); $this->tpl->set_var("nextTxt", ""); } else { if (!($domDoc = domxml_open_mem($xmlStr))) { $this->tpl->set_block("rptsTemplate", "RPTOPListTable", "RPTOPListTableBlock"); $this->tpl->set_var("RPTOPListTableBlock", "error xmlDoc"); } else { $this->tpl->set_block("rptsTemplate", "NotFound", "NotFoundBlock"); $this->tpl->set_var("NotFoundBlock", ""); $rptopRecords = new RPTOPRecords(); $rptopRecords->parseDomDocument($domDoc); $list = $rptopRecords->getArrayList(); if (count($list)) { $this->tpl->set_block("rptsTemplate", "RPTOPDBEmpty", "RPTOPDBEmptyBlock"); $this->tpl->set_var("RPTOPDBEmptyBlock", ""); $this->tpl->set_block("rptsTemplate", "RPTOPList", "RPTOPListBlock"); $this->tpl->set_block("RPTOPList", "PersonList", "PersonListBlock"); $this->tpl->set_block("RPTOPList", "CompanyList", "CompanyListBlock"); foreach ($list as $key => $value) { $this->tpl->set_var("rptopID", $value->getRptopID()); $oValue = $value->owner; $pOwnerStr = ""; if (count($oValue->personArray)) { foreach ($oValue->personArray as $pKey => $pValue) { $this->tpl->set_var("personID", $pValue->getPersonID()); $this->tpl->set_var("OwnerPerson", $pValue->getFullName()); $this->tpl->parse("PersonListBlock", "PersonList", true); } } if (count($oValue->companyArray)) { foreach ($oValue->companyArray as $cKey => $cValue) { $this->tpl->set_var("companyID", $cValue->getCompanyID()); $this->tpl->set_var("OwnerCompany", $cValue->getCompanyName()); $this->tpl->parse("CompanyListBlock", "CompanyList", true); } } if (count($oValue->personArray) || count($oValue->companyArray)) { $this->tpl->set_var("none", ""); } else { $this->tpl->set_var("none", "none"); } $this->tpl->set_var("totalMarketValue", number_format($value->getTotalMarketValue(), 2, '.', ',')); $this->tpl->set_var("totalAssessedValue", number_format($value->getTotalAssessedValue(), 2, '.', ',')); $this->tpl->set_var("taxableYear", $value->getTaxableYear()); // grab Dues of rptop to get totalTaxDue $totalTaxDue = 0.0; if (is_array($value->tdArray)) { foreach ($value->tdArray as $td) { $DueDetails = new SoapObject(NCCBIZ . "DueDetails.php", "urn:Object"); $AFSDetails = new SoapObject(NCCBIZ . "AFSDetails.php", "urn:Object"); $afsXml = $AFSDetails->getAfs($td->getAfsID()); $afsDomDoc = domxml_open_mem($afsXml); $afs = new AFS(); $afs->parseDomDocument($afsDomDoc); if (!($xmlStr = $DueDetails->getDueFromTdID($td->getTdID(), $value->getTaxableYear()))) { $totalTaxDue = "uncalculated"; break; } else { if (!($domDoc = domxml_open_mem($xmlStr))) { $totalTaxDue = "uncalculated"; } else { $due = new Due(); $due->parseDomDocument($domDoc); $totalTaxDue += $due->getTaxDue(); } } } } else { $totalTaxDue = "no TD's"; } if (is_numeric($totalTaxDue)) { $totalTaxDue = formatCurrency($totalTaxDue); } $this->tpl->set_var("totalTaxDue", $totalTaxDue); $this->setRPTOPListBlockPerms(); $this->tpl->parse("RPTOPListBlock", "RPTOPList", true); $this->tpl->set_var("PersonListBlock", ""); $this->tpl->set_var("CompanyListBlock", ""); } } else { $this->tpl->set_block("rptsTemplate", "RPTOPList", "RPTOPListBlock"); $this->tpl->set_var("RPTOPListBlock", "huh"); } } } break; case "cancel": header("location: CalculateRPTOPBatch.php"); exit; break; default: $this->tpl->set_var("msg", ""); $RPTOPList = new SoapObject(NCCBIZ . "RPTOPList.php", "urn:Object"); $this->tpl->set_block("rptsTemplate", "Pages", "PagesBlock"); $this->tpl->set_block("rptsTemplate", "PagesList", "PagesListBlock"); $this->tpl->set_block("rptsTemplate", "NotFound", "NotFoundBlock"); $this->tpl->set_var("NotFoundBlock", ""); if (!($count = $RPTOPList->getRPTOPCount())) { $this->tpl->set_var("PagesBlock", ""); $this->tpl->set_var("PagesListBlock", ""); $this->tpl->set_block("rptsTemplate", "PageNavigator", "PageNavigatorBlock"); $this->tpl->set_var("PageNavigatorBlock", ""); } else { $numOfPages = ceil($count / PAGE_BY); // page list nav $this->formArray["pageLinksInLine"] = 7; if ($this->formArray["page"] < round($this->formArray["pageLinksInLine"] / 2)) { $startPageLinks = 1; } else { $startPageLinks = $this->formArray["page"] - round($this->formArray["pageLinksInLine"] / 2); if ($startPageLinks < 1) { $startPageLinks = 1; } } $endPageLinks = $startPageLinks + ($this->formArray["pageLinksInLine"] - 1); if ($endPageLinks > $numOfPages) { $endPageLinks = $numOfPages; } for ($i = $startPageLinks; $i <= $endPageLinks; $i++) { if ($i == $this->formArray["page"]) { $this->tpl->set_var("pageListPages", ""); $this->tpl->set_var("pageListPagesUrl", ""); $this->tpl->set_var("pageListPaged", $i); } else { $this->tpl->set_var("pageListPages", $i); $this->tpl->set_var("pageListPagesUrl", $i); $this->tpl->set_var("pageListPaged", ""); } $this->tpl->parse("PagesListBlock", "PagesList", true); } // drop down nav for ($i = 1; $i <= $numOfPages; $i++) { if ($i == $this->formArray["page"]) { $this->tpl->set_var("pages", $i); $this->tpl->set_var("pagesUrl", $i); $this->tpl->set_var("paged", "selected"); } else { $this->tpl->set_var("pages", $i); $this->tpl->set_var("pagesUrl", $i); $this->tpl->set_var("paged", ""); } $this->tpl->parse("PagesBlock", "Pages", true); } } if ($numOfPages == $this->formArray["page"]) { $this->tpl->set_var("nextTxt", ""); } else { $this->tpl->set_var("next", $this->formArray["page"] + 1); $this->tpl->set_var("nextTxt", "next"); } if ($this->formArray["page"] == 1) { $this->tpl->set_var("previousTxt", ""); } else { $this->tpl->set_var("previous", $this->formArray["page"] - 1); $this->tpl->set_var("previousTxt", "previous"); } if ($numOfPages == "") { $this->tpl->set_var("pageOf", ""); } else { $this->tpl->set_var("pageOf", $this->formArray["page"] . " of " . $numOfPages); } $condition = $this->sortBlocks(); if (!($xmlStr = $RPTOPList->getRPTOPList($this->formArray["page"], $condition))) { $this->tpl->set_block("rptsTemplate", "RPTOPTable", "RPTOPTableBlock"); $this->tpl->set_var("RPTOPTableBlock", ""); } else { if (!($domDoc = domxml_open_mem($xmlStr))) { $this->tpl->set_block("rptsTemplate", "RPTOPListTable", "RPTOPListTableBlock"); $this->tpl->set_var("RPTOPListTableBlock", ""); } else { $rptopRecords = new RPTOPRecords(); $rptopRecords->parseDomDocument($domDoc); $list = $rptopRecords->getArrayList(); if (count($list)) { $this->tpl->set_block("rptsTemplate", "RPTOPDBEmpty", "RPTOPDBEmptyBlock"); $this->tpl->set_var("RPTOPDBEmptyBlock", ""); $this->tpl->set_block("rptsTemplate", "RPTOPList", "RPTOPListBlock"); $this->tpl->set_block("RPTOPList", "PersonList", "PersonListBlock"); $this->tpl->set_block("RPTOPList", "CompanyList", "CompanyListBlock"); foreach ($list as $key => $value) { $this->tpl->set_var("rptopID", $value->getRptopID()); $oValue = $value->owner; $pOwnerStr = ""; if (count($oValue->personArray)) { foreach ($oValue->personArray as $pKey => $pValue) { $this->tpl->set_var("personID", $pValue->getPersonID()); $this->tpl->set_var("OwnerPerson", $pValue->getFullName()); $this->tpl->parse("PersonListBlock", "PersonList", true); } } if (count($oValue->companyArray)) { foreach ($oValue->companyArray as $cKey => $cValue) { $this->tpl->set_var("companyID", $cValue->getCompanyID()); $this->tpl->set_var("OwnerCompany", $cValue->getCompanyName()); $this->tpl->parse("CompanyListBlock", "CompanyList", true); } } if (count($oValue->personArray) || count($oValue->companyArray)) { $this->tpl->set_var("none", ""); } else { $this->tpl->set_var("none", "none"); } $this->tpl->set_var("totalMarketValue", number_format($value->getTotalMarketValue(), 2, '.', ',')); $this->tpl->set_var("totalAssessedValue", number_format($value->getTotalAssessedValue(), 2, '.', ',')); $this->tpl->set_var("taxableYear", $value->getTaxableYear()); // grab Dues of rptop to get totalTaxDue $totalTaxDue = 0.0; if (is_array($value->tdArray)) { foreach ($value->tdArray as $td) { $DueDetails = new SoapObject(NCCBIZ . "DueDetails.php", "urn:Object"); $AFSDetails = new SoapObject(NCCBIZ . "AFSDetails.php", "urn:Object"); $afsXml = $AFSDetails->getAfs($td->getAfsID()); $afsDomDoc = domxml_open_mem($afsXml); $afs = new AFS(); $afs->parseDomDocument($afsDomDoc); if (!($xmlStr = $DueDetails->getDueFromTdID($td->getTdID(), $value->getTaxableYear()))) { $totalTaxDue = "uncalculated"; break; } else { if (!($domDoc = domxml_open_mem($xmlStr))) { $totalTaxDue = "uncalculated"; } else { $due = new Due(); $due->parseDomDocument($domDoc); $totalTaxDue += $due->getTaxDue(); } } } } else { $totalTaxDue = "no TD's"; } if (is_numeric($totalTaxDue)) { $totalTaxDue = formatCurrency($totalTaxDue); } $this->tpl->set_var("totalTaxDue", $totalTaxDue); $this->setRPTOPListBlockPerms(); $this->tpl->parse("RPTOPListBlock", "RPTOPList", true); $this->tpl->set_var("PersonListBlock", ""); $this->tpl->set_var("CompanyListBlock", ""); } } else { $this->tpl->set_block("rptsTemplate", "RPTOPList", "RPTOPListBlock"); $this->tpl->set_var("RPTOPListBlock", "huh"); } } } } $this->setForm(); $this->setPageDetailPerms(); $this->tpl->set_var("uname", $this->user["uname"]); $this->tpl->set_var("today", date("F j, Y")); $this->tpl->set_var("Session", $this->sess->url("")); $this->tpl->parse("templatePage", "rptsTemplate"); $this->tpl->finish("templatePage"); $this->tpl->p("templatePage"); }