} ?> <!-- share button --> <?php if (conf('site.common.shareButton.isEnabled', 'page') && check_public_flag($album_image->public_flag)) { echo render('_parts/services/share', array('text' => $album_image->name ?: $album_image->album->name)); } ?> </div><!-- .comment_info --> <div id="comment_list"> <?php echo render('_parts/comment/list', array('parent' => $album_image, 'list' => $comments, 'next_id' => $comment_next_id, 'delete_uri' => 'album/image/comment/api/delete.json', 'counter_selector' => '#comment_count_' . $album_image->id, 'list_more_box_attrs' => array('data-uri' => 'album/image/comment/api/list/' . $album_image->id . '.json', 'data-template' => '#comment-template'), 'like_api_uri_prefix' => 'album/image/comment', 'liked_ids' => $liked_ids)); ?> </div> <?php if (Auth::check()) { echo render('_parts/comment/post', array('id' => $album_image->id, 'size' => 'M', 'textarea_attrs' => array('id' => 'textarea_comment_' . $album_image->id), 'button_attrs' => array('data-post_uri' => 'album/image/comment/api/create/' . $album_image->id . '.json', 'data-get_uri' => 'album/image/comment/api/list/' . $album_image->id . '.json', 'data-list' => '#comment_list', 'data-template' => '#comment-template', 'data-counter' => '#comment_count_' . $album_image->id))); } ?> <?php if (is_enabled_map('image/detail', 'album')) { echo render('_parts/map/detail', array('auther_member_id' => $album_image->album->member_id, 'locations' => $locations, 'save_uri' => \Album\Site_Util::get_save_location_api_uri($album_image->id), 'markers' => $locations ? Site_Util::get_map_markers($locations) : array(), 'marker_template' => '#map-marker-image-template', 'marker_images' => array('uri' => img_uri($album_image->get_image(), 'M'), 'alt' => $album_image->name))); } ?>
<?php $feed_options = array('link' => Uri::create($link_uri), 'caption' => strim(!empty($caption) ? $caption : FBD_SITE_DESCRIPTION, conf('service.facebook.shareDialog.caption.trimWidth'), null, false, true), 'name' => strim($name, conf('service.facebook.shareDialog.name.trimWidth'), null, false, true)); if (!empty($description)) { $feed_options['description'] = strim($description, conf('service.facebook.shareDialog.description.trimWidth'), null, false, true); } if (!empty($images)) { $image = Util_Array::get_last($images); if (empty($img_size_key)) { $img_size_key = 'thumbnail'; } $feed_options['picture'] = Uri::create(img_uri($image->get_image(), $img_size_key)); } echo btn('service.facebook.do_share', '#', 'js-facebook_feed', true, 'xs', 'primary', array('class' => 'mr10', 'data-options' => json_encode($feed_options)), null, null, null, false); ?> <span id="fb-root"></span>
/** * Create timeline * * @access public * @param int $parent_id target parent id * @return Response(json) * @throws Exception in Controller_Base::controller_common_api * @see Controller_Base::controller_common_api */ public function post_create() { $this->controller_common_api(function () { $this->response_body['errors']['message_default'] = term('timeline') . 'の' . term('form.post') . 'に失敗しました。'; $moved_files = array(); $album_image_ids = array(); $timeline = Model_Timeline::forge(); $val = \Validation::forge(); $val->add_model($timeline); if (!$val->run()) { throw new \ValidationFailedException($val->show_errors()); } $post = $val->validated(); $file_tmps = \Site_FileTmp::get_file_tmps_and_check_filesize($this->u->id, $this->u->filesize_total); if (!strlen($post['body']) && !$file_tmps) { throw new \ValidationFailedException('Data is empty.'); } $type_key = 'normal'; $album_id = (int) \Input::post('album_id', 0); if ($file_tmps && $album_id) { $album = \Album\Model_Album::check_authority($album_id, $this->u->id); if (\Album\Site_Util::check_album_disabled_to_update($album->foreign_table, true)) { throw new \ValidationFailedException('Album id is invalid.'); } $type_key = 'album_image'; } try { \DB::start_transaction(); if ($file_tmps) { if (!$album_id) { $type_key = 'album_image_timeline'; $album_id = \Album\Model_Album::get_id_for_foreign_table($this->u->id, 'timeline'); } list($moved_files, $album_image_ids) = \Site_FileTmp::save_images($file_tmps, $album_id, 'album_id', 'album_image', $post['public_flag']); } else { $album_id = null; } $timeline = \Timeline\Site_Model::save_timeline($this->u->id, $post['public_flag'], $type_key, $album_id, null, $post['body'], $timeline, $album_image_ids); \DB::commit_transaction(); // thumbnail 作成 & tmp_file thumbnail 削除 \Site_FileTmp::make_and_remove_thumbnails($moved_files); } catch (\Exception $e) { if (\DB::in_transaction()) { \DB::rollback_transaction(); } if ($moved_files) { \Site_FileTmp::move_files_to_tmp_dir($moved_files); } throw $e; } $data = array('id' => $timeline->id, 'message' => term('timeline') . 'を' . term('form.post') . 'しました。'); if (conf('service.facebook.shareDialog.myhome.autoPopupAfterCreated')) { $link = \Uri::create(Site_Util::get_detail_uri($timeline->id, $timeline->type)); $data['shareFacebook'] = array('obj' => array('link' => $link)); if ($album_image_ids && ($album_image = \Album\Model_AlbumImage::find($album_image_ids[0]))) { $data['shareFacebook']['obj']['picture'] = \Site_Util::get_media_uri(img_uri($album_image->file_name, 'thumbnail'), true); } } $this->set_response_body_api($data); }); }
public static function get_top_slide_image_uris_raw() { $configs = conf('site.index.slide.recentAlbumImage', 'page'); $size_string = conf('upload.types.img.types.ai.sizes.' . $configs['sizeKey']); $limit_width = false; if ($sizes_for_resize = \Site_Upload::conv_size_str_to_array($size_string)) { $limit_width = $sizes_for_resize['width']; } $limit = $configs['displayCount'] + $configs['displayCountAdditional']; $data = Site_Model::get_album_images($limit); if (empty($data['list'])) { return $uris_default; } $uris = array(); $i = 0; foreach ($data['list'] as $album_image) { if ($i >= $configs['displayCount']) { break; } if (!static::check_album_imgage4top_page_slide($album_image, $limit_width)) { continue; } $uris[] = img_uri($album_image->file_name, $configs['sizeKey']); $i++; } $rest_count = $configs['displayCount'] - $i; if ($rest_count > 0) { $uris_default = conf('site.index.slide.images', 'page'); if ($rest_count > count($uris_default)) { $rest_count = count($uris_default); } for ($i = 0; $i < $rest_count; $i++) { $uris[] = $uris_default[$i]; } } return $uris; }
function img($filename = '', $size_key = '', $link_uri = '', $is_link2raw_file = false, $alt = '', $is_profile = false, $is_responsive = false, $anchor_attr = array(), $img_attr = array()) { list($uri_path, $filename, $file_cate, $size) = img_uri($filename, $size_key, $is_profile, true); if (!isset($img_attr['class'])) { $img_attr['class'] = ''; } if ($is_responsive) { if (!empty($img_attr['class'])) { $img_attr['class'] .= ' '; } $img_attr['class'] .= 'img-responsive'; } if ($is_profile) { if (!empty($img_attr['class'])) { $img_attr['class'] .= ' '; } $img_attr['class'] .= 'profile_image'; } if (empty($filename)) { $noimage_tag = Site_Util::get_noimage_tag($size, $file_cate, $img_attr); if ($link_uri) { return Html::anchor($link_uri, $noimage_tag, $anchor_attr); } return $noimage_tag; } if ($alt) { $img_attr['alt'] = $alt; } $image_tag = Html::img($uri_path, $img_attr); if ($link_uri) { return Html::anchor($link_uri, $image_tag, $anchor_attr); } if ($is_link2raw_file) { $anchor_attr['target'] = '_blank'; $uri_path = Site_Upload::get_uploaded_file_path($filename, 'raw', 'img', false, true); return Html::anchor(Site_Util::get_media_uri($uri_path), $image_tag, $anchor_attr); } return $image_tag; }
function image_input_tag($src, $attributes = array()) { $attributes = try_set_attribute($attributes, 'src', img_uri($src)); return input_tag_type('image', $attributes); }
<a class="next">›</a> <a class="close">×</a> </div> <?php Asset::js(array('blueimp-gallery/blueimp-gallery.js', 'site/common/gallery.js'), null, 'js_garray', false, true); echo Asset::render('js_garray', false, 'js'); ?> <?php if (!empty($slide_file_names)) { ?> <script> var pos; var links = [ <?php $count = count($slide_file_names); $i = 0; foreach ($slide_file_names as $file_name) { $i++; $image_uri = img_uri($file_name, IS_SP ? 'L' : 'raw'); echo sprintf("get_url('%s')%s", $image_uri, $i == $count ? '' : ',') . PHP_EOL; } ?> ]; </script> <?php } ?>