Skip to content
This repository has been archived by the owner on Nov 25, 2020. It is now read-only.

Commit

Permalink
Shake effect on login error
Browse files Browse the repository at this point in the history
Fix loading folder old blue icon in orbit
Fix team edition
  • Loading branch information
cdujeu committed Oct 29, 2014
1 parent 05be408 commit 1c4b9d9
Show file tree
Hide file tree
Showing 14 changed files with 141 additions and 20 deletions.
2 changes: 1 addition & 1 deletion core/src/plugins/access.ajxp_home/home.css
Expand Up @@ -293,7 +293,7 @@ div.legend_visible div#logo_div{

#videos_pane {
color: rgb(64, 68, 71);
background-color: rgba(248, 248, 248, 0.92);
background-color: rgba(255, 255, 255, 0.74);
position: absolute;
top: 0;
right: 0;
Expand Down
8 changes: 4 additions & 4 deletions core/src/plugins/access.ajxp_home/manifest.xml
Expand Up @@ -184,25 +184,25 @@
AJXP_MESSAGE[user_home.62]
<div class="tutorial_load_button"><i class="icon-youtube-play"></i> Play Video</div>
</div>
<iframe class="tutorial_video" width="640" height="360" frameborder="0" allowfullscreen src="http://img.youtube.com/vi/C6L_9QT0lDE/0.jpg"></iframe>
<iframe class="tutorial_video" width="640" height="360" frameborder="0" allowfullscreen src="https://img.youtube.com/vi/C6L_9QT0lDE/0.jpg"></iframe>
<div class="tutorial_legend" data-videoSrc="//www.youtube.com/embed/Nj3d0AXfJXI?list=PLxzQJCqzktEYnIChsR5h3idjAxgBssnt5">
AJXP_MESSAGE[user_home.63]
<div class="tutorial_load_button"><i class="icon-youtube-play"></i> Play Video</div>
</div>
<iframe class="tutorial_video" width="640" height="360" frameborder="0" allowfullscreen src="http://img.youtube.com/vi/Nj3d0AXfJXI/0.jpg"></iframe>
<iframe class="tutorial_video" width="640" height="360" frameborder="0" allowfullscreen src="https://img.youtube.com/vi/Nj3d0AXfJXI/0.jpg"></iframe>
<div class="tutorial_legend" data-videoSrc="//www.youtube.com/embed/1o62QF_ATYA?list=PLxzQJCqzktEYnIChsR5h3idjAxgBssnt5">
AJXP_MESSAGE[user_home.64]
<div class="tutorial_load_button"><i class="icon-youtube-play"></i> Play Video</div>
</div>
<iframe class="tutorial_video" width="640" height="360" frameborder="0" allowfullscreen src="http://img.youtube.com/vi/1o62QF_ATYA/0.jpg"></iframe>
<iframe class="tutorial_video" width="640" height="360" frameborder="0" allowfullscreen src="https://img.youtube.com/vi/1o62QF_ATYA/0.jpg"></iframe>
<div class="tutorial_legend" src="//www.youtube.com/embed/ot2Nq-RAnYE?list=PLxzQJCqzktEYnIChsR5h3idjAxgBssnt5">
AJXP_MESSAGE[user_home.66]
<div class="tutorial_load_button"><i class="icon-youtube-play"></i> Play Video</div>
</div>
<iframe width="640" height="360" class="tutorial_video" frameborder="0" allowfullscreen src="http://img.youtube.com/vi/ot2Nq-RAnYE/0.jpg"></iframe>
<iframe width="640" height="360" class="tutorial_video" frameborder="0" allowfullscreen src="https://img.youtube.com/vi/ot2Nq-RAnYE/0.jpg"></iframe>
<div style="clear:left; text-align:center;">
<a href="http://pyd.io/end-user-tutorials/" target="_blank" style="text-align: center;font-size: 25px;background-color: #e35d52;padding: 10px;border-radius: 5px;color: white;display: inline-block;margin: 40px 0;"><i class="icon-youtube-play"></i> AJXP_MESSAGE[user_home.65]</a></div>
Expand Down
18 changes: 18 additions & 0 deletions core/src/plugins/access.ajxp_user/dashboard.css
Expand Up @@ -75,6 +75,24 @@
margin-bottom: 20px;
}

div#team_edit_container {
max-height: 200px;
overflow: auto;
background-color: white;
border: 1px solid #ccc;
border-radius: 2px;
}

#team_edit_container ul {
margin: 0;
padding: 0;
}

#team_edit_container ul li{
list-style: none;
}


