Escape invalid XML chars during serialization.

This commit is contained in:
Paulo Gustavo Veiga 2013-03-17 11:22:53 -03:00
parent 3578d6e624
commit 48e211cc2d
97 changed files with 62 additions and 550 deletions

View File

@ -149,8 +149,6 @@ mindplot.MultilineTextEditor = new Class({
if (this._topic.getText() != this._getText()) {
var text = this._getText();
// Do not send windows return chars ...
text = text.replace("\r","");
var topicId = this._topic.getId();
var actionDispatcher = mindplot.ActionDispatcher.getInstance();

View File

@ -18,7 +18,7 @@
mindplot.persistence.XMLSerializer_Pela = new Class({
toXML:function (mindmap) {
toXML: function (mindmap) {
$assert(mindmap, "Can not save a null mindmap");
var document = core.Utils.createDocument();
@ -27,7 +27,7 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
var mapElem = document.createElement("map");
var name = mindmap.getId();
if ($defined(name)) {
mapElem.setAttribute('name', name);
mapElem.setAttribute('name', this.rmXmlInv(name));
}
var version = mindmap.getVersion();
if ($defined(version)) {
@ -61,7 +61,7 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
return document;
},
_topicToXML:function (document, topic) {
_topicToXML: function (document, topic) {
var parentTopic = document.createElement("topic");
// Set topic attributes...
@ -150,9 +150,9 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
var value = attributes[key];
if (key == 'text') {
var cdata = document.createCDATASection(value);
featureDom.appendChild(cdata);
featureDom.appendChild(this.rmXmlInv(cdata));
} else {
featureDom.setAttribute(key, value);
featureDom.setAttribute(key, this.rmXmlInv(value));
}
}
parentTopic.appendChild(featureDom);
@ -169,18 +169,18 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
return parentTopic;
},
_noteTextToXML:function (document, elem, text) {
_noteTextToXML: function (document, elem, text) {
if (text.indexOf('\n') == -1) {
elem.setAttribute('text', text);
elem.setAttribute('text', this.rmXmlInv(text));
} else {
var textDom = document.createElement("text");
var cdata = document.createCDATASection(text);
var cdata = document.createCDATASection(this.rmXmlInv(text));
textDom.appendChild(cdata);
elem.appendChild(textDom);
}
},
_relationshipToXML:function (document, relationship) {
_relationshipToXML: function (document, relationship) {
var result = document.createElement("relationship");
result.setAttribute("srcTopicId", relationship.getFromNode());
result.setAttribute("destTopicId", relationship.getToNode());
@ -203,7 +203,7 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
return result;
},
loadFromDom:function (dom, mapId) {
loadFromDom: function (dom, mapId) {
$assert(dom, "dom can not be null");
$assert(mapId, "mapId can not be null");
@ -239,7 +239,7 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
return mindmap;
},
_deserializeNode:function (domElem, mindmap) {
_deserializeNode: function (domElem, mindmap) {
var type = (domElem.getAttribute('central') != null) ? mindplot.model.INodeModel.CENTRAL_TOPIC_TYPE : mindplot.model.INodeModel.MAIN_TOPIC_TYPE;
// Load attributes...
@ -320,7 +320,7 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
var isShrink = domElem.getAttribute('shrink');
// Hack: Some production maps has been stored with the central topic collapsed. This is a bug.
if ($defined(isShrink) && type!=mindplot.model.INodeModel.CENTRAL_TOPIC_TYPE) {
if ($defined(isShrink) && type != mindplot.model.INodeModel.CENTRAL_TOPIC_TYPE) {
topic.setChildrenShrunken(isShrink);
}
@ -373,7 +373,7 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
return topic;
},
_deserializeTextAttr:function (domElem) {
_deserializeTextAttr: function (domElem) {
var value = domElem.getAttribute("text");
if (!$defined(value)) {
var children = domElem.childNodes;
@ -396,7 +396,7 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
return value;
},
_deserializeNodeText:function (domElem) {
_deserializeNodeText: function (domElem) {
var children = domElem.childNodes;
var value = null;
for (var i = 0; i < children.length; i++) {
@ -408,7 +408,7 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
return value;
},
_deserializeRelationship:function (domElement, mindmap) {
_deserializeRelationship: function (domElement, mindmap) {
var srcId = domElement.getAttribute("srcTopicId");
var destId = domElement.getAttribute("destTopicId");
var lineType = domElement.getAttribute("lineType");
@ -437,6 +437,36 @@ mindplot.persistence.XMLSerializer_Pela = new Class({
model.setStartArrow('true');
return model;
}
/*
* This method ensures that the output String has only
* valid XML unicode characters as specified by the
* XML 1.0 standard. For reference, please see
* <a href="http://www.w3.org/TR/2000/REC-xml-20001006#NT-Char">the
* standard</a>. This method will return an empty
* String if the input is null or empty.
*
* @param in The String whose non-valid characters we want to remove.
* @return The in String, stripped of non-valid characters.
*/,
rmXmlInv: function (str) {
if (str == null || str == undefined)
return null;
var result = "";
for (var i=0;i<str.length;i++){
var c = str.charCodeAt(i);
if ((c == 0x9) || (c == 0xA) || (c == 0xD)
|| ((c >= 0x20) && (c <= 0xD7FF))
|| ((c >= 0xE000) && (c <= 0xFFFD))
|| ((c >= 0x10000) && (c <= 0x10FFFF))) {
result = result + str.charAt(i);
}
}
return result;
}
});
mindplot.persistence.XMLSerializer_Pela.MAP_ROOT_NODE = 'map';

View File

@ -181,7 +181,6 @@ public class MindmapController extends BaseController {
final Mindmap mindmap = mindmapService.findMindmapById(id);
String xmlStr = mindmap.getXmlStr();
xmlStr = xmlStr.replace('\r',' '); // This is a temporal hack. Remove in 2014 ... :)
return xmlStr.getBytes("UTF-8");
}

View File

@ -75,12 +75,6 @@
<put-attribute name="removeSignin" value="true"/>
</definition>
<definition name="openidlogin" extends="pageTemplate">
<put-attribute name="title" value="LOGIN"/>
<put-attribute name="body" value="/jsp/openidlogin.jsp"/>
<put-attribute name="removeSignin" value="true"/>
</definition>
<definition name="termsOfUse" extends="pageTemplate">
<put-attribute name="title" value="TERM_OF_USE"/>
<put-attribute name="body" value="/jsp/termsOfUse.jsp"/>

View File

@ -50,26 +50,26 @@
authentication-failure-url="/c/login?login_error=2"
login-processing-url="/c/j_spring_security_check"/>
<sec:openid-login user-service-ref="userDetailsService"
authentication-failure-url="/c/login.jsp?login_error=true"
login-processing-url="/c/j_spring_openid_security_check">
<!--<sec:openid-login user-service-ref="userDetailsService"-->
<!--authentication-failure-url="/c/login.jsp?login_error=true"-->
<!--login-processing-url="/c/j_spring_openid_security_check">-->
<sec:attribute-exchange identifier-match="https://www.google.com/.*">
<sec:openid-attribute name="email" type="http://axschema.org/contact/email" required="true" count="1"/>
<sec:openid-attribute name="firstname" type="http://axschema.org/namePerson/first" required="true"/>
<sec:openid-attribute name="lastname" type="http://axschema.org/namePerson/last" required="true"/>
</sec:attribute-exchange>
<!--<sec:attribute-exchange identifier-match="https://www.google.com/.*">-->
<!--<sec:openid-attribute name="email" type="http://axschema.org/contact/email" required="true" count="1"/>-->
<!--<sec:openid-attribute name="firstname" type="http://axschema.org/namePerson/first" required="true"/>-->
<!--<sec:openid-attribute name="lastname" type="http://axschema.org/namePerson/last" required="true"/>-->
<!--</sec:attribute-exchange>-->
<sec:attribute-exchange identifier-match=".*yahoo.com.*">
<sec:openid-attribute name="email" type="http://axschema.org/contact/email" required="true"/>
<sec:openid-attribute name="fullname" type="http://axschema.org/namePerson" required="true"/>
</sec:attribute-exchange>
<!--<sec:attribute-exchange identifier-match=".*yahoo.com.*">-->
<!--<sec:openid-attribute name="email" type="http://axschema.org/contact/email" required="true"/>-->
<!--<sec:openid-attribute name="fullname" type="http://axschema.org/namePerson" required="true"/>-->
<!--</sec:attribute-exchange>-->
<sec:attribute-exchange identifier-match=".*myopenid.com.*">
<sec:openid-attribute name="email" type="http://schema.openid.net/contact/email" required="true"/>
<sec:openid-attribute name="fullname" type="http://schema.openid.net/namePerson" required="true"/>
</sec:attribute-exchange>
</sec:openid-login>
<!--<sec:attribute-exchange identifier-match=".*myopenid.com.*">-->
<!--<sec:openid-attribute name="email" type="http://schema.openid.net/contact/email" required="true"/>-->
<!--<sec:openid-attribute name="fullname" type="http://schema.openid.net/namePerson" required="true"/>-->
<!--</sec:attribute-exchange>-->
<!--</sec:openid-login>-->
<sec:remember-me key="wisemapping-hashed-key"/>
<sec:logout logout-url="/c/logout" invalidate-session="true" logout-success-url="/c/login"/>
</sec:http>

View File

@ -1,45 +0,0 @@
#openid_form {
width: 580px;
}
#openid_form legend {
font-weight: bold;
}
#openid_choice {
display: none;
}
#openid_input_area {
clear: both;
padding: 10px;
}
#openid_btns, #openid_btns br {
clear: both;
}
#openid_highlight {
padding: 3px;
background-color: #FFFCC9;
float: left;
}
.openid_large_btn {
width: 100px;
height: 60px;
border: 1px solid #DDD;
margin: 3px;
float: left;
}
.openid_small_btn {
width: 24px;
height: 24px;
border: 1px solid #DDD;
margin: 3px;
float: left;
}
a.openid_large_btn:focus {
outline: none;
}
a.openid_large_btn:focus
{
-moz-outline-style: none;
}
.openid_selected {
border: 4px solid #DDD;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 740 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 873 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 436 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 146 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 432 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 579 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 629 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 771 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 527 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 631 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 376 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 426 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 993 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 993 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 419 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 533 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 374 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 552 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 562 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 713 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 977 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 511 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 539 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 979 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 172 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 513 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 603 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 859 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 499 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 894 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 713 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1007 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 909 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 566 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 575 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 459 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@ -1,96 +0,0 @@
/*
Simple OpenID Plugin
http://code.google.com/p/openid-selector/
This code is licensed under the New BSD License.
*/
var providers_large = {
google : {
name : 'Google',
url : 'https://www.google.com/accounts/o8/id'
},
yahoo : {
name : 'Yahoo',
url : 'http://me.yahoo.com/'
},
aol : {
name : 'AOL',
label : 'Enter your AOL screenname.',
url : 'http://openid.aol.com/{username}'
},
myopenid : {
name : 'MyOpenID',
label : 'Enter your MyOpenID username.',
url : 'http://{username}.myopenid.com/'
},
openid : {
name : 'OpenID',
label : 'Enter your OpenID.',
url : null
}
};
var providers_small = {
livejournal : {
name : 'LiveJournal',
label : 'Enter your Livejournal username.',
url : 'http://{username}.livejournal.com/'
},
/* flickr: {
name: 'Flickr',
label: 'Enter your Flickr username.',
url: 'http://flickr.com/{username}/'
}, */
/* technorati: {
name: 'Technorati',
label: 'Enter your Technorati username.',
url: 'http://technorati.com/people/technorati/{username}/'
}, */
wordpress : {
name : 'Wordpress',
label : 'Enter your Wordpress.com username.',
url : 'http://{username}.wordpress.com/'
},
blogger : {
name : 'Blogger',
label : 'Your Blogger account',
url : 'http://{username}.blogspot.com/'
},
verisign : {
name : 'Verisign',
label : 'Your Verisign username',
url : 'http://{username}.pip.verisignlabs.com/'
},
/* vidoop: {
name: 'Vidoop',
label: 'Your Vidoop username',
url: 'http://{username}.myvidoop.com/'
}, */
/* launchpad: {
name: 'Launchpad',
label: 'Your Launchpad username',
url: 'https://launchpad.net/~{username}'
}, */
claimid : {
name : 'ClaimID',
label : 'Your ClaimID username',
url : 'http://claimid.com/{username}'
},
clickpass : {
name : 'ClickPass',
label : 'Enter your ClickPass username',
url : 'http://clickpass.com/public/{username}'
},
google_profile : {
name : 'Google Profile',
label : 'Enter your Google Profile username',
url : 'http://www.google.com/profiles/{username}'
}
};
openid.locale = 'en';
openid.sprite = 'en'; // reused in german& japan localization
openid.demo_text = 'In client demo mode. Normally would have submitted OpenID:';
openid.signin_text = 'Sign-In';
openid.image_title = 'log in with {provider}';

View File

@ -1,202 +0,0 @@
/*
Simple OpenID Plugin
http://code.google.com/p/openid-selector/
This code is licensed under the New BSD License.
*/
var providers;
var openid;
(function ($) {
openid = {
version : '1.3', // version constant
demo : false,
demo_text : null,
cookie_expires : 6 * 30, // 6 months.
cookie_name : 'openid_provider',
cookie_path : '/',
img_path : 'images/',
locale : null, // is set in openid-<locale>.js
sprite : null, // usually equals to locale, is set in
// openid-<locale>.js
signin_text : null, // text on submit button on the form
all_small : false, // output large providers w/ small icons
no_sprite : false, // don't use sprite image
image_title : '{provider}', // for image title
input_id : null,
provider_url : null,
provider_id : null,
/**
* Class constructor
*
* @return {Void}
*/
init : function(input_id) {
providers = $.extend({}, providers_large, providers_small);
var openid_btns = $('#openid_btns');
this.input_id = input_id;
$('#openid_choice').show();
$('#openid_input_area').empty();
var i = 0;
// add box for each provider
for (id in providers_large) {
box = this.getBoxHTML(id, providers_large[id], (this.all_small ? 'small' : 'large'), i++);
openid_btns.append(box);
}
if (providers_small) {
openid_btns.append('<br/>');
for (id in providers_small) {
box = this.getBoxHTML(id, providers_small[id], 'small', i++);
openid_btns.append(box);
}
}
$('#openid_form').submit(this.submit);
var box_id = this.readCookie();
if (box_id) {
this.signin(box_id, true);
}
},
/**
* @return {String}
*/
getBoxHTML : function(box_id, provider, box_size, index) {
if (this.no_sprite) {
var image_ext = box_size == 'small' ? '.ico.gif' : '.gif';
return '<a title="' + this.image_title.replace('{provider}', provider["name"]) + '" href="javascript:openid.signin(\'' + box_id + '\');"'
+ ' style="background: #FFF url(' + this.img_path + '../images.' + box_size + '/' + box_id + image_ext + ') no-repeat center center" '
+ 'class="' + box_id + ' openid_' + box_size + '_btn"></a>';
}
var x = box_size == 'small' ? -index * 24 : -index * 100;
var y = box_size == 'small' ? -60 : 0;
return '<a title="' + this.image_title.replace('{provider}', provider["name"]) + '" href="javascript:openid.signin(\'' + box_id + '\');"'
+ ' style="background: #FFF url(' + this.img_path + 'openid-providers-' + this.sprite + '.png); background-position: ' + x + 'px ' + y + 'px" '
+ 'class="' + box_id + ' openid_' + box_size + '_btn"></a>';
},
/**
* Provider image click
*
* @return {Void}
*/
signin : function(box_id, onload) {
var provider = providers[box_id];
if (!provider) {
return;
}
this.highlight(box_id);
this.setCookie(box_id);
this.provider_id = box_id;
this.provider_url = provider['url'];
// prompt user for input?
if (provider['label']) {
this.useInputBox(provider);
} else {
$('#openid_input_area').empty();
if (!onload) {
$('#openid_form').submit();
}
}
},
/**
* Sign-in button click
*
* @return {Boolean}
*/
submit : function() {
var url = openid.provider_url;
if (url) {
url = url.replace('{username}', $('#openid_username').val());
openid.setOpenIdUrl(url);
}
if (openid.demo) {
alert(openid.demo_text + "\r\n" + document.getElementById(openid.input_id).value);
return false;
}
if (url.indexOf("javascript:") == 0) {
url = url.substr("javascript:".length);
eval(url);
return false;
}
return true;
},
/**
* @return {Void}
*/
setOpenIdUrl : function(url) {
var hidden = document.getElementById(this.input_id);
if (hidden != null) {
hidden.value = url;
} else {
$('#openid_form').append('<input type="hidden" id="' + this.input_id + '" name="' + this.input_id + '" value="' + url + '"/>');
}
},
/**
* @return {Void}
*/
highlight : function(box_id) {
// remove previous highlight.
var highlight = $('#openid_highlight');
if (highlight) {
highlight.replaceWith($('#openid_highlight a')[0]);
}
// add new highlight.
$('.' + box_id).wrap('<div id="openid_highlight"></div>');
},
setCookie : function(value) {
var date = new Date();
date.setTime(date.getTime() + (this.cookie_expires * 24 * 60 * 60 * 1000));
var expires = "; expires=" + date.toGMTString();
document.cookie = this.cookie_name + "=" + value + expires + "; path=" + this.cookie_path;
},
readCookie : function() {
var nameEQ = this.cookie_name + "=";
var ca = document.cookie.split(';');
for ( var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ')
c = c.substring(1, c.length);
if (c.indexOf(nameEQ) == 0)
return c.substring(nameEQ.length, c.length);
}
return null;
},
/**
* @return {Void}
*/
useInputBox : function(provider) {
var input_area = $('#openid_input_area');
var html = '';
var id = 'openid_username';
var value = '';
var label = provider['label'];
var style = '';
if (label) {
html = '<p>' + label + '</p>';
}
if (provider['name'] == 'OpenID') {
id = this.input_id;
value = 'http://';
style = 'background: #FFF url(' + this.img_path + 'openid-inputicon.gif) no-repeat scroll 0 50%; padding-left:18px;';
}
html += '<input id="' + id + '" type="text" style="' + style + '" name="' + id + '" value="' + value + '" />'
+ '<input id="openid_submit" type="submit" value="' + this.signin_text + '"/>';
input_area.empty();
input_area.append(html);
$('#' + id).focus();
},
setDemoMode : function(demoMode) {
this.demo = demoMode;
}
};
})(jQuery);

View File

@ -4,22 +4,6 @@
<%--@elvariable id="isHsql" type="boolean"--%>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/openid-jquery.js"></script>
<script type="text/javascript" src="js/openid-en.js"></script>
<script type="text/javascript">
$(document).ready(function() {
openid.init('openid_identifier');
openid.setDemoMode(true); //Stops form submission for client javascript-only test purposes
});
</script>
<!-- /Simple OpenID Selector -->
<style type="text/css">
/* Basic page formatting */
body {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
</style>
<script type="text/javascript" language="javascript">
$(function () {
$('#loginForm').submit(function () {
@ -33,28 +17,6 @@
<h1><spring:message code="WELCOME_TO_WISEMAPPING"/></h1>
<spring:message code="WELCOME_DETAILS"/>
</div>
<div class="span1">
<!-- Simple OpenID Selector -->
<form action="examples/consumer/try_auth.php" method="get" id="openid_form">
<input type="hidden" name="action" value="verify" />
<fieldset>
<legend>Sign-in or Create New Account</legend>
<div id="openid_choice">
<p>Please click your account provider:</p>
<div id="openid_btns"></div>
</div>
<div id="openid_input_area">
<input id="openid_identifier" name="openid_identifier" type="text" value="http://" />
<input id="openid_submit" type="submit" value="Sign-In"/>
</div>
<noscript>
<p>OpenID is service that allows you to log-on to many different websites using a single indentity.
Find out <a href="http://openid.net/what/">more about OpenID</a> and <a href="http://openid.net/get/">how to get an OpenID enabled account</a>.</p>
</noscript>
</fieldset>
</form>
</div>
<div id="login" class="fform span6">
<h1><spring:message code="SIGN_IN"/></h1>

View File

@ -1,64 +0,0 @@
<%@ taglib prefix='c' uri='http://java.sun.com/jsp/jstl/core' %>
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>OpenID Login</title>
<!-- Simple OpenID Selector -->
<link rel="stylesheet" href="<c:url value='/css/openid.css'/>" />
<script type="text/javascript" src="<c:url value='/js/jquery-1.2.6.min.js'/>"></script>
<script type="text/javascript" src="<c:url value='/js/openid-jquery.js'/>"></script>
<script type="text/javascript">
$(document).ready(function() {
openid.init('openid_identifier');
// openid.setDemoMode(true); Stops form submission for client javascript-only test purposes
});
</script>
<!-- /Simple OpenID Selector -->
<style type="text/css">
/* Basic page formatting. */
body {
font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
}
</style>
</head>
<body>
<c:if test="${not empty param.login_error}">
<font color="red">
Your login attempt was not successful, try again.<br/><br/>
Reason: <c:out value="${SPRING_SECURITY_LAST_EXCEPTION.message}"/>.
</font>
</c:if>
<!-- Simple OpenID Selector -->
<form action="<c:url value='c/j_spring_openid_security_check'/>" method="post" id="openid_form">
<input type="hidden" name="action" value="verify" />
<fieldset>
<legend>Sign-in or Create New Account</legend>
<div id="openid_choice">
<p>Please click your account provider:</p>
<div id="openid_btns"></div>
</div>
<div id="openid_input_area">
<input id="openid_identifier" name="openid_identifier" type="text" value="http://" />
<input id="openid_submit" type="submit" value="Sign-In"/>
</div>
<noscript>
<p>OpenID is a service that allows you to log-on to many different websites using a single identity.
Find out <a href="http://openid.net/what/">more about OpenID</a> and <a href="http://openid.net/get/">how to get an OpenID enabled account</a>.</p>
</noscript>
</fieldset>
</form>
<!-- /Simple OpenID Selector -->
</body>
</html>

View File

@ -1,64 +0,0 @@
<%@ taglib prefix='c' uri='http://java.sun.com/jsp/jstl/core' %>
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>OpenID Login</title>
<!-- Simple OpenID Selector -->
<link rel="stylesheet" href="<c:url value='/css/openid.css'/>" />
<script type="text/javascript" src="<c:url value='/js/jquery-1.2.6.min.js'/>"></script>
<script type="text/javascript" src="<c:url value='/js/openid-jquery.js'/>"></script>
<script type="text/javascript">
$(document).ready(function() {
openid.init('openid_identifier');
// openid.setDemoMode(true); Stops form submission for client javascript-only test purposes
});
</script>
<!-- /Simple OpenID Selector -->
<style type="text/css">
/* Basic page formatting. */
body {
font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
}
</style>
</head>
<body>
<c:if test="${not empty param.login_error}">
<font color="red">
Your login attempt was not successful, try again.<br/><br/>
Reason: <c:out value="${SPRING_SECURITY_LAST_EXCEPTION.message}"/>.
</font>
</c:if>
<!-- Simple OpenID Selector -->
<form action="<c:url value='j_spring_openid_security_check'/>" method="post" id="openid_form">
<input type="hidden" name="action" value="verify" />
<fieldset>
<legend>Sign-in or Create New Account</legend>
<div id="openid_choice">
<p>Please click your account provider:</p>
<div id="openid_btns"></div>
</div>
<div id="openid_input_area">
<input id="openid_identifier" name="openid_identifier" type="text" value="http://" />
<input id="openid_submit" type="submit" value="Sign-In"/>
</div>
<noscript>
<p>OpenID is a service that allows you to log-on to many different websites using a single identity.
Find out <a href="http://openid.net/what/">more about OpenID</a> and <a href="http://openid.net/get/">how to get an OpenID enabled account</a>.</p>
</noscript>
</fieldset>
</form>
<!-- /Simple OpenID Selector -->
</body>
</html>