public function updateprivacyAction() { $this->_helper->viewRenderer->setNoRender(); $request = $this->getRequest()->getParams(); if (isset($this->authIdentity) && !empty($request['types'])) { $a = serialize(array()); $parametertypes = array('scribbles', 'statures', 'admires', 'videos', 'images', 'messages'); if ($request['types'] != 'all') { $privacy_parameters = array_intersect($parametertypes, explode(',', $request['types'])); } $privacys['scribbles'] = array('postspeci' => $a, 'posthidden' => $a, 'postspecificpeople' => $a, 'postignore' => $a); $privacys['statures'] = array('staturespeci' => $a, 'staturehidden' => $a, 'staturespecificpeople' => $a, 'statureignore' => $a); $privacys['admires'] = array('testyspeci' => $a, 'testyhidden' => $a, 'testyspecificpeople' => $a, 'testyignore' => $a); $privacys['videos'] = array('videospeci' => $a, 'videohidden' => $a, 'videospecificpeople' => $a, 'videoignore' => $a); $privacys['images'] = array('albumspeci' => $a, 'albumhidden' => $a, 'albumspecificpeople' => $a, 'albumignore' => $a); $privacys['messages'] = array('messagespecificpeople' => $a, 'messageignore' => $a); $privacy_types = array('public', 'friends', 'private', 'fof', 'specific'); $privacy = array(); foreach ($privacy_parameters as $parameter) { $privacy = array_merge($privacy, $privacys[$parameter]); } if (in_array('scribbles', $privacy_parameters)) { if (isset($request['scribblesview']) && in_array($request['scribblesview'], $privacy_types)) { switch ($request['scribblesview']) { case 'specific': unset($request['scribblesviewhidden']); break; case 'private': unset($request['scribblesviewhidden']); unset($request['scribblesviewspecific']); break; default: unset($request['scribblesviewspecific']); } $privacy['postvisi'] = $request['scribblesview']; } if (!empty($request['scribblesviewspecific'])) { $privacy['postspeci'] = serialize(explode(',', $request['scribblesviewspecific'])); } if (!empty($request['scribblesviewhidden'])) { $privacy['posthidden'] = serialize(explode(',', $request['scribblesviewhidden'])); } if (!empty($request['scribblescomment']) && in_array($request['scribblescomment'], $privacy_types)) { switch ($request['scribblescomment']) { case 'specific': unset($request['scribblescommentignore']); break; case 'private': unset($request['scribblescommentignore']); unset($request['scribblescommentspecific']); break; default: unset($request['scribblescommentspecific']); } $privacy['post'] = $request['scribblescomment']; } if (!empty($request['scribblescommentspecific'])) { $privacy['postspecificpeople'] = serialize(explode(',', $request['scribblescommentspecific'])); } if (!empty($request['scribblescommentignore'])) { $privacy['postignore'] = serialize(explode(',', $request['scribblescommentignore'])); } } if (in_array('statures', $privacy_parameters)) { if (isset($request['statureview']) && in_array($request['statureview'], $privacy_types)) { switch ($request['statureview']) { case 'specific': unset($request['statureviewhidden']); break; case 'private': unset($request['statureviewhidden']); unset($request['statureviewspecific']); break; default: unset($request['statureviewspecific']); } $privacy['staturevisi'] = $request['statureview']; } if (!empty($request['statureviewspecific'])) { $privacy['staturespeci'] = serialize(explode(',', $request['statureviewspecific'])); } if (!empty($request['statureviewhidden'])) { $privacy['staturehidden'] = serialize(explode(',', $request['statureviewhidden'])); } if (!empty($request['staturecomment']) && in_array($request['staturecomment'], $privacy_types)) { switch ($request['staturecomment']) { case 'specific': unset($request['staturecommentignore']); break; case 'private': unset($request['staturecommentignore']); unset($request['staturecommentspecific']); break; default: unset($request['staturecommentspecific']); } $privacy['stature'] = $request['staturecomment']; } if (!empty($request['staturecommentspecific'])) { $privacy['staturespecificpeople'] = serialize(explode(',', $request['staturecommentspecific'])); } if (!empty($request['staturecommentignore'])) { $privacy['statureignore'] = serialize(explode(',', $request['staturecommentignore'])); } } if (in_array('admires', $privacy_parameters)) { if (isset($request['admireview']) && in_array($request['admireview'], $privacy_types)) { switch ($request['admireview']) { case 'specific': unset($request['admireviewhidden']); break; case 'private': unset($request['admireviewhidden']); unset($request['admireviewspecific']); break; default: unset($request['admireviewspecific']); } $privacy['testyvisi'] = $request['admireview']; } if (!empty($request['admireviewspecific'])) { $privacy['testyspeci'] = serialize(explode(',', $request['admireviewspecific'])); } if (!empty($request['admireviewhidden'])) { $privacy['testyhidden'] = serialize(explode(',', $request['admireviewhidden'])); } if (!empty($request['admirecomment']) && in_array($request['admirecomment'], $privacy_types)) { switch ($request['admirecomment']) { case 'specific': unset($request['admirecommentignore']); break; case 'private': unset($request['admirecommentignore']); unset($request['admirecommentspecific']); break; default: unset($request['admirecommentspecific']); } $privacy['testy'] = $request['admirecomment']; } if (!empty($request['admirecommentspecific'])) { $privacy['testyspecificpeople'] = serialize(explode(',', $request['admirecommentspecific'])); } if (!empty($request['admirecommentignore'])) { $privacy['testyignore'] = serialize(explode(',', $request['admirecommentignore'])); } } if (in_array('videos', $privacy_parameters)) { if (isset($request['videoview']) && in_array($request['videoview'], $privacy_types)) { switch ($request['videoview']) { case 'specific': unset($request['videoviewhidden']); break; case 'private': unset($request['videoviewhidden']); unset($request['videoviewspecific']); break; default: unset($request['videoviewspecific']); } $privacy['videovisi'] = $request['videoview']; } if (!empty($request['videoviewspecific'])) { $privacy['videospeci'] = serialize(explode(',', $request['videoviewspecific'])); } if (!empty($request['videoviewhidden'])) { $privacy['videohidden'] = serialize(explode(',', $request['videoviewhidden'])); } if (!empty($request['videocomment']) && in_array($request['videocomment'], $privacy_types)) { switch ($request['videocomment']) { case 'specific': unset($request['videocommentignore']); break; case 'private': unset($request['videocommentignore']); unset($request['videocommentspecific']); break; default: unset($request['videocommentspecific']); } $privacy['video'] = $request['videocomment']; } if (!empty($request['videocommentspecific'])) { $privacy['videospecificpeople'] = serialize(explode(',', $request['videocommentspecific'])); } if (!empty($request['videocommentignore'])) { $privacy['videoignore'] = serialize(explode(',', $request['videocommentignore'])); } } if (in_array('images', $privacy_parameters)) { if (isset($request['imageview']) && in_array($request['imageview'], $privacy_types)) { switch ($request['imageview']) { case 'specific': unset($request['imageviewhidden']); break; case 'private': unset($request['imageviewhidden']); unset($request['imageviewspecific']); break; default: unset($request['imageviewspecific']); } $privacy['albumvisi'] = $request['imageview']; } if (!empty($request['imageviewspecific'])) { $privacy['albumspeci'] = serialize(explode(',', $request['imageviewspecific'])); } if (!empty($request['imageviewhidden'])) { $privacy['albumhidden'] = serialize(explode(',', $request['imageviewhidden'])); } if (!empty($request['imagecomment']) && in_array($request['imagecomment'], $privacy_types)) { switch ($request['imagecomment']) { case 'specific': unset($request['imagecommentignore']); break; case 'private': unset($request['imagecommentignore']); unset($request['imagecommentspecific']); break; default: unset($request['imagecommentspecific']); } $privacy['album'] = $request['imagecomment']; } if (!empty($request['imagecommentspecific'])) { $privacy['albumspecificpeople'] = serialize(explode(',', $request['imagecommentspecific'])); } if (!empty($request['imagecommentignore'])) { $privacy['albumignore'] = serialize(explode(',', $request['imagecommentignore'])); } } if (in_array('messages', $privacy_parameters)) { if (!empty($request['message']) && in_array($request['message'], $privacy_types)) { switch ($request['message']) { case 'specific': unset($request['messageignore']); break; case 'private': unset($request['messageignore']); unset($request['messagespecific']); break; default: unset($request['messagespecific']); } $privacy['message'] = $request['message']; } if (!empty($request['messagespecific'])) { $privacy['messagespecificpeople'] = serialize(explode(',', $request['messagespecific'])); } if (!empty($request['messageignore'])) { $privacy['messageignore'] = serialize(explode(',', $request['messageignore'])); } } //print_r($privacy); $privacymodel = new Application_Model_Privacy($this->registry->DB); $privacymodel->updatePrivacy($privacy); echo json_encode(array('status' => 'success')); } else { echo json_encode(array('status' => 'error')); } }