Changeset 4300
- Timestamp:
- 01/20/14 17:22:57 (10 years ago)
- Location:
- cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site
- Files:
-
- 1 deleted
- 20 edited
- 5 copied
Legend:
- Unmodified
- Added
- Removed
-
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site
-
Property
svn:mergeinfo
set to
/cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site merged eligible
-
Property
svn:mergeinfo
set to
-
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/completeuserdetails.html
r4246 r4300 11 11 12 12 <!-- Le styles --> 13 <link href="./lib/bootstrap-2.3.2/css/bootstrap.min.css" rel="stylesheet" /> 14 <link href="./lib/bootstrap-2.3.2/css/bootstrap-responsive.min.css" rel="stylesheet" /> 13 <link href="./lib/bootstrap-3.0.3/css/bootstrap.min.css" rel="stylesheet" /> 15 14 <link href="./styles/SCHEMAcat.min.css" rel="stylesheet" /> 16 15 … … 20 19 <div data-ng-controller="CompleteUserDetailsCtrl"> 21 20 <div class="navbar navbar-inverse navbar-fixed-top"> 22 <div class="navbar-inner"> 23 <div class="container-fluid"> 24 <button type="button" class="btn btn-navbar"> 25 <span class="icon-bar"></span> 26 <span class="icon-bar"></span> 27 <span class="icon-bar"></span> 28 </button> 29 <a class="brand">SCHEMAcat</a> 30 <div class="nav-collapse"> 31 <ul class="nav"> 32 <li class="divider-vertical"></li> 33 <li class="active"> 34 <a href="/schemacat/site/index.html"><i class="icon-home icon-white"><!--i--></i> Home</a> 21 <div> 22 <div> 23 <div class="navbar-header"> 24 <button type="button" class="btn btn-default navbar-toggle" data-ng-click="toggleTopMenu()"> 25 <span class="icon-bar"></span> 26 <span class="icon-bar"></span> 27 <span class="icon-bar"></span> 28 </button> 29 <a class="navbar-brand" href="/schemacat/site/">SCHEMAcat</a> 30 </div> 31 <div class="collapse navbar-collapse" data-collapse="topMenuCollapsed"> 32 <ul class="nav navbar-nav"> 33 <li class="divider"></li> 34 <li data-ng-class="{ active: isActive('/workspace')}"> 35 <a href="#/workspace.html/page/1/?schemaIndex=0&{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}"><i class="glyphicon glyphicon-home glyphicon-white"><!--i--></i> Home</a> 35 36 </li> 36 <li >37 <a >About</a>37 <li data-ng-class="{ active: isActive('/about')}"> 38 <a href="#/about.html?{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}">About</a> 38 39 </li> 39 <li >40 <a >Contact</a>40 <li data-ng-class="{ active: isActive('/contact')}"> 41 <a href="#/contact.html?{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}">Contact</a> 41 42 </li> 42 43 </ul> 43 <div class="pull-right"> 44 <ul class="nav pull-right"> 45 <li><a class="cursor-pointer"><i class="icon-user icon-white"><!--i--></i> <span/> 46 </a></li> 44 <div class="navbar-right"> 45 <ul class="nav navbar-nav"> 46 <li class="dropdown" title="userMenu"> 47 <a class="cursor-pointer dropdown-toggle"><i class="glyphicon glyphicon-user"><!--i--></i><span class="caret"></span> </a> 48 </li> 47 49 <li class="dropdown" title="settings"> 48 <a class="cursor-pointer dropdown-toggle"><i class=" icon-wrench icon-white"><!--i--></i></a>50 <a class="cursor-pointer dropdown-toggle"><i class="glyphicon glyphicon-wrench"><!--i--></i> <span class="caret"></span> </a> 49 51 </li> 50 52 </ul> … … 53 55 </div> 54 56 </div> 55 </div> 57 </div> 56 58 </div> 59 <div id="pushh"></div> 60 <div id="pushf"></div> 57 61 </div> 58 62 <div id="footer"> 59 <div class=" container">63 <div class="schemacat-fluid-container"> 60 64 <p>© The Language Archive 2013</p> 61 65 </div> … … 65 69 <!-- Placed at the end of the document so the pages load faster --> 66 70 <!--<script src="./lib/jQuery/1.10.2/jquery-1.10.2.min.js"></script>--> 67 <script src="./lib/AngularJS-1.2. 7/angular.min.js"></script>68 <script src="./lib/AngularJS-1.2. 7/angular-resource.min.js"></script>69 <script src="./lib/AngularJS-1.2. 7/angular-route.min.js"></script>70 <script src="./lib/UI-bootstrap/ui-bootstrap-tpls-0. 8.0.min.js"></script>71 <script src="./lib/AngularJS-1.2.8/angular.min.js"></script> 72 <script src="./lib/AngularJS-1.2.8/angular-resource.min.js"></script> 73 <script src="./lib/AngularJS-1.2.8/angular-route.min.js"></script> 74 <script src="./lib/UI-bootstrap/ui-bootstrap-tpls-0.10.0.min.js"></script> 71 75 <script src="./scripts/modules.min.js"></script> 72 76 <script src="./scripts/controllers.min.js"></script> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/index.html
r4246 r4300 11 11 12 12 <!-- Le styles --> 13 <link href="./lib/bootstrap-2.3.2/css/bootstrap.min.css" rel="stylesheet" /> 14 <link href="./lib/bootstrap-2.3.2/css/bootstrap-responsive.min.css" rel="stylesheet" /> 13 <link href="./lib/bootstrap-3.0.3/css/bootstrap.min.css" rel="stylesheet" /> 15 14 <link href="./lib/animate_css/animate.min.css" rel="stylesheet" /> 16 15 <link href="./styles/SCHEMAcat.min.css" rel="stylesheet" /> … … 22 21 <div data-ng-controller="TopMenuCtrl"> 23 22 <div class="navbar navbar-inverse navbar-fixed-top"> 24 <div class="navbar-inner"> 25 <div class="container-fluid"> 26 <button type="button" class="btn btn-navbar" data-ng-click="toggleTopMenu()"> 27 <span class="icon-bar"></span> 28 <span class="icon-bar"></span> 29 <span class="icon-bar"></span> 30 </button> 31 <a class="brand" href="/schemacat/site/">SCHEMAcat</a> 32 <div class="nav-collapse" data-collapse="topMenuCollapsed"> 33 <ul class="nav"> 34 <li class="divider-vertical"></li> 23 <div> 24 <div> 25 <div class="navbar-header"> 26 <button type="button" class="btn btn-default navbar-toggle" data-ng-click="toggleTopMenu()"> 27 <span class="icon-bar"></span> 28 <span class="icon-bar"></span> 29 <span class="icon-bar"></span> 30 </button> 31 <a class="navbar-brand" href="/schemacat/site/index.html">SCHEMAcat</a> 32 </div> 33 <div class="collapse navbar-collapse" data-collapse="topMenuCollapsed"> 34 <ul class="nav navbar-nav"> 35 <li class="divider"></li> 35 36 <li data-ng-class="{ active: isActive('/workspace')}"> 36 <a href="#/workspace /page/1/?schemaIndex=0&{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}"><i class="icon-homeicon-white"><!--i--></i> Home</a>37 <a href="#/workspace.html/page/1/?schemaIndex=0&{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}"><i class="glyphicon glyphicon-home glyphicon-white"><!--i--></i> Home</a> 37 38 </li> 38 39 <li data-ng-class="{ active: isActive('/about')}"> 39 <a href="#/about ?{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}">About</a>40 <a href="#/about.html?{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}">About</a> 40 41 </li> 41 42 <li data-ng-class="{ active: isActive('/contact')}"> 42 <a href="#/contact ?{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}">Contact</a>43 <a href="#/contact.html?{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}">Contact</a> 43 44 </li> 44 45 </ul> 45 <div class=" pull-right">46 <ul class="nav pull-right">46 <div class="navbar-right"> 47 <ul class="nav navbar-nav"> 47 48 <li class="dropdown" title="userMenu"> 48 <a class="cursor-pointer dropdown-toggle"><i class=" icon-user icon-white"><!--i--></i> <span data-ng-bind="displayName"/> <span class="caret"></span> </a>49 <a class="cursor-pointer dropdown-toggle"><i class="glyphicon glyphicon-user"><!--i--></i> <span data-ng-bind="displayName"/> <span class="caret"></span> </a> 49 50 <ul class="dropdown-menu"> 50 51 <li> 51 < !--<a class="cursor-pointer" data-ng-click="loginClick()">-->52 <a href="{{shibURL}}"><!-- uncomment first one for development -->52 <a class="cursor-pointer" data-ng-click="loginClick()"> 53 <!-- <a href="{{shibURL}}"> --><!-- uncomment first one for development --> 53 54 <span>Login as a different user...</span> 54 55 </a> 55 56 </li> 56 57 <li> 57 <a class="cursor-pointer" href="#/accountDetails ?{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}" data-ng-if="displayName != 'guest'">58 <a class="cursor-pointer" href="#/accountDetails.html?{{animationsUrlPart()}}&{{topMenuExpandedUrlPart()}}" data-ng-if="displayName != 'guest'"> 58 59 <span>Account details</span> 59 60 </a> … … 62 63 </li> 63 64 <li class="dropdown" title="settings"> 64 <a class="cursor-pointer dropdown-toggle"><i class=" icon-wrench icon-white"><!--i--></i> <span class="caret"></span> </a>65 <a class="cursor-pointer dropdown-toggle"><i class="glyphicon glyphicon-wrench"><!--i--></i> <span class="caret"></span> </a> 65 66 <ul class="dropdown-menu"> 66 67 <li> 67 68 <a class="cursor-pointer" data-ng-click="updateAnimationStatus()" > 68 <i class=" iconicon-ok" data-ng-if="animationsChecked"><!--i--></i>69 <i class="glyphicon glyphicon-ok" data-ng-if="animationsChecked"><!--i--></i> 69 70 <span>animations</span> 70 71 </a> … … 86 87 </div> 87 88 <div id="footer"> 88 <div class=" container-fluid">89 <div class="schemacat-fluid-container"> 89 90 <p>© The Language Archive 2013</p> 90 91 </div> … … 95 96 <!-- Placed at the end of the document so the pages load faster --> 96 97 <!--<script src="./lib/jQuery/1.10.2/jquery-1.10.2.min.js"></script>--> 97 <script src="./lib/AngularJS-1.2. 7/angular.min.js"></script>98 <script src="./lib/AngularJS-1.2. 7/angular-resource.min.js"></script>99 <script src="./lib/AngularJS-1.2. 7/angular-route.min.js"></script>100 <script src="./lib/UI-bootstrap/ui-bootstrap-tpls-0. 8.0.min.js"></script>98 <script src="./lib/AngularJS-1.2.8/angular.min.js"></script> 99 <script src="./lib/AngularJS-1.2.8/angular-resource.min.js"></script> 100 <script src="./lib/AngularJS-1.2.8/angular-route.min.js"></script> 101 <script src="./lib/UI-bootstrap/ui-bootstrap-tpls-0.10.0.min.js"></script> 101 102 <script src="./lib/pretify/prettify.js"></script> 102 103 <script src="./scripts/modules.min.js"></script> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/lib/pretify/prettify-bootstrap-light.css
r3749 r4300 66 66 ol.linenums { 67 67 color: #1E347B; 68 margin: 0 0 0 40px;}68 } 69 69 70 70 ol.linenums li { -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/partials/about.html
r4077 r4300 1 <div id="about" data-ng-class="animateInOut" class="container-fluid"> 2 <div class="row-fluid"> 3 <div class="span12 hero-unit"> 4 <div class="row-fluid"> 5 <div class="span9"> 6 <h3>About SCHEMAcat</h3> 7 <p>SCHEMAcat is a companion registry to the ISOcat Data Category Registry.</p> 8 </div> 9 <div class="span3"> 10 <div class="text-center"> 11 <img src="images/yellow-cat.png" alt=""/> 1 <div id="about" data-ng-class="animateInOut" class="schemacat-fluid-container"> 2 <div class="row"> 3 <div class="col-md-12"> 4 <div class="jumbotron"> 5 <div class="row"> 6 <div class="col-md-9"> 7 <h3>About SCHEMAcat</h3> 8 <p>SCHEMAcat is a companion registry to the ISOcat Data Category Registry.</p> 9 </div> 10 <div class="col-md-3"> 11 <div class="text-center"> 12 <img src="images/yellow-cat.png" alt=""/> 13 </div> 12 14 </div> 13 15 </div> 14 </div>15 <div class="container-fluid">16 <div class="row-fluid">17 <div class="span12">18 <br/>19 <h4>Alpha notice!</h4>20 <div class="container-fluid">21 <p>SCHEMAcat is in its early stages of development. This means that22 anything can change at any time. Its also only available on a test23 server. This means that the server can go down anytime and data24 might get unrecoverably lost at any time. So this alpha release of25 SCHEMAcat is not meant and not ready for day to day work! However,26 we welcome any feedback and help to reach that stage soon.</p>27 </div>28 <br/>29 <h4>Publications</h4>30 <div class="container-fluid">31 <ol>32 <li>Ineke Schuurman, Menzo Windhouwer. Explicit Semantics for33 Enriched Documents. What Do ISOcat, RELcat and SCHEMAcat Have To34 Offer? In the Proceedings of the 2nd Supporting Digital35 Humanities conference (SDH 2011). Copenhagen, Denmark, November36 17-18, 2011. (draft)</li>37 </ ol>38 </div>39 <br/>40 <h4>Implementation info:</h4>41 <div class="container-fluid">42 <div class="row-fluid">43 <div class="span9">44 <p>SCHEMAcat is developed by The Languague Archive at the Max45 Planck Institute for Psycholinguistics.</p>46 <p>The current technical implementation is based on the47 following technologies:</p>48 <div class="row-fluid">49 <div class="span3 offset1">50 <h5>Server</h5>51 <ul class="text-center">52 <li>53 <p>54 <a href="http://1060research.com">55 <img56 src="http://www.1060research.com/netkernel/poweredbynetkernel.png"57 alt="Powered by Netkernel"/>58 </a>59 </p>60 </ li>61 </ ul>62 </div>63 <div class="span3">64 <h5>User interface</h5>65 <ul class="text-center">66 <li>67 <p>68 <a href="http://angularjs.org/">69 <img70 src="https://raw.github.com/angular/angular.js/master/images/logo/AngularJS.exports/AngularJS-small.png"71 alt="AngularJS"/>72 </a>73 </p>74 </ li>75 </ ul>16 <div> 17 <div class="row schemacat-fluid-container"> 18 <div class="col-md-12"> 19 <br/> 20 <h4>Alpha notice!</h4> 21 <div class="schemacat-fluid-container"> 22 <p>SCHEMAcat is in its early stages of development. This means that 23 anything can change at any time. Its also only available on a test 24 server. This means that the server can go down anytime and data 25 might get unrecoverably lost at any time. So this alpha release of 26 SCHEMAcat is not meant and not ready for day to day work! However, 27 we welcome any feedback and help to reach that stage soon.</p> 28 </div> 29 <br/> 30 <h4>Publications</h4> 31 <div> 32 <ol> 33 <li>Ineke Schuurman, Menzo Windhouwer. Explicit Semantics for 34 Enriched Documents. What Do ISOcat, RELcat and SCHEMAcat Have To 35 Offer? In the Proceedings of the 2nd Supporting Digital 36 Humanities conference (SDH 2011). Copenhagen, Denmark, November 37 17-18, 2011. (draft)</li> 38 </ol> 39 </div> 40 <br/> 41 <h4>Implementation info:</h4> 42 <div> 43 <div class="row schemacat-fluid-container"> 44 <div class="col-md-9"> 45 <p>SCHEMAcat is developed by The Languague Archive at the Max 46 Planck Institute for Psycholinguistics.</p> 47 <p>The current technical implementation is based on the 48 following technologies:</p> 49 <div class="row"> 50 <div class="col-md-3 col-md-offset-1"> 51 <h5>Server</h5> 52 <ul class="text-center"> 53 <li> 54 <p> 55 <a href="http://1060research.com"> 56 <img class="img-responsive-inline" 57 src="http://www.1060research.com/netkernel/poweredbynetkernel.png" 58 alt="Powered by Netkernel"/> 59 </a> 60 </p> 61 </li> 62 </ul> 63 </div> 64 <div class="col-md-3"> 65 <h5>User interface</h5> 66 <ul class="text-center"> 67 <li> 68 <p> 69 <a href="http://angularjs.org/"> 70 <img class="img-responsive-inline" 71 src="https://raw.github.com/angular/angular.js/master/images/logo/AngularJS.exports/AngularJS-small.png" 72 alt="AngularJS"/> 73 </a> 74 </p> 75 </li> 76 </ul> 77 </div> 76 78 </div> 77 79 </div> 78 </div>79 <div class="span3 text-center">80 <a href="http://tla.mpi.nl">81 <img82 src="images/TLAlogo.png"83 alt="http://tla.mpi.nl"/>84 </ a>80 <div class="col-md-3 text-center"> 81 <a href="http://tla.mpi.nl"> 82 <img class="img-responsive" 83 src="images/TLAlogo.png" 84 alt="http://tla.mpi.nl"/> 85 </a> 86 </div> 85 87 </div> 86 88 </div> 87 </div>88 <br/>89 <h4>Change log</h4>90 <div class="container-fluid">91 <h5>[2013-11-08]</h5>92 <ol>93 <li>Dinamic web site based on AngularJS and NetKernel on the94 server</li>95 </ol>96 <h5>[2012-09-25]</h5>97 <ol>98 < li>Initial alpha release of SCHEMAcat with a web site</li>99 </ ol>89 <br/> 90 <h4>Change log</h4> 91 <div class="schemacat-fluid-container"> 92 <h5>[2013-11-08]</h5> 93 <ol> 94 <li>Dinamic web site based on AngularJS and NetKernel on the 95 server</li> 96 </ol> 97 <h5>[2012-09-25]</h5> 98 <ol> 99 <li>Initial alpha release of SCHEMAcat with a web site</li> 100 </ol> 101 </div> 100 102 </div> 101 103 </div> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/partials/accountDetails.html
r4116 r4300 1 <div id="accountDetails" data-ng-class="animateAccountDetails" class="container-fluid"> 2 <div class="row-fluid"> 3 <div class="span12 hero-unit"> 4 <h3>Account details</h3> 5 <div class="container-fluid"> 6 <dl class="dl-horizontal"> 7 <dt>Shibboleth ID:</dt> 8 <dd> 9 <p data-ng-bind="principal"/> 10 </dd> 11 <dt>Diplay name:</dt> 12 <dd> 13 <p data-ng-if="!edditingDisplayName"> 14 <span data-ng-bind="displayName"></span> 15 <span> 16 <button data-ng-click="editDisplayName()" class="btn btn-info btn-mini" data-ng-if="displayName != 'guest'"><i class="icon-edit"></i> Edit</button> 1 <div id="accountDetails" data-ng-class="animateAccountDetails" class="schemacat-fluid-container"> 2 <div class="row"> 3 <div class="col-md-12"> 4 <div class="jumbotron"> 5 <div class="schemacat-fluid-container"> 6 <h3>Account details</h3> 7 <div> 8 <dl class="dl-horizontal small"> 9 <dt>Shibboleth ID:</dt> 10 <dd> 11 <p data-ng-bind="principal"/> 12 </dd> 13 <dt>Diplay name:</dt> 14 <dd> 15 <p data-ng-if="!edditingDisplayName"> 16 <span data-ng-bind="displayName"></span> 17 <span> 18 <button data-ng-click="editDisplayName()" class="btn btn-info btn-xs" data-ng-if="displayName != 'guest'"><i class="icon-edit"></i> Edit</button> 19 </span> 20 </p> 21 <form data-ng-if="edditingDisplayName" name="editDisplayNameForm" class="form-horizontal" novalidate="novalidate"> 22 <div class="form-group"> 23 <div class="col-md-3"> 24 <input name="editDisplayNameInput" class="form-control" type="text" required="required" data-ng-model="editDisplayNameText"/> 25 </div> 26 <button data-ng-click="updateDisplayName(editDisplayNameText)" class="btn btn-success btn-xs" data-ng-disabled="editDisplayNameForm.$invalid || waitingForServerEditDisplayName"><i class="icon-check"></i> Save</button> 27 <button data-ng-click="terminateEditDisplayName()" class="btn btn-danger btn-xs"><i class="icon-remove"></i> Cancel</button> 28 <img src="images/spinner-small.gif" alt="Loading..." data-ng-if="waitingForServerEditDisplayName"/> 29 <div class="col-md-12 has-error small" data-ng-if="editDisplayNameForm.editDisplayNameInput.$dirty && editDisplayNameForm.editDisplayNameInput.$invalid"> 30 <small class="help-block" data-ng-if="editDisplayNameForm.editDisplayNameInput.$error.required"> 31 Your display name cannot be empty. 32 </small> 33 </div> 34 <div class="col-md-12 has-error small" data-ng-if="editDisplayNameAjaxError"> 35 <small class="help-block"> 36 <div>The server responded with an error. Please try again!</div> 37 <div>If the problem persists contact us at:</div> 38 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 39 </small> 40 </div> 41 </div> 42 </form> 43 </dd> 44 <span data-ng-if="displayName != 'guest'"> 45 <dt>email:</dt> 46 <dd data-ng-repeat="emailInstance in email" data-ng-controller="EmailInstanceCtrl"> 47 <p data-ng-if="!edditingEmail"> 48 <span data-ng-bind="emailInstance"></span> 49 <span> 50 <button data-ng-click="editEmail(emailInstance)" class="btn btn-info btn-xs"><i class="icon-edit"></i> Edit</button> 51 <button data-ng-click="removeEmail($index)" class="btn btn-danger btn-xs" data-ng-if="email.length > 1"><i class="icon-remove"></i> Remove</button> 52 <img src="images/spinner-small.gif" alt="Loading..." data-ng-if="waitingForServerEditEmail"/> 53 </span> 54 </p> 55 <span class="control-group error" data-ng-if="removeEmailAjaxError"> 56 <small class="help-block"> 57 <div>The server responded with an error. Please try again!</div> 58 <div>If the problem persists contact us at:</div> 59 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 60 </small> 61 </span> 62 <form data-ng-if="edditingEmail" name="editEmailForm" class="form-horizontal" novalidate="novalidate"> 63 <div class="form-group"> 64 <div class="col-md-3"> 65 <input name="editEmailInput" class="form-control" type="email" required="required" data-ng-model="$parent.editEmailText"/> 66 </div> 67 <button data-ng-click="updateEmail($index)" class="btn btn-success btn-xs" data-ng-disabled="editEmailForm.$invalid || waitingForServerEditEmail"><i class="icon-check"></i> Save</button> 68 <button data-ng-click="cancelEditEmail(emailInstance)" class="btn btn-danger btn-xs"><i class="icon-remove"></i> Cancel</button> 69 <img src="images/spinner-small.gif" alt="Loading..." data-ng-if="waitingForServerEditEmail"/> 70 <span class="col-md-12 has-error small" data-ng-show="editEmailForm.editEmailInput.$dirty && editEmailForm.editEmailInput.$invalid"> 71 <small class="help-block" data-ng-if="editEmailForm.editEmailInput.$error.required"> 72 The email cannot be empty. 73 </small> 74 </span> 75 <span class="col-md-12 has-error small" data-ng-if="editEmailForm.editEmailInput.$dirty && editEmailForm.editEmailInput.$invalid"> 76 <small class="help-block" data-ng-if="editEmailForm.editEmailInput.$error.email"> 77 Please provide a vaid email address. 78 </small> 79 </span> 80 <span class="col-md-12 has-error small" data-ng-if="editEmailAjaxError"> 81 <small class="help-block"> 82 <div>The server responded with an error. Please try again!</div> 83 <div>If the problem persists contact us at:</div> 84 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 85 </small> 86 </span> 87 </div> 88 89 </form> 90 </dd> 91 <dd data-ng-if="addingEmail"> 92 <form name="newEmailForm" class="form-horizontal" novalidate="novalidate"> 93 <div class="form-group"> 94 <div class="col-md-3"> 95 <input name="newEmailInput" class="form-control" type="email" required="required" data-ng-model="newEmailInputText"/> 96 </div> 97 <button data-ng-click="addEmail(newEmailInputText)" class="btn btn-success btn-xs" data-ng-disabled="newEmailForm.$invalid || waitingForServer"><i class="icon-check"></i> Save</button> 98 <button data-ng-click="terminateAddEmail()" class="btn btn-danger btn-xs"><i class="icon-remove"></i> Cancel</button> 99 <img src="images/spinner-small.gif" alt="Loading..." data-ng-if="waitingForServer"/> 100 <span class="col-md-12 has-error small" data-ng-if="newEmailForm.newEmailInput.$dirty && newEmailForm.newEmailInput.$invalid"> 101 <small class="help-block" data-ng-if="newEmailForm.newEmailInput.$error.required"> 102 The email cannot be empty. 103 </small> 104 </span> 105 <span class="col-md-12 has-error small" data-ng-if="newEmailForm.newEmailInput.$dirty && newEmailForm.newEmailInput.$invalid"> 106 <small class="help-block" data-ng-if="newEmailForm.newEmailInput.$error.email"> 107 Please provide a vaid email address. 108 </small> 109 </span> 110 <span class="col-md-12 has-error small" data-ng-if="ajaxError"> 111 <small class="help-block"> 112 <div>The server responded with an error. Please try again!</div> 113 <div>If the problem persists contact us at:</div> 114 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 115 </small> 116 </span> 117 </div> 118 </form> 119 </dd> 120 <dd data-ng-if="!addingEmail"><button data-ng-click="addNewEmail()" class="btn btn-default btn-xs"><i class="glyphicon glyphicon-plus"></i> Add new email</button></dd> 17 121 </span> 18 </p> 19 <form data-ng-if="edditingDisplayName" name="editDisplayNameForm" class="form-inline" novalidate="novalidate"> 20 <input name="editDisplayNameInput" type="text" required="required" data-ng-model="editDisplayNameText"/> 21 <button data-ng-click="updateDisplayName(editDisplayNameText)" class="btn btn-success btn-mini" data-ng-disabled="editDisplayNameForm.$invalid || waitingForServerEditDisplayName"><i class="icon-check"></i> Save</button> 22 <button data-ng-click="terminateEditDisplayName()" class="btn btn-danger btn-mini"><i class="icon-remove"></i> Cancel</button> 23 <img src="images/spinner-small.gif" alt="Loading..." data-ng-if="waitingForServerEditDisplayName"/> 24 <span class="control-group error" data-ng-if="editDisplayNameForm.editDisplayNameInput.$dirty && editDisplayNameForm.editDisplayNameInput.$invalid"> 25 <small class="help-block" data-ng-if="editDisplayNameForm.editDisplayNameInput.$error.required"> 26 Your display name cannot be empty. 27 </small> 28 </span> 29 <span class="control-group error" data-ng-if="editDisplayNameAjaxError"> 30 <small class="help-block"> 31 <div>The server responded with an error. Please try again!</div> 32 <div>If the problem persists contact us at:</div> 33 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 34 </small> 35 </span> 36 </form> 37 </dd> 38 <span data-ng-if="displayName != 'guest'"> 39 <dt>email:</dt> 40 <dd data-ng-repeat="emailInstance in email" data-ng-controller="EmailInstanceCtrl"> 41 <p data-ng-if="!edditingEmail"> 42 <span data-ng-bind="emailInstance"></span> 43 <span> 44 <button data-ng-click="editEmail(emailInstance)" class="btn btn-info btn-mini"><i class="icon-edit"></i> Edit</button> 45 <button data-ng-click="removeEmail($index)" class="btn btn-danger btn-mini" data-ng-if="email.length > 1"><i class="icon-remove"></i> Remove</button> 46 <img src="images/spinner-small.gif" alt="Loading..." data-ng-if="waitingForServerEditEmail"/> 47 </span> 48 </p> 49 <span class="control-group error" data-ng-if="removeEmailAjaxError"> 50 <small class="help-block"> 51 <div>The server responded with an error. Please try again!</div> 52 <div>If the problem persists contact us at:</div> 53 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 54 </small> 55 </span> 56 <form data-ng-if="edditingEmail" name="editEmailForm" class="form-inline" novalidate="novalidate"> 57 <input name="editEmailInput" type="email" required="required" data-ng-model="$parent.editEmailText"/> 58 <button data-ng-click="updateEmail($index)" class="btn btn-success btn-mini" data-ng-disabled="editEmailForm.$invalid || waitingForServerEditEmail"><i class="icon-check"></i> Save</button> 59 <button data-ng-click="cancelEditEmail(emailInstance)" class="btn btn-danger btn-mini"><i class="icon-remove"></i> Cancel</button> 60 <img src="images/spinner-small.gif" alt="Loading..." data-ng-if="waitingForServerEditEmail"/> 61 <span class="control-group error" data-ng-show="editEmailForm.editEmailInput.$dirty && editEmailForm.editEmailInput.$invalid"> 62 <small class="help-block" data-ng-if="editEmailForm.editEmailInput.$error.required"> 63 The email cannot be empty. 64 </small> 65 </span> 66 <span class="control-group error" data-ng-if="editEmailForm.editEmailInput.$dirty && editEmailForm.editEmailInput.$invalid"> 67 <small class="help-block" data-ng-if="editEmailForm.editEmailInput.$error.email"> 68 Please provide a vaid email address. 69 </small> 70 </span> 71 <span class="control-group error" data-ng-if="editEmailAjaxError"> 72 <small class="help-block"> 73 <div>The server responded with an error. Please try again!</div> 74 <div>If the problem persists contact us at:</div> 75 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 76 </small> 77 </span> 78 </form> 79 </dd> 80 <dd data-ng-if="addingEmail"> 81 <form name="newEmailForm" class="form-inline" novalidate="novalidate"> 82 <input name="newEmailInput" type="email" required="required" data-ng-model="newEmailInputText"/> 83 <button data-ng-click="addEmail(newEmailInputText)" class="btn btn-success btn-mini" data-ng-disabled="newEmailForm.$invalid || waitingForServer"><i class="icon-check"></i> Save</button> 84 <button data-ng-click="terminateAddEmail()" class="btn btn-danger btn-mini"><i class="icon-remove"></i> Cancel</button> 85 <img src="images/spinner-small.gif" alt="Loading..." data-ng-if="waitingForServer"/> 86 <span class="control-group error" data-ng-if="newEmailForm.newEmailInput.$dirty && newEmailForm.newEmailInput.$invalid"> 87 <small class="help-block" data-ng-if="newEmailForm.newEmailInput.$error.required"> 88 The email cannot be empty. 89 </small> 90 </span> 91 <span class="control-group error" data-ng-if="newEmailForm.newEmailInput.$dirty && newEmailForm.newEmailInput.$invalid"> 92 <small class="help-block" data-ng-if="newEmailForm.newEmailInput.$error.email"> 93 Please provide a vaid email address. 94 </small> 95 </span> 96 <span class="control-group error" data-ng-if="ajaxError"> 97 <small class="help-block"> 98 <div>The server responded with an error. Please try again!</div> 99 <div>If the problem persists contact us at:</div> 100 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 101 </small> 102 </span> 103 </form> 104 </dd> 105 <dd data-ng-if="!addingEmail"><button data-ng-click="addNewEmail()" class="btn btn-mini"><i class="icon-plus"></i> Add new email</button></dd> 106 </span> 107 </dl> 122 </dl> 123 </div> 124 </div> 108 125 </div> 109 126 </div> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/partials/contact.html
r4191 r4300 1 <div id="contact" data-ng-class="animateInOut" class="container-fluid"> 2 <div class="row-fluid"> 3 <div class="span12 hero-unit"> 4 <div> 5 <h3>Contact</h3> 6 </div> 7 <div class="container-fluid"> 8 <div class="row-fluid"> 9 <div class="span9"> 10 <p>For any additional information feel free to contact:</p> 11 <address> 12 <div class="container-fluid"><a href="mailto:isocat@mpi.nl">isocat@mpi.nl</a></div> 13 <br/><br/> 14 <p>And visit us at:</p> 15 <div class="container-fluid"><a href="http://tla.mpi.nl">tla.mpi.nl</a></div> 16 <br/> 17 </address> 1 <div id="contact" data-ng-class="animateInOut" class="schemacat-fluid-container"> 2 <div class="row"> 3 <div class="col-md-12"> 4 <div class="jumbotron"> 5 <div> 6 <h3>Contact</h3> 7 </div> 8 <div class="schemacat-fluid-container"> 9 <div class="row"> 10 <div class="col-md-9"> 11 <p>For any additional information feel free to contact:</p> 12 <address> 13 <div class="schemacat-fluid-container"><a href="mailto:isocat@mpi.nl">isocat@mpi.nl</a></div> 14 <br/><br/> 15 <p>And visit us at:</p> 16 <div class="schemacat-fluid-container"><a href="http://tla.mpi.nl">tla.mpi.nl</a></div> 17 <br/> 18 </address> 19 </div> 20 <div class="col-md-3"> </div> 18 21 </div> 19 <div class="span3"> </div>20 22 </div> 21 23 </div> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/partials/fillDetailsModal.html
r4111 r4300 6 6 <div class="modal-body"> 7 7 <h5>Before you can use SCHEMAcat please complete your account with the following details:</h5> 8 <div class="container-fluid"> 9 <div class="row-fluid"> 10 <div class="span6"> 11 <form name="userDetailsForm"> 12 <label>Display name:</label> 13 <input name="displayNameInput" type="text" required="required" data-ng-model="displayNameInput.text"/> 14 <div class="control-group error" data-ng-if="userDetailsForm.displayNameInput.$dirty && userDetailsForm.displayNameInput.$invalid"> 15 <small class="help-block" data-ng-if="userDetailsForm.displayNameInput.$error.required"> 16 Your display name cannot be empty. 17 </small> 8 <div> 9 <div class="row"> 10 <div class="col-md-8"> 11 <br/> 12 <form name="userDetailsForm" class="form-horizontal"> 13 <div class="form-group"> 14 <label class="col-md-4 control-label">Display name:</label> 15 <div class="col-md-8"> 16 <input name="displayNameInput" class="form-control" type="text" required="required" data-ng-model="displayNameInput.text"/> 17 </div> 18 <div class="col-md-8 col-md-offset-4 has-error small" data-ng-if="userDetailsForm.displayNameInput.$dirty && userDetailsForm.displayNameInput.$invalid"> 19 <span class="help-block" data-ng-if="userDetailsForm.displayNameInput.$error.required"> 20 Your display name cannot be empty. 21 </span> 22 </div> 18 23 </div> 19 <div> 20 <label>Contact email:</label> 21 <input name="emailInput" type="email" required="required" data-ng-model="emailInput.text"/> 22 <div class="control-group error" data-ng-if="userDetailsForm.emailInput.$dirty && userDetailsForm.emailInput.$invalid"> 23 <small class="help-block" data-ng-if="userDetailsForm.emailInput.$error.required"> 24 <div class="form-group"> 25 <label class="col-md-4 control-label">Contact email:</label> 26 <div class="col-md-8"> 27 <input name="emailInput" class="col-md-8 form-control" type="email" required="required" data-ng-model="emailInput.text"/> 28 </div> 29 <div class="col-md-8 col-md-offset-4 has-error small" data-ng-if="userDetailsForm.emailInput.$dirty && userDetailsForm.emailInput.$invalid"> 30 <span class="help-block" data-ng-if="userDetailsForm.emailInput.$error.required"> 24 31 Your contact email cannot be empty. 25 </s mall>32 </span> 26 33 </div> 27 <div class="co ntrol-group error" data-ng-if="userDetailsForm.emailInput.$dirty && userDetailsForm.emailInput.$invalid">28 <s mallclass="help-block" data-ng-if="userDetailsForm.emailInput.$error.email">34 <div class="col-md-8 col-md-offset-4 has-error small" data-ng-if="userDetailsForm.emailInput.$dirty && userDetailsForm.emailInput.$invalid"> 35 <span class="help-block" data-ng-if="userDetailsForm.emailInput.$error.email"> 29 36 Please provide a vaid email address. 30 </s mall>37 </span> 31 38 </div> 32 39 </div> 33 40 </form> 34 41 </div> 35 <div class=" span6">42 <div class="col-md-4"> 36 43 <div class="text-center" data-ng-if="waitingForServer"> 37 44 <div class="hidden-phone"><br/><br/></div> 38 45 <img src="images/spinner.gif" alt="Loading..."/> 39 46 </div> 40 <span class=" control-group error" data-ng-if="ajaxError">41 <s mallclass="help-block">47 <span class="form-group has-error small" data-ng-if="ajaxError"> 48 <span class="help-block"> 42 49 <div>The server responded with an error. Please try again!</div> 43 50 <br/> 44 51 <div>If the problem persists contact us at:</div> 45 52 <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div> 46 </s mall>53 </span> 47 54 </span> 48 55 </div> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/partials/loginModal.html
r4111 r4300 6 6 </div> 7 7 <div class="modal-body"> 8 <form name="loginForm"> 9 <div> 10 <label>User</label> 11 <input name="loginNameInput" type="text" required="required" data-ng-model="loginNameInput.text"/> 12 <div class="control-group error" data-ng-if="loginForm.loginNameInput.$dirty && loginForm.loginNameInput.$invalid"> 13 <small class="help-block" data-ng-if="loginForm.loginNameInput.$error.required"> 8 <form name="loginForm" class="form-horizontal"> 9 <div class="form-group"> 10 <label class="col-sm-2 control-label">Principal</label> 11 <div class="col-sm-7"> 12 <input name="loginNameInput" type="text" class="form-control" required="required" data-ng-model="loginNameInput.text"/> 13 </div> 14 <div class="col-sm-10 col-sm-offset-2 has-error small" data-ng-if="loginForm.loginNameInput.$dirty && loginForm.loginNameInput.$invalid"> 15 <span class="help-block" data-ng-if="loginForm.loginNameInput.$error.required"> 14 16 Your Shibboleth principal cannot be empty. 15 </s mall>17 </span> 16 18 </div> 17 19 </div> … … 19 21 </div> 20 22 <div class="modal-footer"> 21 <button class="btn " data-ng-click="loginClose()">Cancel</button>23 <button class="btn btn-default" data-ng-click="loginClose()">Cancel</button> 22 24 <button id="login" class="btn btn-primary" data-ng-click="loginSubmit()" data-ng-disabled="loginForm.$invalid">Login</button> 23 25 </div> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/partials/workspace.html
r4200 r4300 1 <div id="workspace" data-ng-class="animateWorkspacePageChange" class=" container-fluid">2 <div id="workspace-main-row" class="row -fluid">3 <div class=" span3 workspace-master-div">1 <div id="workspace" data-ng-class="animateWorkspacePageChange" class="schemacat-fluid-container"> 2 <div id="workspace-main-row" class="row"> 3 <div class="col-md-3"> 4 4 <div class="sidebar-nav-fixed"> 5 5 <!--<form class="form-search"> … … 9 9 </div> 10 10 </form>--> 11 <table class="table table-bordered table-condensed table-hover"> 12 <thead> 13 <tr> 14 <th>Schema</th> 15 <th>Version</th> 16 <th>Status</th> 17 </tr> 18 </thead> 19 <tbody> 20 <tr data-ng-class="{'selected': $index==selectedSchemaIndex,'cursor-pointer': $index!=selectedSchemaIndex}" data-ng-repeat="schema in schemasList" data-ng-click="selectSchema($index)"> 21 <td data-ng-bind="schema['sc:name']"></td> 22 <td data-ng-if="schema['sc:version'] != '[object Object]'" data-ng-bind="schema['sc:version']"/> 23 <td data-ng-if="schema['sc:version'] == '[object Object]'"/> 24 <td data-ng-bind="schema['sc:status']"/> 25 </tr> 26 </tbody> 27 </table> 11 <div class="panel panel-default"> 12 <table class="table table-bordered table-condensed table-hover"> 13 <thead> 14 <tr> 15 <th>Schema</th> 16 <th>Version</th> 17 <th>Status</th> 18 </tr> 19 </thead> 20 <tbody> 21 <tr data-ng-class="{'active': $index==selectedSchemaIndex,'cursor-pointer': $index!=selectedSchemaIndex}" data-ng-repeat="schema in schemasList" data-ng-click="selectSchema($index)"> 22 <td data-ng-bind="schema['sc:name']"></td> 23 <td data-ng-if="schema['sc:version'] != '[object Object]'" data-ng-bind="schema['sc:version']"/> 24 <td data-ng-if="schema['sc:version'] == '[object Object]'"/> 25 <td data-ng-bind="schema['sc:status']"/> 26 </tr> 27 </tbody> 28 </table> 29 </div> 28 30 <div data-ng-if="schemasResult['sc:result']['sc:total-schemas'] > pageSize" class="paginator centered"> 29 <div data-pagination="" data-page="currentPage" data-total-items="totalSchemaItems" data-items-per-page="pageSize" data-max-size="5" class="pagination-sm allcursor-pointer" data-on-select-page="selectPage(page)"31 <div data-pagination="" data-page="currentPage" data-total-items="totalSchemaItems" data-items-per-page="pageSize" data-max-size="5" class="pagination-sm cursor-pointer" data-on-select-page="selectPage(page)" 30 32 data-boundary-links="true" data-previous-text="â¹" data-next-text="âº" data-first-text="«" data-last-text="»"></div> 31 33 </div> 32 34 </div> 33 35 </div> 34 <div class=" span9 workspace-master-div">35 <div id="schema-background" class=" hero-unit">36 <div id="schema-div" class="container-fluid" data-ng-class="animateSchemaChange">36 <div class="col-md-9"> 37 <div id="schema-background" class="jumbotron"> 38 <div id="schema-div" data-ng-class="animateSchemaChange" class="small"> 37 39 <h1 id="schema-name" data-ng-bind="selectedSchema['sc:schema']['sc:name']"></h1> 38 40 <p data-ng-if="selectedSchema['sc:schema']['sc:description'] != '[object Object]'" data-ng-bind="selectedSchema['sc:schema']['sc:description']"/> 39 41 <p data-ng-if="selectedSchema['sc:schema']['sc:description'] == '[object Object]'">--</p> 40 <div class="row -fluid">41 <div class=" span2">42 <div class="row"> 43 <div class="col-md-2"> 42 44 <h4>Version:</h4> 43 45 <p data-ng-if="selectedSchema['sc:schema']['sc:version'] != '[object Object]'" data-ng-bind="selectedSchema['sc:schema']['sc:version']"/> 44 46 <p data-ng-if="selectedSchema['sc:schema']['sc:version'] == '[object Object]'">--</p> 45 47 </div> 46 <div class=" span2">48 <div class="col-md-2"> 47 49 <h4>Status:</h4> 48 50 <p data-ng-if="selectedSchema['sc:schema']['sc:status'] != '[object Object]'" data-ng-bind="selectedSchema['sc:schema']['sc:status']"/> 49 51 <p data-ng-if="selectedSchema['sc:schema']['sc:status'] == '[object Object]'">--</p> 50 52 </div> 51 <div class=" span2">53 <div class="col-md-2"> 52 54 <h4>Access:</h4> 53 55 <p data-ng-if="selectedSchema['sc:schema']['sc:access']['sc:all']['actions'] == 'r'">shared URL</p> 54 56 <p data-ng-if="selectedSchema['sc:schema']['sc:access']['sc:all']['actions'] != 'r'">private</p> 55 57 </div> 56 <div class=" span2">58 <div class="col-md-2"> 57 59 <h4>License:</h4> 58 <a data-ng-if="selectedSchema['sc:schema']['sc:license'] != undefined" href="{{selectedSchema['sc:schema']['sc:license']['sc:license-text']}}" data-tooltip-append-to-body="true" data-tooltip-placement="right" data-tooltip-html-unsafe="{{selectedSchema['sc:schema']['sc:license']['sc:full-name']}}<br/><span>OSI approved: </span><span>{{selectedSchema['sc:schema']['sc:license']['sc:OSI-approved']}}</span><br/><br/><span>Click to view license text...</span>"> 59 <small><span data-ng-bind="selectedSchema['sc:schema']['sc:license']['xml:id']"/></small> 60 </a> 60 <p data-ng-if="selectedSchema['sc:schema']['sc:license'] != undefined"> 61 <a href="{{selectedSchema['sc:schema']['sc:license']['sc:license-text']}}" data-tooltip-append-to-body="true" data-tooltip-placement="right" data-tooltip-html-unsafe="{{selectedSchema['sc:schema']['sc:license']['sc:full-name']}}<br/><span>OSI approved: </span><span>{{selectedSchema['sc:schema']['sc:license']['sc:OSI-approved']}}</span><br/><br/><span>Click to view license text...</span>"> 62 <small data-ng-bind="selectedSchema['sc:schema']['sc:license']['xml:id']"></small> 63 </a> 64 </p> 61 65 <p data-ng-if="selectedSchema['sc:schema']['sc:license'] == undefined">--</p> 62 66 </div> 63 67 </div> 64 <div class="row -fluid">65 <div class=" span2">68 <div class="row"> 69 <div class="col-md-2"> 66 70 <h5>Group tags:</h5> 67 71 </div> … … 74 78 <span> 75 79 <span data-ng-bind="file['sc:name']"></span><span> </span> 76 <button type="button" class="btn btn-success btn- mini" data-ng-model="showSchemaBtn" data-btn-checkbox="" data-ng-click="showFile(file['sc:name']);">80 <button type="button" class="btn btn-success btn-xs" data-ng-model="showSchemaBtn" data-btn-checkbox="" data-ng-click="showFile(file['sc:name']);"> 77 81 <span data-ng-hide="showSchemaBtn">Show</span><span data-ng-show="showSchemaBtn">Hide</span> 78 82 </button> 79 <a href="/schemacat/schemas/{{selectedSchema['sc:schema']['xml:id']}}/files/{{file['sc:name']}}" class="btn btn-primary btn- mini">Open</a>80 <a href="/schemacat/schemas/{{selectedSchema['sc:schema']['xml:id']}}/download/files/{{file['sc:name']}}" class="btn btn-danger btn- mini" download>Download</a>83 <a href="/schemacat/schemas/{{selectedSchema['sc:schema']['xml:id']}}/files/{{file['sc:name']}}" class="btn btn-primary btn-xs">Open</a> 84 <a href="/schemacat/schemas/{{selectedSchema['sc:schema']['xml:id']}}/download/files/{{file['sc:name']}}" class="btn btn-danger btn-xs" download>Download</a> 81 85 <span data-ng-show="showSchemaBtn && !file.open"> 82 86 <span> </span> … … 87 91 <pre><code data-ng-class="prettify" data-ng-bind="schemaFileContent"></code></pre> 88 92 </div> 89 <div class=" control-group error" data-ng-show="showFileAjaxError">93 <div class="has-error small" data-ng-show="showFileAjaxError"> 90 94 <small class="help-block"> 91 95 <div>The server responded with an error. Please try again!</div> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/scripts/controllers.js
r4200 r4300 59 59 $location.search().schemaIndex = '0'; 60 60 delete $location.search().show; 61 $location.path('workspace /page/' + page + '/').search($location.search());61 $location.path('workspace.html/page/' + page + '/').search($location.search()); 62 62 }; 63 63 … … 344 344 345 345 $scope.isActive = function(viewLocation) { 346 if (viewLocation === '/workspace ' && $location.path().indexOf('/workspace/') !== -1)346 if (viewLocation === '/workspace.html' && $location.path().indexOf('/workspace.html/') !== -1) 347 347 return true; 348 348 return viewLocation === $location.path(); -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/scripts/controllers.min.js
r4200 r4300 1 "use strict";SCHEMAcat.controller("WorkspaceCtrl",["$scope","$location","$routeParams","$timeout","SchemasList","Schema","UserService","Settings",function(a,b,c,d,e,f,g,h){function k(c){return isNaN(parseInt(c,10))||1>c?(b.path("workspace/page/1/").search({schemaIndex:0}),void 0):(e.get({userID:g.id,startPage:c,pageSize:a.pageSize},function(d){return c>Math.ceil(d["sc:result"]["sc:total-schemas"]/a.pageSize)?(b.path("workspace/page/1/").search({schemaIndex:0}),void 0):(i.totalSchemaItems=d["sc:result"]["sc:total-schemas"],i.currentPage=Number(c),i.schemasList=m(d["sc:result"]["sc:schemas"]["sc:schema"]),l(b.search().schemaIndex),i.schemasResult=d,void 0)}),void 0)}function l(c){if("invisible"!==a.animateWorkspacePageChange&&(a.animateSchemaChange="invisible"),isNaN(parseInt(c,10))||0>c||c>a.schemasList.length-1)return a.selectedSchemaIndex=void 0,b.search({schemaIndex:0}),void 0;a.selectedSchemaIndex=c;var d=i.schemasList[Number(c)];f.get({schemaID:d["xml:id"]},function(b){if(i.filesList=m(b["sc:schema"]["sc:files"]["sc:file"]),h.getAnimationStatus())switch(a.toNextSchema){case!0:a.animateSchemaChange="animated fadeInUp";break;case!1:a.animateSchemaChange="animated fadeInDown";break;case void 0:a.animateSchemaChange="animated fadeInDown"}else a.animateSchemaChange="";i.selectedSchema=b,i.resultHasArrived=!0})}function m(a){var b;return b=a instanceof Array?a:new Array(a)}var i=a.$parent;i.pageSize=10,a.selectedSchemaIndex=c.schemaIndex,a.animateWorkspacePageChange="invisible";var j=a.$watch("resultHasArrived",function(b){if(b){if(h.getAnimationStatus()){switch(i.toNextPage){case!1:a.animateWorkspacePageChange="animated slideInLeft";break;case!0:a.animateWorkspacePageChange="animated slideInRight";break;default:a.animateWorkspacePageChange="animated fadeInDown"}d(function(){a.animateWorkspacePageChange=""},250)}else a.animateWorkspacePageChange="";j()}});i.workspaceFirstLoaded||k(c.pageNumber),a.selectPage=function(a){b.search().schemaIndex="0",delete b.search().show,b.path("workspace /page/"+a+"/").search(b.search())},a.selectSchema=function(a){b.search().schemaIndex=a.toString(),delete b.search().show,b.search(b.search())},a.$on("$routeChangeStart",function(b,c,d){if(i.resultHasArrived=!1,h.getAnimationStatus())switch(i.toNextPage=void 0!==c.params&&void 0!==c.params.pageNumber&&c.params.pageNumber>d.params.pageNumber?!0:!1,c.templateUrl){case"partials/workspace.html":a.animateWorkspacePageChange=i.toNextPage?"animated slideOutLeft":"animated slideOutRight";break;case"partials/contact.html":case"partials/about.html":a.animateWorkspacePageChange="animated slideOutLeft";break;default:a.animateWorkspacePageChange="animated fadeOutDown"}"partials/workspace.html"===c.templateUrl?k(c.params.pageNumber):i.workspaceFirstLoaded=!1}),a.$on("$routeChangeSuccess",function(a,b,c){h.getAnimationStatus()&&(void 0===c||void 0===c.templateUrl||"partials/accountDetails.html"===c.templateUrl)&&(i.toNextPage=void 0)}),a.$on("$routeUpdate",function(b,c){"partials/workspace.html"===c.templateUrl&&c.params.schemaIndex!==a.selectedSchemaIndex&&(i.resultHasArrived=!1,h.getAnimationStatus()?(a.toNextSchema=c.params.schemaIndex>a.selectedSchemaIndex?!0:!1,a.animateSchemaChange=a.toNextSchema?"animated fadeOutUp":"animated fadeOutDown",d(function(){l(c.params.schemaIndex)},250)):l(c.params.schemaIndex))}),i.workspaceFirstLoaded=!0}]),SCHEMAcat.controller("FileController",["$scope","$http","$timeout","$location",function(a,b,c,d){function e(){void 0!==d.search().show&&-1!==d.search().show.indexOf(a.file["sc:name"])?(a.showSchemaBtn=!0,f(a.selectedSchema["sc:schema"]["xml:id"],a.file["sc:name"])):(a.showSchemaBtn=!1,a.file.open=!1)}function f(d,e){void 0===a.schemaFileContent?b.get("/schemacat/schemas/"+d+"/files/"+e).success(function(b){a.prettify="prettyprint linenums",c(function(){prettyPrint(),a.file.open=!0}),a.schemaFileContent=b}).error(function(){a.showSchemaBtn=!1,a.showFile(e),a.showFileAjaxError=!0}):a.file.open=!0}e(),a.showFile=function(b){a.showFileAjaxError=!1,c(function(){var c=d.search();if(a.showSchemaBtn===!0)void 0===c.show?c.show="#"+b:-1===c.show.indexOf(b)&&(c.show=c.show+"#"+b);else for(var e in c)if("show"===e){var f=c[e].split("#");for(var g in f)f[g]===b&&f.splice(g,1);var h=f.join("#");""!==h?c[e]=h:delete c[e]}d.search(c)})},a.$on("$routeUpdate",function(){a.resultHasArrived&&e()})}]),SCHEMAcat.controller("TopMenuCtrl",["$scope","$modal","$location","UserService","Settings","ShibService",function(a,b,c,d,e,f){function g(){a.topMenuCollapsed=!c.search().topMenuExpanded,e.setAnimationStatus(!c.search().animationsDisabled),a.animationsChecked=e.getAnimationStatus()}a.displayName=d.displayName,a.shibURL=f.url,a.$watch(function(){return d.displayName},function(b,c){b!==c&&(a.displayName=b)}),g(),a.isActive=function(a){return"/workspace"===a&&-1!==c.path().indexOf("/workspace/")?!0:a===c.path()},a.updateAnimationStatus=function(){a.animationsChecked=!a.animationsChecked,a.animationsChecked?delete c.search().animationsDisabled:c.search().animationsDisabled=!0,c.search(c.search())},a.toggleTopMenu=function(){a.topMenuCollapsed=!a.topMenuCollapsed,a.topMenuCollapsed?delete c.search().topMenuExpanded:c.search().topMenuExpanded=!0,c.search(c.search())},a.animationsUrlPart=function(){return c.search().animationsDisabled?"animationsDisabled":""},a.topMenuExpandedUrlPart=function(){return c.search().topMenuExpanded?"topMenuExpanded":""},a.$on("$routeUpdate",function(){g()}),a.loginClick=function(){var c=b.open({scope:a,templateUrl:"partials/loginModal.html",controller:"LoginModalCtrl"});c.result.then(function(a){alert("Now set the user cookie to ["+a+"]"),document.cookie="USER="+a+";domain=;path=/",document.location.hash="",document.location.reload(!0)})}}]),SCHEMAcat.controller("LoginModalCtrl",["$scope","$modalInstance",function(a,b){a.loginClose=function(){b.dismiss("cancel")},a.loginSubmit=function(){b.close(this.loginNameInput.text)}}]),SCHEMAcat.controller("AboutPageCtrl",["$scope","Settings",function(a,b){a.$parent.toNextPage=!1,b.getAnimationStatus()&&(a.animateInOut="animated slideInRight"),a.$on("$routeChangeStart",function(c,d){if(b.getAnimationStatus())switch(d.templateUrl){case"partials/workspace.html":a.animateInOut="animated slideOutRight";break;case"partials/contact.html":a.animateInOut="animated slideOutLeft";break;default:a.animateInOut="animated fadeOutDown"}}),a.$on("$routeChangeSuccess",function(c,d,e){if(b.getAnimationStatus()){var f=void 0!==e?e.templateUrl:void 0;switch(f){case"partials/workspace.html":a.animateInOut="animated slideInRight";break;case"partials/contact.html":a.animateInOut="animated slideInLeft";break;default:a.animateInOut="animated fadeInDown"}}})}]),SCHEMAcat.controller("ContactPageCtrl",["$scope","Settings",function(a,b){a.$parent.toNextPage=!1,b.getAnimationStatus()&&(a.animateInOut="animated slideInRight"),a.$on("$routeChangeStart",function(c,d){if(b.getAnimationStatus())switch(d.templateUrl){case"partials/about.html":case"partials/contact.html":case"partials/workspace.html":a.animateInOut="animated slideOutRight";break;default:a.animateInOut="animated fadeOutDown"}}),a.$on("$routeChangeSuccess",function(c,d,e){if(b.getAnimationStatus()){var f=void 0!==e?e.templateUrl:void 0;switch(f){case"partials/about.html":case"partials/contact.html":case"partials/workspace.html":a.animateInOut="animated slideInRight";break;default:a.animateInOut="animated fadeInDown"}}})}]),SCHEMAcat.controller("AccountDetailsPageCtrl",["$scope","$location","User","UserService","Settings",function(a,b,c,d,e){function f(){var a=b.search();for(var c in a)if("edditingEmail"===c){for(var e=a[c].split("#"),f=0;f<e.length;f++){for(var g=!1,h=0;h<d.email.length;h++)e[f]===d.email[h]&&(g=!0);g||e.splice(f,1)}var i=e.join("#");""!==i?a[c]=i:delete a[c]}b.search(a)}function g(){a.waitingForServerEditDisplayName=!1,a.editDisplayNameAjaxError=!1,b.search().edditingDisplayName?(a.editDisplayNameText=a.displayName,a.edditingDisplayName=!0):a.edditingDisplayName=!1}function h(){a.waitingForServer=!1,a.addingEmail=b.search().addingEmail?!0:!1}a.principal=d.principal,a.displayName=d.displayName,a.email=d.email,a.addingEmail=!1,a.addNewEmail=function(){b.search().addingEmail=!0,b.search(b.search())},a.terminateAddEmail=function(){a.ajaxError=!1,delete b.search().addingEmail,b.search(b.search())},a.addEmail=function(b){a.waitingForServer=!0;var e=new c;e.emails=d.email.slice(0),e.emails.push(b),e.$save({userID:d.id},function(c){void 0!==c["sc:response"]&&c["sc:response"].success?(d.email.push(b),a.terminateAddEmail()):(a.waitingForServer=!1,a.ajaxError=!0)},function(){a.waitingForServer=!1,a.ajaxError=!0})},a.editDisplayName=function(){b.search().edditingDisplayName=!0,b.search(b.search())},a.terminateEditDisplayName=function(){delete b.search().edditingDisplayName,b.search(b.search())},a.updateDisplayName=function(b){a.waitingForServerEditDisplayName=!0;var e=new c;e.displayName=b,e.$save({userID:d.id},function(c){void 0!==c["sc:response"]&&c["sc:response"].success?(a.displayName=d.displayName=b,a.terminateEditDisplayName()):(a.waitingForServerEditDisplayName=!1,a.editDisplayNameAjaxError=!0)},function(){a.waitingForServerEditDisplayName=!1,a.editDisplayNameAjaxError=!0})},e.getAnimationStatus()&&(a.animateAccountDetails="animated fadeInDown"),a.$on("$routeChangeStart",function(){e.getAnimationStatus()&&(a.animateAccountDetails="animated fadeOutUp")}),a.$on("$routeChangeSuccess",function(){e.getAnimationStatus()&&(a.animateAccountDetails="animated fadeInDown"),h(),g(),f()}),a.$on("$routeUpdate",function(){h(),g(),f()})}]),SCHEMAcat.controller("EmailInstanceCtrl",["$scope","$location","User","UserService",function(a,b,c,d){function e(){a.waitingForServerEditEmail=!1,void 0!==b.search().edditingEmail&&-1!==b.search().edditingEmail.indexOf(a.emailInstance)?(a.editEmailText=a.emailInstance,a.edditingEmail=!0):a.edditingEmail=!1}e(),a.editEmail=function(c){var d=b.search();a.removeEmailAjaxError=!1,d.edditingEmail=void 0===d.edditingEmail?c:b.search().edditingEmail+"#"+c,b.search(d)},a.removeEmail=function(b){a.waitingForServerEditEmail=!0;var e=new c;e.emails=d.email.slice(0),e.emails.splice(b,1),e.$save({userID:d.id},function(c){void 0!==c["sc:response"]&&c["sc:response"].success?d.email.splice(b,1):(a.waitingForServerEditEmail=!1,a.removeEmailAjaxError=!0)},function(){a.waitingForServerEditEmail=!1,a.removeEmailAjaxError=!0})},a.updateEmail=function(b){a.waitingForServerEditEmail=!0;var e=new c;e.emails=d.email.slice(0),e.emails[b]=a.editEmailText,e.$save({userID:d.id},function(c){if(void 0!==c["sc:response"]&&c["sc:response"].success){var e=a.editEmailText;a.cancelEditEmail(d.email[b]),d.email[b]=e}else a.waitingForServerEditEmail=!1,a.editEmailAjaxError=!0},function(){a.waitingForServerEditEmail=!1,a.editEmailAjaxError=!0})},a.cancelEditEmail=function(c){var d=b.search();a.editEmailAjaxError=!1;for(var e in d)if("edditingEmail"===e){var f=d[e].split("#");for(var g in f)f[g]===c&&f.splice(g,1);var h=f.join("#");""!==h?d[e]=h:delete d[e]}b.search(d)},a.$on("$routeChangeSuccess",function(){e()}),a.$on("$routeUpdate",function(){e()})}]),SCHEMAcat.controller("CompleteUserDetailsCtrl",["$scope","$modal",function(a,b){a.ajaxError=!1,a.waitingForServer=!1,b.open({scope:a,backdrop:"static",templateUrl:"partials/fillDetailsModal.html",controller:"CompleteUserDetailsModalCtrl"})}]),SCHEMAcat.controller("CompleteUserDetailsModalCtrl",["$scope","$modalInstance","User","UserService",function(a,b,c,d){a.userDetailsSubmit=function(){a.waitingForServer=!0,a.ajaxError=!1;var b=new c;b.emails=[],b.emails[0]=this.emailInput.text,b.displayName=this.displayNameInput.text,b.$save({userID:d.id},function(b){void 0!==b["sc:response"]&&b["sc:response"].success?document.location.pathname="schemacat/site/index.html":(a.waitingForServer=!1,a.ajaxError=!0)},function(){a.waitingForServer=!1,a.ajaxError=!0})}}]);1 "use strict";SCHEMAcat.controller("WorkspaceCtrl",["$scope","$location","$routeParams","$timeout","SchemasList","Schema","UserService","Settings",function(a,b,c,d,e,f,g,h){function k(c){return isNaN(parseInt(c,10))||1>c?(b.path("workspace/page/1/").search({schemaIndex:0}),void 0):(e.get({userID:g.id,startPage:c,pageSize:a.pageSize},function(d){return c>Math.ceil(d["sc:result"]["sc:total-schemas"]/a.pageSize)?(b.path("workspace/page/1/").search({schemaIndex:0}),void 0):(i.totalSchemaItems=d["sc:result"]["sc:total-schemas"],i.currentPage=Number(c),i.schemasList=m(d["sc:result"]["sc:schemas"]["sc:schema"]),l(b.search().schemaIndex),i.schemasResult=d,void 0)}),void 0)}function l(c){if("invisible"!==a.animateWorkspacePageChange&&(a.animateSchemaChange="invisible"),isNaN(parseInt(c,10))||0>c||c>a.schemasList.length-1)return a.selectedSchemaIndex=void 0,b.search({schemaIndex:0}),void 0;a.selectedSchemaIndex=c;var d=i.schemasList[Number(c)];f.get({schemaID:d["xml:id"]},function(b){if(i.filesList=m(b["sc:schema"]["sc:files"]["sc:file"]),h.getAnimationStatus())switch(a.toNextSchema){case!0:a.animateSchemaChange="animated fadeInUp";break;case!1:a.animateSchemaChange="animated fadeInDown";break;case void 0:a.animateSchemaChange="animated fadeInDown"}else a.animateSchemaChange="";i.selectedSchema=b,i.resultHasArrived=!0})}function m(a){var b;return b=a instanceof Array?a:new Array(a)}var i=a.$parent;i.pageSize=10,a.selectedSchemaIndex=c.schemaIndex,a.animateWorkspacePageChange="invisible";var j=a.$watch("resultHasArrived",function(b){if(b){if(h.getAnimationStatus()){switch(i.toNextPage){case!1:a.animateWorkspacePageChange="animated slideInLeft";break;case!0:a.animateWorkspacePageChange="animated slideInRight";break;default:a.animateWorkspacePageChange="animated fadeInDown"}d(function(){a.animateWorkspacePageChange=""},250)}else a.animateWorkspacePageChange="";j()}});i.workspaceFirstLoaded||k(c.pageNumber),a.selectPage=function(a){b.search().schemaIndex="0",delete b.search().show,b.path("workspace.html/page/"+a+"/").search(b.search())},a.selectSchema=function(a){b.search().schemaIndex=a.toString(),delete b.search().show,b.search(b.search())},a.$on("$routeChangeStart",function(b,c,d){if(i.resultHasArrived=!1,h.getAnimationStatus())switch(i.toNextPage=void 0!==c.params&&void 0!==c.params.pageNumber&&c.params.pageNumber>d.params.pageNumber?!0:!1,c.templateUrl){case"partials/workspace.html":a.animateWorkspacePageChange=i.toNextPage?"animated slideOutLeft":"animated slideOutRight";break;case"partials/contact.html":case"partials/about.html":a.animateWorkspacePageChange="animated slideOutLeft";break;default:a.animateWorkspacePageChange="animated fadeOutDown"}"partials/workspace.html"===c.templateUrl?k(c.params.pageNumber):i.workspaceFirstLoaded=!1}),a.$on("$routeChangeSuccess",function(a,b,c){h.getAnimationStatus()&&(void 0===c||void 0===c.templateUrl||"partials/accountDetails.html"===c.templateUrl)&&(i.toNextPage=void 0)}),a.$on("$routeUpdate",function(b,c){"partials/workspace.html"===c.templateUrl&&c.params.schemaIndex!==a.selectedSchemaIndex&&(i.resultHasArrived=!1,h.getAnimationStatus()?(a.toNextSchema=c.params.schemaIndex>a.selectedSchemaIndex?!0:!1,a.animateSchemaChange=a.toNextSchema?"animated fadeOutUp":"animated fadeOutDown",d(function(){l(c.params.schemaIndex)},250)):l(c.params.schemaIndex))}),i.workspaceFirstLoaded=!0}]),SCHEMAcat.controller("FileController",["$scope","$http","$timeout","$location",function(a,b,c,d){function e(){void 0!==d.search().show&&-1!==d.search().show.indexOf(a.file["sc:name"])?(a.showSchemaBtn=!0,f(a.selectedSchema["sc:schema"]["xml:id"],a.file["sc:name"])):(a.showSchemaBtn=!1,a.file.open=!1)}function f(d,e){void 0===a.schemaFileContent?b.get("/schemacat/schemas/"+d+"/files/"+e).success(function(b){a.prettify="prettyprint linenums",c(function(){prettyPrint(),a.file.open=!0}),a.schemaFileContent=b}).error(function(){a.showSchemaBtn=!1,a.showFile(e),a.showFileAjaxError=!0}):a.file.open=!0}e(),a.showFile=function(b){a.showFileAjaxError=!1,c(function(){var c=d.search();if(a.showSchemaBtn===!0)void 0===c.show?c.show="#"+b:-1===c.show.indexOf(b)&&(c.show=c.show+"#"+b);else for(var e in c)if("show"===e){var f=c[e].split("#");for(var g in f)f[g]===b&&f.splice(g,1);var h=f.join("#");""!==h?c[e]=h:delete c[e]}d.search(c)})},a.$on("$routeUpdate",function(){a.resultHasArrived&&e()})}]),SCHEMAcat.controller("TopMenuCtrl",["$scope","$modal","$location","UserService","Settings","ShibService",function(a,b,c,d,e,f){function g(){a.topMenuCollapsed=!c.search().topMenuExpanded,e.setAnimationStatus(!c.search().animationsDisabled),a.animationsChecked=e.getAnimationStatus()}a.displayName=d.displayName,a.shibURL=f.url,a.$watch(function(){return d.displayName},function(b,c){b!==c&&(a.displayName=b)}),g(),a.isActive=function(a){return"/workspace.html"===a&&-1!==c.path().indexOf("/workspace.html/")?!0:a===c.path()},a.updateAnimationStatus=function(){a.animationsChecked=!a.animationsChecked,a.animationsChecked?delete c.search().animationsDisabled:c.search().animationsDisabled=!0,c.search(c.search())},a.toggleTopMenu=function(){a.topMenuCollapsed=!a.topMenuCollapsed,a.topMenuCollapsed?delete c.search().topMenuExpanded:c.search().topMenuExpanded=!0,c.search(c.search())},a.animationsUrlPart=function(){return c.search().animationsDisabled?"animationsDisabled":""},a.topMenuExpandedUrlPart=function(){return c.search().topMenuExpanded?"topMenuExpanded":""},a.$on("$routeUpdate",function(){g()}),a.loginClick=function(){var c=b.open({scope:a,templateUrl:"partials/loginModal.html",controller:"LoginModalCtrl"});c.result.then(function(a){alert("Now set the user cookie to ["+a+"]"),document.cookie="USER="+a+";domain=;path=/",document.location.hash="",document.location.reload(!0)})}}]),SCHEMAcat.controller("LoginModalCtrl",["$scope","$modalInstance",function(a,b){a.loginClose=function(){b.dismiss("cancel")},a.loginSubmit=function(){b.close(this.loginNameInput.text)}}]),SCHEMAcat.controller("AboutPageCtrl",["$scope","Settings",function(a,b){a.$parent.toNextPage=!1,b.getAnimationStatus()&&(a.animateInOut="animated slideInRight"),a.$on("$routeChangeStart",function(c,d){if(b.getAnimationStatus())switch(d.templateUrl){case"partials/workspace.html":a.animateInOut="animated slideOutRight";break;case"partials/contact.html":a.animateInOut="animated slideOutLeft";break;default:a.animateInOut="animated fadeOutDown"}}),a.$on("$routeChangeSuccess",function(c,d,e){if(b.getAnimationStatus()){var f=void 0!==e?e.templateUrl:void 0;switch(f){case"partials/workspace.html":a.animateInOut="animated slideInRight";break;case"partials/contact.html":a.animateInOut="animated slideInLeft";break;default:a.animateInOut="animated fadeInDown"}}})}]),SCHEMAcat.controller("ContactPageCtrl",["$scope","Settings",function(a,b){a.$parent.toNextPage=!1,b.getAnimationStatus()&&(a.animateInOut="animated slideInRight"),a.$on("$routeChangeStart",function(c,d){if(b.getAnimationStatus())switch(d.templateUrl){case"partials/about.html":case"partials/contact.html":case"partials/workspace.html":a.animateInOut="animated slideOutRight";break;default:a.animateInOut="animated fadeOutDown"}}),a.$on("$routeChangeSuccess",function(c,d,e){if(b.getAnimationStatus()){var f=void 0!==e?e.templateUrl:void 0;switch(f){case"partials/about.html":case"partials/contact.html":case"partials/workspace.html":a.animateInOut="animated slideInRight";break;default:a.animateInOut="animated fadeInDown"}}})}]),SCHEMAcat.controller("AccountDetailsPageCtrl",["$scope","$location","User","UserService","Settings",function(a,b,c,d,e){function f(){var a=b.search();for(var c in a)if("edditingEmail"===c){for(var e=a[c].split("#"),f=0;f<e.length;f++){for(var g=!1,h=0;h<d.email.length;h++)e[f]===d.email[h]&&(g=!0);g||e.splice(f,1)}var i=e.join("#");""!==i?a[c]=i:delete a[c]}b.search(a)}function g(){a.waitingForServerEditDisplayName=!1,a.editDisplayNameAjaxError=!1,b.search().edditingDisplayName?(a.editDisplayNameText=a.displayName,a.edditingDisplayName=!0):a.edditingDisplayName=!1}function h(){a.waitingForServer=!1,a.addingEmail=b.search().addingEmail?!0:!1}a.principal=d.principal,a.displayName=d.displayName,a.email=d.email,a.addingEmail=!1,a.addNewEmail=function(){b.search().addingEmail=!0,b.search(b.search())},a.terminateAddEmail=function(){a.ajaxError=!1,delete b.search().addingEmail,b.search(b.search())},a.addEmail=function(b){a.waitingForServer=!0;var e=new c;e.emails=d.email.slice(0),e.emails.push(b),e.$save({userID:d.id},function(c){void 0!==c["sc:response"]&&c["sc:response"].success?(d.email.push(b),a.terminateAddEmail()):(a.waitingForServer=!1,a.ajaxError=!0)},function(){a.waitingForServer=!1,a.ajaxError=!0})},a.editDisplayName=function(){b.search().edditingDisplayName=!0,b.search(b.search())},a.terminateEditDisplayName=function(){delete b.search().edditingDisplayName,b.search(b.search())},a.updateDisplayName=function(b){a.waitingForServerEditDisplayName=!0;var e=new c;e.displayName=b,e.$save({userID:d.id},function(c){void 0!==c["sc:response"]&&c["sc:response"].success?(a.displayName=d.displayName=b,a.terminateEditDisplayName()):(a.waitingForServerEditDisplayName=!1,a.editDisplayNameAjaxError=!0)},function(){a.waitingForServerEditDisplayName=!1,a.editDisplayNameAjaxError=!0})},e.getAnimationStatus()&&(a.animateAccountDetails="animated fadeInDown"),a.$on("$routeChangeStart",function(){e.getAnimationStatus()&&(a.animateAccountDetails="animated fadeOutUp")}),a.$on("$routeChangeSuccess",function(){e.getAnimationStatus()&&(a.animateAccountDetails="animated fadeInDown"),h(),g(),f()}),a.$on("$routeUpdate",function(){h(),g(),f()})}]),SCHEMAcat.controller("EmailInstanceCtrl",["$scope","$location","User","UserService",function(a,b,c,d){function e(){a.waitingForServerEditEmail=!1,void 0!==b.search().edditingEmail&&-1!==b.search().edditingEmail.indexOf(a.emailInstance)?(a.editEmailText=a.emailInstance,a.edditingEmail=!0):a.edditingEmail=!1}e(),a.editEmail=function(c){var d=b.search();a.removeEmailAjaxError=!1,d.edditingEmail=void 0===d.edditingEmail?c:b.search().edditingEmail+"#"+c,b.search(d)},a.removeEmail=function(b){a.waitingForServerEditEmail=!0;var e=new c;e.emails=d.email.slice(0),e.emails.splice(b,1),e.$save({userID:d.id},function(c){void 0!==c["sc:response"]&&c["sc:response"].success?d.email.splice(b,1):(a.waitingForServerEditEmail=!1,a.removeEmailAjaxError=!0)},function(){a.waitingForServerEditEmail=!1,a.removeEmailAjaxError=!0})},a.updateEmail=function(b){a.waitingForServerEditEmail=!0;var e=new c;e.emails=d.email.slice(0),e.emails[b]=a.editEmailText,e.$save({userID:d.id},function(c){if(void 0!==c["sc:response"]&&c["sc:response"].success){var e=a.editEmailText;a.cancelEditEmail(d.email[b]),d.email[b]=e}else a.waitingForServerEditEmail=!1,a.editEmailAjaxError=!0},function(){a.waitingForServerEditEmail=!1,a.editEmailAjaxError=!0})},a.cancelEditEmail=function(c){var d=b.search();a.editEmailAjaxError=!1;for(var e in d)if("edditingEmail"===e){var f=d[e].split("#");for(var g in f)f[g]===c&&f.splice(g,1);var h=f.join("#");""!==h?d[e]=h:delete d[e]}b.search(d)},a.$on("$routeChangeSuccess",function(){e()}),a.$on("$routeUpdate",function(){e()})}]),SCHEMAcat.controller("CompleteUserDetailsCtrl",["$scope","$modal",function(a,b){a.ajaxError=!1,a.waitingForServer=!1,b.open({scope:a,backdrop:"static",templateUrl:"partials/fillDetailsModal.html",controller:"CompleteUserDetailsModalCtrl"})}]),SCHEMAcat.controller("CompleteUserDetailsModalCtrl",["$scope","$modalInstance","User","UserService",function(a,b,c,d){a.userDetailsSubmit=function(){a.waitingForServer=!0,a.ajaxError=!1;var b=new c;b.emails=[],b.emails[0]=this.emailInput.text,b.displayName=this.displayNameInput.text,b.$save({userID:d.id},function(b){void 0!==b["sc:response"]&&b["sc:response"].success?document.location.pathname="schemacat/site/index.html":(a.waitingForServer=!1,a.ajaxError=!0)},function(){a.waitingForServer=!1,a.ajaxError=!0})}}]); -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/scripts/modules.js
r4127 r4300 8 8 var loadDelay = 250; //ms 9 9 $routeProvider 10 .when('/workspace /page/:pageNumber/', {10 .when('/workspace.html/page/:pageNumber/', { 11 11 controller: 'WorkspaceCtrl', 12 12 templateUrl: 'partials/workspace.html', … … 37 37 } 38 38 }) 39 .when('/about ', {39 .when('/about.html', { 40 40 controller: 'AboutPageCtrl', 41 41 templateUrl: 'partials/about.html', … … 54 54 } 55 55 }) 56 .when('/contact ', {56 .when('/contact.html', { 57 57 controller: 'ContactPageCtrl', 58 58 templateUrl: 'partials/contact.html', … … 71 71 } 72 72 }) 73 .when('/accountDetails ', {73 .when('/accountDetails.html', { 74 74 controller: 'AccountDetailsPageCtrl', 75 75 templateUrl: 'partials/accountDetails.html', … … 90 90 .otherwise({ 91 91 redirectTo: function(routeParams, path, search) { 92 return '/workspace /page/1/?schemaIndex=0';92 return '/workspace.html/page/1/?schemaIndex=0'; 93 93 } 94 94 }); -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/scripts/modules.min.js
r4126 r4300 1 "use strict";var SCHEMAcat=angular.module("SCHEMAcat",["ui.bootstrap","ngRoute","ngResource"]);SCHEMAcat.config(["$routeProvider",function(a){var b=250;a.when("/workspace /page/:pageNumber/",{controller:"WorkspaceCtrl",templateUrl:"partials/workspace.html",reloadOnSearch:!1,resolve:{delay:["$q","$timeout","Settings",function(a,c,d){if(d.getAnimationStatus()){var e=a.defer();return c(e.resolve,b),e.promise}}]}}).when("/about",{controller:"AboutPageCtrl",templateUrl:"partials/about.html",reloadOnSearch:!1,resolve:{delay:["$q","$timeout","Settings",function(a,c,d){if(d.getAnimationStatus()){var e=a.defer();return c(e.resolve,b),e.promise}}]}}).when("/contact",{controller:"ContactPageCtrl",templateUrl:"partials/contact.html",reloadOnSearch:!1,resolve:{delay:["$q","$timeout","Settings",function(a,c,d){if(d.getAnimationStatus()){var e=a.defer();return c(e.resolve,b),e.promise}}]}}).when("/accountDetails",{controller:"AccountDetailsPageCtrl",templateUrl:"partials/accountDetails.html",reloadOnSearch:!1,resolve:{delay:["$q","$timeout","Settings",function(a,c,d){if(d.getAnimationStatus()){var e=a.defer();return c(e.resolve,b),e.promise}}]}}).otherwise({redirectTo:function(){return"/workspace/page/1/?schemaIndex=0"}})}]);1 "use strict";var SCHEMAcat=angular.module("SCHEMAcat",["ui.bootstrap","ngRoute","ngResource"]);SCHEMAcat.config(["$routeProvider",function(a){var b=250;a.when("/workspace.html/page/:pageNumber/",{controller:"WorkspaceCtrl",templateUrl:"partials/workspace.html",reloadOnSearch:!1,resolve:{delay:["$q","$timeout","Settings",function(a,c,d){if(d.getAnimationStatus()){var e=a.defer();return c(e.resolve,b),e.promise}}]}}).when("/about.html",{controller:"AboutPageCtrl",templateUrl:"partials/about.html",reloadOnSearch:!1,resolve:{delay:["$q","$timeout","Settings",function(a,c,d){if(d.getAnimationStatus()){var e=a.defer();return c(e.resolve,b),e.promise}}]}}).when("/contact.html",{controller:"ContactPageCtrl",templateUrl:"partials/contact.html",reloadOnSearch:!1,resolve:{delay:["$q","$timeout","Settings",function(a,c,d){if(d.getAnimationStatus()){var e=a.defer();return c(e.resolve,b),e.promise}}]}}).when("/accountDetails.html",{controller:"AccountDetailsPageCtrl",templateUrl:"partials/accountDetails.html",reloadOnSearch:!1,resolve:{delay:["$q","$timeout","Settings",function(a,c,d){if(d.getAnimationStatus()){var e=a.defer();return c(e.resolve,b),e.promise}}]}}).otherwise({redirectTo:function(){return"/workspace.html/page/1/?schemaIndex=0"}})}]); -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/styles/SCHEMAcat.css
r4078 r4300 5 5 } 6 6 7 body { 8 overflow-y: scroll; 9 } 10 7 11 .centered{ 8 12 text-align:center; 9 }10 11 .selected{12 background-color:#f5f5f5;13 13 } 14 14 … … 49 49 position:fixed; 50 50 width:21.97%; 51 min-width: 24 1px;51 min-width: 246px; 52 52 } 53 53 … … 55 55 white-space:nowrap; 56 56 min-width: 241px; 57 } 58 59 .img-responsive-inline{ 60 display: inline-block; 61 height: auto; 62 max-width: 100%; 57 63 } 58 64 … … 81 87 height:100%; 82 88 /* Negative indent footer by it's height */ 83 margin:0 auto - 60px;89 margin:0 auto -71px; 84 90 } 85 91 … … 88 94 #pushf, 89 95 #footer{ 90 height: 60px;96 height:71px; 91 97 } 92 98 #footer{ 93 99 background-color:#f5f5f5; 94 100 padding-top:20px; 101 } 102 103 .schemacat-fluid-container { 104 padding-left: 15px; 105 padding-right: 15px; 106 margin-left: auto; 107 margin-right: auto; 108 } 109 110 .schemacat-fluid-container .jumbotron { 111 border-radius: 6px; 112 } 113 114 .modal { 115 overflow-y: auto; 116 } 117 118 body.modal-open { 119 overflow: scroll; 95 120 } 96 121 … … 103 128 padding-right:20px; 104 129 } 105 } 106 107 @media (max-width: 979px) { 130 131 .navbar-fixed-top { 132 position: relative; 133 top: auto; 134 } 135 108 136 #pushh{ 109 137 height:0px; … … 112 140 113 141 @media (max-width: 1009px) { 114 /* override the class definition for the first level divs of the workspace115 so that they stack instead of overlaping when the media width is too low */116 #workspace-main-row .workspace-master-div {117 display: block;118 float: none;119 width: 100%;120 margin-left: 0;121 -webkit-box-sizing: border-box;122 -moz-box-sizing: border-box;123 box-sizing: border-box;124 }125 142 .sidebar-nav-fixed { 126 143 position:static; -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/styles/SCHEMAcat.min.css
r4126 r4300 1 body,html{height:100%} .centered{text-align:center}.selected{background-color:#f5f5f5}#about,#accountDetails,#contact,#schema-div,#workspace{-webkit-animation-duration:.25s;-moz-animation-duration:.25s;-o-animation-duration:.25s;animation-duration:.25s}#schema-background{min-height:350px}input.ng-dirty.ng-invalid{color:#b94a48;border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.sidebar-nav-fixed{position:fixed;width:21.97%;min-width:241px}.paginator{white-space:nowrap;min-width:241px}pre{overflow-x:auto;overflow-wrap:normal;word-wrap:normal}pre code{background-color:inherit;white-space:pre;float:left;min-width:100%}#wrap{min-height:100%;height:auto!important;height:100%;margin:0 auto -60px}#footer,#pushf,#pushh{height:60px}#footer{background-color:#f5f5f5;padding-top:20px}@media (max-width:767px){#footer{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}}@media (max-width:979px){#pushh{height:0}}@media (max-width:1009px){#workspace-main-row .workspace-master-div{display:block;float:none;width:100%;margin-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.sidebar-nav-fixed{position:static;width:auto}}1 body,html{height:100%}body{overflow-y:scroll}.centered{text-align:center}#about,#accountDetails,#contact,#schema-div,#workspace{-webkit-animation-duration:.25s;-moz-animation-duration:.25s;-o-animation-duration:.25s;animation-duration:.25s}#schema-background{min-height:350px}input.ng-dirty.ng-invalid{color:#b94a48;border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.sidebar-nav-fixed{position:fixed;width:21.97%;min-width:246px}.paginator{white-space:nowrap;min-width:241px}.img-responsive-inline{display:inline-block;height:auto;max-width:100%}pre{overflow-x:auto;overflow-wrap:normal;word-wrap:normal}pre code{background-color:inherit;white-space:pre;float:left;min-width:100%}#wrap{min-height:100%;height:auto!important;height:100%;margin:0 auto -71px}#footer,#pushf,#pushh{height:71px}#footer{background-color:#f5f5f5;padding-top:20px}.schemacat-fluid-container{padding-left:15px;padding-right:15px;margin-left:auto;margin-right:auto}.schemacat-fluid-container .jumbotron{border-radius:6px}.modal{overflow-y:auto}body.modal-open{overflow:scroll}@media (max-width:767px){#footer{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}.navbar-fixed-top{position:relative;top:auto}#pushh{height:0}}@media (max-width:1009px){.sidebar-nav-fixed{position:static;width:auto}} -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/test/e2e/runner.html
r4246 r4300 1 <! doctypehtml>2 <html lang="en" >1 <!DOCTYPE html> 2 <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> 3 3 <head> 4 4 <title>SCHEMAcat end2end Test Runner</title> 5 <meta charset="utf-8" >6 <script src="../lib/AngularJS-1.2. 7/angular-scenario.js" ng-autotest></script>7 <script src="../lib/window-dialog-commands.js" ng-autotest></script>5 <meta charset="utf-8"/> 6 <script src="../lib/AngularJS-1.2.8/angular-scenario.js" data-ng-autotest=""></script> 7 <script src="../lib/window-dialog-commands.js" data-ng-autotest=""></script> 8 8 <script src="scenarios.js"></script> 9 9 </head> -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/test/e2e/scenarios.js
r4191 r4300 6 6 afterEach(function() { 7 7 //load the default initial page 8 browser().navigateTo('/schemacat/site/index.html#/workspace /page/1/?schemaIndex=0');9 }); 10 11 it('should jump to "/workspace/page/1/?schemaIndex=0" when loading <serverURL>/schemacat/site/', function() {8 browser().navigateTo('/schemacat/site/index.html#/workspace.html/page/1/?schemaIndex=0'); 9 }); 10 11 /*it('should jump to "/workspace.html/page/1/?schemaIndex=0" when loading <serverURL>/schemacat/site/', function() { 12 12 browser().navigateTo('/schemacat/site/'); 13 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');14 }); 15 16 it('should jump to "/workspace /page/1/?schemaIndex=0" when location path and hash are empty', function() {13 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 14 });*/ 15 16 it('should jump to "/workspace.html/page/1/?schemaIndex=0" when location path and hash are empty', function() { 17 17 browser().navigateTo('/schemacat/site/index.html'); 18 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');19 }); 20 21 it('should have a working /workspace /<page> route', function() {22 browser().navigateTo('#/workspace /page/1/');23 expect(browser().location().path()).toBe('/workspace /page/1/');24 }); 25 26 it('should have a working /about route', function() {27 browser().navigateTo('#/about ');28 expect(browser().location().url()).toBe('/about ');29 }); 30 31 it('should have a working /contact route', function() {32 browser().navigateTo('#/contact ');33 expect(browser().location().url()).toBe('/contact ');34 }); 35 36 it('should have a working /accountDetails route', function() {37 browser().navigateTo('#/accountDetails ');38 expect(browser().location().url()).toBe('/accountDetails ');18 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 19 }); 20 21 it('should have a working /workspace.html/<page> route', function() { 22 browser().navigateTo('#/workspace.html/page/1/'); 23 expect(browser().location().path()).toBe('/workspace.html/page/1/'); 24 }); 25 26 it('should have a working /about.html route', function() { 27 browser().navigateTo('#/about.html'); 28 expect(browser().location().url()).toBe('/about.html'); 29 }); 30 31 it('should have a working /contact.html route', function() { 32 browser().navigateTo('#/contact.html'); 33 expect(browser().location().url()).toBe('/contact.html'); 34 }); 35 36 it('should have a working /accountDetails.html route', function() { 37 browser().navigateTo('#/accountDetails.html'); 38 expect(browser().location().url()).toBe('/accountDetails.html'); 39 39 }); 40 40 41 41 it('should jump to a different schema when schemaIndex changes', function() { 42 browser().navigateTo('#/workspace /page/1/?schemaIndex=1');42 browser().navigateTo('#/workspace.html/page/1/?schemaIndex=1'); 43 43 expect(browser().location().search()).toEqual({schemaIndex: '1'}); 44 browser().navigateTo('#/workspace /page/1/?schemaIndex=2');44 browser().navigateTo('#/workspace.html/page/1/?schemaIndex=2'); 45 45 expect(browser().location().search()).toEqual({schemaIndex: '2'}); 46 46 }); … … 52 52 alertOK(); 53 53 element('#login').click(); 54 sleep(0. 25);55 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');54 sleep(0.30); 55 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 56 56 expect(element('li[title="userMenu"] span[data-ng-bind="displayName"]').text()).toBe('Menzo Windhouwer'); 57 57 }); 58 58 59 59 it('should jump to a different page when page path changes', function() { 60 browser().navigateTo('#/workspace /page/2/');61 expect(browser().location().path()).toBe('/workspace /page/2/');60 browser().navigateTo('#/workspace.html/page/2/'); 61 expect(browser().location().path()).toBe('/workspace.html/page/2/'); 62 62 }); 63 63 … … 68 68 alertOK(); 69 69 element('#login').click(); 70 sleep(0. 25);71 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');70 sleep(0.30); 71 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 72 72 expect(element('li[title="userMenu"] span[data-ng-bind="displayName"]').text()).toBe('guest'); 73 73 }); … … 78 78 beforeEach(function() { 79 79 //load the default initial page 80 browser().navigateTo('/schemacat/site/index.html#/workspace /page/1/?schemaIndex=0');81 }); 82 it('should redirect to "/workspace /page/1/?schemaIndex=0" when page is invalid (page="a")', function() {83 browser().navigateTo('#/workspace /page/a/?schemaIndex=0');84 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');85 }); 86 87 it('should redirect to "/workspace /page/1/?schemaIndex=0" when page is out of range (page=3)', function() {88 browser().navigateTo('#/workspace /page/3/?schemaIndex=0');89 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');90 }); 91 92 it('should redirect to "/workspace /page/1/?schemaIndex=0" when page is out of range (page<1)', function() {93 browser().navigateTo('#/workspace /page/0/?schemaIndex=0');94 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');95 }); 96 97 it('should redirect to "/workspace /page/1/?schemaIndex=0" when schemaIndex is invalid (schemaIndex="a")', function() {98 browser().navigateTo('#/workspace /page/1/?schemaIndex=a');99 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');100 }); 101 102 it('should redirect to "/workspace /page/1/?schemaIndex=0" when schemaIndex is out of range (schemaIndex>9)', function() {103 browser().navigateTo('#/workspace /page/1/?schemaIndex=10');104 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');105 }); 106 107 it('should redirect to "/workspace /page/1/?schemaIndex=0" when schemaIndex is out of range (schemaIndex=-1)', function() {108 browser().navigateTo('#/workspace /page/1/?schemaIndex=-1');109 expect(browser().location().url()).toBe('/workspace /page/1/?schemaIndex=0');80 browser().navigateTo('/schemacat/site/index.html#/workspace.html/page/1/?schemaIndex=0'); 81 }); 82 it('should redirect to "/workspace.html/page/1/?schemaIndex=0" when page is invalid (page="a")', function() { 83 browser().navigateTo('#/workspace.html/page/a/?schemaIndex=0'); 84 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 85 }); 86 87 it('should redirect to "/workspace.html/page/1/?schemaIndex=0" when page is out of range (page=3)', function() { 88 browser().navigateTo('#/workspace.html/page/3/?schemaIndex=0'); 89 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 90 }); 91 92 it('should redirect to "/workspace.html/page/1/?schemaIndex=0" when page is out of range (page<1)', function() { 93 browser().navigateTo('#/workspace.html/page/0/?schemaIndex=0'); 94 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 95 }); 96 97 it('should redirect to "/workspace.html/page/1/?schemaIndex=0" when schemaIndex is invalid (schemaIndex="a")', function() { 98 browser().navigateTo('#/workspace.html/page/1/?schemaIndex=a'); 99 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 100 }); 101 102 it('should redirect to "/workspace.html/page/1/?schemaIndex=0" when schemaIndex is out of range (schemaIndex>9)', function() { 103 browser().navigateTo('#/workspace.html/page/1/?schemaIndex=10'); 104 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 105 }); 106 107 it('should redirect to "/workspace.html/page/1/?schemaIndex=0" when schemaIndex is out of range (schemaIndex=-1)', function() { 108 browser().navigateTo('#/workspace.html/page/1/?schemaIndex=-1'); 109 expect(browser().location().url()).toBe('/workspace.html/page/1/?schemaIndex=0'); 110 110 }); 111 111 112 112 it('should show the schema with index=0 if schemaIndex is not supplied on the route', function() { 113 browser().navigateTo('#/workspace /page/1/');113 browser().navigateTo('#/workspace.html/page/1/'); 114 114 expect(element('#schema-name').html()).not().toEqual(''); 115 115 expect(element('#schema-name').css('visibility')).toBe('visible'); … … 121 121 beforeEach(function() { 122 122 //load the default initial page 123 browser().navigateTo('/schemacat/site/index.html#/workspace /page/1/?schemaIndex=0');123 browser().navigateTo('/schemacat/site/index.html#/workspace.html/page/1/?schemaIndex=0'); 124 124 }); 125 125 … … 141 141 142 142 it('should show the clicked schema and update route (not animated)', function() { 143 browser().navigateTo('/schemacat/site/index.html#/workspace /page/1/?schemaIndex=0&animationsDisabled');143 browser().navigateTo('/schemacat/site/index.html#/workspace.html/page/1/?schemaIndex=0&animationsDisabled'); 144 144 element('#workspace-main-row table tbody tr:eq(1)').click(); 145 145 … … 161 161 beforeEach(function() { 162 162 //load the default initial page 163 browser().navigateTo('/schemacat/site/index.html#/workspace /page/1/?schemaIndex=0');163 browser().navigateTo('/schemacat/site/index.html#/workspace.html/page/1/?schemaIndex=0'); 164 164 }); 165 165 it('should navigate to the schema file url', function() { … … 173 173 describe('Load page scenario (animated)', function() { 174 174 beforeEach(function() { 175 browser().navigateTo('/schemacat/site/index.html#/workspace /page/1/?schemaIndex=0');175 browser().navigateTo('/schemacat/site/index.html#/workspace.html/page/1/?schemaIndex=0'); 176 176 }); 177 177 178 178 it('should load the contact page and slide it from the right when url changes from the workspace page', function() { 179 browser().navigateTo('#/contact ');180 expect(browser().location().url()).toBe('/contact ');179 browser().navigateTo('#/contact.html'); 180 expect(browser().location().url()).toBe('/contact.html'); 181 181 expect(element('#contact').html()).not().toEqual(''); 182 182 expect(element('#contact').attr('class')).toContain('animated slideInRight'); … … 184 184 185 185 it('should load the contact page and slide it from the right when url changes from the about page', function() { 186 browser().navigateTo('#/about ');187 browser().navigateTo('#/contact ');188 expect(browser().location().url()).toBe('/contact ');186 browser().navigateTo('#/about.html'); 187 browser().navigateTo('#/contact.html'); 188 expect(browser().location().url()).toBe('/contact.html'); 189 189 expect(element('#contact').html()).not().toEqual(''); 190 190 expect(element('#contact').attr('class')).toContain('animated slideInRight'); … … 192 192 193 193 it('should load the contact page and fade it down when url changes from the accountDetails page', function() { 194 browser().navigateTo('#/accountDetails ');195 browser().navigateTo('#/contact ');196 expect(browser().location().url()).toBe('/contact ');194 browser().navigateTo('#/accountDetails.html'); 195 browser().navigateTo('#/contact.html'); 196 expect(browser().location().url()).toBe('/contact.html'); 197 197 expect(element('#contact').html()).not().toEqual(''); 198 198 expect(element('#contact').attr('class')).toContain('animated fadeInDown'); … … 200 200 201 201 it('should load the contact page and fade it down when reload is clicked', function() { 202 browser().navigateTo('#/contact ');202 browser().navigateTo('#/contact.html'); 203 203 browser().reload(); 204 expect(browser().location().url()).toBe('/contact ');204 expect(browser().location().url()).toBe('/contact.html'); 205 205 expect(element('#contact').html()).not().toEqual(''); 206 206 expect(element('#contact').attr('class')).toContain('animated fadeInDown'); … … 209 209 it('should load the contact page and fade it down when landing on this page from an external location', function() { 210 210 browser().navigateTo('/'); 211 browser().navigateTo('/schemacat/site/index.html#/contact ');212 expect(browser().location().url()).toBe('/contact ');211 browser().navigateTo('/schemacat/site/index.html#/contact.html'); 212 expect(browser().location().url()).toBe('/contact.html'); 213 213 expect(element('#contact').html()).not().toEqual(''); 214 214 expect(element('#contact').attr('class')).toContain('animated fadeInDown'); … … 217 217 describe('Load page scenario (not animated)', function() { 218 218 beforeEach(function() { 219 browser().navigateTo('/schemacat/site/index.html#/workspace /page/1/?schemaIndex=0&animationsDisabled');219 browser().navigateTo('/schemacat/site/index.html#/workspace.html/page/1/?schemaIndex=0&animationsDisabled'); 220 220 }); 221 221 222 222 it('should load the contact page without animations when url changes from the workspace page', function() { 223 browser().navigateTo('#/contact ?animationsDisabled');224 expect(browser().location().url()).toBe('/contact ?animationsDisabled');223 browser().navigateTo('#/contact.html?animationsDisabled'); 224 expect(browser().location().url()).toBe('/contact.html?animationsDisabled'); 225 225 expect(element('#contact').html()).not().toEqual(''); 226 226 expect(element('#contact').attr('class')).not().toContain('animated'); … … 228 228 229 229 it('should load the contact page without animations when url changes from the about page', function() { 230 browser().navigateTo('#/about ?animationsDisabled');231 browser().navigateTo('#/contact ?animationsDisabled');232 expect(browser().location().url()).toBe('/contact ?animationsDisabled');230 browser().navigateTo('#/about.html?animationsDisabled'); 231 browser().navigateTo('#/contact.html?animationsDisabled'); 232 expect(browser().location().url()).toBe('/contact.html?animationsDisabled'); 233 233 expect(element('#contact').html()).not().toEqual(''); 234 234 expect(element('#contact').attr('class')).not().toContain('animated'); … … 236 236 237 237 it('should load the contact page without animations when url changes from the accountDetails page', function() { 238 browser().navigateTo('#/accountDetails ?animationsDisabled');239 browser().navigateTo('#/contact ?animationsDisabled');240 expect(browser().location().url()).toBe('/contact ?animationsDisabled');238 browser().navigateTo('#/accountDetails.html?animationsDisabled'); 239 browser().navigateTo('#/contact.html?animationsDisabled'); 240 expect(browser().location().url()).toBe('/contact.html?animationsDisabled'); 241 241 expect(element('#contact').html()).not().toEqual(''); 242 242 expect(element('#contact').attr('class')).not().toContain('animated'); … … 244 244 245 245 it('should load the contact page without animations when reload is clicked', function() { 246 browser().navigateTo('#/contact ?animationsDisabled');246 browser().navigateTo('#/contact.html?animationsDisabled'); 247 247 browser().reload(); 248 expect(browser().location().url()).toBe('/contact ?animationsDisabled');248 expect(browser().location().url()).toBe('/contact.html?animationsDisabled'); 249 249 expect(element('#contact').html()).not().toEqual(''); 250 250 expect(element('#contact').attr('class')).not().toContain('animated'); … … 253 253 it('should load the contact page without animations when landing on this page from an external location', function() { 254 254 browser().navigateTo('/'); 255 browser().navigateTo('/schemacat/site/index.html#/contact ?animationsDisabled');256 expect(browser().location().url()).toBe('/contact ?animationsDisabled');255 browser().navigateTo('/schemacat/site/index.html#/contact.html?animationsDisabled'); 256 expect(browser().location().url()).toBe('/contact.html?animationsDisabled'); 257 257 expect(element('#contact').html()).not().toEqual(''); 258 258 expect(element('#contact').attr('class')).not().toContain('animated'); -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/test/karma/karma-e2e.conf.js
r4159 r4300 47 47 type: 'html', 48 48 dir: 'test/karma/test_out/coverage-e2e/' 49 } ,49 } 50 50 }); 51 51 }; -
cats/SCHEMAcat/trunk/urn.org.isocat.schemacat.site/site/test/karma/karma.config.js
r4246 r4300 15 15 // list of files / patterns to load in the browser 16 16 files: [ 17 'lib/AngularJS-1.2. 7/angular.js',18 'lib/AngularJS-1.2. 7/angular-route.js',19 'lib/AngularJS-1.2. 7/angular-resource.js',20 'lib/UI-bootstrap/ui-bootstrap-tpls-0. 8.0.js',21 'test/lib/AngularJS-1.2. 7/angular-mocks.js',17 'lib/AngularJS-1.2.8/angular.js', 18 'lib/AngularJS-1.2.8/angular-route.js', 19 'lib/AngularJS-1.2.8/angular-resource.js', 20 'lib/UI-bootstrap/ui-bootstrap-tpls-0.10.0.js', 21 'test/lib/AngularJS-1.2.8/angular-mocks.js', 22 22 'scripts/modules.js', 23 23 'scripts/controllers.js',
Note: See TracChangeset
for help on using the changeset viewer.