/** * Function get and save the repins * @param : <Int> $id * @author : hrishikesh * @return */ public function index($id = false) { $pinDetails = getPinDetails($this->input->post('pin_id')); $value = array('user_id' => $this->session->userdata('login_user_id'), 'pin_url' => $pinDetails->pin_url, 'source_url' => $pinDetails->source_url, 'board_id' => $this->input->post('board_id'), 'type' => $pinDetails->type, 'description' => $this->input->post('description')); if ($value['user_id'] == 0 || !isset($value['user_id'])) { echo json_encode(false); } $id = $this->board_model->saveNewPin($value); $value['insertId'] = $id; $activity['user_id'] = $this->session->userdata('login_user_id'); $activity['log'] = "Repined a pin"; $activity['type'] = "repin"; $activity['action_id'] = $id; $activity['link'] = $pinDetails->pin_url; activityList($activity); $saveRepin = array('repin_user_id' => $this->session->userdata('login_user_id'), 'owner_user_id' => $pinDetails->user_id, 'from_pin_id' => $this->input->post('pin_id'), 'new_pin_id' => $id); $this->board_model->saveRepin($saveRepin); //socialNetworkPost($activity,$value); $description = $this->input->post('description'); $pin_url = $pinDetails->pin_url; $sitelink = site_url('board/pins/' . $this->input->post('board_id') . '/' . $id); $imglink = site_url('application/assets/images/facebook_button.png'); $url = rawurlencode($sitelink . '&via=pinterest clone&text=' . $description); $success = " <h2 style='padding-top:156px; border:none;' >Pinned successfully!!</h2>\n <div>\n <a href='http://twitter.com/share' class='twitter-share-button' data-count='none' data-url={$sitelink} data-text={$description} data-via='pininterest clone' data-size='large'>Tweet</a><script type='text/javascript' src='http://platform.twitter.com/widgets.js'></script>\n <a title='Share this article/post/whatever on Facebook' href='http://www.facebook.com/sharer.php?s=100&p[url]={$sitelink}&p[images][0]={$pin_url}&p[title]={$description}&p[summary]=share from my pinterest clone application' target='_blank'><img src='{$imglink}' width='75px' height='27px' alt='share'/></a>\n </div>"; echo json_encode($success); }
/** * Function to save the un likes of a pin * @param * @author : Vishal * @since : 22-03-2012 * @return */ function unLike() { $like = $_POST; $id = $this->board_model->unLikes($like); $activity = array('user_id' => $this->session->userdata('login_user_id'), 'log' => "Un liked a pin ", 'type' => "like", 'action_id' => $like['pin_id']); activityList($activity); $count = getPinLikeCount($like['pin_id']); echo json_encode($count); }
/** * Function to save the follow/unfollw a single board using ajax * @param : * @param : <string> $follow_type * @author : Vishal * @since : 14-05-2012 * @return */ function saveFollowUnfollow() { $arrayFollow['user_id'] = $this->session->userdata('login_user_id'); $arrayFollow['is_following'] = $this->input->post('is_following'); $arrayFollow['is_following_board_id'] = $this->input->post('is_following_board_id'); if ($this->input->post('action') == 'follow') { $boardDetails = getBoardDetails($this->input->post('is_following_board_id')); $activity = array('user_id' => $this->session->userdata('login_user_id'), 'log' => "Following the board " . $boardDetails->board_name, 'type' => "follow_board", 'action_id' => $this->input->post('is_following_board_id')); activityList($activity); $this->action_model->saveFollow($arrayFollow); } else { $boardDetails = getBoardDetails($this->input->post('is_following_board_id')); $activity = array('user_id' => $this->session->userdata('login_user_id'), 'log' => "Unfollows the board " . $boardDetails->board_name, 'type' => "follow_board", 'action_id' => $this->input->post('is_following_board_id')); activityList($activity); $this->action_model->saveUnFollow($arrayFollow); } echo json_encode(true); }
/** * Function save the new pin to the pin table * board id ,pin url and source url are submitted * @param : * @author : Vishal * @since : 23-04-2012 * @return */ function submit() { $value = array('user_id' => $this->session->userdata('login_user_id'), 'pin_url' => $this->input->post('pin_url'), 'source_url' => $this->input->post('source_url'), 'board_id' => $this->input->post('board_id'), 'description' => $this->input->post('description'), 'type' => $this->input->post('is_video') == 'true' ? 'video' : 'image', 'gift' => $this->input->post('gift') ? $this->input->post('gift') : 0); //Use the following code for download and save the new image to the user folder and use it as pin url. if ($value['type'] == 'image') { $user_id = $this->session->userdata('login_user_id'); $url = $value['pin_url']; $extn = explode('.', $url); $info = getimagesize($url); $mime = $info['mime']; // mime-type as string for ex. "image/jpeg" etc. $extn = explode('/', $mime); $image = time() . '_.' . $extn[1]; $dir = getcwd() . "/application/assets/pins/{$user_id}"; if (file_exists($dir) && is_dir($dir)) { } else { mkdir(getcwd() . "/application/assets/pins/{$user_id}", 0777); } $img = getcwd() . "/application/assets/pins/{$user_id}/" . $image; file_put_contents($img, file_get_contents($url)); $value['pin_url'] = site_url() . "application/assets/pins/{$user_id}/" . $image; } if ($value['user_id'] == 0 || !isset($value['user_id'])) { redirect('extractor/index'); } $id = $this->board_model->saveNewPin($value); $activity['user_id'] = $this->session->userdata('login_user_id'); $activity['log'] = "Added a new " . $value['type']; $activity['type'] = $value['type']; $activity['action_id'] = $id; $activity['link'] = $this->input->post('pin_url'); activityList($activity); $value['title'] = 'Pin it'; $value['insertId'] = $id; /*Post in social networks*/ //socialNetworkPost($activity,$value); $this->load->view('extractor_view', $value); }
/** * Repin function * @since 31-05-2013 * @author Robin <*****@*****.**> */ public function repin_post() { $key = $this->post('key'); $token = $this->post('token'); $is_authenticated = $this->authapi->authenticate($key, $token); //Check if user is authenticated, if not, return error response if ($is_authenticated == 0) { $this->response(array('error' => 'Authentication Failed'), 401); } $pin_id = $this->post('pin_id'); $user_id = $this->post('user_id'); $board_id = $this->post('board_id'); if (!$pin_id || !$user_id || !$board_id) { $this->response(array('error' => 'Give me the inputs!'), 200); } $pinDetails = getPinDetails($pin_id); $value = array('user_id' => $user_id, 'pin_url' => $pinDetails->pin_url, 'source_url' => $pinDetails->source_url, 'board_id' => $board_id, 'type' => $pinDetails->type, 'description' => $this->get('description') ? $this->get('description') : $pinDetails->description); $id = $this->board_model->saveNewPin($value); $value['insertId'] = $id; $activity['user_id'] = $user_id; $activity['log'] = "Repined a pin"; $activity['type'] = "repin"; $activity['action_id'] = $id; $activity['link'] = $pinDetails->pin_url; activityList($activity); $saveRepin = array('repin_user_id' => $user_id, 'owner_user_id' => $pinDetails->user_id, 'from_pin_id' => $pin_id, 'new_pin_id' => $id); $this->board_model->saveRepin($saveRepin); $this->response(array('success' => 'Succesfully Repined'), 200); }
/** * Function to un follow all the boards of a given user * @since 15-05-2012 * @author Vishal Vijayan * @param <Int> $id (user id) * @return object */ function unFollowAll($id) { //get all board of that user $boards = getUserBoard($id); foreach ($boards as $key => $value) { $fetch = "DELETE \n FROM\n follow\n WHERE\n user_id = {$this->session->userdata('login_user_id')}\n AND\n is_following = {$value->user_id}\n AND\n is_following_board_id = {$value->id}"; $result = $this->db->query($fetch); $userDetails = userDetails($value->user_id); $activity = array('user_id' => $this->session->userdata('login_user_id'), 'log' => "Un follows " . $userDetails['name'], 'type' => "follow", 'action_id' => $value->user_id); } activityList($activity); }