Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function uploadAttachments($post_id, &$fields, &$files, &$extra_files, $track=false)
- {
- // dependencies
- require_once(ABSPATH.'/wp-admin/includes/file.php');
- //CRED_Loader::loadThe('wp_handle_upload');
- // get ref here
- $form=&$this->friendGet($this->_formBuilder, '&_formData');
- // get ref here
- $out_=&$this->friendGet($this->_formBuilder, '&out_');
- $_form_fields=$out_['form_fields'];
- $zebraForm=$this->friendGet($this->_formBuilder, '_zebraForm');
- // upload data
- $all_ok=true;
- // set featured image only if uploaded
- $fkey='_featured_image';
- $extra_files=array();
- if (
- array_key_exists($fkey, $_form_fields) &&
- array_key_exists($fkey, $_FILES) &&
- isset($_FILES[$fkey]['name']) &&
- ''!=$_FILES[$fkey]['name']
- )
- {
- $upload = wp_handle_upload($_FILES[$fkey], array('test_form'=>false, 'test_upload'=>false));
- if(!isset($upload['error']) && isset($upload['file']))
- {
- $extra_files[$fkey]['wp_upload']=$upload;
- if ($track) $tmp_data=$upload['url'];
- $zebraForm->controls[$_form_fields[$fkey][0]]->set_values(array('value'=>''));
- }
- else
- {
- $all_ok=false;
- if ($track) $tmp_data=$this->getLocalisedMessage('upload_failed');
- $fields[$fkey]='';
- $extra_files[$fkey]['upload_fail']=true;
- $zebraForm->controls[$_form_fields[$fkey][0]]->set_values(array('value'=>''));
- $zebraForm->controls[$_form_fields[$fkey][0]]->addError($upload['error']);
- }
- if ($track)
- {
- $this->trackData(array(__('Featured Image')=>$tmp_data));
- unset($tmp_data);
- }
- }
- foreach ($files as $fkey=>$fdata)
- {
- if ($fdata['repetitive'])
- {
- if ($track) $tmp_data=array();
- //cred_log($fdata);
- foreach ($fdata as $ii=>$fdata2)
- {
- if (!isset($fdata2['file_data'][$fkey]) || !is_array($fdata2['file_data'][$fkey])) continue;
- $file_data=$fdata2['file_data'][$fkey];
- $upload = wp_handle_upload($file_data, array('test_form' => false,'test_upload'=>false));
- if(!isset($upload['error']) && isset($upload['file']))
- {
- $files[$fkey][$ii]['wp_upload']=$upload;
- $fields[$fkey][$ii]=$upload['url'];
- if ($track) $tmp_data[]=$upload['url'];
- $zebraForm->controls[$_form_fields[$files[$fkey]['name_orig']][0]]->set_values(array($ii=>array('value'=>$upload['url'])));
- }
- else
- {
- $all_ok=false;
- $files[$fkey]['upload_fail']=true;
- if ($track) $tmp_data[]=$this->getLocalisedMessage('upload_failed');
- $fields[$fkey][$ii]='';
- $files[$fkey][$ii]['upload_fail']=true;
- $zebraForm->controls[$_form_fields[$files[$fkey]['name_orig']][0]]->set_values(array($ii=>array('value'=>'')));
- $zebraForm->controls[$_form_fields[$files[$fkey]['name_orig']][0]]->addError(array($ii=>$upload['error']));
- }
- }
- if ($track)
- {
- $this->trackData(array($files[$fkey]['label']=>$tmp_data));
- unset($tmp_data);
- }
- }
- else
- {
- if (!isset($fdata['file_data'][$fkey]) || !is_array($fdata['file_data'][$fkey])) continue;
- $file_data=$fdata['file_data'][$fkey];
- $upload = wp_handle_upload($file_data, array('test_form' => false,'test_upload'=>false));
- if(!isset($upload['error']) && isset($upload['file']))
- {
- $files[$fkey]['wp_upload']=$upload;
- $fields[$fkey]=$upload['url'];
- if ($track) $tmp_data=$upload['url'];
- $zebraForm->controls[$_form_fields[$files[$fkey]['name_orig']][0]]->set_values(array('value'=>$upload['url']));
- }
- else
- {
- $all_ok=false;
- if ($track) $tmp_data=$this->getLocalisedMessage('upload_failed');
- $fields[$fkey]='';
- $files[$fkey]['upload_fail']=true;
- $zebraForm->controls[$_form_fields[$files[$fkey]['name_orig']][0]]->set_values(array('value'=>''));
- $zebraForm->controls[$_form_fields[$files[$fkey]['name_orig']][0]]->addError($upload['error']);
- }
- if ($track)
- {
- $this->trackData(array($files[$fkey]['label']=>$tmp_data));
- unset($tmp_data);
- }
- }
- }
- return $all_ok;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement