| 
									
										
										
										
											2013-09-23 22:56:27 +03:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /** | 
					
						
							|  |  |  |  * ownCloud - Documents App | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * @author Victor Dubiniuk | 
					
						
							|  |  |  |  * @copyright 2013 Victor Dubiniuk victor.dubiniuk@gmail.com | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This file is licensed under the Affero General Public License version 3 or | 
					
						
							|  |  |  |  * later. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace OCA\Documents; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | \OCP\JSON::checkAppEnabled('documents'); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-28 19:32:54 +03:00
										 |  |  | if (\OC::$server->getConfig()->getAppValue('core', 'shareapi_allow_links', 'yes') !== 'yes') { | 
					
						
							| 
									
										
										
										
											2013-11-10 12:50:06 +03:00
										 |  |  | 	header('HTTP/1.0 404 Not Found'); | 
					
						
							|  |  |  | 	$tmpl = new OCP\Template('', '404', 'guest'); | 
					
						
							|  |  |  | 	$tmpl->printPage(); | 
					
						
							|  |  |  | 	exit(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-23 22:56:27 +03:00
										 |  |  | if (isset($_GET['t'])) { | 
					
						
							|  |  |  | 	$token = $_GET['t']; | 
					
						
							| 
									
										
										
										
											2013-11-10 12:50:06 +03:00
										 |  |  | 	$tmpl = new \OCP\Template('documents', 'public', 'guest'); | 
					
						
							|  |  |  | 	try { | 
					
						
							|  |  |  | 		$file = File::getByShareToken($token); | 
					
						
							|  |  |  | 		if ($file->isPasswordProtected() && !$file->checkPassword(@$_POST['password'])){ | 
					
						
							|  |  |  | 			if (isset($_POST['password'])){ | 
					
						
							|  |  |  | 				$tmpl->assign('wrongpw', true); | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 			$tmpl->assign('hasPassword', true); | 
					
						
							|  |  |  | 		} else { | 
					
						
							|  |  |  | 			\OCP\Util::addStyle( 'documents', '3rdparty/webodf/dojo-app'); | 
					
						
							|  |  |  | 			\OCP\Util::addScript('documents', 'documents'); | 
					
						
							| 
									
										
										
										
											2014-04-02 19:56:42 +03:00
										 |  |  | 			if ($file->getFileId()){ | 
					
						
							| 
									
										
										
										
											2014-08-04 20:51:50 +03:00
										 |  |  | 				$session = new Db\Session(); | 
					
						
							| 
									
										
										
										
											2014-04-11 23:12:23 +03:00
										 |  |  | 				$session->loadBy('file_id', $file->getFileId()); | 
					
						
							| 
									
										
										
										
											2014-04-10 20:36:25 +03:00
										 |  |  | 				 | 
					
						
							| 
									
										
										
										
											2014-04-11 23:12:23 +03:00
										 |  |  | 				if ($session->getEsId()){ | 
					
						
							| 
									
										
										
										
											2014-08-04 21:00:58 +03:00
										 |  |  | 					$member = new Db\Member(); | 
					
						
							| 
									
										
										
										
											2014-04-11 23:12:23 +03:00
										 |  |  | 					$members = $member->getCollectionBy('es_id', $session->getEsId()); | 
					
						
							| 
									
										
										
										
											2014-04-10 20:36:25 +03:00
										 |  |  | 				} else { | 
					
						
							|  |  |  | 					$members = 0; | 
					
						
							|  |  |  | 				} | 
					
						
							| 
									
										
										
										
											2014-04-02 19:56:42 +03:00
										 |  |  | 				$tmpl->assign('total', count($members)+1); | 
					
						
							|  |  |  | 			} else { | 
					
						
							|  |  |  | 				$tmpl->assign('total', 1); | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2013-11-10 12:50:06 +03:00
										 |  |  | 			$tmpl->assign('document', $token); | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	} catch (\Exception $e){ | 
					
						
							|  |  |  | 		$tmpl->assign('notFound', true); | 
					
						
							| 
									
										
										
										
											2013-09-23 22:56:27 +03:00
										 |  |  | 	} | 
					
						
							| 
									
										
										
										
											2013-11-10 12:50:06 +03:00
										 |  |  | 	$tmpl->printPage(); | 
					
						
							| 
									
										
										
										
											2013-09-23 22:56:27 +03:00
										 |  |  | } |