diff options
author | Georg Ehrke <georg.stefan.germany@googlemail.com> | 2011-10-10 21:08:11 +0200 |
---|---|---|
committer | Georg Ehrke <georg.stefan.germany@googlemail.com> | 2011-10-10 21:08:11 +0200 |
commit | 4cbae823eb742fac80288c6c74acba26e0a9c5d6 (patch) | |
tree | 0c7dbfb10645732ceb385018256a1524b2d29b89 /apps | |
parent | deaeab3d92ed8f536789a142828549957130dc1c (diff) | |
parent | 6163351ea234cca9ee09d4f040c5cb45e1caf481 (diff) | |
download | nextcloud-server-4cbae823eb742fac80288c6c74acba26e0a9c5d6.tar.gz nextcloud-server-4cbae823eb742fac80288c6c74acba26e0a9c5d6.zip |
Merge branch 'master' into calendar
Diffstat (limited to 'apps')
-rw-r--r-- | apps/bookmarks/bookmarksHelper.php | 51 | ||||
-rw-r--r-- | apps/calendar/js/calendar.js | 1 | ||||
-rw-r--r-- | apps/contacts/css/styles.css | 1 | ||||
-rw-r--r-- | apps/contacts/js/interface.js | 7 | ||||
-rw-r--r-- | apps/contacts/templates/index.php | 2 | ||||
-rw-r--r-- | apps/contacts/templates/part.details.php | 2 | ||||
-rw-r--r-- | apps/remoteStorage/compat.php | 2 | ||||
-rw-r--r-- | apps/user_webfinger/activate.php | 11 | ||||
-rw-r--r-- | apps/user_webfinger/appinfo/install.php | 6 |
9 files changed, 59 insertions, 24 deletions
diff --git a/apps/bookmarks/bookmarksHelper.php b/apps/bookmarks/bookmarksHelper.php index f66d98a8ccb..44d4235b9b3 100644 --- a/apps/bookmarks/bookmarksHelper.php +++ b/apps/bookmarks/bookmarksHelper.php @@ -1,5 +1,52 @@ <?php +// Source: http://www.php.net/manual/de/function.curl-setopt.php#102121 +// This works around a safe_mode/open_basedir restriction +function curl_exec_follow(/*resource*/ $ch, /*int*/ &$maxredirect = null) { + $mr = $maxredirect === null ? 5 : intval($maxredirect); + if (ini_get('open_basedir') == '' && ini_get('safe_mode' == 'Off')) { + curl_setopt($ch, CURLOPT_FOLLOWLOCATION, $mr > 0); + curl_setopt($ch, CURLOPT_MAXREDIRS, $mr); + } else { + curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false); + if ($mr > 0) { + $newurl = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL); + + $rch = curl_copy_handle($ch); + curl_setopt($rch, CURLOPT_HEADER, true); + curl_setopt($rch, CURLOPT_NOBODY, true); + curl_setopt($rch, CURLOPT_FORBID_REUSE, false); + curl_setopt($rch, CURLOPT_RETURNTRANSFER, true); + do { + curl_setopt($rch, CURLOPT_URL, $newurl); + $header = curl_exec($rch); + if (curl_errno($rch)) { + $code = 0; + } else { + $code = curl_getinfo($rch, CURLINFO_HTTP_CODE); + if ($code == 301 || $code == 302) { + preg_match('/Location:(.*?)\n/', $header, $matches); + $newurl = trim(array_pop($matches)); + } else { + $code = 0; + } + } + } while ($code && --$mr); + curl_close($rch); + if (!$mr) { + if ($maxredirect === null) { + trigger_error('Too many redirects. When following redirects, libcurl hit the maximum amount.', E_USER_WARNING); + } else { + $maxredirect = 0; + } + return false; + } + curl_setopt($ch, CURLOPT_URL, $newurl); + } + } + return curl_exec($ch); +} + function getURLMetadata($url) { //allow only http(s) and (s)ftp $protocols = '/^[hs]{0,1}[tf]{0,1}tp[s]{0,1}\:\/\//i'; @@ -12,13 +59,11 @@ function getURLMetadata($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); - $page = curl_exec($ch); + $page = curl_exec_follow($ch); curl_close($ch); @preg_match( "/<title>(.*)<\/title>/si", $page, $match ); $metadata['title'] = htmlspecialchars_decode(@$match[1]); - $meta = get_meta_tags($url); - return $metadata; }
\ No newline at end of file diff --git a/apps/calendar/js/calendar.js b/apps/calendar/js/calendar.js index 87954b7aac6..efddac40426 100644 --- a/apps/calendar/js/calendar.js +++ b/apps/calendar/js/calendar.js @@ -200,6 +200,7 @@ Calendar={ }); } }); + window.setTimeout("Calendar.UI.loadEvents(" + year + ")", 120000); }, getEventsForDate:function(date){ var day = date.getDate(); diff --git a/apps/contacts/css/styles.css b/apps/contacts/css/styles.css index 1f95fdb2ad4..c1abd0efb62 100644 --- a/apps/contacts/css/styles.css +++ b/apps/contacts/css/styles.css @@ -1,2 +1,3 @@ .contacts_details_left {text-align:right;vertical-align:top;padding:2px;} .contacts_details_right {text-align:left;vertical-align:top;padding:2px;} +#contacts_deletecard {position:absolute;top:15px;right:0;} diff --git a/apps/contacts/js/interface.js b/apps/contacts/js/interface.js index 0fcfdeaab5d..2f4a736f553 100644 --- a/apps/contacts/js/interface.js +++ b/apps/contacts/js/interface.js @@ -1,12 +1,5 @@ $(document).ready(function(){ /*------------------------------------------------------------------------- - * Actions for startup - *-----------------------------------------------------------------------*/ - if( $('#leftcontent li').length > 0 ){ - $('#leftcontent li').first().addClass('active'); - } - - /*------------------------------------------------------------------------- * Event handlers *-----------------------------------------------------------------------*/ $('#leftcontent li').live('click',function(){ diff --git a/apps/contacts/templates/index.php b/apps/contacts/templates/index.php index 6d67584b29e..98ebc1b0b36 100644 --- a/apps/contacts/templates/index.php +++ b/apps/contacts/templates/index.php @@ -14,5 +14,5 @@ OC_Util::addStyle('contacts','styles'); </ul> </div> <div id="rightcontent" class="rightcontent" data-id="<?php echo $_['id']; ?>"> - <?php echo $this->inc("part.details"); ?> + <?php echo $this->inc("part.addcardform"); ?> </div> diff --git a/apps/contacts/templates/part.details.php b/apps/contacts/templates/part.details.php index 26a33739acb..438f84d45d4 100644 --- a/apps/contacts/templates/part.details.php +++ b/apps/contacts/templates/part.details.php @@ -28,7 +28,7 @@ <?php endforeach; ?> </table> <form> - <input type="button" id="contacts_deletecard" value="<?php echo $l->t('Delete');?>"> + <img class="svg action" id="contacts_deletecard" src="<?php echo image_path('', 'actions/delete.svg'); ?>" title="<?php echo $l->t('Delete contact');?>" /> <input type="button" id="contacts_addproperty" value="<?php echo $l->t('Add Property');?>"> </form> <?php endif; ?> diff --git a/apps/remoteStorage/compat.php b/apps/remoteStorage/compat.php index d383e879510..35a133c43c7 100644 --- a/apps/remoteStorage/compat.php +++ b/apps/remoteStorage/compat.php @@ -44,7 +44,7 @@ if(isset($_SERVER['HTTP_ORIGIN'])) { header('Access-Control-Allow-Origin: ' . $_SERVER['HTTP_ORIGIN']); header('Access-Control-Max-Age: 3600'); header('Access-Control-Allow-Methods: OPTIONS, GET, PUT, DELETE, PROPFIND'); - header('Access-Control-Allow-Headers: Authorization'); + header('Access-Control-Allow-Headers: Authorization, Content-Type'); } else { header('Access-Control-Allow-Origin: *'); } diff --git a/apps/user_webfinger/activate.php b/apps/user_webfinger/activate.php deleted file mode 100644 index 50257232ae4..00000000000 --- a/apps/user_webfinger/activate.php +++ /dev/null @@ -1,11 +0,0 @@ -<?php -$ownCloudBaseUri = substr($_SERVER['REQUEST_URI'],0, -(strlen('/apps/user_webfinger/activate.php'))); -$thisAppDir = __DIR__; -$appsDir = dirname($thisAppDir); -$ownCloudDir = dirname($appsDir); -try{ - symlink($thisAppDir, $ownCloudDir.'/.well-known'); - echo "Webfinger should now work.\n"; -} catch(Exception $e) { - echo "Please create a file called '.well-known in the ownCloud root, give the web server user permission to change it, and retry.\n"; -} diff --git a/apps/user_webfinger/appinfo/install.php b/apps/user_webfinger/appinfo/install.php new file mode 100644 index 00000000000..079043cd102 --- /dev/null +++ b/apps/user_webfinger/appinfo/install.php @@ -0,0 +1,6 @@ +<?php +$appInfoDir = __DIR__; +$thisAppDir = dirname($appInfoDir); +$appsDir = dirname($thisAppDir); +$ownCloudDir = dirname($appsDir); +symlink($thisAppDir, $ownCloudDir.'/.well-known'); |