duplicate templates for translation
authorDobrica Pavlinusic <dpavlin@rot13.org>
Mon, 7 Jan 2013 23:44:56 +0000 (00:44 +0100)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Mon, 7 Jan 2013 23:46:02 +0000 (00:46 +0100)
angular-server.pl
app/en/index.html [new file with mode: 0644]
app/en/partials/.gitignore [new file with mode: 0644]
app/en/partials/confirmation.html [new file with mode: 0644]
app/en/partials/list.html [new file with mode: 0644]
app/en/partials/registration.html [new file with mode: 0644]

index d7e776b..560e2b5 100755 (executable)
@@ -51,7 +51,17 @@ sub _render_jsonp {
 
 get '/' => sub {
        my $self = shift;
-       $self->render_static('/index.html'); # main AngularJS application page
+       $self->render_text("...");
+};
+
+get '/en' => sub {
+       my $self = shift;
+       $self->render_static('/en/index.html'); # main AngularJS application page
+};
+
+get '/hr' => sub {
+       my $self = shift;
+       $self->render_static('/hr/index.html'); # main AngularJS application page
 };
 
 
diff --git a/app/en/index.html b/app/en/index.html
new file mode 100644 (file)
index 0000000..cfea368
--- /dev/null
@@ -0,0 +1,124 @@
+<!doctype html>
+<html lang="en" ng-app="myApp" xmlns:ng="http://angularjs.org">
+<head>
+  <meta charset="utf-8">
+  <title>DRZB conference</title>
+
+  <!-- Twtitter bootstrap -->
+  <link rel="stylesheet" href="../lib/bootstrap/css/bootstrap.min.css" />
+  <link rel="stylesheet" href="../lib/bootstrap/css/bootstrap-responsive.min.css" />
+
+  <link rel="stylesheet" href="../css/app.css"/>
+  <link rel="stylesheet" href="../css/drzb2013.css"/>
+
+    <!--[if lte IE 8]>
+      <script>
+        document.createElement('ng-include');
+        document.createElement('ng-pluralize');
+        document.createElement('ng-view');
+        // Optionally these for CSS
+        document.createElement('ng:include');
+        document.createElement('ng:pluralize');
+        document.createElement('ng:view');
+      </script>
+    <![endif]-->
+
+</head>
+<body>
+  <ul class="menu">
+    <li><a href="#/registration">registation</a></li>
+    <li><a href="#/list">list</a></li>
+  </ul>
+
+  <!--[if lt IE 8]>
+       <div style="color:red">
+               Your browser is too old to support this application.
+               <hr>
+               Vaš web preglednik je prestar da bi podržao ovu aplikaciju.
+               <hr>
+               Download:
+               <a href="http://www.google.com/search?q=download firefox">Firefox</a>
+               <a href="http://www.google.com/search?q=download google chrome">Chrome</a>
+               <a href="http://www.google.com/search?q=download ie8">Internet Explorer 8</a>
+       </div>
+  <![endif]-->
+
+<div id="wrapper">
+    <div id="header">
+        <a href="http://psihologija.ffzg.unizg.hr/drzb2013"><img src="http://psihologija.ffzg.unizg.hr/uploads/U5/ee/U5eerH9gxcbVpHDVcDqinA/drzb_header_v8.jpg" alt="Dani Ramira i Zorana Bujasa" class="float_left" /></a>
+    </div>
+    <div id="mainNav">
+       <div id="navigation">
+       <ul>
+       <li class="level"><a href="http://psihologija.ffzg.unizg.hr/drzb2013">Naslovnica</a></li>
+               <li>
+               <a class="level4" href="http://psihologija.ffzg.unizg.hr/drzb2013/sudjelovanje">Sudjelovanje</a>
+               <ul>
+
+                       <li>
+                               <a class="level5" href="http://psihologija.ffzg.unizg.hr/drzb2013/sudjelovanje/oblici">Oblici sudjelovanja</a>
+
+                       <li>
+                               <a class="level5" href="http://psihologija.ffzg.unizg.hr/drzb2013/sudjelovanje/pripremasazetaka">Priprema sažetaka</a>
+                       <li>
+                               <a class="level5" href="http://psihologija.ffzg.unizg.hr/drzb2013/sudjelovanje/prijava-izlaganja-i-registracija">Prijava izlaganja i registracija</a>
+                       <li>
+                               <a class="level5" href="http://psihologija.ffzg.unizg.hr/drzb2013/sudjelovanje/kotizacija">Kotizacija</a>
+                       <li>
+                               <a class="level5" href="http://psihologija.ffzg.unizg.hr/drzb2013/sudjelovanje/bodovanje">Bodovanje</a>
+
+               </ul>
+               </li>
+               <li>
+               <a class="level4" href="http://psihologija.ffzg.unizg.hr/drzb2013/prijave">Prijave</a>
+
+               <ul>
+                       <li>
+                               <a class="level5" href="http://psihologija.ffzg.unizg.hr/drzb2013/prijave/upute">Prijava izlaganja i registracija</a>
+
+                       <li>
+                               <a class="level5" href="http://psihologija.ffzg.unizg.hr/drzb2013/obrazac">Obrazac za prijavu</a>
+
+               </ul>
+               </li>
+       <!--
+               <li>
+                       <a class="level4" href="http://psihologija.ffzg.unizg.hr/drzb2013/program">Program</a>
+       -->
+               <li>
+                       <a class="level4" href="http://psihologija.ffzg.unizg.hr/drzb2013/organizacija">Organizacija</a>
+       <!--
+               <li>
+                       <a target="_blank" class="level4" href="http://psihologija.ffzg.unizg.hr/drzb2013/smjestaj">Smještaj</a>
+       -->
+               <li>
+                       <a class="level4" href="http://psihologija.ffzg.unizg.hr/psihofest2013">PsihoFest</a>
+       </ul>
+       </div>
+    </div>
+    <div id="mainNav_right">
+        <ul>
+            <li><a href="http://psihologija.ffzg.unizg.hr/drzb2013" class="active">Hrvatski</a></li>
+            <li><a href="http://psihologija.ffzg.unizg.hr/drzb2013-eng">English</a></li>
+        </ul>
+    </div>
+</div>
+<div>
+
+  <div class="container" ng-view></div>
+
+  <div>Angular seed app: v<span app-version></span></div>
+
+  <!-- In production use:
+  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.min.js"></script>
+  -->
+  <script src="../lib/angular/angular.js"></script>
+  <script src="../lib/angular/angular-resource.js"></script>
+  <script src="../js/app.js"></script>
+  <script src="../js/services.js"></script>
+  <script src="../js/controllers.js"></script>
+  <script src="../js/filters.js"></script>
+  <script src="../js/directives.js"></script>
+</body>
+</html>
diff --git a/app/en/partials/.gitignore b/app/en/partials/.gitignore
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/app/en/partials/confirmation.html b/app/en/partials/confirmation.html
new file mode 100644 (file)
index 0000000..2692558
--- /dev/null
@@ -0,0 +1,28 @@
+
+<div ng-controller="RegistrationCtrl" name="RegistrationForm">
+
+Registration for
+
+{{user.firstname}}
+{{user.surname}}
+<span ng-show="user.organization">
+from
+{{user.organization}}
+</span>
+is received, thanks.
+
+<pre>
+user={{user}}
+
+$routeParams={{$routeParams}}
+
+{{RegistrationForm.$valid}}
+{{RegistrationForm.$error}}
+
+location={{$location}}
+
+</pre>
+
+</div>
+
+
diff --git a/app/en/partials/list.html b/app/en/partials/list.html
new file mode 100644 (file)
index 0000000..b7f3989
--- /dev/null
@@ -0,0 +1,89 @@
+<div ng-show="! ready">
+Loading data...
+</div>
+
+
+<form ng-controller="ListCtrl" class="form-search" ng-show="ready">
+
+<h2>Odaberite tip registracije</h2>
+
+<label class="radio input-block-level" ng-repeat="type in RegistrationTypes" ng-switch on="type.code">
+<hr ng-switch-when="false">
+<span ng-switch-default ng-show="RegistrationTypeCount[type.code] > 0">
+ <tt>{{RegistrationTypeCount[type.code]}}</tt>
+ <input type="radio" name="search.registration_type" ng-model="search.registration_type" value="{{type.code}}" >
+ {{type.label}}
+ <i>{{type.description}}</i>
+</span>
+</label>
+
+<div>
+Search:
+<input class="search-query" ng-model="search.$">
+<a class="btn btn-invert" href="" ng-click="search.$ = ''">
+<i class="icon-remove"></i></a>
+<b>{{list.length}} results</b>
+<tt>{{search}}</tt>
+</div>
+
+<div ng-show="list.length">
+
+<h2>Prijavljenje registracije {{search.registration_type}}</h2>
+
+
+<ol>
+<li ng-repeat="registration in list">
+ <a href="#/registration/{{registration.id}}">edit</a>
+ {{registration.user.registration_type}}
+ <tt>{{registration._id}}</tt>
+
+       <p>
+        {{registration.user.firstname}}
+        {{registration.user.surname}}
+        <em>{{registration.user.organization}}</em>,
+        {{registration.user.city}},
+        <i>{{registration.user.country}}</i>
+        <tt>&lt;{{registration.user.email}}&gt;</tt>
+       </p>
+
+<p ng-show="registration.user.registration_type == 'symposium'">
+{{registration.symposium.title}}
+ <p class="abstract">
+ {{registration.symposium.abstract}}
+ </p>
+</p>
+
+<h3 ng-show="registration.work.title">
+{{registration.work.title}}
+</h3>
+
+<p ng-repeat="author in registration.work.persons" >
+ {{author.firstname}}
+ {{author.surname}},
+ <em>{{author.organization}}</em>
+ <tt>&lt;{{author.email}}&gt;</tt>
+</p>
+
+<p class="abstract">{{registration.work.abstract}}</p>
+
+<ol ng-show="registration.user.registration_type == 'symposium'">
+ <li ng-repeat="work in registration.work.symposium_works">
+  <h4>{{work.title}}</h4>
+
+       <p ng-repeat="author in work.persons" >
+        {{author.firstname}}
+        {{author.surname}},
+        <em>{{author.organization}}</em>
+        <tt>&lt;{{author.email}}&gt;</tt>
+       </p>
+
+    <p class="abstract">{{work.abstract}}</p>
+
+ </li>
+
+</ol>
+
+</div><!-- ng-show="list.length"-->
+
+</form>
+
diff --git a/app/en/partials/registration.html b/app/en/partials/registration.html
new file mode 100644 (file)
index 0000000..bf5c7ad
--- /dev/null
@@ -0,0 +1,173 @@
+<h1>Registracija i prijavljivanje izlaganja</h1>
+
+<p>
+Svi sudionici skupa, bez obzira na to jesu li izlagači, suautori ili slušači, moraju se registrirati kroz sustav elektroničke prijave.
+</p>
+
+<form ng-controller="RegistrationCtrl" name="RegistrationForm">
+
+<h2>Odaberite tip registracije</h2>
+
+<label class="radio"><input type="radio" ng-model="user.registration_type" value="lecture" >Prijava usmenog izlaganja - <i>popunjava prvi autor, odnosno osoba koja će izložiti rad. Ostali autori trebaju se samo registrirati.</i></label>
+<label class="radio"><input type="radio" ng-model="user.registration_type" value="poster" >Prijava poster prezentacije - <i>popunjava prvi autor, ondnosno osoba koja će izložiti rad. Ostali autori trebaju se samo registrirati.</i></label>
+<label class="radio"><input type="radio" ng-model="user.registration_type" value="symposium" >Prijava simpozija - <i>popunjava organizator simpozija, upisuje sažetke svih radova. Autori radova na simpoziju trebaju se samo registrirati.</i></label>
+<label class="radio"><input type="radio" ng-model="user.registration_type" value="round" >Prijava okruglog stola - <i>popunjava organizator okruglog stola. Sudionici se trebaju registrirati.</i></label>
+<hr />
+<label class="radio"><input type="radio" ng-model="user.registration_type" value="participant" >Registracija - <i>popunjavaju slušači i suatori, te autori i suatori radova na simpoziju i sudionici okruglog stola.</i></label>
+<label class="radio"><input type="radio" ng-model="user.registration_type" value="accomp" >Registracija za osobe u pratnji.</label>
+
+<fieldset ng-show="user.registration_type">
+
+<legend>Registracija - kontakt podaci</legend>
+
+<div class="controls controls-row">
+ <input class="my-input span6" ng-model="user.firstname" placeholder="Ime" ng-required="true" />
+ <input class="my-input span6" ng-model="user.surname"   placeholder="Prezime" ng-required="true" />
+</div>
+
+<div class="controls controls-row">
+ <input class="my-input span12" ng-model="user.organization" placeholder="Ustanova" >
+</div>
+
+<div class="controls controls-row">
+ <input class="my-input span12" ng-model="user.address" placeholder="Adresa" >
+</div>
+
+<div class="controls controls-row">
+ <input class="my-input span4" ng-model="user.city" placeholder="Grad" ng-required="true" >
+ <input class="my-input span4" ng-model="user.zip_code" placeholder="Poštanski br." >
+ <input class="my-input span4" ng-model="user.country" placeholder="Zemlja" >
+</div>
+
+<div class="controls controls-row">
+ <input class="my-input span6" ng-model="user.email" type="email" placeholder="E-pošta" ng-required="true" />
+ <input class="my-input span6" ng-model="user.phone" placeholder="Tel. broj" />
+</div>
+
+<label class="checkbox">
+ <input ng-model="user.student" type="checkbox" ng-change="change_student()">
+ Označite ako ste student.
+</label>
+
+<div ng-show="! user.student">
+
+<label class="checkbox">
+ <input ng-model="user.hpd_member" type="checkbox">
+ Označite ako ste član HPD-a
+</label>
+
+<label class="checkbox">
+<input type="checkbox" ng-model="user.r1.required">
+Trebam R-1 račun
+</label>
+
+<div ng-show="user.r1.required">
+<legend>
+Organizacija koja uplaćuje R-1 račun
+</legend>
+
+<input class="my-input span12" ng-model="user.r1.organization" ng-required="user.r1.required" placeholder="Naziv">
+<input class="my-input span12" ng-model="user.r1.address" ng-required="user.r1.required" placeholder="Adresa">
+<input class="my-input span5" ng-model="user.r1.OIB" ng-required="user.r1.required" placeholder="OIB">
+
+</div><!-- r1.required -->
+</div><!-- ! user.student -->
+
+<legend>
+Hoćete li biti na domjenku dobrodošlice
+</legend>
+<label class="radio"><input type="radio" ng-model="user.reception" value="yes" ng-required="true">Da</label>
+<label class="radio"><input type="radio" ng-model="user.reception" value="no"  ng-required="true">Ne</label>
+
+<div ng-show="! user.student">
+
+<legend>
+Hoćete li biti na zajedničkoj večeri?
+</legend>
+Večera je uključena u kotizaciju.
+<label class="radio"><input type="radio" ng-model="user.dinner" value="yes" ng-required="! user.student && ! user.dinner">Da</label>
+<label class="radio"><input type="radio" ng-model="user.dinner" value="no"  ng-required="! user.student && ! user.dinner">Ne</label>
+
+
+</div><!-- not student -->
+
+</fieldset><!-- selected registration_type -->
+
+
+<div ng-show="has_work">
+
+<div ng-switch on="work.type">
+<h2 ng-switch-when="lecture">Prijava predavanja</h2>
+<h2 ng-switch-when="poster">Prijava postera</h2>
+<h2 ng-switch-when="symposium">Simpozij</h2>
+<h2 ng-switch-when="round">Prijava teme okruglog stola</h2>
+<b ng-switch-default>Has unknown work type {{work.type}} to submit</b>
+</div>
+
+<input class="my-input input-block-level" ng-model="work.title" placeholder="Naslov" ng-required="has_work" >
+<h3 ng-show="user.registration_type == 'symposium'">Organizator simpozija</h3>
+<div ng-repeat="person in work.persons" class="controls controls-row">
+       <input class="span2 my-input" ng-model="person.firstname" placeholder="Ime" ng-required="has_work" />
+       <input class="span2 my-input" ng-model="person.surname"   placeholder="Prezime" ng-required="has_work" />
+       <input class="span4 my-input" ng-model="person.organization" placeholder="Ustanova" >
+       <input class="span2 my-input" ng-model="person.email" type="email" placeholder="E-mail" ng-required="has_work" />
+       <a class="btn btn-danger" href="" ng-click="removePerson(work.persons,person)">obriši</a>
+</div>
+<a class="btn" href="" ng-click="addPerson(work.persons)">dodaj osobu</a>
+<div class="controls">
+ <label>
+ Sažetak ({{work.abstract.length || 0}}  od maks. 2000 znakova s razmacima)
+ </label>
+ <textarea class="span12" ng-model="work.abstract" ng-maxlength="2000" rows="10" cols="80" ng-required="has_work" ></textarea>
+</div>
+
+</div><!-- has_work -->
+
+<div ng-show="user.registration_type == 'symposium'">
+
+<h2>Prijava radova unutar simpozija {{work.title}}</h2>
+
+<div ng-repeat="work in work.symposium_works">
+
+<h3>{{$index + 1}}. rad na simpoziju</h3>
+
+<input class="my-input input-block-level" ng-model="work.title" placeholder="Naslov" ng-required="has_work" >
+<div ng-repeat="person in work.persons" class="controls controls-row">
+       <input class="span2 my-input" ng-model="person.firstname" placeholder="Ime" ng-required="has_work" />
+       <input class="span2 my-input" ng-model="person.surname"   placeholder="Prezime" ng-required="has_work" />
+       <input class="span4 my-input" ng-model="person.organization" placeholder="Ustanova" >
+       <input class="span2 my-input" ng-model="person.email" type="email" placeholder="E-mail" ng-required="has_work" />
+       <a class="btn btn-danger" href="" ng-click="removePerson(work.persons,person)">obriši</a>
+</div>
+<a class="btn" href="" ng-click="addPerson(work.persons)">dodaj osobu</a>
+<div class="controls">
+ <label>
+ Sažetak ({{work.abstract.length || 0}}  od maks. 2000 znakova s razmacima)
+ </label>
+ <textarea class="span12" ng-model="work.abstract" ng-maxlength="2000" rows="10" cols="80" ng-required="has_work" ></textarea>
+</div>
+
+</div><!-- ng-repeat symposium_works  -->
+
+<a class="btn" href="" ng-click="add_symposium_work(work.symposium_works)">Dodaj još jedan rad na simpoziju</a>
+
+</div><!-- user.registration_type == 'symposium' -->
+
+<div class="form-actions">
+ <button class="btn btn-primary" ng-click="update(registration)" ng-show="RegistrationForm.$valid">Pošalji</button>
+<p class="left" style="color: red" ng-show="! RegistrationForm.$valid">
+Molimo ispunite sva obavezna polja označena crvenim okvirom.
+</p>
+</div>
+
+
+<pre>
+{{RegistrationForm.$valid}}
+{{RegistrationForm.$error}}
+
+location={{$location.path()}}
+
+</pre>
+
+</form>
+