Changeset 4298


Ignore:
Timestamp:
01/20/14 17:11:00 (10 years ago)
Author:
andmor
Message:

URL scheme reviewed.
Updated SCHEMAcat CSS and applied styles for Bootstrap 3 compatibility.
Updated SCHEMAcat minified files.
Updated AngularJS to 1.2.8
Updated ui-bootstrap to 0.10.0

Location:
cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site
Files:
15 added
4 deleted
17 edited

Legend:

Unmodified
Added
Removed
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/completeuserdetails.html

    r4251 r4298  
    1111
    1212        <!-- Le styles -->
    13         <link href="./lib/bootstrap-3.0.3/css/bootstrap.css" rel="stylesheet" />
    14         <link href="./styles/SCHEMAcat.css" rel="stylesheet" />
     13        <link href="./lib/bootstrap-3.0.3/css/bootstrap.min.css" rel="stylesheet" />
     14        <link href="./styles/SCHEMAcat.min.css" rel="stylesheet" />
    1515
    1616    </head>
     
    3333                                    <li class="divider"></li>
    3434                                    <li data-ng-class="{ active: isActive('/workspace')}">
    35                                         <a href="#/workspace/page/1/?schemaIndex=0&amp;{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}"><i class="glyphicon glyphicon-home glyphicon-white"><!--i--></i> Home</a>
     35                                        <a href="#/workspace.html/page/1/?schemaIndex=0&amp;{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}"><i class="glyphicon glyphicon-home glyphicon-white"><!--i--></i> Home</a>
    3636                                    </li>
    3737                                    <li data-ng-class="{ active: isActive('/about')}">
    38                                         <a href="#/about?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}">About</a>
     38                                        <a href="#/about.html?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}">About</a>
    3939                                    </li>
    4040                                    <li data-ng-class="{ active: isActive('/contact')}">
    41                                         <a href="#/contact?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}">Contact</a>
     41                                        <a href="#/contact.html?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}">Contact</a>
    4242                                    </li>
    4343                                </ul>
     
    6161        </div>
    6262        <div id="footer">
    63             <div style="padding:0 15px;">
     63            <div class="schemacat-fluid-container">
    6464                <p>&#169; The Language Archive 2013</p>
    6565            </div>
     
    6969        <!-- Placed at the end of the document so the pages load faster -->
    7070        <!--<script src="./lib/jQuery/1.10.2/jquery-1.10.2.min.js"></script>-->
    71         <script src="./lib/AngularJS-1.2.7/angular.min.js"></script>
    72         <script src="./lib/AngularJS-1.2.7/angular-resource.min.js"></script>
    73         <script src="./lib/AngularJS-1.2.7/angular-route.min.js"></script>
    74         <script src="./lib/UI-bootstrap/ui-bootstrap-tpls-0.9.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>
    7575        <script src="./scripts/modules.min.js"></script>
    7676        <script src="./scripts/controllers.min.js"></script>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/index.html

    r4251 r4298  
    1111
    1212        <!-- Le styles -->
    13         <link href="./lib/bootstrap-3.0.3/css/bootstrap.css" rel="stylesheet" />
     13        <link href="./lib/bootstrap-3.0.3/css/bootstrap.min.css" rel="stylesheet" />
    1414        <link href="./lib/animate_css/animate.min.css" rel="stylesheet" />
    15         <link href="./styles/SCHEMAcat.css" rel="stylesheet" />
     15        <link href="./styles/SCHEMAcat.min.css" rel="stylesheet" />
    1616        <link href="./lib/pretify/prettify-bootstrap-light.css" type="text/css" rel="stylesheet" />
    1717
     
    2929                                    <span class="icon-bar"></span>
    3030                                </button>
    31                                 <a class="navbar-brand" href="/schemacat/site/">SCHEMAcat</a>
     31                                <a class="navbar-brand" href="/schemacat/site/index.html">SCHEMAcat</a>
    3232                            </div>
    3333                            <div class="collapse navbar-collapse" data-collapse="topMenuCollapsed">
     
    3535                                    <li class="divider"></li>
    3636                                    <li data-ng-class="{ active: isActive('/workspace')}">
    37                                         <a href="#/workspace/page/1/?schemaIndex=0&amp;{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}"><i class="glyphicon glyphicon-home glyphicon-white"><!--i--></i> Home</a>
     37                                        <a href="#/workspace.html/page/1/?schemaIndex=0&amp;{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}"><i class="glyphicon glyphicon-home glyphicon-white"><!--i--></i> Home</a>
    3838                                    </li>
    3939                                    <li data-ng-class="{ active: isActive('/about')}">
    40                                         <a href="#/about?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}">About</a>
     40                                        <a href="#/about.html?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}">About</a>
    4141                                    </li>
    4242                                    <li data-ng-class="{ active: isActive('/contact')}">
    43                                         <a href="#/contact?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}">Contact</a>
     43                                        <a href="#/contact.html?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}">Contact</a>
    4444                                    </li>
    4545                                </ul>
     
    5656                                                    </li>
    5757                                                    <li>
    58                                                         <a class="cursor-pointer" href="#/accountDetails?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}" data-ng-if="displayName != 'guest'">
     58                                                        <a class="cursor-pointer" href="#/accountDetails.html?{{animationsUrlPart()}}&amp;{{topMenuExpandedUrlPart()}}" data-ng-if="displayName != 'guest'">
    5959                                                            <span>Account details</span>
    6060                                                        </a>
     
    8787        </div>
    8888        <div id="footer">
    89             <div style="padding:0 15px;">
     89            <div class="schemacat-fluid-container">
    9090                <p>&#169; The Language Archive 2013</p>
    9191            </div>
     
    9696        <!-- Placed at the end of the document so the pages load faster -->
    9797        <!--<script src="./lib/jQuery/1.10.2/jquery-1.10.2.min.js"></script>-->
    98         <script src="./lib/AngularJS-1.2.7/angular.min.js"></script>
    99         <script src="./lib/AngularJS-1.2.7/angular-resource.min.js"></script>
    100         <script src="./lib/AngularJS-1.2.7/angular-route.min.js"></script>
    101         <script src="./lib/UI-bootstrap/ui-bootstrap-tpls-0.9.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>
    102102        <script src="./lib/pretify/prettify.js"></script>
    103103        <script src="./scripts/modules.min.js"></script>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/partials/about.html

    r4251 r4298  
    1 <div id="about" data-ng-class="animateInOut" style="padding:0 15px;">
     1<div id="about" data-ng-class="animateInOut" class="schemacat-fluid-container">
    22    <div class="row">
    3         <div class="col-md-12 container">
     3        <div class="col-md-12">
    44            <div class="jumbotron">
    55                <div class="row">
     
    1515                </div>
    1616                <div>
    17                     <div class="row container">
     17                    <div class="row schemacat-fluid-container">
    1818                        <div class="col-md-12">
    1919                            <br/>
    2020                            <h4>Alpha notice!</h4>
    21                             <div class="container">
     21                            <div class="schemacat-fluid-container">
    2222                                <p>SCHEMAcat is in its early stages of development. This means that
    2323                                    anything can change at any time. Its also only available on a test
     
    4141                            <h4>Implementation info:</h4>
    4242                            <div>
    43                                 <div class="row">
     43                                <div class="row schemacat-fluid-container">
    4444                                    <div class="col-md-9">
    4545                                        <p>SCHEMAcat is developed by The Languague Archive at the Max
     
    8989                            <br/>
    9090                            <h4>Change log</h4>
    91                             <div class="container">
     91                            <div class="schemacat-fluid-container">
    9292                                <h5>[2013-11-08]</h5>
    9393                                <ol>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/partials/accountDetails.html

    r4238 r4298  
    1 <div id="accountDetails" data-ng-class="animateAccountDetails" class="container-fluid">
    2     <div class="row-fluid">
    3         <div class="span12 jumbotron">
    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 &amp;&amp; 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 &gt; 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 &amp;&amp; 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 &amp;&amp; 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 &amp;&amp; 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 &amp;&amp; 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>
    17121                            </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 &amp;&amp; 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 &gt; 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 &amp;&amp; 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 &amp;&amp; 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 &amp;&amp; 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 &amp;&amp; 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>
    108125            </div>
    109126        </div>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/partials/contact.html

    r4251 r4298  
    1 <div id="contact" data-ng-class="animateInOut" style="padding:0 15px;">
     1<div id="contact" data-ng-class="animateInOut" class="schemacat-fluid-container">
    22    <div class="row">
    3         <div class="col-md-12 container">
     3        <div class="col-md-12">
    44            <div class="jumbotron">
    55                <div>
    66                    <h3>Contact</h3>
    77                </div>
    8                 <div class="container">
     8                <div class="schemacat-fluid-container">
    99                    <div class="row">
    1010                        <div class="col-md-9">
    1111                            <p>For any additional information feel free to contact:</p>
    1212                            <address>
    13                                 <div class="container"><a href="mailto:isocat@mpi.nl">isocat@mpi.nl</a></div>
     13                                <div class="schemacat-fluid-container"><a href="mailto:isocat@mpi.nl">isocat@mpi.nl</a></div>
    1414                                <br/><br/>
    1515                                <p>And visit us at:</p>
    16                                 <div class="container"><a href="http://tla.mpi.nl">tla.mpi.nl</a></div>
     16                                <div class="schemacat-fluid-container"><a href="http://tla.mpi.nl">tla.mpi.nl</a></div>
    1717                                <br/>
    1818                            </address>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/partials/fillDetailsModal.html

    r4251 r4298  
    1616                                <input name="displayNameInput" class="form-control" type="text" required="required" data-ng-model="displayNameInput.text"/>
    1717                            </div>
    18                             <div class="col-md-8 col-md-offset-4 has-error" data-ng-if="userDetailsForm.displayNameInput.$dirty &amp;&amp; userDetailsForm.displayNameInput.$invalid">
    19                                 <small class="help-block" data-ng-if="userDetailsForm.displayNameInput.$error.required">
     18                            <div class="col-md-8 col-md-offset-4 has-error small" data-ng-if="userDetailsForm.displayNameInput.$dirty &amp;&amp; userDetailsForm.displayNameInput.$invalid">
     19                                <span class="help-block" data-ng-if="userDetailsForm.displayNameInput.$error.required">
    2020                                    Your display name cannot be empty.
    21                                 </small>
     21                                </span>
    2222                            </div>
    2323                        </div>
     
    2727                                <input name="emailInput" class="col-md-8 form-control" type="email" required="required" data-ng-model="emailInput.text"/>
    2828                            </div>
    29                             <div class="col-md-8 col-md-offset-4 has-error" data-ng-if="userDetailsForm.emailInput.$dirty &amp;&amp; userDetailsForm.emailInput.$invalid">
    30                                 <small class="help-block" data-ng-if="userDetailsForm.emailInput.$error.required">
     29                            <div class="col-md-8 col-md-offset-4 has-error small" data-ng-if="userDetailsForm.emailInput.$dirty &amp;&amp; userDetailsForm.emailInput.$invalid">
     30                                <span class="help-block" data-ng-if="userDetailsForm.emailInput.$error.required">
    3131                                    Your contact email cannot be empty.
    32                                 </small>
     32                                </span>
    3333                            </div>
    34                             <div class="col-md-8 col-md-offset-4 has-error" data-ng-if="userDetailsForm.emailInput.$dirty &amp;&amp; userDetailsForm.emailInput.$invalid">
    35                                 <small class="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 &amp;&amp; userDetailsForm.emailInput.$invalid">
     35                                <span class="help-block" data-ng-if="userDetailsForm.emailInput.$error.email">
    3636                                    Please provide a vaid email address.
    37                                 </small>
     37                                </span>
    3838                            </div>
    3939                        </div>
     
    4545                        <img src="images/spinner.gif" alt="Loading..."/>
    4646                    </div>
    47                     <span class="form-group has-error" data-ng-if="ajaxError">
    48                         <small class="help-block">
     47                    <span class="form-group has-error small" data-ng-if="ajaxError">
     48                        <span class="help-block">
    4949                            <div>The server responded with an error. Please try again!</div>
    5050                            <br/>
    5151                            <div>If the problem persists contact us at:</div>
    5252                            <div><a href="mailto:tla@mpi.nl">isocat@mpi.nl</a></div>
    53                         </small>
     53                        </span>
    5454                    </span>
    5555                </div>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/partials/loginModal.html

    r4251 r4298  
    1212                    <input name="loginNameInput" type="text" class="form-control" required="required" data-ng-model="loginNameInput.text"/>
    1313                </div>
    14                 <div class="col-sm-10 col-sm-offset-2 has-error" data-ng-if="loginForm.loginNameInput.$dirty &amp;&amp; loginForm.loginNameInput.$invalid">
    15                     <small class="help-block" data-ng-if="loginForm.loginNameInput.$error.required">
     14                <div class="col-sm-10 col-sm-offset-2 has-error small" data-ng-if="loginForm.loginNameInput.$dirty &amp;&amp; loginForm.loginNameInput.$invalid">
     15                    <span class="help-block" data-ng-if="loginForm.loginNameInput.$error.required">
    1616                        Your Shibboleth principal cannot be empty.
    17                     </small>
     17                    </span>
    1818                </div>
    1919            </div>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/partials/workspace.html

    r4238 r4298  
    1 <div id="workspace" data-ng-class="animateWorkspacePageChange" style="padding:0 15px;">
     1<div id="workspace" data-ng-class="animateWorkspacePageChange" class="schemacat-fluid-container">
    22    <div id="workspace-main-row" class="row">
    3         <div class="col-md-3 workspace-master-div">
     3        <div class="col-md-3">
    44            <div class="sidebar-nav-fixed">
    55                <!--<form class="form-search">
     
    3434            </div>
    3535        </div>
    36         <div class="col-md-9 workspace-master-div container">
     36        <div class="col-md-9">
    3737            <div id="schema-background" class="jumbotron">
    38                 <div id="schema-div" data-ng-class="animateSchemaChange">
     38                <div id="schema-div" data-ng-class="animateSchemaChange" class="small">
    3939                    <h1 id="schema-name" data-ng-bind="selectedSchema['sc:schema']['sc:name']"></h1>
    4040                    <p data-ng-if="selectedSchema['sc:schema']['sc:description'] != '[object Object]'" data-ng-bind="selectedSchema['sc:schema']['sc:description']"/>
     
    5858                        <div class="col-md-2">
    5959                            <h4>License:</h4>
    60                             <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>">
    61                                 <small><span data-ng-bind="selectedSchema['sc:schema']['sc:license']['xml:id']"/></small>
    62                             </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>                           
    6365                            <p data-ng-if="selectedSchema['sc:schema']['sc:license'] == undefined">--</p>
    6466                        </div>
     
    8991                                    <pre><code data-ng-class="prettify" data-ng-bind="schemaFileContent"></code></pre>
    9092                                </div>
    91                                 <div class="control-group error" data-ng-show="showFileAjaxError">
     93                                <div class="has-error small" data-ng-show="showFileAjaxError">
    9294                                    <small class="help-block">
    9395                                        <div>The server responded with an error. Please try again!</div>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/scripts/controllers.js

    r4200 r4298  
    5959            $location.search().schemaIndex = '0';
    6060            delete $location.search().show;
    61             $location.path('workspace/page/' + page + '/').search($location.search());
     61            $location.path('workspace.html/page/' + page + '/').search($location.search());
    6262        };
    6363
     
    344344
    345345        $scope.isActive = function(viewLocation) {
    346             if (viewLocation === '/workspace' && $location.path().indexOf('/workspace/') !== -1)
     346            if (viewLocation === '/workspace.html' && $location.path().indexOf('/workspace.html/') !== -1)
    347347                return true;
    348348            return viewLocation === $location.path();
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/scripts/controllers.min.js

    r4200 r4298  
    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/branches/urn.org.isocat.schemacat.site/site/scripts/modules.js

    r4127 r4298  
    88        var loadDelay = 250; //ms
    99        $routeProvider
    10             .when('/workspace/page/:pageNumber/', {
     10            .when('/workspace.html/page/:pageNumber/', {
    1111                controller: 'WorkspaceCtrl',
    1212                templateUrl: 'partials/workspace.html',
     
    3737                }
    3838            })
    39             .when('/about', {
     39            .when('/about.html', {
    4040                controller: 'AboutPageCtrl',
    4141                templateUrl: 'partials/about.html',
     
    5454                }
    5555            })
    56             .when('/contact', {
     56            .when('/contact.html', {
    5757                controller: 'ContactPageCtrl',
    5858                templateUrl: 'partials/contact.html',
     
    7171                }
    7272            })
    73             .when('/accountDetails', {
     73            .when('/accountDetails.html', {
    7474                controller: 'AccountDetailsPageCtrl',
    7575                templateUrl: 'partials/accountDetails.html',
     
    9090            .otherwise({
    9191                redirectTo: function(routeParams, path, search) {
    92                     return '/workspace/page/1/?schemaIndex=0';
     92                    return '/workspace.html/page/1/?schemaIndex=0';
    9393                }
    9494            });
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/scripts/modules.min.js

    r4126 r4298  
    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/branches/urn.org.isocat.schemacat.site/site/styles/SCHEMAcat.css

    r4251 r4298  
    101101}
    102102
    103 /*.navbar-nav > li > a,
    104 .navbar-header > a {
    105     padding-top:10px !important;
    106     padding-bottom:10px !important;
     103.schemacat-fluid-container {
     104  padding-left: 15px;
     105  padding-right: 15px;
     106  margin-left: auto;
     107  margin-right: auto;
    107108}
    108 .navbar-fixed-top {
    109     min-height:40px !important;
    110     height: 35px
    111 }*/
     109
     110.schemacat-fluid-container .jumbotron {
     111    border-radius: 6px;
     112}
     113
     114.modal {
     115    overflow-y: auto;
     116}
     117
     118body.modal-open {
     119    overflow: scroll;
     120}
    112121
    113122/* Lastly, apply responsive CSS fixes as necessary */
     
    120129    }
    121130   
    122     .navbar-fixed-top
    123     {
     131    .navbar-fixed-top {
    124132        position: relative;
    125133        top: auto;
     
    132140
    133141@media (max-width: 1009px) {
    134 /* override the class definition for the first level divs of the workspace
    135    so that they stack instead of overlaping when the media width is too low */
    136   #workspace-main-row .workspace-master-div {
    137     display: block;
    138     float: none;
    139     width: 100%;
    140     margin-left: 0;
    141     -webkit-box-sizing: border-box;
    142        -moz-box-sizing: border-box;
    143             box-sizing: border-box;
    144   }
    145142  .sidebar-nav-fixed {
    146143      position:static;
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/styles/SCHEMAcat.min.css

    r4126 r4298  
    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}}
     1body,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/branches/urn.org.isocat.schemacat.site/site/test/e2e/runner.html

    r4238 r4298  
    1 <!doctype html>
    2 <html lang="en">
     1<!DOCTYPE html>
     2<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
    33  <head>
    44    <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>
    88    <script src="scenarios.js"></script>
    99  </head>
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/test/e2e/scenarios.js

    r4191 r4298  
    66                afterEach(function() {
    77                                //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() {
    1212                        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() {
    1717                        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');
    3939                });
    4040
    4141                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');
    4343                        expect(browser().location().search()).toEqual({schemaIndex: '1'});
    44                         browser().navigateTo('#/workspace/page/1/?schemaIndex=2');
     44                        browser().navigateTo('#/workspace.html/page/1/?schemaIndex=2');
    4545                        expect(browser().location().search()).toEqual({schemaIndex: '2'});
    4646                });
     
    5252                        alertOK();
    5353                        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');
    5656                        expect(element('li[title="userMenu"] span[data-ng-bind="displayName"]').text()).toBe('Menzo Windhouwer');
    5757                });
    5858
    5959                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/');
    6262                });
    6363
     
    6868                        alertOK();
    6969                        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');
    7272                        expect(element('li[title="userMenu"] span[data-ng-bind="displayName"]').text()).toBe('guest');
    7373                });
     
    7878                        beforeEach(function() {
    7979                                //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');
    110110                        });
    111111
    112112                        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/');
    114114                                expect(element('#schema-name').html()).not().toEqual('');
    115115                                expect(element('#schema-name').css('visibility')).toBe('visible');
     
    121121                        beforeEach(function() {
    122122                                //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');
    124124                        });
    125125
     
    141141
    142142                        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');
    144144                                element('#workspace-main-row table tbody tr:eq(1)').click();
    145145
     
    161161                        beforeEach(function() {
    162162                                //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');
    164164                        });
    165165                        it('should navigate to the schema file url', function() {
     
    173173                describe('Load page scenario (animated)', function() {
    174174                        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');
    176176                        });
    177177
    178178                        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');
    181181                                expect(element('#contact').html()).not().toEqual('');
    182182                                expect(element('#contact').attr('class')).toContain('animated slideInRight');
     
    184184
    185185                        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');
    189189                                expect(element('#contact').html()).not().toEqual('');
    190190                                expect(element('#contact').attr('class')).toContain('animated slideInRight');
     
    192192
    193193                        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');
    197197                                expect(element('#contact').html()).not().toEqual('');
    198198                                expect(element('#contact').attr('class')).toContain('animated fadeInDown');
     
    200200
    201201                        it('should load the contact page and fade it down when reload is clicked', function() {
    202                                 browser().navigateTo('#/contact');
     202                                browser().navigateTo('#/contact.html');
    203203                                browser().reload();
    204                                 expect(browser().location().url()).toBe('/contact');
     204                                expect(browser().location().url()).toBe('/contact.html');
    205205                                expect(element('#contact').html()).not().toEqual('');
    206206                                expect(element('#contact').attr('class')).toContain('animated fadeInDown');
     
    209209                        it('should load the contact page and fade it down when landing on this page from an external location', function() {
    210210                                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');
    213213                                expect(element('#contact').html()).not().toEqual('');
    214214                                expect(element('#contact').attr('class')).toContain('animated fadeInDown');
     
    217217                describe('Load page scenario (not animated)', function() {
    218218                        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');
    220220                        });
    221221
    222222                        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');
    225225                                expect(element('#contact').html()).not().toEqual('');
    226226                                expect(element('#contact').attr('class')).not().toContain('animated');
     
    228228
    229229                        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');
    233233                                expect(element('#contact').html()).not().toEqual('');
    234234                                expect(element('#contact').attr('class')).not().toContain('animated');
     
    236236
    237237                        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');
    241241                                expect(element('#contact').html()).not().toEqual('');
    242242                                expect(element('#contact').attr('class')).not().toContain('animated');
     
    244244
    245245                        it('should load the contact page without animations when reload is clicked', function() {
    246                                 browser().navigateTo('#/contact?animationsDisabled');
     246                                browser().navigateTo('#/contact.html?animationsDisabled');
    247247                                browser().reload();
    248                                 expect(browser().location().url()).toBe('/contact?animationsDisabled');
     248                                expect(browser().location().url()).toBe('/contact.html?animationsDisabled');
    249249                                expect(element('#contact').html()).not().toEqual('');
    250250                                expect(element('#contact').attr('class')).not().toContain('animated');
     
    253253                        it('should load the contact page without animations when landing on this page from an external location', function() {
    254254                                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');
    257257                                expect(element('#contact').html()).not().toEqual('');
    258258                                expect(element('#contact').attr('class')).not().toContain('animated');
  • cats/SCHEMAcat/branches/urn.org.isocat.schemacat.site/site/test/karma/karma.config.js

    r4238 r4298  
    1515    // list of files / patterns to load in the browser
    1616    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.7.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',
    2222      'scripts/modules.js',
    2323      'scripts/controllers.js',
Note: See TracChangeset for help on using the changeset viewer.