diff options
author | Thomas Tanghus <thomas@tanghus.net> | 2012-11-05 12:06:59 +0100 |
---|---|---|
committer | Thomas Tanghus <thomas@tanghus.net> | 2012-11-05 12:06:59 +0100 |
commit | 1147dc977422e827a201fa081abd07721231d072 (patch) | |
tree | 203d47297c49545a67bbdd98cbe137b255a5d6d8 /core | |
parent | 88b91a7304f2de998f71a674f4f62e85f5b83e54 (diff) | |
parent | 135680e50bf760d55a1bcaaaa02f959bde396c52 (diff) | |
download | nextcloud-server-1147dc977422e827a201fa081abd07721231d072.tar.gz nextcloud-server-1147dc977422e827a201fa081abd07721231d072.zip |
Merge branch 'master' of github.com:owncloud/core into vcategories_db
Conflicts:
lib/vcategories.php
Diffstat (limited to 'core')
-rw-r--r-- | core/ajax/requesttoken.php | 40 | ||||
-rw-r--r-- | core/js/eventsource.js | 2 | ||||
-rw-r--r-- | core/js/requesttoken.js | 55 | ||||
-rw-r--r-- | core/routes.php | 3 | ||||
-rw-r--r-- | core/templates/installation.php | 6 | ||||
-rw-r--r-- | core/templates/layout.base.php | 1 | ||||
-rw-r--r-- | core/templates/layout.guest.php | 1 | ||||
-rw-r--r-- | core/templates/layout.user.php | 8 |
8 files changed, 11 insertions, 105 deletions
diff --git a/core/ajax/requesttoken.php b/core/ajax/requesttoken.php deleted file mode 100644 index 9d43a722852..00000000000 --- a/core/ajax/requesttoken.php +++ /dev/null @@ -1,40 +0,0 @@ -<?php -/** -* ownCloud -* @author Christian Reiner -* @copyright 2011-2012 Christian Reiner <foss@christian-reiner.info> -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the license, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. -* If not, see <http://www.gnu.org/licenses/>. -* -*/ - -/** - * @file core/ajax/requesttoken.php - * @brief Ajax method to retrieve a fresh request protection token for ajax calls - * @return json: success/error state indicator including a fresh request token - * @author Christian Reiner - */ - -// don't load apps or filesystem for this task -$RUNTIME_NOAPPS = true; -$RUNTIME_NOSETUPFS = true; - -// Sanity checks -// using OCP\JSON::callCheck() below protects the token refreshing itself. -//OCP\JSON::callCheck ( ); -OCP\JSON::checkLoggedIn ( ); -// hand out a fresh token -OCP\JSON::success ( array ( 'token' => OCP\Util::callRegister() ) ); -?> diff --git a/core/js/eventsource.js b/core/js/eventsource.js index 45c63715a7e..e3ad7e3a671 100644 --- a/core/js/eventsource.js +++ b/core/js/eventsource.js @@ -40,7 +40,7 @@ OC.EventSource=function(src,data){ dataStr+=name+'='+encodeURIComponent(data[name])+'&'; } } - dataStr+='requesttoken='+OC.Request.Token; + dataStr+='requesttoken='+OC.EventSource.requesttoken; if(!this.useFallBack && typeof EventSource !='undefined'){ this.source=new EventSource(src+'?'+dataStr); this.source.onmessage=function(e){ diff --git a/core/js/requesttoken.js b/core/js/requesttoken.js deleted file mode 100644 index 0d78cd7e93b..00000000000 --- a/core/js/requesttoken.js +++ /dev/null @@ -1,55 +0,0 @@ -/** - * ownCloud - * - * @file core/js/requesttoken.js - * @brief Routine to refresh the Request protection request token periodically - * @author Christian Reiner (arkascha) - * @copyright 2011-2012 Christian Reiner <foss@christian-reiner.info> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the license, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. - * If not, see <http://www.gnu.org/licenses/>. - * - */ - -OC.Request = { - // the request token - Token: {}, - // the lifespan span (in secs) - Lifespan: {}, - // method to refresh the local request token periodically - Refresh: function(){ - // just a client side console log to preserve efficiency - console.log("refreshing request token (lifebeat)"); - var dfd=new $.Deferred(); - $.ajax({ - type: 'POST', - url: OC.filePath('core','ajax','requesttoken.php'), - cache: false, - data: { }, - dataType: 'json' - }).done(function(response){ - // store refreshed token inside this class - OC.Request.Token=response.token; - dfd.resolve(); - }).fail(dfd.reject); - return dfd; - } -} -// accept requesttoken and lifespan into the OC namespace -OC.Request.Token = oc_requesttoken; -OC.Request.Lifespan = oc_requestlifespan; -// refresh the request token periodically shortly before it becomes invalid on the server side -setInterval(OC.Request.Refresh,Math.floor(1000*OC.Request.Lifespan*0.93)), // 93% of lifespan value, close to when the token expires -// early bind token as additional ajax argument for every single request -$(document).bind('ajaxSend', function(elm, xhr, s){xhr.setRequestHeader('requesttoken', OC.Request.Token);}); diff --git a/core/routes.php b/core/routes.php index 3ac943f7c6c..fc511d403d8 100644 --- a/core/routes.php +++ b/core/routes.php @@ -13,9 +13,6 @@ $this->create('search_ajax_search', '/search/ajax/search.php') // AppConfig $this->create('core_ajax_appconfig', '/core/ajax/appconfig.php') ->actionInclude('core/ajax/appconfig.php'); -// RequestToken -$this->create('core_ajax_requesttoken', '/core/ajax/requesttoken.php') - ->actionInclude('core/ajax/requesttoken.php'); // Share $this->create('core_ajax_share', '/core/ajax/share.php') ->actionInclude('core/ajax/share.php'); diff --git a/core/templates/installation.php b/core/templates/installation.php index 5a3bd2cc9f0..a7c4780d5d1 100644 --- a/core/templates/installation.php +++ b/core/templates/installation.php @@ -73,7 +73,7 @@ <p>MySQL <?php echo $l->t( 'will be used' ); ?>.</p> <input type="hidden" id="dbtype" name="dbtype" value="mysql" /> <?php else: ?> - <input type="radio" name="dbtype" value="mysql" id="mysql" <?php OC_Helper::init_radio('dbtype','mysql', 'sqlite'); ?>/> + <input type="radio" name="dbtype" value="mysql" id="mysql" <?php OC_Helper::init_radio('dbtype', 'mysql', 'sqlite'); ?>/> <label class="mysql" for="mysql">MySQL</label> <?php endif; ?> <?php endif; ?> @@ -84,7 +84,7 @@ <input type="hidden" id="dbtype" name="dbtype" value="pgsql" /> <?php else: ?> <label class="pgsql" for="pgsql">PostgreSQL</label> - <input type="radio" name="dbtype" value='pgsql' id="pgsql" <?php OC_Helper::init_radio('dbtype','pgsql', 'sqlite'); ?>/> + <input type="radio" name="dbtype" value='pgsql' id="pgsql" <?php OC_Helper::init_radio('dbtype', 'pgsql', 'sqlite'); ?>/> <?php endif; ?> <?php endif; ?> @@ -94,7 +94,7 @@ <input type="hidden" id="dbtype" name="dbtype" value="oci" /> <?php else: ?> <label class="oci" for="oci">Oracle</label> - <input type="radio" name="dbtype" value='oci' id="oci" <?php OC_Helper::init_radio('dbtype','oci', 'sqlite'); ?>/> + <input type="radio" name="dbtype" value='oci' id="oci" <?php OC_Helper::init_radio('dbtype', 'oci', 'sqlite'); ?>/> <?php endif; ?> <?php endif; ?> </div> diff --git a/core/templates/layout.base.php b/core/templates/layout.base.php index f78b6ff8bbd..d8f83058775 100644 --- a/core/templates/layout.base.php +++ b/core/templates/layout.base.php @@ -11,7 +11,6 @@ var oc_webroot = '<?php echo OC::$WEBROOT; ?>'; var oc_appswebroots = <?php echo $_['apps_paths'] ?>; var oc_requesttoken = '<?php echo $_['requesttoken']; ?>'; - var oc_requestlifespan = '<?php echo $_['requestlifespan']; ?>'; </script> <?php foreach ($_['jsfiles'] as $jsfile): ?> <script type="text/javascript" src="<?php echo $jsfile; ?>"></script> diff --git a/core/templates/layout.guest.php b/core/templates/layout.guest.php index e6468cdcfb4..2eaa517b324 100644 --- a/core/templates/layout.guest.php +++ b/core/templates/layout.guest.php @@ -11,7 +11,6 @@ var oc_webroot = '<?php echo OC::$WEBROOT; ?>'; var oc_appswebroots = <?php echo $_['apps_paths'] ?>; var oc_requesttoken = '<?php echo $_['requesttoken']; ?>'; - var oc_requestlifespan = '<?php echo $_['requestlifespan']; ?>'; var datepickerFormatDate = <?php echo json_encode($l->l('jsdate', 'jsdate')) ?>; var dayNames = <?php echo json_encode(array((string)$l->t('Sunday'), (string)$l->t('Monday'), (string)$l->t('Tuesday'), (string)$l->t('Wednesday'), (string)$l->t('Thursday'), (string)$l->t('Friday'), (string)$l->t('Saturday'))) ?>; var monthNames = <?php echo json_encode(array((string)$l->t('January'), (string)$l->t('February'), (string)$l->t('March'), (string)$l->t('April'), (string)$l->t('May'), (string)$l->t('June'), (string)$l->t('July'), (string)$l->t('August'), (string)$l->t('September'), (string)$l->t('October'), (string)$l->t('November'), (string)$l->t('December'))) ?>; diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php index d876fbc98e8..451a4685e82 100644 --- a/core/templates/layout.user.php +++ b/core/templates/layout.user.php @@ -12,7 +12,6 @@ var oc_appswebroots = <?php echo $_['apps_paths'] ?>; var oc_current_user = '<?php echo OC_User::getUser() ?>'; var oc_requesttoken = '<?php echo $_['requesttoken']; ?>'; - var oc_requestlifespan = '<?php echo $_['requestlifespan']; ?>'; var datepickerFormatDate = <?php echo json_encode($l->l('jsdate', 'jsdate')) ?>; var dayNames = <?php echo json_encode(array((string)$l->t('Sunday'), (string)$l->t('Monday'), (string)$l->t('Tuesday'), (string)$l->t('Wednesday'), (string)$l->t('Thursday'), (string)$l->t('Friday'), (string)$l->t('Saturday'))) ?>; var monthNames = <?php echo json_encode(array((string)$l->t('January'), (string)$l->t('February'), (string)$l->t('March'), (string)$l->t('April'), (string)$l->t('May'), (string)$l->t('June'), (string)$l->t('July'), (string)$l->t('August'), (string)$l->t('September'), (string)$l->t('October'), (string)$l->t('November'), (string)$l->t('December'))) ?>; @@ -21,6 +20,13 @@ <?php foreach($_['jsfiles'] as $jsfile): ?> <script type="text/javascript" src="<?php echo $jsfile; ?>"></script> <?php endforeach; ?> + <script type="text/javascript"> + requesttoken = '<?php echo $_['requesttoken']; ?>'; + OC.EventSource.requesttoken=requesttoken; + $(document).bind('ajaxSend', function(elm, xhr, s) { + xhr.setRequestHeader('requesttoken', requesttoken); + }); + </script> <?php foreach($_['headers'] as $header): ?> <?php echo '<'.$header['tag'].' '; |