Fix: Avoid call method on non object error

This commit is contained in:
Laurent Destailleur 2013-03-23 18:04:46 +01:00
parent 4d527d26af
commit 73de8d169f
2 changed files with 19 additions and 19 deletions

View File

@ -185,11 +185,11 @@ abstract class CommonDocGenerator
} }
$array_thirdparty=array_merge($array_thirdparty,array('company_options_'.$key => $object->array_options['options_'.$key])); $array_thirdparty=array_merge($array_thirdparty,array('company_options_'.$key => $object->array_options['options_'.$key]));
} }
} }
return $array_thirdparty; return $array_thirdparty;
} }
/** /**
* Define array with couple substitution key => substitution value * Define array with couple substitution key => substitution value
* *
@ -201,7 +201,7 @@ abstract class CommonDocGenerator
function get_substitutionarray_propal($object,$outputlangs,$array_key='object') function get_substitutionarray_propal($object,$outputlangs,$array_key='object')
{ {
global $conf; global $conf;
$array_propal=array( $array_propal=array(
$array_key.'_id'=>$object->id, $array_key.'_id'=>$object->id,
$array_key.'_ref'=>$object->ref, $array_key.'_ref'=>$object->ref,
@ -224,14 +224,14 @@ abstract class CommonDocGenerator
$array_key.'_note_private'=>$object->note, $array_key.'_note_private'=>$object->note,
$array_key.'_note'=>$object->note_public, $array_key.'_note'=>$object->note_public,
); );
// Add vat by rates // Add vat by rates
foreach ($object->lines as $line) foreach ($object->lines as $line)
{ {
if (empty($array_propal[$array_key.'_total_vat_'.$line->tva_tx])) $array_propal[$array_key.'_total_vat_'.$line->tva_tx]=0; if (empty($array_propal[$array_key.'_total_vat_'.$line->tva_tx])) $array_propal[$array_key.'_total_vat_'.$line->tva_tx]=0;
$array_propal[$array_key.'_total_vat_'.$line->tva_tx]+=$line->total_tva; $array_propal[$array_key.'_total_vat_'.$line->tva_tx]+=$line->total_tva;
} }
// Retrieve extrafields // Retrieve extrafields
if(is_array($object->array_options) && count($object->array_options)) if(is_array($object->array_options) && count($object->array_options))
{ {
@ -240,12 +240,12 @@ abstract class CommonDocGenerator
$extrafields = new ExtraFields($this->db); $extrafields = new ExtraFields($this->db);
$extralabels = $extrafields->fetch_name_optionals_label('propal',true); $extralabels = $extrafields->fetch_name_optionals_label('propal',true);
$object->fetch_optionals($object->id,$extralabels); $object->fetch_optionals($object->id,$extralabels);
$array_propal = $this->fill_substitutionarray_with_extrafields($object,$array_propal,$extrafields,$array_key,$outputlangs); $array_propal = $this->fill_substitutionarray_with_extrafields($object,$array_propal,$extrafields,$array_key,$outputlangs);
} }
return $array_propal; return $array_propal;
} }
/** /**
* Define array with couple substitution key => substitution value * Define array with couple substitution key => substitution value
@ -257,7 +257,7 @@ abstract class CommonDocGenerator
function get_substitutionarray_propal_lines($line,$outputlangs) function get_substitutionarray_propal_lines($line,$outputlangs)
{ {
global $conf; global $conf;
return array( return array(
'line_fulldesc'=>doc_getlinedesc($line,$outputlangs), 'line_fulldesc'=>doc_getlinedesc($line,$outputlangs),
'line_product_ref'=>$line->product_ref, 'line_product_ref'=>$line->product_ref,
@ -274,7 +274,7 @@ abstract class CommonDocGenerator
'line_date_end'=>$line->date_end 'line_date_end'=>$line->date_end
); );
} }
/** /**
* Fill array with couple extrafield key => extrafield value * Fill array with couple extrafield key => extrafield value
* *
@ -309,14 +309,14 @@ abstract class CommonDocGenerator
{ {
$object->array_options['options_'.$key] = ($object->array_options['options_'.$key]!="0000-00-00 00:00:00"?dol_print_date($object->array_options['options_'.$key],'dayhour'):''); $object->array_options['options_'.$key] = ($object->array_options['options_'.$key]!="0000-00-00 00:00:00"?dol_print_date($object->array_options['options_'.$key],'dayhour'):'');
} }
$array_to_fill=array_merge($array_to_fill,array($array_key.'_options_'.$key => $object->array_options['options_'.$key])); $array_to_fill=array_merge($array_to_fill,array($array_key.'_options_'.$key => $object->array_options['options_'.$key]));
} }
return $array_to_fill; return $array_to_fill;
} }
/** /**
* Rect pdf * Rect pdf
* *

View File

@ -139,7 +139,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures
if (empty($resarray['object_total_vat_'.$line->tva_tx])) $resarray['object_total_vat_'.$line->tva_tx]=0; if (empty($resarray['object_total_vat_'.$line->tva_tx])) $resarray['object_total_vat_'.$line->tva_tx]=0;
$resarray['object_total_vat_'.$line->tva_tx]+=$line->total_tva; $resarray['object_total_vat_'.$line->tva_tx]+=$line->total_tva;
} }
// Retrieve extrafields // Retrieve extrafields
if(is_array($object->array_options) && count($object->array_options)) if(is_array($object->array_options) && count($object->array_options))
{ {
@ -148,7 +148,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures
$extrafields = new ExtraFields($this->db); $extrafields = new ExtraFields($this->db);
$extralabels = $extrafields->fetch_name_optionals_label('facture',true); $extralabels = $extrafields->fetch_name_optionals_label('facture',true);
$object->fetch_optionals($object->id,$extralabels); $object->fetch_optionals($object->id,$extralabels);
$resarray = $this->fill_substitutionarray_with_extrafields($object,$resarray,$extrafields,$array_key='object',$outputlangs); $resarray = $this->fill_substitutionarray_with_extrafields($object,$resarray,$extrafields,$array_key='object',$outputlangs);
} }
return $resarray; return $resarray;
@ -358,14 +358,14 @@ class doc_generic_invoice_odt extends ModelePDFFactures
{ {
$socobject=$object->client; $socobject=$object->client;
} }
// Fetch info for linked propal // Fetch info for linked propal
$linked_propal = $object->fetchObjectLinked('','','',''); $linked_propal = $object->fetchObjectLinked('','','','');
print '<pre>'; print '<pre>';
//print_r($object->linkedObjects['propal']); exit; //print_r($object->linkedObjects['propal']); exit;
$propal_object = $object->linkedObjects['propal'][0]; $propal_object = $object->linkedObjects['propal'][0];
// Make substitution // Make substitution
$substitutionarray=array( $substitutionarray=array(
'__FROM_NAME__' => $this->emetteur->nom, '__FROM_NAME__' => $this->emetteur->nom,
@ -415,7 +415,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures
$array_soc=$this->get_substitutionarray_mysoc($mysoc,$outputlangs); $array_soc=$this->get_substitutionarray_mysoc($mysoc,$outputlangs);
$array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs); $array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs);
$array_objet=$this->get_substitutionarray_object($object,$outputlangs); $array_objet=$this->get_substitutionarray_object($object,$outputlangs);
$array_propal=$this->get_substitutionarray_propal($propal_object,$outputlangs,'propal'); $array_propal=is_object($propal_object)?$this->get_substitutionarray_propal($propal_object,$outputlangs,'propal'):array();
$tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_propal); $tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_propal);
complete_substitutions_array($tmparray, $outputlangs, $object); complete_substitutions_array($tmparray, $outputlangs, $object);