Added export.php for contacts app. Works the same way as the one in the calendar app, except there is no UI for it.

Fixed indentation in /index.php
This commit is contained in:
Thomas Olsen 2011-12-01 02:02:45 +01:00
parent 1d312cf070
commit 21d613cbc6
2 changed files with 53 additions and 8 deletions

44
apps/contacts/export.php Normal file
View File

@ -0,0 +1,44 @@
<?php
/**
* Copyright (c) 2011 Georg Ehrke <ownclouddev at georgswebsite dot de>
* This file is licensed under the Affero General Public License version 3 or
* later.
* See the COPYING-README file.
*/
require_once ("../../lib/base.php");
OC_Util::checkLoggedIn();
OC_Util::checkAppEnabled('contacts');
$book = isset($_GET["bookid"]) ? $_GET["bookid"] : NULL;
$contact = isset($_GET["contactid"]) ? $_GET["contactid"] : NULL;
if(isset($book)){
OC_Log::write('contacts',"book isset($book)",OC_Log::DEBUG);
$addressbook = OC_Contacts_Addressbook::find($book);
OC_Log::write('contacts',"Got addressbook",OC_Log::DEBUG);
OC_Log::write('contacts',"userid: {$addressbook["userid"]}",OC_Log::DEBUG);
if($addressbook["userid"] != OC_User::getUser()){
OC_JSON::error();
exit;
}
OC_Log::write('contacts',"User match",OC_Log::DEBUG);
$cardobjects = OC_Contacts_VCard::all($book);
header("Content-Type: text/directory");
header("Content-Disposition: inline; filename=addressbook.vcf");
for($i = 0;$i <= count($cardobjects); $i++){
echo $cardobjects[$i]["carddata"] . "\n";
}
}elseif(isset($contact)){
OC_Log::write('contacts',"contact isset($contact)",OC_Log::DEBUG);
$data = OC_Contacts_VCard::find($contact);
$addressbookid = $data["addressbookid"];
OC_Log::write('contacts',"addressbookid: $addressbookid",OC_Log::DEBUG);
$addressbook = OC_Contacts_Addressbook::find($addressbookid);
if($addressbook["userid"] != OC_User::getUser()){
OC_JSON::error();
exit;
}
header("Content-Type: text/directory");
header("Content-Disposition: inline; filename=" . $data["fullname"] . ".vcf");
echo $data["carddata"];
}
?>

View File

@ -100,14 +100,15 @@ else {
$error = true;
}
}
// The user is already authenticated using Apaches AuthType Basic... very usable in combination with LDAP
elseif(isset($_SERVER["PHP_AUTH_USER"]) && isset($_SERVER["PHP_AUTH_PW"])){
if (OC_User::login($_SERVER["PHP_AUTH_USER"],$_SERVER["PHP_AUTH_PW"])) {
OC_User::unsetMagicInCookie();
OC_Util::redirectToDefaultPage();
}else{
$error = true;
}
// The user is already authenticated using Apaches AuthType Basic... very usable in combination with LDAP
elseif(isset($_SERVER["PHP_AUTH_USER"]) && isset($_SERVER["PHP_AUTH_PW"])){
if (OC_User::login($_SERVER["PHP_AUTH_USER"],$_SERVER["PHP_AUTH_PW"])) {
//OC_Log::write('core',"Logged in with HTTP Authentication",OC_Log::DEBUG);
OC_User::unsetMagicInCookie();
OC_Util::redirectToDefaultPage();
}else{
$error = true;
}
}
OC_Template::printGuestPage('', 'login', array('error' => $error, 'redirect' => isset($_REQUEST['redirect_url'])?$_REQUEST['redirect_url']:'' ));
}