@media only screen
and (max-width : 980px){
#notifications_center div.notif_event_container{
Expand Down
31 changes: 24 additions & 7 deletions core/src/plugins/conf.sql/manifest.xml
Expand Up @@ -26,16 +26,18 @@
</processing>
</action>
<action name="user_team_edit_users">
<gui src="delete.png" iconClass="icon-edit" text="519" title="519">
<gui src="delete.png" iconClass="icon-edit" text="user_dash.54" title="user_dash.55">
<context dir="false" recycle="false" selection="true" actionBar="true" actionBarGroup="team_address_book"/>
<selectionContext dir="false" file="true" recycle="false" unique="true" allowedMimes="ajxp_team"/>
</gui>
<processing>
<clientCallback dialogOpenForm="team_edit_form" prepareModal="true">
<dialogOnOpen><![CDATA[
var oForm = modal.getForm();
var textA = oForm.down('#team_edit_input');
var users = ajaxplorer.getContextHolder().getUniqueNode().getMetadata().get('users').stripTags().strip();
oForm.down('#team_edit_input').setValue(users.replace(/, /g, '\n') + '\n');
textA.setValue(users.replace(/, /g, '\n') + '\n');
moveCaretToEnd(textA);
var completer = new AjxpUsersCompleter(
oForm.down('#team_edit_input'),
null,
Expand All @@ -46,13 +48,24 @@
existingOnly: true,
updateUserEntryAfterCreate:null,
createUserPanel:null,
indicator: null,
minChars:parseInt(ajaxplorer.getPluginConfigs("conf").get("USERS_LIST_COMPLETE_MIN_CHARS"))
indicator: oForm.down("#team_loader"),
minChars:parseInt(ajaxplorer.getPluginConfigs("conf").get("USERS_LIST_COMPLETE_MIN_CHARS")),
afterUpdateElement: function(elem, selectedLi){
var label = selectedLi.readAttribute('data-label');
var id = selectedLi.readAttribute('data-entry_id') || selectedLi.readAttribute('data-group');
var isGroup = selectedLi.hasClassName('complete_group_entry');
var composedLabel = label + ' (' + id + ')';
var currentValue = textA.getValue().strip();
currentValue = currentValue.replace(composedLabel, id);
var users = currentValue.strip().split(new RegExp('[ ,\n]+', 'g'));
textA.setValue($A(users).uniq().join('\n') + '\n');
moveCaretToEnd(textA);
}
}
);
]]></dialogOnOpen>
<dialogOnComplete><![CDATA[
var newValues = modal.getForm().down('#team_edit_input').getValue().strip().split('\n');
var newValues = modal.getForm().down('#team_edit_input').getValue().strip().split(new RegExp('[ ,\n]+', 'g'));
var teamId = getBaseName(ajaxplorer.getContextHolder().getUniqueNode().getPath());
var teamLabel = ajaxplorer.getContextHolder().getUniqueNode().getLabel();
console.log(teamId, newValues);
Expand All @@ -74,8 +87,12 @@
</clientCallback>
<clientForm id="team_edit_form"><![CDATA[
<div id="team_edit_form">
<textarea type="text" style="width:410px; min-height: 100px;" id="team_edit_input"></textarea>
<div id="team_edit_container"></div>
<div class="dialogLegend" style="width: 400px;padding: 10px 0;">AJXP_MESSAGE[user_dash.56]</div>
<div style="position: relative;">
<div id="team_loader" style="position: absolute;top: 2px;right: 3px;font-size: 17px;display: none;"><span class="icon-spinner"></span></div>
<textarea type="text" style="width:410px; min-height: 100px;" id="team_edit_input"></textarea>
<div id="team_edit_container"></div>
</div>
</div>
]]></clientForm>
<serverCallback methodName="userTeamsActions"/>
Expand Down
3 changes: 2 additions & 1 deletion core/src/plugins/core.ajaxplorer/ajxp_registry.xsd
Expand Up @@ -538,7 +538,8 @@
</xs:complexType>
</xs:element>
<xs:element name="dialogOnCancel">
<xs:complexType/>
<xs:complexType mixed="true">
</xs:complexType>
</xs:element>
<xs:element name="dialogOnComplete">
<xs:complexType mixed="true">
Expand Down
2 changes: 1 addition & 1 deletion core/src/plugins/gui.ajax/res/js/ajaxplorer.js

Large diffs are not rendered by default.

11 changes: 11 additions & 0 deletions core/src/plugins/gui.ajax/res/js/ajaxplorer/ajxp_utils.js
Expand Up @@ -250,6 +250,17 @@ function enableTextSelection(element){
}
}

function moveCaretToEnd(el) {
if (typeof el.selectionStart == "number") {
el.selectionStart = el.selectionEnd = el.value.length;
} else if (typeof el.createTextRange != "undefined") {
el.focus();
var range = el.createTextRange();
range.collapse(false);
range.select();
}
}

function testStringWidth(text){
var e = new Element('div',{id:'string_tester'});
$$('body')[0].insert(e);
Expand Down
Expand Up @@ -645,7 +645,7 @@ Class.create("ActionsManager", {
error = true;
if($("generic_dialog_box") && $("generic_dialog_box").visible() && $("generic_dialog_box").down("div.dialogLegend")){
$("generic_dialog_box").down("div.dialogLegend").insert({bottom:'<div class="ajxp_login_error" style="background-color: #D33131;display: block;font-size: 9px;color: white;border-radius: 3px;padding: 2px 6px;">'+MessageHash[errorId]+'</div>'});
$("generic_dialog_box").shake();
Effect.ErrorShake($("generic_dialog_box").down('.ajxp_login_error'));
}else{
alert(MessageHash[errorId]);
}
Expand Down
2 changes: 1 addition & 1 deletion core/src/plugins/gui.ajax/res/js/ajaxplorer_boot.js

Large diffs are not rendered by default.

Large diffs are not rendered by default.

6 changes: 5 additions & 1 deletion core/src/plugins/gui.ajax/res/js/lib/prototype/cssfx.js
Expand Up @@ -36,6 +36,10 @@ Effect.CSS_ANIMATE = function(effectName, element, options){
className = 'quick fadeInLeft';
originalMethod = 'Appear';
break;
case "ErrorShake":
className = 'shake';
originalMethod = 'Shake';
break;
case "MessageAppear":
className = 'fadeInUpBig';
endStyle = {opacity: 1};
Expand Down Expand Up @@ -96,4 +100,4 @@ Effect.RowAppear = function(element, options){ Effect.CSS_ANIMATE("RowAppear", e
Effect.MessageFade = function(element, options){ Effect.CSS_ANIMATE("MessageFade", element, options);};
Effect.MessageAppear = function(element, options){ Effect.CSS_ANIMATE("MessageAppear", element, options); };
Effect.MenuAppear = function(element, options){ Effect.CSS_ANIMATE("MenuAppear", element, options); };

Effect.ErrorShake = function(element, options){ Effect.CSS_ANIMATE("ErrorShake", element, options); };
63 changes: 63 additions & 0 deletions core/src/plugins/gui.ajax/res/themes/orbit/css/animate-custom.css
Expand Up @@ -272,3 +272,66 @@
-o-animation-name: bounceOutLeft;
animation-name: bounceOutLeft;
}

@-webkit-keyframes shake {
0%, 100% {
transform: translate3d(0, 0, 0);
}

10%, 30%, 50%, 70%, 90% {
transform: translate3d(-10px, 0, 0);
}

20%, 40%, 60%, 80% {
transform: translate3d(10px, 0, 0);
}
}

@-moz-keyframes shake {
0%, 100% {
transform: translate3d(0, 0, 0);
}

10%, 30%, 50%, 70%, 90% {
transform: translate3d(-10px, 0, 0);
}

20%, 40%, 60%, 80% {
transform: translate3d(10px, 0, 0);
}
}

@-o-keyframes shake {
0%, 100% {
transform: translate3d(0, 0, 0);
}

10%, 30%, 50%, 70%, 90% {
transform: translate3d(-10px, 0, 0);
}

20%, 40%, 60%, 80% {
transform: translate3d(10px, 0, 0);
}
}

@keyframes shake {
0%, 100% {
transform: translate3d(0, 0, 0);
}

10%, 30%, 50%, 70%, 90% {
transform: translate3d(-10px, 0, 0);
}

20%, 40%, 60%, 80% {
transform: translate3d(10px, 0, 0);
}
}

.shake {
-webkit-animation-name: shake;
-moz-animation-name: shake;
-o-animation-name: shake;
animation-name: shake;
}
Binary file modified core/src/plugins/gui.ajax/res/themes/orbit/images/foldericon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 9 additions & 2 deletions core/src/plugins/gui.user/manifest.xml
Expand Up @@ -23,10 +23,14 @@
<context dir="true" recycle="true" selection="false"/>
</gui>
<processing>
<clientCallback prepareModal="false" dialogOpenForm="reset-password-ask" dialogOkButtonOnly="true">
<clientCallback prepareModal="false" dialogOpenForm="reset-password-ask" dialogOkButtonOnly="false">
<dialogOnOpen><![CDATA[
$(oForm).up('.dialogContent').previous('.dialogTitle').select('span').invoke('remove');
$(oForm).down('.dialogButtons').insert({bottom:$(oForm).down('.dialogButtons').down('input')});
]]></dialogOnOpen>
<dialogOnCancel><![CDATA[
ajaxplorer.actionBar.fireAction('login');
]]></dialogOnCancel>
<dialogOnComplete><![CDATA[
if(!oForm.BUTTON_CLICKED){
var conn = new Connexion();
Expand Down Expand Up @@ -56,13 +60,16 @@
<context dir="true" recycle="true" selection="false"/>
</gui>
<processing>
<clientCallback prepareModal="false" dialogOpenForm="reset-password" dialogOkButtonOnly="true">
<clientCallback prepareModal="false" dialogOpenForm="reset-password" dialogOkButtonOnly="false">
<dialogOnOpen><![CDATA[
new Protopass($('user_change_ownpass1'), {
barContainer:$('pwd_strength_container'),
barPosition:'bottom'
});
]]></dialogOnOpen>
<dialogOnCancel><![CDATA[
ajaxplorer.actionBar.fireAction('login');
]]></dialogOnCancel>
<dialogOnComplete><![CDATA[
var userPass = null;
var passSeed = null;
Expand Down

0 comments on commit 1c4b9d9

Please sign in to comment.