private function create_share_item($image_path, $image_num, $img_array) { $local_user = $this->current_user; $segment = spClass('Segment'); if ($image_path) { $cover_path = APP_PATH . $image_path . '_middle.jpg'; $img_pro = @getimagesize($cover_path); $img['width'] = $img_pro['0']; $img['height'] = $img_pro['1']; $imagelib = spClass('ImageLib'); $data['color'] = $imagelib->sample_color($cover_path); $data['img_pro'] = array_to_str($img, ','); $data['image_path'] = $image_path; } if ($img_array) { $data['images_array'] = serialize($img_array); } $data['title'] = $this->spArgs('title'); $data['category_id'] = $this->spArgs('category_id'); $data['user_id'] = $local_user['user_id']; $data['intro'] = $this->spArgs('intro'); $segment_str = $segment->segment($data['intro']); $data['intro'] = parse_tag($data['category_id'], $data['intro']); $at_array = $this->parse_at($data['intro']); $tag_parse = $this->parse_tag($data['intro']); $data['intro'] = $at_array['message']; $tags = str_replace(',', ' ', $this->spArgs('tags')); $data['intro_search'] .= ' ' . $segment->convert_to_py($tags); $data['intro_search'] .= ' ' . $segment->convert_to_py($tag_parse); $data['intro_search'] .= ' ' . $at_array['atsearch_str']; $data['intro_search'] .= $segment_str['py']; $data['keywords'] .= ' ' . $tags; $data['keywords'] .= ' ' . $tag_parse; $data['keywords'] .= ' ' . $segment_str['cn']; if ($groupid = $this->spArgs('groupid')) { $data['intro_search'] .= " group{$groupid}g"; } if ($topicid = $this->spArgs('topicid')) { $data['intro_search'] .= " topic{$topicid}t"; } $data['share_type'] = $this->spArgs('share_type', 'upload'); $data['price'] = $this->spArgs('price', '0'); if (!is_numeric($data['price'])) { $data['price'] = 0; } if ($this->is_editer()) { $data['is_show'] = 1; } else { $data['is_show'] = $this->settings['basic_setting']['site_need_verify'] && $this->permission['need_verify'] ? 0 : 1; } $data['reference_url'] = $this->spArgs('reference_url', ''); $data['reference_itemid'] = $this->spArgs('item_id', ''); $data['reference_channel'] = $this->spArgs('channel'); $data['promotion_url'] = $this->spArgs('promotion_url'); $data['total_images'] = $image_num; $share_attr = array(); if ($data['share_type'] == 'video') { $share_attr['video']['flv'] = $this->spArgs('flv', '', 'POST', 'false'); $share_attr['video']['imgurl'] = $image_path; $share_attr['video']['title'] = $data['title']; $data['share_attribute'] = serialize($share_attr); } $create_time = time(); $data['create_time'] = $create_time; $share_data['create_time'] = $create_time; $share_data['poster_id'] = $local_user['user_id']; $share_data['poster_nickname'] = $local_user['nickname']; $share_data['original_id'] = 0; $share_data['user_id'] = $local_user['user_id']; $share_data['user_nickname'] = $local_user['nickname']; $share_data['total_comments'] = 0; $share_data['total_likes'] = 0; $share_data['total_clicks'] = 0; $share_data['total_forwarding'] = 0; $share_data['album_id'] = $this->spArgs('album_id'); $share_data['category_id'] = $this->spArgs('category_id'); //$data['share'] = $share_data; $ptx_item = spClass('ptx_item'); //$ptx_item->linker['share']['enabled'] = true; $item_id = $ptx_item->create($data); $ptx_share = spClass('ptx_share'); $share_data['item_id'] = $item_id; $share_id = $ptx_share->create($share_data); $ptx_album = spClass('ptx_album'); $ptx_album->update_album_cover($share_data['album_id']); $event_dispatcher = spClass('event_dispatcher'); $event_data['to_user_id'] = $local_user['user_id']; $event_data['to_nickname'] = $local_user['nickname']; $event_data['share_id'] = $share_id; $event_data['share_title'] = $data['title']; if ($data['share_type'] == 'video') { $event_dispatcher->invoke('post_video', $event_data); } elseif ($data['share_type'] == 'article') { $event_dispatcher->invoke('post_article', $event_data); } else { $event_dispatcher->invoke('post_share', $event_data); } return true; }
} $category_result = $db->get_all("SELECT category_id FROM lz_category WHERE name like '%" . $category . "%' "); } //综合期数和分类的限定结果,去重,返回限定结果 if ($condition_flag == 3) { $condition_result = found_in($category_result, $number_result); } elseif ($condition_flag == 1) { $condition_result = $number_result; } elseif ($condition_flag == 2) { $condition_result = $category_result; } $condition_string = array_to_str($condition_result, 'category_id'); //将category中的限定结果在lz_item表中查找,得到item_id结果,返回最终的限定结果 if ($condition_string != null) { $condition_result = $db->get_all("SELECT item_id FROM lz_item WHERE category_id in (" . $condition_string . ") "); $condition = array_to_str($condition_result, 'item_id'); } //sort($condition); } //搜索作者 if ($author != null) { //在双字作者中间加上两个空格,方便与数据库中内容匹配 if (strlen($author) == 6) { $author = str_insert($author, 3, " "); } //如果之前限定了搜索范围 if ($condition != null) { $author_result = $db->get_all("SELECT aid FROM lz_author WHERE (author like '%" . $author . "%') and aid in(" . $condition . ") "); } else { $author_result = $db->get_all("SELECT aid FROM lz_author WHERE author like '%" . $author . "%'"); }
function recreate_pin() { $pin_width = $this->settings['image_size']['pin_width'] ? $this->settings['image_size']['pin_width'] : 200; if (!$pin_width) { $pin_width = $this->settings['ui_pin']['pin_imagewidth'] ? $this->settings['ui_pin']['pin_imagewidth'] : 200; } $number = 100; $page = $this->spArgs("page", 1); $ptx_item = spClass('ptx_item'); $items = $ptx_item->search(null, $page, $number, " ptx_item.image_path,ptx_item.item_id ", NULL); foreach ($items as $item) { $large_path = APP_PATH . $item['image_path'] . '_large.jpg'; if (!file_exists($large_path)) { continue; } $cover_path = APP_PATH . $item['image_path'] . '_middle.jpg'; file_exists($cover_path) && unlink($cover_path); $imagelib = spClass('ImageLib'); $imagelib->create_thumb($large_path, '', $pin_width, 0, $cover_path); $img_pro = @getimagesize($cover_path); $img['width'] = $img_pro['0']; $img['height'] = $img_pro['1']; $data['img_pro'] = array_to_str($img, ','); $ptx_item->update(array('item_id' => $item['item_id']), $data); $width = $this->settings['image_size']['square_width'] ? $this->settings['image_size']['square_width'] : 100; $cover_path = APP_PATH . $item['image_path'] . '_square_like.jpg'; file_exists($cover_path) && unlink($cover_path); $imagelib->crop_square($large_path, $width, 'square_like', $cover_path); } if (array_length($items) > 0) { $start = ($page - 1) * $number; $end = $start + $number; $str = T('processing_data') . "{$start}----{$end}"; $url = spUrl('admin', 'recreate_pin', array('page' => $page + 1)); admin_show_message($str, $this, $url, 1500); return; } else { $str = T('processing_data_success'); $url = spUrl('admin', 'recreate_image'); admin_show_message($str, $this, $url, 1500); } }