aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2014-11-06 16:30:44 +0100
committerMorris Jobke <hey@morrisjobke.de>2014-11-06 16:30:44 +0100
commitefe209784ee1328556b51d69d3d5df870607fc91 (patch)
treec02203beba2b02fea5c83a26934a4325b9b56cea
parent8f1fa32e1f1cf27a98882307525b4dbe68c340b3 (diff)
parent7353183d999795b6044ace6084c67eca95de77cd (diff)
downloadnextcloud-server-efe209784ee1328556b51d69d3d5df870607fc91.tar.gz
nextcloud-server-efe209784ee1328556b51d69d3d5df870607fc91.zip
Merge pull request #12000 from owncloud/bower-strengthify
bower strengthify
m---------3rdparty0
-rw-r--r--bower.json1
-rw-r--r--core/setup/controller.php4
-rw-r--r--core/vendor/.gitignore18
-rw-r--r--core/vendor/strengthify/LICENSE20
-rw-r--r--core/vendor/strengthify/jquery.strengthify.js133
-rw-r--r--core/vendor/strengthify/strengthify.css48
-rw-r--r--settings/personal.php4
8 files changed, 212 insertions, 16 deletions
diff --git a/3rdparty b/3rdparty
-Subproject 48fdf111dfe4728a906002afccb97b8ad88b3f6
+Subproject 912a45c3458685a1105fba38a39a3a71c7348ed
diff --git a/bower.json b/bower.json
index 406878ca713..b18078f6fc4 100644
--- a/bower.json
+++ b/bower.json
@@ -21,6 +21,7 @@
"select2": "3.4.8",
"zxcvbn": "*",
"snapjs": "2.0.0-rc1",
+ "strengthify": "*",
"underscore": "1.6.0"
}
}
diff --git a/core/setup/controller.php b/core/setup/controller.php
index f5f05348fd1..0722a2b13c3 100644
--- a/core/setup/controller.php
+++ b/core/setup/controller.php
@@ -57,8 +57,8 @@ class Controller {
);
$parameters = array_merge($defaults, $post);
- \OC_Util::addScript( '3rdparty', 'strengthify/jquery.strengthify' );
- \OC_Util::addStyle( '3rdparty', 'strengthify/strengthify' );
+ \OC_Util::addVendorScript('strengthify/jquery.strengthify');
+ \OC_Util::addVendorStyle('strengthify/strengthify');
\OC_Util::addScript('setup');
\OC_Template::printGuestPage('', 'installation', $parameters);
}
diff --git a/core/vendor/.gitignore b/core/vendor/.gitignore
index c2c71a145ba..e76afeb476d 100644
--- a/core/vendor/.gitignore
+++ b/core/vendor/.gitignore
@@ -1,12 +1,16 @@
test/
src/
.bower.json
+bower.json
.gitignore
.jshintrc
.travis.yml
+CHANGELOG*
Gemfile
gruntfile.js
-README.md
+Makefile
+package.json
+README*
# underscore
underscore/**
@@ -17,20 +21,13 @@ underscore/**
blueimp-md5/css
blueimp-md5/js/*
!blueimp-md5/js/md5.js
-blueimp-md5/.*
-blueimp-md5/*.json
blueimp-md5/index.html
-blueimp-md5/Makefile
-blueimp-md5/README.md
-blueimp-md5/package.json
# momentjs - ignore all files except the two listed below
moment/benchmarks
moment/locale
moment/min/**
-moment/*.js*
-moment/*.md
-!moment/LICENSE
+moment/moment.js
!moment/min/moment-with-locales.js
# jquery
@@ -39,9 +36,7 @@ jquery/**
!jquery/MIT-LICENSE.txt
# jcrop
-jcrop/.bower.json
jcrop/index.html
-jcrop/README.md
jcrop/demos
jcrop/css/jquery.Jcrop.min.css
jcrop/js/**
@@ -71,4 +66,3 @@ snapjs/dist/2.0.0-rc1
snapjs/dist/latest/snap.css
snapjs/dist/latest/snap.min.js
snapjs/scripts
-snapjs/*.json
diff --git a/core/vendor/strengthify/LICENSE b/core/vendor/strengthify/LICENSE
new file mode 100644
index 00000000000..3c04738f789
--- /dev/null
+++ b/core/vendor/strengthify/LICENSE
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright (c) 2013 Morris Jobke
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/core/vendor/strengthify/jquery.strengthify.js b/core/vendor/strengthify/jquery.strengthify.js
new file mode 100644
index 00000000000..8b62f6b2fe9
--- /dev/null
+++ b/core/vendor/strengthify/jquery.strengthify.js
@@ -0,0 +1,133 @@
+/**
+ * Strengthify - show the weakness of a password (uses zxcvbn for this)
+ * https://github.com/kabum/strengthify
+ *
+ * Version: 0.3
+ * Author: Morris Jobke (github.com/kabum)
+ *
+ * License:
+ *
+ * The MIT License (MIT)
+ *
+ * Copyright (c) 2013 Morris Jobke <morris.jobke@gmail.com>
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of
+ * this software and associated documentation files (the "Software"), to deal in
+ * the Software without restriction, including without limitation the rights to
+ * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+ * the Software, and to permit persons to whom the Software is furnished to do so,
+ * subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+ * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+(function ($) {
+ $.fn.strengthify = function(options) {
+ var me = this
+
+ var defaults = {
+ zxcvbn: 'zxcvbn/zxcvbn.js',
+ titles: [
+ 'Weakest',
+ 'Weak',
+ 'So-so',
+ 'Good',
+ 'Perfect'
+ ]
+ }
+
+ var options = $.extend(defaults, options)
+
+ // add elements
+ $('.strengthify-wrapper')
+ .append('<div class="strengthify-bg" />')
+ .append('<div class="strengthify-container" />')
+ .append('<div class="strengthify-separator" style="left: 25%" />')
+ .append('<div class="strengthify-separator" style="left: 50%" />')
+ .append('<div class="strengthify-separator" style="left: 75%" />')
+
+ var oldDisplayState = $('.strengthify-wrapper').css('display')
+
+ $.ajax({
+ cache: true,
+ dataType: 'script',
+ url: options.zxcvbn
+ }).done(function() {
+ me.bind('keyup input', function() {
+ var password = $(this).val()
+
+ // hide strengthigy if no input is provided
+ var opacity = (password === '') ? 0 : 1
+ $('.strengthify-wrapper').children().css(
+ 'opacity',
+ opacity
+ ).css(
+ '-ms-filter',
+ '"progid:DXImageTransform.Microsoft.Alpha(Opacity=' + opacity * 100 + ')"'
+ )
+
+ // calculate result
+ var result = zxcvbn(password)
+
+ var css = ''
+ // style strengthify bar
+ // possible scores: 0-4
+ switch(result.score) {
+ case 0:
+ case 1:
+ css = 'password-bad';
+ break;
+ case 2:
+ css = 'password-medium';
+ break;
+ case 3:
+ case 4:
+ css = 'password-good';
+ break;
+ }
+
+ $('.strengthify-container').attr('class', css + ' strengthify-container')
+ // possible scores: 0-4
+ $('.strengthify-container').css(
+ 'width',
+ // if score is '0' it will be changed to '1' to
+ // not hide strengthify if the password is extremely weak
+ ((result.score == 0 ? 1 : result.score) * 25) + '%'
+ )
+ // set a title for the wrapper
+ $('.strengthify-wrapper').attr(
+ 'title',
+ options.titles[result.score]
+ ).tipsy({
+ trigger: 'manual',
+ opacity: opacity
+ }).tipsy(
+ 'show'
+ )
+
+ if(opacity === 0) {
+ $('.strengthify-wrapper').tipsy(
+ 'hide'
+ )
+ }
+
+ // reset state for empty string password
+ if(password === '') {
+ $('.strengthify-container').css('width', 0)
+ }
+
+ })
+ })
+
+ return me
+ };
+
+}(jQuery)) \ No newline at end of file
diff --git a/core/vendor/strengthify/strengthify.css b/core/vendor/strengthify/strengthify.css
new file mode 100644
index 00000000000..9340270ecfb
--- /dev/null
+++ b/core/vendor/strengthify/strengthify.css
@@ -0,0 +1,48 @@
+/**
+ * Strengthify - show the weakness of a password (uses zxcvbn for this)
+ * https://github.com/kabum/strengthify
+ * Version: 0.3
+ * License: The MIT License (MIT)
+ * Copyright (c) 2013 Morris Jobke <morris.jobke@gmail.com>
+ */
+
+.strengthify-wrapper > * {
+ -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ filter: alpha(opacity=0);
+ opacity: 0;
+ -webkit-transition:all .5s ease-in-out;
+ -moz-transition:all .5s ease-in-out;
+ transition:all .5s ease-in-out;
+}
+
+.strengthify-bg, .strengthify-container, .strengthify-wrapper, .strengthify-separator {
+ height: 3px;
+}
+
+.strengthify-bg, .strengthify-container {
+ display: block;
+ position: absolute;
+ width: 100%;
+}
+
+.strengthify-bg {
+ background-color: #BBB;
+}
+
+.strengthify-separator {
+ display: inline-block;
+ position: absolute;
+ background-color: #FFF;
+ width: 1px;
+ z-index: 10;
+}
+
+.password-bad {
+ background-color: #C33;
+}
+.password-medium {
+ background-color: #F80;
+}
+.password-good {
+ background-color: #3C3;
+} \ No newline at end of file
diff --git a/settings/personal.php b/settings/personal.php
index 4c06eecd223..9c27f77ccd3 100644
--- a/settings/personal.php
+++ b/settings/personal.php
@@ -13,8 +13,8 @@ $certificateManager = \OC::$server->getCertificateManager();
// Highlight navigation entry
OC_Util::addScript( 'settings', 'personal' );
OC_Util::addStyle( 'settings', 'settings' );
-OC_Util::addScript( '3rdparty', 'strengthify/jquery.strengthify' );
-OC_Util::addStyle( '3rdparty', 'strengthify/strengthify' );
+\OC_Util::addVendorScript('strengthify/jquery.strengthify');
+\OC_Util::addVendorStyle('strengthify/strengthify');
\OC_Util::addScript('files', 'jquery.fileupload');
if (\OC_Config::getValue('enable_avatars', true) === true) {
\OC_Util::addVendorScript('jcrop/js/jquery.Jcrop');