Example #1
0
 public function testPostFile()
 {
     $file = new PostFile('file', fopen(__FILE__, 'r'));
     $request = $this->getMockBuilder('\\Kintone\\Request')->disableOriginalConstructor()->setMethods(array('postFile'))->getMock();
     $request->expects($this->once())->method('postFile')->with('file', $file)->willReturn(new GuzzleResponse(200));
     $obj = new File($request);
     $obj->postFile($file);
 }
 public function action_submit_form()
 {
     $ip = Loader::helper('validation/ip');
     if (!$ip->check()) {
         $this->set('error', $ip->getErrorMessage());
         return;
     }
     $post_data = $_POST['properties'];
     $file_data = $_FILES['properties'];
     $this->set('file_data', $file_data);
     if (!is_array($post_data)) {
         return;
     }
     if (is_array($file_data)) {
         $valf = Loader::helper('validation/file');
         $fh = Loader::helper('file');
         foreach ($file_data['tmp_name'] as $field => $filename) {
             if ($valf->file($filename['value'])) {
                 $name = $file_data['name'][$field]['value'];
                 //$name = $fh->sanitize($name);
                 $uploader = new File($this->getRequestObject());
                 $postfile = new PostFile('file', fopen($filename['value'], 'r'), $name);
                 $res = $uploader->postFile($postfile);
                 if ($res->isSuccess()) {
                     $post_data[$field] = array('type' => 'FILE', 'value' => array(array('fileKey' => $res->getFileKey(), 'name' => $name)));
                 }
             }
         }
     }
     $this->set('post_data', $post_data);
     $record = new Record($this->getRequestObject());
     $res = $record->postRecord($this->appID, $post_data);
     $this->set('result', $res);
     if ($res->isSuccess()) {
         $this->set('message', t('Success'));
         $_POST['properties'] = null;
     } else {
         $this->set('error', t('Error %s: %s', $res->getStatusCode(), $res->getMessage()));
     }
 }