public function view() { $manager = new Pass_File_Manager($this->pass); $pass = $this->pass; $this->echo_img = function ($name) use($manager, $pass) { if (file_exists($manager->file_path($name))) { echo \Fuel\Core\Html::img(\Fuel\Core\Uri::create('admin/pass/image/' . $pass->id . '/' . $name), array('alt' => str_replace('.png', '', $name))); } }; $image_names = array('icon.png', '*****@*****.**', 'logo.png', '*****@*****.**', 'background.png', '*****@*****.**', 'footer.png', '*****@*****.**', 'strip.png', '*****@*****.**', 'thumbnail.png', '*****@*****.**'); $this->images = array_map(function ($image_name) use($manager) { if (file_exists($manager->file_path($image_name))) { return array('name' => $image_name, 'sizes' => \Fuel\Core\Image::sizes($manager->file_path($image_name))); } else { return null; } }, array_filter($image_names, function ($image_name) use($manager) { if (file_exists($manager->file_path($image_name))) { return true; } else { return false; } })); $this->upload_image_selection = $manager->required_images_readable(); }
public function test_generate_zip() { $manager = new Pass_File_Manager($this->pass); \Fuel\Core\File::copy(APPPATH . 'tests/certificate.p12', $manager->file_path('certificate.p12')); $cert_password = ''; $manager->generate_file('pass.json', $this->pass->pass_json()); $manager->generate_file('manifest.json', $this->pass->manifest($manager->files())); $cert = new Certificate($manager->file_path('certificate.p12')); $signature = $cert->signature($manager->file_path('manifest.json'), $manager->file_path('signature')); $manager->generate_file('signature', $signature); $this->assertTrue($manager->generate_zip()); $this->assertFileExists($manager->pkpass_path()); }
public function action_image($id = null, $name = null) { $pass = Model_Pass::find($id); $manager = new Pass_File_Manager($pass); $path = $manager->file_path($name . '.png'); $body = null; if (file_exists($path)) { $info = \Fuel\Core\File::file_info($path); $body = file_get_contents($path); } return Response::forge($body, 200, array('Content-Type' => 'image/png', 'Cache-Control' => 'no-cache, no-store, max-age=0, must-revalidate', 'Content-Length' => $info['size'])); }
public function generate($cert_password = '') { $manager = new Pass_File_Manager($this); $cert = new Certificate($manager->file_path('certificate.p12'), $cert_password); if (!$manager->generate_file('pass.json', $this->pass_json($cert->pass_type_identifier(), $cert->team_identifier()))) { return $manager->error; } if (!$manager->generate_file('manifest.json', $this->manifest($manager->files()))) { return $manager->error; } if (!($signature = $cert->signature($manager->file_path('manifest.json'), $manager->file_path('signature')))) { return $cert->error; } if (!$manager->generate_file('signature', $signature)) { return $manager->error; } if (!$manager->generate_zip()) { return $manager->error; } return null; }
<?php if (isset($pass)) { $manager = new Pass_File_Manager($pass); if (file_exists($manager->file_path('certificate.p12'))) { ?> <p>File uploaded.</p> <?php } ?> <?php echo Form::open(array('enctype' => 'multipart/form-data')); ?> <fieldset> <div class="clearfix"> <div class="input"> <?php echo \Fuel\Core\Form::file('certificate'); ?> </div> </div> <div class="actions"> <?php echo Form::submit('submit', 'Save', array('class' => 'btn btn-primary')); ?> </div> </fieldset> <?php echo Form::close();