Commit 80c3bf320ffae39e6cbb806c35fbdf7f0d19c6fe

Authored by jonathan.brilhante
1 parent ee5d4644
Exists in coppe

Alterando WikilibrasV2 para adicionar arquivos de imagem e vídeo

Showing 533 changed files with 1 additions and 9410 deletions   Show diff stats

Too many changes.

To preserve performance only 100 of 533 files displayed.

docker-compose.yml
@@ -26,11 +26,10 @@ services: @@ -26,11 +26,10 @@ services:
26 - /home/vlibras/container/wikilibrasdbapi/uploads/ 26 - /home/vlibras/container/wikilibrasdbapi/uploads/
27 - /var/log/apache2/ 27 - /var/log/apache2/
28 - /var/lib/mongodb/ 28 - /var/lib/mongodb/
29 - - /home/vlibras/container/wikilibrasV2/view/videos/  
30 - /home/vlibras/container/corretor_sinais/view/videos/ 29 - /home/vlibras/container/corretor_sinais/view/videos/
31 - /home/vlibras/container/validador_sinais/view/videos/ 30 - /home/vlibras/container/validador_sinais/view/videos/
32 - /home/vlibras/container/wikilibrasV2/view/uploads/ 31 - /home/vlibras/container/wikilibrasV2/view/uploads/
33 - /home/vlibras/container/corretor_sinais/view/uploads/ 32 - /home/vlibras/container/corretor_sinais/view/uploads/
34 - /home/vlibras/container/validador_sinais/view/uploads/ 33 - /home/vlibras/container/validador_sinais/view/uploads/
35 - #- /home/vlibras/container/taskmgr/events.log 34 + - /home/vlibras/container/taskmgr/events.log
36 - /home/vlibras/container/wikilibras-core/users/ 35 - /home/vlibras/container/wikilibras-core/users/
wikilibrasV2/.gitignore
@@ -1,26 +0,0 @@ @@ -1,26 +0,0 @@
1 -.*  
2 -!*.gitignore  
3 -!*.gitempty  
4 -*~  
5 -*.bak  
6 -*.conf  
7 -*.coverage  
8 -*.db  
9 -*.ini  
10 -*.log  
11 -*.noseids  
12 -*.pem  
13 -*.pyc  
14 -*.sql  
15 -*.swl  
16 -*.swm  
17 -*.swn  
18 -*.swo  
19 -*.swp  
20 -*.wsgi  
21 -.DS_Store  
22 -settings_local.py  
23 -env/  
24 -tmp/  
25 -uploads/  
26 -videos/  
wikilibrasV2/LICENSE
@@ -1,674 +0,0 @@ @@ -1,674 +0,0 @@
1 - GNU GENERAL PUBLIC LICENSE  
2 - Version 3, 29 June 2007  
3 -  
4 - Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>  
5 - Everyone is permitted to copy and distribute verbatim copies  
6 - of this license document, but changing it is not allowed.  
7 -  
8 - Preamble  
9 -  
10 - The GNU General Public License is a free, copyleft license for  
11 -software and other kinds of works.  
12 -  
13 - The licenses for most software and other practical works are designed  
14 -to take away your freedom to share and change the works. By contrast,  
15 -the GNU General Public License is intended to guarantee your freedom to  
16 -share and change all versions of a program--to make sure it remains free  
17 -software for all its users. We, the Free Software Foundation, use the  
18 -GNU General Public License for most of our software; it applies also to  
19 -any other work released this way by its authors. You can apply it to  
20 -your programs, too.  
21 -  
22 - When we speak of free software, we are referring to freedom, not  
23 -price. Our General Public Licenses are designed to make sure that you  
24 -have the freedom to distribute copies of free software (and charge for  
25 -them if you wish), that you receive source code or can get it if you  
26 -want it, that you can change the software or use pieces of it in new  
27 -free programs, and that you know you can do these things.  
28 -  
29 - To protect your rights, we need to prevent others from denying you  
30 -these rights or asking you to surrender the rights. Therefore, you have  
31 -certain responsibilities if you distribute copies of the software, or if  
32 -you modify it: responsibilities to respect the freedom of others.  
33 -  
34 - For example, if you distribute copies of such a program, whether  
35 -gratis or for a fee, you must pass on to the recipients the same  
36 -freedoms that you received. You must make sure that they, too, receive  
37 -or can get the source code. And you must show them these terms so they  
38 -know their rights.  
39 -  
40 - Developers that use the GNU GPL protect your rights with two steps:  
41 -(1) assert copyright on the software, and (2) offer you this License  
42 -giving you legal permission to copy, distribute and/or modify it.  
43 -  
44 - For the developers' and authors' protection, the GPL clearly explains  
45 -that there is no warranty for this free software. For both users' and  
46 -authors' sake, the GPL requires that modified versions be marked as  
47 -changed, so that their problems will not be attributed erroneously to  
48 -authors of previous versions.  
49 -  
50 - Some devices are designed to deny users access to install or run  
51 -modified versions of the software inside them, although the manufacturer  
52 -can do so. This is fundamentally incompatible with the aim of  
53 -protecting users' freedom to change the software. The systematic  
54 -pattern of such abuse occurs in the area of products for individuals to  
55 -use, which is precisely where it is most unacceptable. Therefore, we  
56 -have designed this version of the GPL to prohibit the practice for those  
57 -products. If such problems arise substantially in other domains, we  
58 -stand ready to extend this provision to those domains in future versions  
59 -of the GPL, as needed to protect the freedom of users.  
60 -  
61 - Finally, every program is threatened constantly by software patents.  
62 -States should not allow patents to restrict development and use of  
63 -software on general-purpose computers, but in those that do, we wish to  
64 -avoid the special danger that patents applied to a free program could  
65 -make it effectively proprietary. To prevent this, the GPL assures that  
66 -patents cannot be used to render the program non-free.  
67 -  
68 - The precise terms and conditions for copying, distribution and  
69 -modification follow.  
70 -  
71 - TERMS AND CONDITIONS  
72 -  
73 - 0. Definitions.  
74 -  
75 - "This License" refers to version 3 of the GNU General Public License.  
76 -  
77 - "Copyright" also means copyright-like laws that apply to other kinds of  
78 -works, such as semiconductor masks.  
79 -  
80 - "The Program" refers to any copyrightable work licensed under this  
81 -License. Each licensee is addressed as "you". "Licensees" and  
82 -"recipients" may be individuals or organizations.  
83 -  
84 - To "modify" a work means to copy from or adapt all or part of the work  
85 -in a fashion requiring copyright permission, other than the making of an  
86 -exact copy. The resulting work is called a "modified version" of the  
87 -earlier work or a work "based on" the earlier work.  
88 -  
89 - A "covered work" means either the unmodified Program or a work based  
90 -on the Program.  
91 -  
92 - To "propagate" a work means to do anything with it that, without  
93 -permission, would make you directly or secondarily liable for  
94 -infringement under applicable copyright law, except executing it on a  
95 -computer or modifying a private copy. Propagation includes copying,  
96 -distribution (with or without modification), making available to the  
97 -public, and in some countries other activities as well.  
98 -  
99 - To "convey" a work means any kind of propagation that enables other  
100 -parties to make or receive copies. Mere interaction with a user through  
101 -a computer network, with no transfer of a copy, is not conveying.  
102 -  
103 - An interactive user interface displays "Appropriate Legal Notices"  
104 -to the extent that it includes a convenient and prominently visible  
105 -feature that (1) displays an appropriate copyright notice, and (2)  
106 -tells the user that there is no warranty for the work (except to the  
107 -extent that warranties are provided), that licensees may convey the  
108 -work under this License, and how to view a copy of this License. If  
109 -the interface presents a list of user commands or options, such as a  
110 -menu, a prominent item in the list meets this criterion.  
111 -  
112 - 1. Source Code.  
113 -  
114 - The "source code" for a work means the preferred form of the work  
115 -for making modifications to it. "Object code" means any non-source  
116 -form of a work.  
117 -  
118 - A "Standard Interface" means an interface that either is an official  
119 -standard defined by a recognized standards body, or, in the case of  
120 -interfaces specified for a particular programming language, one that  
121 -is widely used among developers working in that language.  
122 -  
123 - The "System Libraries" of an executable work include anything, other  
124 -than the work as a whole, that (a) is included in the normal form of  
125 -packaging a Major Component, but which is not part of that Major  
126 -Component, and (b) serves only to enable use of the work with that  
127 -Major Component, or to implement a Standard Interface for which an  
128 -implementation is available to the public in source code form. A  
129 -"Major Component", in this context, means a major essential component  
130 -(kernel, window system, and so on) of the specific operating system  
131 -(if any) on which the executable work runs, or a compiler used to  
132 -produce the work, or an object code interpreter used to run it.  
133 -  
134 - The "Corresponding Source" for a work in object code form means all  
135 -the source code needed to generate, install, and (for an executable  
136 -work) run the object code and to modify the work, including scripts to  
137 -control those activities. However, it does not include the work's  
138 -System Libraries, or general-purpose tools or generally available free  
139 -programs which are used unmodified in performing those activities but  
140 -which are not part of the work. For example, Corresponding Source  
141 -includes interface definition files associated with source files for  
142 -the work, and the source code for shared libraries and dynamically  
143 -linked subprograms that the work is specifically designed to require,  
144 -such as by intimate data communication or control flow between those  
145 -subprograms and other parts of the work.  
146 -  
147 - The Corresponding Source need not include anything that users  
148 -can regenerate automatically from other parts of the Corresponding  
149 -Source.  
150 -  
151 - The Corresponding Source for a work in source code form is that  
152 -same work.  
153 -  
154 - 2. Basic Permissions.  
155 -  
156 - All rights granted under this License are granted for the term of  
157 -copyright on the Program, and are irrevocable provided the stated  
158 -conditions are met. This License explicitly affirms your unlimited  
159 -permission to run the unmodified Program. The output from running a  
160 -covered work is covered by this License only if the output, given its  
161 -content, constitutes a covered work. This License acknowledges your  
162 -rights of fair use or other equivalent, as provided by copyright law.  
163 -  
164 - You may make, run and propagate covered works that you do not  
165 -convey, without conditions so long as your license otherwise remains  
166 -in force. You may convey covered works to others for the sole purpose  
167 -of having them make modifications exclusively for you, or provide you  
168 -with facilities for running those works, provided that you comply with  
169 -the terms of this License in conveying all material for which you do  
170 -not control copyright. Those thus making or running the covered works  
171 -for you must do so exclusively on your behalf, under your direction  
172 -and control, on terms that prohibit them from making any copies of  
173 -your copyrighted material outside their relationship with you.  
174 -  
175 - Conveying under any other circumstances is permitted solely under  
176 -the conditions stated below. Sublicensing is not allowed; section 10  
177 -makes it unnecessary.  
178 -  
179 - 3. Protecting Users' Legal Rights From Anti-Circumvention Law.  
180 -  
181 - No covered work shall be deemed part of an effective technological  
182 -measure under any applicable law fulfilling obligations under article  
183 -11 of the WIPO copyright treaty adopted on 20 December 1996, or  
184 -similar laws prohibiting or restricting circumvention of such  
185 -measures.  
186 -  
187 - When you convey a covered work, you waive any legal power to forbid  
188 -circumvention of technological measures to the extent such circumvention  
189 -is effected by exercising rights under this License with respect to  
190 -the covered work, and you disclaim any intention to limit operation or  
191 -modification of the work as a means of enforcing, against the work's  
192 -users, your or third parties' legal rights to forbid circumvention of  
193 -technological measures.  
194 -  
195 - 4. Conveying Verbatim Copies.  
196 -  
197 - You may convey verbatim copies of the Program's source code as you  
198 -receive it, in any medium, provided that you conspicuously and  
199 -appropriately publish on each copy an appropriate copyright notice;  
200 -keep intact all notices stating that this License and any  
201 -non-permissive terms added in accord with section 7 apply to the code;  
202 -keep intact all notices of the absence of any warranty; and give all  
203 -recipients a copy of this License along with the Program.  
204 -  
205 - You may charge any price or no price for each copy that you convey,  
206 -and you may offer support or warranty protection for a fee.  
207 -  
208 - 5. Conveying Modified Source Versions.  
209 -  
210 - You may convey a work based on the Program, or the modifications to  
211 -produce it from the Program, in the form of source code under the  
212 -terms of section 4, provided that you also meet all of these conditions:  
213 -  
214 - a) The work must carry prominent notices stating that you modified  
215 - it, and giving a relevant date.  
216 -  
217 - b) The work must carry prominent notices stating that it is  
218 - released under this License and any conditions added under section  
219 - 7. This requirement modifies the requirement in section 4 to  
220 - "keep intact all notices".  
221 -  
222 - c) You must license the entire work, as a whole, under this  
223 - License to anyone who comes into possession of a copy. This  
224 - License will therefore apply, along with any applicable section 7  
225 - additional terms, to the whole of the work, and all its parts,  
226 - regardless of how they are packaged. This License gives no  
227 - permission to license the work in any other way, but it does not  
228 - invalidate such permission if you have separately received it.  
229 -  
230 - d) If the work has interactive user interfaces, each must display  
231 - Appropriate Legal Notices; however, if the Program has interactive  
232 - interfaces that do not display Appropriate Legal Notices, your  
233 - work need not make them do so.  
234 -  
235 - A compilation of a covered work with other separate and independent  
236 -works, which are not by their nature extensions of the covered work,  
237 -and which are not combined with it such as to form a larger program,  
238 -in or on a volume of a storage or distribution medium, is called an  
239 -"aggregate" if the compilation and its resulting copyright are not  
240 -used to limit the access or legal rights of the compilation's users  
241 -beyond what the individual works permit. Inclusion of a covered work  
242 -in an aggregate does not cause this License to apply to the other  
243 -parts of the aggregate.  
244 -  
245 - 6. Conveying Non-Source Forms.  
246 -  
247 - You may convey a covered work in object code form under the terms  
248 -of sections 4 and 5, provided that you also convey the  
249 -machine-readable Corresponding Source under the terms of this License,  
250 -in one of these ways:  
251 -  
252 - a) Convey the object code in, or embodied in, a physical product  
253 - (including a physical distribution medium), accompanied by the  
254 - Corresponding Source fixed on a durable physical medium  
255 - customarily used for software interchange.  
256 -  
257 - b) Convey the object code in, or embodied in, a physical product  
258 - (including a physical distribution medium), accompanied by a  
259 - written offer, valid for at least three years and valid for as  
260 - long as you offer spare parts or customer support for that product  
261 - model, to give anyone who possesses the object code either (1) a  
262 - copy of the Corresponding Source for all the software in the  
263 - product that is covered by this License, on a durable physical  
264 - medium customarily used for software interchange, for a price no  
265 - more than your reasonable cost of physically performing this  
266 - conveying of source, or (2) access to copy the  
267 - Corresponding Source from a network server at no charge.  
268 -  
269 - c) Convey individual copies of the object code with a copy of the  
270 - written offer to provide the Corresponding Source. This  
271 - alternative is allowed only occasionally and noncommercially, and  
272 - only if you received the object code with such an offer, in accord  
273 - with subsection 6b.  
274 -  
275 - d) Convey the object code by offering access from a designated  
276 - place (gratis or for a charge), and offer equivalent access to the  
277 - Corresponding Source in the same way through the same place at no  
278 - further charge. You need not require recipients to copy the  
279 - Corresponding Source along with the object code. If the place to  
280 - copy the object code is a network server, the Corresponding Source  
281 - may be on a different server (operated by you or a third party)  
282 - that supports equivalent copying facilities, provided you maintain  
283 - clear directions next to the object code saying where to find the  
284 - Corresponding Source. Regardless of what server hosts the  
285 - Corresponding Source, you remain obligated to ensure that it is  
286 - available for as long as needed to satisfy these requirements.  
287 -  
288 - e) Convey the object code using peer-to-peer transmission, provided  
289 - you inform other peers where the object code and Corresponding  
290 - Source of the work are being offered to the general public at no  
291 - charge under subsection 6d.  
292 -  
293 - A separable portion of the object code, whose source code is excluded  
294 -from the Corresponding Source as a System Library, need not be  
295 -included in conveying the object code work.  
296 -  
297 - A "User Product" is either (1) a "consumer product", which means any  
298 -tangible personal property which is normally used for personal, family,  
299 -or household purposes, or (2) anything designed or sold for incorporation  
300 -into a dwelling. In determining whether a product is a consumer product,  
301 -doubtful cases shall be resolved in favor of coverage. For a particular  
302 -product received by a particular user, "normally used" refers to a  
303 -typical or common use of that class of product, regardless of the status  
304 -of the particular user or of the way in which the particular user  
305 -actually uses, or expects or is expected to use, the product. A product  
306 -is a consumer product regardless of whether the product has substantial  
307 -commercial, industrial or non-consumer uses, unless such uses represent  
308 -the only significant mode of use of the product.  
309 -  
310 - "Installation Information" for a User Product means any methods,  
311 -procedures, authorization keys, or other information required to install  
312 -and execute modified versions of a covered work in that User Product from  
313 -a modified version of its Corresponding Source. The information must  
314 -suffice to ensure that the continued functioning of the modified object  
315 -code is in no case prevented or interfered with solely because  
316 -modification has been made.  
317 -  
318 - If you convey an object code work under this section in, or with, or  
319 -specifically for use in, a User Product, and the conveying occurs as  
320 -part of a transaction in which the right of possession and use of the  
321 -User Product is transferred to the recipient in perpetuity or for a  
322 -fixed term (regardless of how the transaction is characterized), the  
323 -Corresponding Source conveyed under this section must be accompanied  
324 -by the Installation Information. But this requirement does not apply  
325 -if neither you nor any third party retains the ability to install  
326 -modified object code on the User Product (for example, the work has  
327 -been installed in ROM).  
328 -  
329 - The requirement to provide Installation Information does not include a  
330 -requirement to continue to provide support service, warranty, or updates  
331 -for a work that has been modified or installed by the recipient, or for  
332 -the User Product in which it has been modified or installed. Access to a  
333 -network may be denied when the modification itself materially and  
334 -adversely affects the operation of the network or violates the rules and  
335 -protocols for communication across the network.  
336 -  
337 - Corresponding Source conveyed, and Installation Information provided,  
338 -in accord with this section must be in a format that is publicly  
339 -documented (and with an implementation available to the public in  
340 -source code form), and must require no special password or key for  
341 -unpacking, reading or copying.  
342 -  
343 - 7. Additional Terms.  
344 -  
345 - "Additional permissions" are terms that supplement the terms of this  
346 -License by making exceptions from one or more of its conditions.  
347 -Additional permissions that are applicable to the entire Program shall  
348 -be treated as though they were included in this License, to the extent  
349 -that they are valid under applicable law. If additional permissions  
350 -apply only to part of the Program, that part may be used separately  
351 -under those permissions, but the entire Program remains governed by  
352 -this License without regard to the additional permissions.  
353 -  
354 - When you convey a copy of a covered work, you may at your option  
355 -remove any additional permissions from that copy, or from any part of  
356 -it. (Additional permissions may be written to require their own  
357 -removal in certain cases when you modify the work.) You may place  
358 -additional permissions on material, added by you to a covered work,  
359 -for which you have or can give appropriate copyright permission.  
360 -  
361 - Notwithstanding any other provision of this License, for material you  
362 -add to a covered work, you may (if authorized by the copyright holders of  
363 -that material) supplement the terms of this License with terms:  
364 -  
365 - a) Disclaiming warranty or limiting liability differently from the  
366 - terms of sections 15 and 16 of this License; or  
367 -  
368 - b) Requiring preservation of specified reasonable legal notices or  
369 - author attributions in that material or in the Appropriate Legal  
370 - Notices displayed by works containing it; or  
371 -  
372 - c) Prohibiting misrepresentation of the origin of that material, or  
373 - requiring that modified versions of such material be marked in  
374 - reasonable ways as different from the original version; or  
375 -  
376 - d) Limiting the use for publicity purposes of names of licensors or  
377 - authors of the material; or  
378 -  
379 - e) Declining to grant rights under trademark law for use of some  
380 - trade names, trademarks, or service marks; or  
381 -  
382 - f) Requiring indemnification of licensors and authors of that  
383 - material by anyone who conveys the material (or modified versions of  
384 - it) with contractual assumptions of liability to the recipient, for  
385 - any liability that these contractual assumptions directly impose on  
386 - those licensors and authors.  
387 -  
388 - All other non-permissive additional terms are considered "further  
389 -restrictions" within the meaning of section 10. If the Program as you  
390 -received it, or any part of it, contains a notice stating that it is  
391 -governed by this License along with a term that is a further  
392 -restriction, you may remove that term. If a license document contains  
393 -a further restriction but permits relicensing or conveying under this  
394 -License, you may add to a covered work material governed by the terms  
395 -of that license document, provided that the further restriction does  
396 -not survive such relicensing or conveying.  
397 -  
398 - If you add terms to a covered work in accord with this section, you  
399 -must place, in the relevant source files, a statement of the  
400 -additional terms that apply to those files, or a notice indicating  
401 -where to find the applicable terms.  
402 -  
403 - Additional terms, permissive or non-permissive, may be stated in the  
404 -form of a separately written license, or stated as exceptions;  
405 -the above requirements apply either way.  
406 -  
407 - 8. Termination.  
408 -  
409 - You may not propagate or modify a covered work except as expressly  
410 -provided under this License. Any attempt otherwise to propagate or  
411 -modify it is void, and will automatically terminate your rights under  
412 -this License (including any patent licenses granted under the third  
413 -paragraph of section 11).  
414 -  
415 - However, if you cease all violation of this License, then your  
416 -license from a particular copyright holder is reinstated (a)  
417 -provisionally, unless and until the copyright holder explicitly and  
418 -finally terminates your license, and (b) permanently, if the copyright  
419 -holder fails to notify you of the violation by some reasonable means  
420 -prior to 60 days after the cessation.  
421 -  
422 - Moreover, your license from a particular copyright holder is  
423 -reinstated permanently if the copyright holder notifies you of the  
424 -violation by some reasonable means, this is the first time you have  
425 -received notice of violation of this License (for any work) from that  
426 -copyright holder, and you cure the violation prior to 30 days after  
427 -your receipt of the notice.  
428 -  
429 - Termination of your rights under this section does not terminate the  
430 -licenses of parties who have received copies or rights from you under  
431 -this License. If your rights have been terminated and not permanently  
432 -reinstated, you do not qualify to receive new licenses for the same  
433 -material under section 10.  
434 -  
435 - 9. Acceptance Not Required for Having Copies.  
436 -  
437 - You are not required to accept this License in order to receive or  
438 -run a copy of the Program. Ancillary propagation of a covered work  
439 -occurring solely as a consequence of using peer-to-peer transmission  
440 -to receive a copy likewise does not require acceptance. However,  
441 -nothing other than this License grants you permission to propagate or  
442 -modify any covered work. These actions infringe copyright if you do  
443 -not accept this License. Therefore, by modifying or propagating a  
444 -covered work, you indicate your acceptance of this License to do so.  
445 -  
446 - 10. Automatic Licensing of Downstream Recipients.  
447 -  
448 - Each time you convey a covered work, the recipient automatically  
449 -receives a license from the original licensors, to run, modify and  
450 -propagate that work, subject to this License. You are not responsible  
451 -for enforcing compliance by third parties with this License.  
452 -  
453 - An "entity transaction" is a transaction transferring control of an  
454 -organization, or substantially all assets of one, or subdividing an  
455 -organization, or merging organizations. If propagation of a covered  
456 -work results from an entity transaction, each party to that  
457 -transaction who receives a copy of the work also receives whatever  
458 -licenses to the work the party's predecessor in interest had or could  
459 -give under the previous paragraph, plus a right to possession of the  
460 -Corresponding Source of the work from the predecessor in interest, if  
461 -the predecessor has it or can get it with reasonable efforts.  
462 -  
463 - You may not impose any further restrictions on the exercise of the  
464 -rights granted or affirmed under this License. For example, you may  
465 -not impose a license fee, royalty, or other charge for exercise of  
466 -rights granted under this License, and you may not initiate litigation  
467 -(including a cross-claim or counterclaim in a lawsuit) alleging that  
468 -any patent claim is infringed by making, using, selling, offering for  
469 -sale, or importing the Program or any portion of it.  
470 -  
471 - 11. Patents.  
472 -  
473 - A "contributor" is a copyright holder who authorizes use under this  
474 -License of the Program or a work on which the Program is based. The  
475 -work thus licensed is called the contributor's "contributor version".  
476 -  
477 - A contributor's "essential patent claims" are all patent claims  
478 -owned or controlled by the contributor, whether already acquired or  
479 -hereafter acquired, that would be infringed by some manner, permitted  
480 -by this License, of making, using, or selling its contributor version,  
481 -but do not include claims that would be infringed only as a  
482 -consequence of further modification of the contributor version. For  
483 -purposes of this definition, "control" includes the right to grant  
484 -patent sublicenses in a manner consistent with the requirements of  
485 -this License.  
486 -  
487 - Each contributor grants you a non-exclusive, worldwide, royalty-free  
488 -patent license under the contributor's essential patent claims, to  
489 -make, use, sell, offer for sale, import and otherwise run, modify and  
490 -propagate the contents of its contributor version.  
491 -  
492 - In the following three paragraphs, a "patent license" is any express  
493 -agreement or commitment, however denominated, not to enforce a patent  
494 -(such as an express permission to practice a patent or covenant not to  
495 -sue for patent infringement). To "grant" such a patent license to a  
496 -party means to make such an agreement or commitment not to enforce a  
497 -patent against the party.  
498 -  
499 - If you convey a covered work, knowingly relying on a patent license,  
500 -and the Corresponding Source of the work is not available for anyone  
501 -to copy, free of charge and under the terms of this License, through a  
502 -publicly available network server or other readily accessible means,  
503 -then you must either (1) cause the Corresponding Source to be so  
504 -available, or (2) arrange to deprive yourself of the benefit of the  
505 -patent license for this particular work, or (3) arrange, in a manner  
506 -consistent with the requirements of this License, to extend the patent  
507 -license to downstream recipients. "Knowingly relying" means you have  
508 -actual knowledge that, but for the patent license, your conveying the  
509 -covered work in a country, or your recipient's use of the covered work  
510 -in a country, would infringe one or more identifiable patents in that  
511 -country that you have reason to believe are valid.  
512 -  
513 - If, pursuant to or in connection with a single transaction or  
514 -arrangement, you convey, or propagate by procuring conveyance of, a  
515 -covered work, and grant a patent license to some of the parties  
516 -receiving the covered work authorizing them to use, propagate, modify  
517 -or convey a specific copy of the covered work, then the patent license  
518 -you grant is automatically extended to all recipients of the covered  
519 -work and works based on it.  
520 -  
521 - A patent license is "discriminatory" if it does not include within  
522 -the scope of its coverage, prohibits the exercise of, or is  
523 -conditioned on the non-exercise of one or more of the rights that are  
524 -specifically granted under this License. You may not convey a covered  
525 -work if you are a party to an arrangement with a third party that is  
526 -in the business of distributing software, under which you make payment  
527 -to the third party based on the extent of your activity of conveying  
528 -the work, and under which the third party grants, to any of the  
529 -parties who would receive the covered work from you, a discriminatory  
530 -patent license (a) in connection with copies of the covered work  
531 -conveyed by you (or copies made from those copies), or (b) primarily  
532 -for and in connection with specific products or compilations that  
533 -contain the covered work, unless you entered into that arrangement,  
534 -or that patent license was granted, prior to 28 March 2007.  
535 -  
536 - Nothing in this License shall be construed as excluding or limiting  
537 -any implied license or other defenses to infringement that may  
538 -otherwise be available to you under applicable patent law.  
539 -  
540 - 12. No Surrender of Others' Freedom.  
541 -  
542 - If conditions are imposed on you (whether by court order, agreement or  
543 -otherwise) that contradict the conditions of this License, they do not  
544 -excuse you from the conditions of this License. If you cannot convey a  
545 -covered work so as to satisfy simultaneously your obligations under this  
546 -License and any other pertinent obligations, then as a consequence you may  
547 -not convey it at all. For example, if you agree to terms that obligate you  
548 -to collect a royalty for further conveying from those to whom you convey  
549 -the Program, the only way you could satisfy both those terms and this  
550 -License would be to refrain entirely from conveying the Program.  
551 -  
552 - 13. Use with the GNU Affero General Public License.  
553 -  
554 - Notwithstanding any other provision of this License, you have  
555 -permission to link or combine any covered work with a work licensed  
556 -under version 3 of the GNU Affero General Public License into a single  
557 -combined work, and to convey the resulting work. The terms of this  
558 -License will continue to apply to the part which is the covered work,  
559 -but the special requirements of the GNU Affero General Public License,  
560 -section 13, concerning interaction through a network will apply to the  
561 -combination as such.  
562 -  
563 - 14. Revised Versions of this License.  
564 -  
565 - The Free Software Foundation may publish revised and/or new versions of  
566 -the GNU General Public License from time to time. Such new versions will  
567 -be similar in spirit to the present version, but may differ in detail to  
568 -address new problems or concerns.  
569 -  
570 - Each version is given a distinguishing version number. If the  
571 -Program specifies that a certain numbered version of the GNU General  
572 -Public License "or any later version" applies to it, you have the  
573 -option of following the terms and conditions either of that numbered  
574 -version or of any later version published by the Free Software  
575 -Foundation. If the Program does not specify a version number of the  
576 -GNU General Public License, you may choose any version ever published  
577 -by the Free Software Foundation.  
578 -  
579 - If the Program specifies that a proxy can decide which future  
580 -versions of the GNU General Public License can be used, that proxy's  
581 -public statement of acceptance of a version permanently authorizes you  
582 -to choose that version for the Program.  
583 -  
584 - Later license versions may give you additional or different  
585 -permissions. However, no additional obligations are imposed on any  
586 -author or copyright holder as a result of your choosing to follow a  
587 -later version.  
588 -  
589 - 15. Disclaimer of Warranty.  
590 -  
591 - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY  
592 -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT  
593 -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY  
594 -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,  
595 -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR  
596 -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM  
597 -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF  
598 -ALL NECESSARY SERVICING, REPAIR OR CORRECTION.  
599 -  
600 - 16. Limitation of Liability.  
601 -  
602 - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING  
603 -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS  
604 -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY  
605 -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE  
606 -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF  
607 -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD  
608 -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),  
609 -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF  
610 -SUCH DAMAGES.  
611 -  
612 - 17. Interpretation of Sections 15 and 16.  
613 -  
614 - If the disclaimer of warranty and limitation of liability provided  
615 -above cannot be given local legal effect according to their terms,  
616 -reviewing courts shall apply local law that most closely approximates  
617 -an absolute waiver of all civil liability in connection with the  
618 -Program, unless a warranty or assumption of liability accompanies a  
619 -copy of the Program in return for a fee.  
620 -  
621 - END OF TERMS AND CONDITIONS  
622 -  
623 - How to Apply These Terms to Your New Programs  
624 -  
625 - If you develop a new program, and you want it to be of the greatest  
626 -possible use to the public, the best way to achieve this is to make it  
627 -free software which everyone can redistribute and change under these terms.  
628 -  
629 - To do so, attach the following notices to the program. It is safest  
630 -to attach them to the start of each source file to most effectively  
631 -state the exclusion of warranty; and each file should have at least  
632 -the "copyright" line and a pointer to where the full notice is found.  
633 -  
634 - wikilibrasV2  
635 - Copyright (C) 2017 WikiLibras  
636 -  
637 - This program is free software: you can redistribute it and/or modify  
638 - it under the terms of the GNU General Public License as published by  
639 - the Free Software Foundation, either version 3 of the License, or  
640 - (at your option) any later version.  
641 -  
642 - This program is distributed in the hope that it will be useful,  
643 - but WITHOUT ANY WARRANTY; without even the implied warranty of  
644 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the  
645 - GNU General Public License for more details.  
646 -  
647 - You should have received a copy of the GNU General Public License  
648 - along with this program. If not, see <http://www.gnu.org/licenses/>.  
649 -  
650 -Also add information on how to contact you by electronic and paper mail.  
651 -  
652 - If the program does terminal interaction, make it output a short  
653 -notice like this when it starts in an interactive mode:  
654 -  
655 - wikilibrasV2 Copyright (C) 2017 WikiLibras  
656 - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.  
657 - This is free software, and you are welcome to redistribute it  
658 - under certain conditions; type `show c' for details.  
659 -  
660 -The hypothetical commands `show w' and `show c' should show the appropriate  
661 -parts of the General Public License. Of course, your program's commands  
662 -might be different; for a GUI interface, you would use an "about box".  
663 -  
664 - You should also get your employer (if you work as a programmer) or school,  
665 -if any, to sign a "copyright disclaimer" for the program, if necessary.  
666 -For more information on this, and how to apply and follow the GNU GPL, see  
667 -<http://www.gnu.org/licenses/>.  
668 -  
669 - The GNU General Public License does not permit incorporating your program  
670 -into proprietary programs. If your program is a subroutine library, you  
671 -may consider it more useful to permit linking proprietary applications with  
672 -the library. If this is what you want to do, use the GNU Lesser General  
673 -Public License instead of this License. But first, please read  
674 -<http://www.gnu.org/philosophy/why-not-lgpl.html>.  
wikilibrasV2/Makefile
@@ -1,86 +0,0 @@ @@ -1,86 +0,0 @@
1 -PROJECT_NAME = wikilibras  
2 -VLIBRAS_WIKILIBRAS_ENV := /etc/profile.d/lavid/vlibras/wikilibras_env.sh  
3 -PROJECT_DIR := $(CURDIR)  
4 -SED_REPLACE_ALL = sed -i "s/$(1)/$(2)/g" "$(3)"  
5 -SED_REPLACE_ALL_PATH = sed -i "s\#$(1)\#$(2)\#g" "$(3)"  
6 -  
7 --include ${VLIBRAS_WIKILIBRAS_ENV}  
8 -  
9 -ifndef LOCALHOST  
10 - ifndef NETWORK_INTERFACE  
11 - NETWORK_INTERFACE := $(shell ip route | grep "default" | awk '{print $$5; exit}')  
12 - endif  
13 - ifdef NETWORK_INTERFACE  
14 - LOCALHOST ?= $(shell ip route get 1 | awk '{print $$7; exit}')  
15 - endif  
16 -endif  
17 -  
18 -ifndef LOCALHOST  
19 - LOCALHOST ?= 127.0.0.1  
20 -endif  
21 -  
22 -install: uninstall config env  
23 -  
24 -env:  
25 - @ ( \  
26 - virtualenv ./env/; \  
27 - . ./env/bin/activate; \  
28 - pip install -U pip; \  
29 - pip install -U uwsgi; \  
30 - pip install -U ndg-httpsclient; \  
31 - pip install -r requirements.txt; \  
32 - )  
33 -  
34 -create_project update_project:  
35 - @ echo "http://${LOCALHOST}/${PROJECT_NAME}-backend/$@"  
36 -ifdef PYBOSSA_API_KEY  
37 - @ curl "http://${LOCALHOST}/${PROJECT_NAME}-backend/$@" && echo ""  
38 -endif  
39 -  
40 -config:  
41 - @ cp settings_local.py.tmpl settings_local.py  
42 - @ $(call SED_REPLACE_ALL_PATH,<path-to-project>,${PROJECT_DIR},settings_local.py)  
43 - @ $(call SED_REPLACE_ALL,localhost,${LOCALHOST},settings_local.py)  
44 -ifdef PYBOSSA_API_KEY  
45 - @ $(call SED_REPLACE_ALL,my-api-key,${PYBOSSA_API_KEY},settings_local.py)  
46 -endif  
47 - @ cp ./contrib/${PROJECT_NAME}.wsgi.tmpl ./contrib/${PROJECT_NAME}.wsgi  
48 - @ $(call SED_REPLACE_ALL_PATH,<path-to-project>,${PROJECT_DIR},./contrib/${PROJECT_NAME}.wsgi)  
49 - @ cp ./contrib/apache/${PROJECT_NAME}.conf.tmpl ./contrib/apache/${PROJECT_NAME}.conf  
50 - @ $(call SED_REPLACE_ALL,ServerName localhost,ServerName ${LOCALHOST},./contrib/apache/${PROJECT_NAME}.conf)  
51 - @ $(call SED_REPLACE_ALL,user1,$$USER,./contrib/apache/${PROJECT_NAME}.conf)  
52 - @ $(call SED_REPLACE_ALL,group1,$$USER,./contrib/apache/${PROJECT_NAME}.conf)  
53 - @ $(call SED_REPLACE_ALL_PATH,<path-to-project>,${PROJECT_DIR},./contrib/apache/${PROJECT_NAME}.conf)  
54 - @ sudo cp -u "/etc/apache2/sites-available/pybossa.conf" /etc/apache2/sites-available/wikilibras.conf  
55 - @ if grep -q "WSGIScriptAlias /${PROJECT_NAME}" "/etc/apache2/sites-available/wikilibras.conf"; \  
56 - then \  
57 - echo "\33[33;1mA previous WSGI daemon definition for '${PROJECT_NAME}' in: /etc/apache2/sites-available/wikilibras.conf\33[0m"; \  
58 - else \  
59 - sudo sed -i -e "/Header/,/VirtualHost>/d" /etc/apache2/sites-available/wikilibras.conf; \  
60 - sudo sed -n -e '/WSGIDaemonProcess/,/VirtualHost>/p' ./contrib/apache/${PROJECT_NAME}.conf | \  
61 - sudo tee -a /etc/apache2/sites-available/wikilibras.conf > /dev/null; \  
62 - fi  
63 -  
64 -apache:  
65 - @ sudo a2dissite pybossa.conf  
66 - @ sudo a2ensite wikilibras.conf  
67 - @ sudo apachectl configtest  
68 - @ sudo service apache2 start  
69 - @ sudo service apache2 reload  
70 -  
71 -clean:  
72 - @ find . -regextype posix-awk -regex "(.*.log|.*.pyc)" -type f -print -delete  
73 -  
74 -uninstall:  
75 - @ rm -rf ./env/  
76 - $(MAKE) clean  
77 - @ rm -f ./settings_local.py  
78 - @ rm -f ./contrib/${PROJECT_NAME}.wsgi  
79 - @ sudo rm -f /etc/apache2/sites-available/wikilibras.conf  
80 - @ sudo rm -f /etc/apache2/sites-enabled/wikilibras.conf  
81 -  
82 -run:  
83 - @ ( \  
84 - . ./env/bin/activate; \  
85 - python main.py; \  
86 - )  
wikilibrasV2/Makefile.old
@@ -1,86 +0,0 @@ @@ -1,86 +0,0 @@
1 -PROJECT_NAME = wikilibras  
2 -VLIBRAS_WIKILIBRAS_ENV := /etc/profile.d/lavid/vlibras/wikilibras_env.sh  
3 -PROJECT_DIR := $(CURDIR)  
4 -SED_REPLACE_ALL = sed -i "s/$(1)/$(2)/g" "$(3)"  
5 -SED_REPLACE_ALL_PATH = sed -i "s\#$(1)\#$(2)\#g" "$(3)"  
6 -  
7 --include ${VLIBRAS_WIKILIBRAS_ENV}  
8 -  
9 -ifndef LOCALHOST  
10 - ifndef NETWORK_INTERFACE  
11 - NETWORK_INTERFACE := $(shell ip route | grep "default" | awk '{print $$5; exit}')  
12 - endif  
13 - ifdef NETWORK_INTERFACE  
14 - LOCALHOST ?= $(shell ip route get 1 | awk '{print $$7; exit}')  
15 - endif  
16 -endif  
17 -  
18 -ifndef LOCALHOST  
19 - LOCALHOST ?= 127.0.0.1  
20 -endif  
21 -  
22 -install: uninstall config env  
23 -  
24 -env:  
25 - @ ( \  
26 - virtualenv ./env/; \  
27 - . ./env/bin/activate; \  
28 - pip install -U pip; \  
29 - pip install -U uwsgi; \  
30 - pip install -U ndg-httpsclient; \  
31 - pip install -r requirements.txt; \  
32 - )  
33 -  
34 -create_project update_project:  
35 - @ echo "http://${LOCALHOST}/${PROJECT_NAME}-backend/$@"  
36 -ifdef PYBOSSA_API_KEY  
37 - @ curl "http://${LOCALHOST}/${PROJECT_NAME}-backend/$@" && echo ""  
38 -endif  
39 -  
40 -config:  
41 - @ cp settings_local.py.tmpl settings_local.py  
42 - @ $(call SED_REPLACE_ALL_PATH,<path-to-project>,${PROJECT_DIR},settings_local.py)  
43 - @ $(call SED_REPLACE_ALL,localhost,${LOCALHOST},settings_local.py)  
44 -ifdef PYBOSSA_API_KEY  
45 - @ $(call SED_REPLACE_ALL,my-api-key,${PYBOSSA_API_KEY},settings_local.py)  
46 -endif  
47 - @ cp ./contrib/${PROJECT_NAME}.wsgi.tmpl ./contrib/${PROJECT_NAME}.wsgi  
48 - @ $(call SED_REPLACE_ALL_PATH,<path-to-project>,${PROJECT_DIR},./contrib/${PROJECT_NAME}.wsgi)  
49 - @ cp ./contrib/apache/${PROJECT_NAME}.conf.tmpl ./contrib/apache/${PROJECT_NAME}.conf  
50 - @ $(call SED_REPLACE_ALL,ServerName localhost,ServerName ${LOCALHOST},./contrib/apache/${PROJECT_NAME}.conf)  
51 - @ $(call SED_REPLACE_ALL,user1,$$USER,./contrib/apache/${PROJECT_NAME}.conf)  
52 - @ $(call SED_REPLACE_ALL,group1,$$USER,./contrib/apache/${PROJECT_NAME}.conf)  
53 - @ $(call SED_REPLACE_ALL_PATH,<path-to-project>,${PROJECT_DIR},./contrib/apache/${PROJECT_NAME}.conf)  
54 - @ sudo cp -u "/etc/apache2/sites-available/pybossa.conf" /etc/apache2/sites-available/wikilibras.conf  
55 - @ if grep -q "WSGIScriptAlias /${PROJECT_NAME}" "/etc/apache2/sites-available/wikilibras.conf"; \  
56 - then \  
57 - echo "\33[33;1mA previous WSGI daemon definition for '${PROJECT_NAME}' in: /etc/apache2/sites-available/wikilibras.conf\33[0m"; \  
58 - else \  
59 - sudo sed -i -e "/Header/,/VirtualHost>/d" /etc/apache2/sites-available/wikilibras.conf; \  
60 - sudo sed -n -e '/WSGIDaemonProcess/,/VirtualHost>/p' ./contrib/apache/${PROJECT_NAME}.conf | \  
61 - sudo tee -a /etc/apache2/sites-available/wikilibras.conf > /dev/null; \  
62 - fi  
63 -  
64 -apache:  
65 - @ sudo a2dissite pybossa.conf  
66 - @ sudo a2ensite wikilibras.conf  
67 - @ sudo apachectl configtest  
68 - @ sudo service apache2 start  
69 - @ sudo service apache2 reload  
70 -  
71 -clean:  
72 - @ find . -regextype posix-awk -regex "(.*.log|.*.pyc)" -type f -print -delete  
73 -  
74 -uninstall:  
75 - @ rm -rf ./env/  
76 - $(MAKE) clean  
77 - @ rm -f ./settings_local.py  
78 - @ rm -f ./contrib/${PROJECT_NAME}.wsgi  
79 - @ sudo rm -f /etc/apache2/sites-available/wikilibras.conf  
80 - @ sudo rm -f /etc/apache2/sites-enabled/wikilibras.conf  
81 -  
82 -run:  
83 - @ ( \  
84 - . ./env/bin/activate; \  
85 - python main.py; \  
86 - )  
wikilibrasV2/contrib/apache/wikilibras.conf.tmpl
@@ -1,28 +0,0 @@ @@ -1,28 +0,0 @@
1 -<VirtualHost *:80>  
2 - ServerName localhost  
3 -  
4 - WSGIDaemonProcess wikilibras user=user1 group=group1 threads=5  
5 - WSGIScriptAlias /wikilibras-backend <path-to-project>/contrib/wikilibras.wsgi  
6 -  
7 - <Directory <path-to-project>>  
8 - WSGIProcessGroup wikilibras  
9 - WSGIApplicationGroup %{GLOBAL}  
10 - Order deny,allow  
11 - Allow from all  
12 - Require all granted  
13 - </Directory>  
14 -  
15 - Alias /wikilibras <path-to-project>/view  
16 - <Directory <path-to-project>/view>  
17 - Order deny,allow  
18 - Allow from all  
19 - Require all granted  
20 - </Directory>  
21 -  
22 - Header set Access-Control-Allow-Origin "*"  
23 -  
24 - ServerAdmin webmaster@localhost  
25 -  
26 - ErrorLog ${APACHE_LOG_DIR}/error.log  
27 - CustomLog ${APACHE_LOG_DIR}/access.log combined  
28 -</VirtualHost>  
wikilibrasV2/contrib/wikilibras.wsgi.tmpl
@@ -1,11 +0,0 @@ @@ -1,11 +0,0 @@
1 -# Check the official documentation http://flask.pocoo.org/docs/deploying/mod_wsgi/  
2 -# Activate the virtual env (we assume that virtualenv is in the env folder)  
3 -activate_this = '<path-to-project>/env/bin/activate_this.py'  
4 -execfile(activate_this, dict(__file__=activate_this))  
5 -import logging, sys  
6 -sys.stdout = sys.stderr  
7 -logging.basicConfig(stream=sys.stderr)  
8 -sys.path.insert(0,'<path-to-project>')  
9 -  
10 -# Run the web-app  
11 -from main import app as application  
wikilibrasV2/main.py
@@ -1,75 +0,0 @@ @@ -1,75 +0,0 @@
1 -# -*- coding: utf-8 -*-  
2 -from flask import Flask, send_from_directory  
3 -from flask.ext.cors import CORS  
4 -from jinja2 import Environment, PackageLoader  
5 -from wikilibras import Wikilibras  
6 -import os  
7 -import pyutil  
8 -  
9 -app = Flask(__name__)  
10 -controller = None  
11 -  
12 -@app.route("/update_project")  
13 -def update_project():  
14 - try:  
15 - return controller.update_project()  
16 - except:  
17 - pyutil.print_stack_trace()  
18 - raise  
19 -  
20 -@app.route("/create_project")  
21 -def create_project():  
22 - try:  
23 - return controller.create_project()  
24 - except:  
25 - pyutil.print_stack_trace()  
26 - raise  
27 -  
28 -@app.route("/finish_task", methods=["POST"])  
29 -def finish_task():  
30 - try:  
31 - return controller.finish_task()  
32 - except:  
33 - pyutil.print_stack_trace()  
34 - raise  
35 -  
36 -def read_settings(app):  
37 - here = os.path.abspath(__file__)  
38 - config_path = os.path.join(os.path.dirname(here), 'settings_local.py')  
39 - if os.path.exists(config_path):  
40 - app.config.from_pyfile(config_path)  
41 -  
42 - if app.config['APACHE_HOST']:  
43 - app.config['HOST_ENDPOINT'] = "http://" + app.config['SERVER_HOST'] + app.config['APACHE_HOST_ENDPOINT']  
44 - app.config['HOST_STATIC_FILES_ENDPOINT'] = "http://" + app.config['SERVER_HOST'] + app.config['APACHE_STATIC_FILES_ENDPOINT']  
45 - else:  
46 - app.config['HOST_ENDPOINT'] = "http://" + app.config['SERVER_HOST'] + ":" + str(app.config['SERVER_PORT'])  
47 - app.config['HOST_STATIC_FILES_ENDPOINT'] = app.config['HOST_ENDPOINT']  
48 -  
49 -def setup_controller():  
50 - global controller  
51 - read_settings(app)  
52 - env = Environment(loader=PackageLoader('main', 'view/templates'))  
53 - controller = Wikilibras(app.config, env)  
54 -  
55 -def setup_static_files_service(app):  
56 - if not app.config['APACHE_HOST']:  
57 - CORS(app)  
58 - @app.route("/<path:path>")  
59 - def send_static_files(path):  
60 - root_dir = os.path.abspath(os.path.dirname(__file__))  
61 - file_dir = os.path.join(root_dir, "view")  
62 - return send_from_directory(file_dir, path)  
63 -  
64 -def run():  
65 - app.run(host=app.config['SERVER_HOST'], port=app.config['SERVER_PORT'])  
66 -  
67 -setup_controller()  
68 -setup_static_files_service(app)  
69 -  
70 -if __name__ == '__main__':  
71 - try:  
72 - run()  
73 - except:  
74 - pyutil.print_stack_trace()  
75 - raise  
wikilibrasV2/pyutil.py
@@ -1,68 +0,0 @@ @@ -1,68 +0,0 @@
1 -# -*- coding: UTF-8 -*-  
2 -  
3 -import datetime  
4 -import logging  
5 -import os  
6 -import shutil  
7 -import sys  
8 -  
9 -# @def funcao para obter data e hora atual do sistema  
10 -# @param string formato de data e hora  
11 -# @return string retorna data e hora do sistema no momento da chamada  
12 -def getTimeStamp(date_fmt="%Y-%m-%d %H:%M:%S.%f"):  
13 - if ("%f" in date_fmt):  
14 - # [:-3] remove 3 casas decimais dos milisegundos (ms)  
15 - return datetime.datetime.now().strftime(date_fmt)[:-3]  
16 - else:  
17 - return datetime.datetime.now().strftime(date_fmt)  
18 -  
19 -# @def funcao para gravar log dos eventos em arquivo  
20 -# @param string mensagem a ser salva  
21 -# @param int indice do tipo de log 0: apenas print, 1: debug, 2: info, 3: warn, 4: error, 5: critical  
22 -# @param string caminho completo do arquivo de logs  
23 -# @param string formato de tempo utilizado  
24 -# @return none  
25 -def log(msg="", log_level=2, log_file="events.log"):  
26 - dict_level = {  
27 - 0: ["Print", None, None],  
28 - 1: ["DEBUG", logging.DEBUG, logging.debug],  
29 - 2: ["INFO", logging.INFO, logging.info],  
30 - 3: ["WARNING", logging.WARN, logging.warn],  
31 - 4: ["ERROR", logging.ERROR, logging.error],  
32 - 5: ["CRITICAL", logging.CRITICAL, logging.critical]  
33 - }  
34 - # log_format = "[%(asctime)s.%(msecs).03d] %(levelname)s: <User: %(name)s> <Module: %(module)s> <Function: %(funcName)s>: %(message)s"  
35 - log_format = "[%(asctime)s.%(msecs).03d] %(levelname)s: %(message)s"  
36 - date_fmt = "%Y-%m-%d %H:%M:%S"  
37 - logging.basicConfig(filename=log_file, datefmt=date_fmt, format=log_format, level=dict_level[log_level][1])  
38 - logging.Formatter(fmt="%(asctime)s", datefmt=date_fmt)  
39 - log_level %= len(dict_level)  
40 - write_mode = dict_level[log_level][2]  
41 - print("[%s] %s: %s" % (getTimeStamp(), dict_level[log_level][0], msg))  
42 - if (write_mode != None):  
43 - write_mode(msg)  
44 - return  
45 -  
46 -# @def funcao para exibir excecao  
47 -# @param string deve ser passado: "__file__" para identificar em qual modulo ocorreu a excecao  
48 -# @return int retorna 1  
49 -def print_stack_trace():  
50 - error = "\n File name: %s\n Function name: %s\n Line code: %s\n Type exception: %s\n Message: %s" % (  
51 - os.path.basename(sys.exc_info()[2].tb_frame.f_code.co_filename),  
52 - sys.exc_info()[2].tb_frame.f_code.co_name,  
53 - sys.exc_info()[2].tb_lineno,  
54 - sys.exc_info()[0].__name__,  
55 - sys.exc_info()[1]  
56 - )  
57 - log(error, 4)  
58 - return 1  
59 -  
60 -def get_date_now():  
61 - return datetime.datetime.now().strftime('%Y-%m-%dT%H:%M:%S')  
62 -  
63 -def is_int(string):  
64 - try:  
65 - int(string)  
66 - return True  
67 - except ValueError:  
68 - return False  
wikilibrasV2/requirements.txt
@@ -1,4 +0,0 @@ @@ -1,4 +0,0 @@
1 -Flask==0.9  
2 -pybossa-client  
3 -flask-cors  
4 -requests >= 1.2  
wikilibrasV2/settings_local.py.tmpl
@@ -1,21 +0,0 @@ @@ -1,21 +0,0 @@
1 -# -*- coding: utf-8 -*-  
2 -  
3 -# WikiLibras Server Configuration  
4 -SERVER_HOST = "localhost"  
5 -SERVER_PORT = 8003  
6 -AGREEMENT_NUMBER = 2  
7 -API_HOST = "http://localhost:201"  
8 -API_DB_HOST = "http://localhost:200"  
9 -HOMEPAGE_URL = "http://localhost"  
10 -  
11 -# Apache Configuration  
12 -APACHE_HOST = True  
13 -APACHE_HOST_ENDPOINT = "/wikilibras-backend"  
14 -APACHE_STATIC_FILES_ENDPOINT = "/wikilibras"  
15 -  
16 -# PyBossa Configuration  
17 -PYBOSSA_APP_NAME = "WikiLibras"  
18 -PYBOSSA_APP_SHORT_NAME = "wikilibras"  
19 -PYBOSSA_APP_DESCRIPTION = "Esse projeto possibilitará que voluntários contribuam na expansão de um dicionário de LIBRAS, desenvolvido para promover o inclusão e acessibilidade nos meios digitais atravé do VLIBRAS."  
20 -PYBOSSA_ENDPOINT = "http://localhost/pybossa"  
21 -PYBOSSA_API_KEY = "my-api-key"  
22 \ No newline at end of file 0 \ No newline at end of file
wikilibrasV2/view/conf/selection-workflow-json
@@ -1,39 +0,0 @@ @@ -1,39 +0,0 @@
1 -{  
2 - "facial" : {  
3 - "expressao" : ["passo-1"],  
4 - "transicao" : ["passo-1"],  
5 - "duracao" : ["passo-1"]  
6 - },  
7 - "hand" : {  
8 - "movimento" : {  
9 - "pontual" : {  
10 - "articulacao" : ["passo-1", "passo-2"],  
11 - "configuracao" : ["passo-1", "passo-2"],  
12 - "orientacao" : ["passo-1"]  
13 - },  
14 - "retilineo" : {  
15 - "articulacao-retilineo": ["passo-1", "passo-2", "passo-3", "passo-4"],  
16 - "configuracao-retilineo": ["passo-1", "passo-2", "passo-3", "passo-4"],  
17 - "orientacao-retilineo": ["passo-1", "passo-2"]  
18 - },  
19 - "circular" : {  
20 - "articulacao" : ["passo-1", "passo-2"],  
21 - "configuracao" : ["passo-1", "passo-2"],  
22 - "orientacao" : ["passo-1"],  
23 - "plano": ["passo-1"],  
24 - "raio" : ["passo-1"],  
25 - "velocidade" : ["passo-1"],  
26 - "sentido_inverso" : ["passo-1"]  
27 - },  
28 - "semicircular" : {  
29 - "articulacao" : ["passo-1", "passo-2"],  
30 - "configuracao" : ["passo-1", "passo-2"],  
31 - "orientacao" : ["passo-1"],  
32 - "plano": ["passo-1"],  
33 - "raio" : ["passo-1"],  
34 - "velocidade" : ["passo-1"],  
35 - "sentido_inverso" : ["passo-1"]  
36 - }  
37 - }  
38 - }  
39 -}  
40 \ No newline at end of file 0 \ No newline at end of file
wikilibrasV2/view/css/articulation.css
@@ -1,110 +0,0 @@ @@ -1,110 +0,0 @@
1 -.gray-background {  
2 - background-repeat: no-repeat;  
3 - background-size: 67% 95%, 100% 100%;  
4 - min-width: 285px;  
5 - min-height: 361px  
6 -}  
7 -  
8 -.selection-panel-body[mainConfig=right-hand] .gray-front-avatar {  
9 - background-image: url(../img/pa/gray-front-avatar.png), url(../img/pa/default-base.png);  
10 - background-position: 105px 15px, 0 0;  
11 -}  
12 -  
13 -.selection-panel-body[mainConfig=left-hand] .gray-front-avatar {  
14 - background-image: url(../img/pa/gray-front-avatar.png), url(../img/pa/default-base.png);  
15 - background-position: 2px 15px, 0 0;  
16 -}  
17 -  
18 -.gray-side-avatar {  
19 - background-image: url(../img/pa/gray-side-avatar.png), url(../img/pa/default-base.png);  
20 - background-position: center 15px, 0 0;  
21 -}  
22 -  
23 -.module-x-y {  
24 - display: none  
25 -}  
26 -  
27 -.module-x-y.active {  
28 - display: block  
29 -}  
30 -  
31 -.grid {  
32 - position: relative  
33 -}  
34 -  
35 -.grid .grid-selectors {  
36 - width: 315px;  
37 - height: 361px;  
38 - margin: 5%;  
39 - margin-left: 3%;  
40 - z-index: 10  
41 -}  
42 -  
43 -.selection-panel-body[mainConfig=right-hand] .grid .grid-selectors .grid-row {  
44 - height: 10%;  
45 - padding-top: 4%;  
46 - text-align: justify;  
47 - z-index: 20  
48 -}  
49 -  
50 -.selection-panel-body[mainConfig=left-hand] .grid .grid-selectors .grid-row {  
51 - height: 10%;  
52 - padding-top: 4%;  
53 - margin-left: 13%;  
54 - text-align: justify;  
55 - z-index: 20  
56 -}  
57 -  
58 -.grid .grid-selectors .grid-row .ball-selector {  
59 - background-color: #A0D0E8;  
60 - border-radius: 50%;  
61 - z-index: 100;  
62 - width: 10px;  
63 - height: 10px;  
64 - display: inline-block;  
65 - margin-right: 3.3%;  
66 - float: left;  
67 -}  
68 -  
69 -.grid .grid-selectors .grid-row .ball-selector .point-selector {  
70 - margin-left: -.5px;  
71 - margin-top: -7.5px  
72 -}  
73 -  
74 -.grid .avatar-base {  
75 - position: absolute;  
76 - width: 100%;  
77 - height: 100%;  
78 - z-index: 0;  
79 - top: 0;  
80 - left: 0  
81 -}  
82 -  
83 -.grid .grid-selectors .grid-row .ball-selector.active,  
84 -.grid .grid-selectors .grid-row .ball-selector:hover {  
85 - box-shadow: 0 0 10px #fff  
86 -}  
87 -  
88 -.grid .grid-selectors .grid-row .ball-selector:hover {  
89 - cursor: pointer  
90 -}  
91 -  
92 -.actions .btn {  
93 - margin-top: 15px  
94 -}  
95 -  
96 -.selection-panel-body[mainConfig=right-hand] .module-z .grid-selectors .grid-row,  
97 -.selection-panel-body[mainConfig=left-hand] .module-z .grid-selectors .grid-row {  
98 - margin-right: 58%;  
99 - padding-top: 0%;  
100 - height: 8%  
101 -}  
102 -  
103 -.module-z .grid-selectors .grid-row .ball-selector {  
104 - float: right;  
105 - margin-right: 15%  
106 -}  
107 -  
108 -.module-z .grid-selectors .grid-row .ball-selector:nth-last-of-type(1) {  
109 - margin-right: 15%  
110 -}  
111 \ No newline at end of file 0 \ No newline at end of file
wikilibrasV2/view/css/main.css
@@ -1,571 +0,0 @@ @@ -1,571 +0,0 @@
1 -@import url("articulation.css");  
2 -@import url("submit-sign.css");  
3 -@import url("teached-signs.css");  
4 -@import url("ranking.css");  
5 -@import url("tutorial.css");  
6 -  
7 -/* Main */  
8 -body nav.navbar:first-child {  
9 - display: none;  
10 -}  
11 -  
12 -.navbar-wl .navbar-nav {  
13 - padding-left: 60px;  
14 -}  
15 -  
16 -footer {  
17 - display: none;  
18 -}  
19 -  
20 -@font-face {  
21 - font-family: 'Titillium Web';  
22 - src: url('../fonts/titilliumweb/TitilliumWeb-SemiBold.ttf') format('truetype');  
23 -}  
24 -  
25 -h1, h2, h3, h4, h5, h6, h7, h8 {  
26 - color: #4e7ebf;  
27 - font-family: 'Titillium Web', sans-serif;  
28 -}  
29 -  
30 -body {  
31 - background: -webkit-linear-gradient(left, #92bbe5, #ddeeff, #92bbe5);  
32 - background: -o-linear-gradient(right, #92bbe5, #ddeeff, #92bbe5);  
33 - background: -moz-linear-gradient(right, #92bbe5, #ddeeff, #92bbe5);  
34 - background: linear-gradient(to right, #92bbe5, #ddeeff, #92bbe5);  
35 -}  
36 -  
37 -/* Nav-bar */  
38 -.wl-logo {  
39 - position: fixed;  
40 - top: 8px;  
41 - z-index: 9999;  
42 -}  
43 -  
44 -.wl-logo img {  
45 - width: 80px;  
46 - height: 80px;  
47 -}  
48 -  
49 -.navbar-wl {  
50 - z-index: 9998;  
51 - position: fixed;  
52 - top: 0;  
53 - width: 100%;  
54 - margin: 0;  
55 - left: 0;  
56 - background-color: rgba(43, 40, 41, 0.95);  
57 - opacity: 0.95;  
58 -}  
59 -  
60 -.navbar-wl .navbar-collapse.in .nav {  
61 - padding-top: 35px;  
62 -}  
63 -  
64 -.navbar-default .navbar-nav>li>a {  
65 - color: #ffffff;  
66 -}  
67 -  
68 -@media screen and (max-width: 768px) {  
69 - .navbar-default .navbar-nav .open .dropdown-menu>li>a {  
70 - color: #ffffff;  
71 - }  
72 -}  
73 -  
74 -.col-centered {  
75 - display: block;  
76 - float: none;  
77 - margin: 0px auto;  
78 -}  
79 -  
80 -.btn-default {  
81 - background-color: #8a76e7;  
82 - border-radius: 5px;  
83 - border-bottom-color: #6958b4;  
84 - border-bottom-width: 3px;  
85 - border-bottom-style: solid;  
86 - font-weight: bold;  
87 -}  
88 -  
89 -.btn-default.disabled {  
90 - border-bottom-color: #697284;  
91 - border-bottom-width: 3px;  
92 - border-bottom-style: solid;  
93 -}  
94 -  
95 -.icon_container {  
96 - cursor: default;  
97 - padding: 0px;  
98 - z-index: 1000;  
99 -}  
100 -  
101 -.icon_container:hover {  
102 - cursor: pointer;  
103 -}  
104 -  
105 -#main-container {  
106 - padding-top: 42px;  
107 -}  
108 -  
109 -#main-container .modal {  
110 - top: 80px;  
111 -}  
112 -  
113 -#main-container .tutorial-info {  
114 - margin-top: 0px;  
115 -}  
116 -  
117 -  
118 -.sub-main-container {  
119 - display: none;  
120 -}  
121 -  
122 -#teach-container {  
123 - display: block;  
124 -}  
125 -  
126 -#initial-screen {  
127 - display: none;  
128 - padding-top: 40px;  
129 -}  
130 -  
131 -#configuration-screen {  
132 - display: none;  
133 -}  
134 -  
135 -#render-screen {  
136 - display: none;  
137 -}  
138 -  
139 -#thanks-screen {  
140 - display: none;  
141 -}  
142 -  
143 -.video-body-main {  
144 - height: 100%;  
145 - width: 100%;  
146 -}  
147 -  
148 -.video-border {  
149 - border-style: solid;  
150 - border-color: #b1cdeb;  
151 - border-radius: 5px;  
152 - border-width: 5px;  
153 -}  
154 -  
155 -/* Reference Video */  
156 -#maximize-icon-container {  
157 - display: none;  
158 -}  
159 -  
160 -#ref-video-container {  
161 - padding: 0px 10px 0px 0px;  
162 -}  
163 -  
164 -#ref-video-panel {  
165 - display: inline-block;  
166 - padding: 0px 0px 50px 0px;  
167 -}  
168 -  
169 -.ref-video {  
170 - background-color: #000000;  
171 -}  
172 -  
173 -#initial-screen .ref-video {  
174 - max-height: 350px;  
175 -}  
176 -  
177 -#configuration-screen .ref-video {  
178 - max-height: 250px;  
179 -}  
180 -  
181 -/* Avatar Container */  
182 -#avatar-facial {  
183 - display: none;  
184 -}  
185 -  
186 -#avatar-right-hand {  
187 - display: none;  
188 -}  
189 -  
190 -#avatar-left-hand {  
191 - display: none;  
192 -}  
193 -  
194 -#avatar-body-face {  
195 - position: absolute;  
196 - left: 277px;  
197 - z-index: 1000;  
198 -}  
199 -  
200 -#avatar-body-right-hand {  
201 - position: absolute;  
202 - top: 270px;  
203 - left: 115px;  
204 - z-index: 1000;  
205 - left: 115px;  
206 -}  
207 -  
208 -#avatar-body-left-hand {  
209 - position: absolute;  
210 - top: 270px;  
211 - left: 427px;  
212 - z-index: 1000;  
213 - left: 427px;  
214 -}  
215 -  
216 -#facial-edit {  
217 - top: 110px;  
218 - left: 410px;  
219 -}  
220 -  
221 -#right-hand-edit {  
222 - top: 465px;  
223 - left: 140px;  
224 -}  
225 -  
226 -#left-hand-edit {  
227 - top: 465px;  
228 - left: 470px;  
229 -}  
230 -  
231 -.edit-container {  
232 - position: relative;  
233 - float: left;  
234 - width: 0px;  
235 - z-index: 1000;  
236 -}  
237 -  
238 -#avatar-container .check-icon {  
239 - display: none;  
240 - padding-bottom: 10px;  
241 -}  
242 -  
243 -#avatar-container {  
244 - overflow: hidden;  
245 -}  
246 -  
247 -.avatar-container-zoom-in {  
248 - height: 610px;  
249 -}  
250 -  
251 -.avatar-img {  
252 - height: 100%;  
253 - -webkit-transition: width 1.5s ease-in-out, height 1.5s ease-in-out;  
254 - -moz-transition: width 1.5s ease-in-out, height 1.5s ease-in-out;  
255 - -o-transition: width 1.5s ease-in-out, height 1.5s ease-in-out;  
256 - -ms-transition: width 1.5s ease-in-out, height 1.5s ease-in-out;  
257 - transition: width 1.5s ease-in-out, height 1.5s ease-in-out;  
258 - -webkit-transition: width 1.5s ease-in-out, height 1.5s ease-in-out;  
259 -}  
260 -  
261 -.avatar-img-zoom-in {  
262 - position: relative;  
263 - height: 150%;  
264 - left: -35px;  
265 -}  
266 -  
267 -.avatar-img-zoom-out {  
268 - display: block;  
269 - position: relative;  
270 - height: 100%;  
271 - left: 0px;  
272 - margin-left: 103px;  
273 -}  
274 -  
275 -.avatar-facial-img-zoom-in {  
276 - position: relative;  
277 - height: 110%;  
278 - left: -35px;  
279 -}  
280 -  
281 -.avatar-right-hand-img-zoom-in {  
282 - position: relative;  
283 - height: 115%;  
284 - left: -27px;  
285 -}  
286 -  
287 -.avatar-left-hand-img-zoom-in {  
288 - position: relative;  
289 - height: 115%;  
290 - left: -27px;  
291 -}  
292 -  
293 -/* Configuration Panel */  
294 -#configuration-menu {  
295 - background-color: #556575;  
296 - border-style: solid;  
297 - border-color: #9cbfe3;  
298 - border-radius: 6px;  
299 - border-width: 2px;  
300 - padding: 10px 10px 5px 5px;  
301 -}  
302 -  
303 -.configuration-menu-label {  
304 - color: #FFFFFF;  
305 - font-family: 'Titillium Web', sans-serif;  
306 - font-size: 14px;  
307 -}  
308 -  
309 -/* Selection Panel */  
310 -#selection-panel {  
311 - display: none;  
312 -}  
313 -  
314 -#facial-selection {  
315 - display: none;  
316 -}  
317 -  
318 -#ready-button {  
319 - position: relative;  
320 - top: -80px;  
321 -}  
322 -  
323 -.panel-header {  
324 - padding: 5px 0px 10px 3px;  
325 -}  
326 -  
327 -.selection-panel-body {  
328 - position: relative;  
329 - border-radius: 5px;  
330 - overflow-y: initial !important;  
331 - width: 360px;  
332 - overflow-y: scroll;  
333 - max-height: 100%;  
334 - padding: 8px;  
335 - background-color: rgba(79, 98, 117, 0.1);  
336 - margin-bottom: 10px;  
337 -}  
338 -  
339 -.selection-panel-inner-body {  
340 - height: 430px;  
341 - overflow-y: auto;  
342 - padding: 5px;  
343 -}  
344 -  
345 -.x {  
346 - position: absolute;  
347 - right: 0px;  
348 - top: -15px;  
349 - width: 35px;  
350 - height: 35px;  
351 - border-radius: 100%;  
352 - content: "";  
353 - z-index: 1000;  
354 -}  
355 -  
356 -.x::before, .x::after {  
357 - position: absolute;  
358 - top: 14px;  
359 - left: 7px;  
360 - width: 20px;  
361 - height: 5px;  
362 - content: "";  
363 - background-color: #ffffff;  
364 -}  
365 -  
366 -.x::before {  
367 - -ms-transform: rotate(-45deg);  
368 - -webkit-transform: rotate(-45deg);  
369 - transform: rotate(-45deg);  
370 -}  
371 -  
372 -.x::after {  
373 - -ms-transform: rotate(45deg);  
374 - -webkit-transform: rotate(45deg);  
375 - transform: rotate(45deg);  
376 -}  
377 -  
378 -ul.rig {  
379 - list-style: none;  
380 - text-align: center;  
381 - margin-left: -15%;  
382 -}  
383 -  
384 -ul.rig li {  
385 - display: inline-block;  
386 - list-style-type: circle;  
387 - margin: 1%;  
388 - vertical-align: middle;  
389 -}  
390 -  
391 -ul.rig.columns-2 li {  
392 - width: 45%;  
393 - font-size: 17px;  
394 -}  
395 -  
396 -ul.rig.columns-3 li {  
397 - width: 30%;  
398 -}  
399 -  
400 -ul.rig.columns-4 li {  
401 - width: 20%;  
402 -}  
403 -  
404 -.selection-panel-body[mainconfig=right-hand] ul.rig.columns-1 li,  
405 - .selection-panel-body[mainconfig=left-hand] ul.rig.columns-1 li {  
406 - width: 60%;  
407 -}  
408 -  
409 -.box-panel-option, .video-panel-option {  
410 - max-width: 100%;  
411 - border-radius: 5px;  
412 - border: 3px solid #80A8D2;  
413 - box-sizing: border-box;  
414 - -moz-box-sizing: border-box;  
415 - -webkit-box-sizing: border-box;  
416 - background-color: #c1c9d0;  
417 - cursor: pointer;  
418 -}  
419 -  
420 -.box-panel-option:hover, .box-panel-option[select=true],  
421 - .video-panel-option[select=true], .video-panel-option-hover {  
422 - border-color: #9678b0;  
423 -}  
424 -  
425 -.box-panel-option {  
426 - border-color: #80A8D2;  
427 -}  
428 -  
429 -/* Facial Expression Configuration */  
430 -#facial-expression {  
431 - display: none;  
432 -}  
433 -  
434 -#facial-expression-velocity {  
435 - display: none;  
436 -}  
437 -  
438 -#facial-expression-duration {  
439 - display: none;  
440 -}  
441 -  
442 -.single-column-option-container .video-panel-option {  
443 - height: 100px;  
444 -}  
445 -  
446 -.single-column-option-container {  
447 - padding-bottom: 20px;  
448 -}  
449 -  
450 -.single-column-option {  
451 - display: inline-block;  
452 - vertical-align: middle;  
453 - padding-right: 25px;  
454 -}  
455 -  
456 -/* Sub-Configuration Panel */  
457 -.subconfiguration-options {  
458 - overflow-x: scroll;  
459 - white-space: nowrap;  
460 -}  
461 -  
462 -.subconfiguration-options-container {  
463 - height: 45px;  
464 - overflow: hidden;  
465 -}  
466 -  
467 -.subconfiguration-panel {  
468 - display: none;  
469 - padding: 10px;  
470 - margin-top: 10px;  
471 - margin-bottom: 10px;  
472 - background-color: #c1d5e8;  
473 - border: solid 3px rgba(128, 168, 210, 0.75);  
474 - border-radius: 5px;  
475 -}  
476 -  
477 -.subconfiguration-options .icon_container[active=false] {  
478 - display: none;  
479 -}  
480 -  
481 -.subconfiguration-options .icon_container[active=true] {  
482 - display: inline-block;  
483 -}  
484 -  
485 -.subconfiguration-options .icon_container {  
486 - display: inline-block;  
487 - padding-left: 8px;  
488 - padding-right: 8px;  
489 -}  
490 -  
491 -.arrow {  
492 - padding-top: 5px;  
493 -}  
494 -  
495 -.arrow[name=right-arrow] {  
496 - padding-left: 10px;  
497 -}  
498 -  
499 -/* Hand Configuration */  
500 -.rectilinear-point-label {  
501 - font-weight: bold;  
502 - color: #000000;  
503 -}  
504 -  
505 -/* Render Screen */  
506 -#render-avatar {  
507 - display: none;  
508 -}  
509 -  
510 -#render-main {  
511 - height: 542px;  
512 -}  
513 -  
514 -#render-screen .col-sm-12 {  
515 - padding-left: 0px;  
516 -}  
517 -  
518 -#render-loading {  
519 - display: none;  
520 -}  
521 -  
522 -#loading-container {  
523 - position: relative;  
524 - height: 407px;  
525 -}  
526 -  
527 -#render-loading img {  
528 - width: 100px;  
529 - height: 100px;  
530 - position: absolute;  
531 - top: 0;  
532 - bottom: 0;  
533 - left: 0;  
534 - right: 0;  
535 - margin: auto;  
536 -}  
537 -  
538 -#render-ref video {  
539 - height: 407px;  
540 -}  
541 -  
542 -#approval-msg {  
543 - display: none;  
544 - margin: 0px;  
545 - padding-left: 14px;  
546 -}  
547 -  
548 -/* Thanks Screen */  
549 -#thanks-screen h3 {  
550 - margin-bottom: 0px;  
551 -}  
552 -  
553 -#thanks-screen img {  
554 - width: 100%;  
555 -}  
556 -  
557 -#thanks-screen a {  
558 - text-decoration: underline;  
559 -}  
560 -  
561 -#completed-all-task-msg {  
562 - display: none;  
563 -}  
564 -  
565 -#completed-task-msg h6 {  
566 - margin: 0px 0px 60px 0px;  
567 -}  
568 -  
569 -#completed-all-task-msg h6 {  
570 - margin: 0px 0px 10px 0px;  
571 -}  
wikilibrasV2/view/css/ranking.css
@@ -1,121 +0,0 @@ @@ -1,121 +0,0 @@
1 -@font-face {  
2 - font-family: 'Roboto';  
3 - src: url('../fonts/roboto/Roboto-Light.ttf') format('truetype');  
4 -}  
5 -  
6 -#ranking-container {  
7 - background-color: #ffffff;  
8 - border-radius: 5px;  
9 - -moz-border-radius: 5px;  
10 - -webkit-border-radius: 5px;  
11 - padding-right: 0px;  
12 - overflow: hidden;  
13 - font-family: 'Roboto';  
14 -}  
15 -  
16 -#ranking-info-container {  
17 - padding-left: 0px;  
18 -}  
19 -  
20 -#ranking-info-container .title {  
21 - color: #000000;  
22 - font-size: 50px;  
23 -}  
24 -  
25 -#ranking-info-container .avatar-info {  
26 - text-align: center;  
27 - padding-top: 30px;  
28 -}  
29 -  
30 -#ranking-info-container .avatar-container {  
31 - display: none;  
32 -}  
33 -  
34 -#ranking-info-container .avatar-info img {  
35 - width: 100%;  
36 -}  
37 -  
38 -#ranking-info-container .achievement-info {  
39 - color: #028c12;  
40 -}  
41 -  
42 -#ranking-info-container .progress-container {  
43 - padding-left: 100px;  
44 - margin-top: 10px;  
45 -}  
46 -  
47 -#ranking-info-container .achievements-container {  
48 - position: relative;  
49 - padding: 10px 0px 0px 0px;  
50 - word-wrap: break-word;  
51 -}  
52 -  
53 -#ranking-info-container .progress-label {  
54 - position: absolute;  
55 - left: 0px;  
56 -}  
57 -  
58 -#ranking-info-container .done-tasks {  
59 - color: #84DC76;  
60 -}  
61 -  
62 -#ranking-info-container .total-tasks {  
63 - color: #f0ad4e;  
64 -}  
65 -  
66 -#ranking-info-container .tooltip-inner {  
67 - font-size: 16px;  
68 - max-width: 220px;  
69 -}  
70 -  
71 -#leaderboard-container {  
72 - background-color: #fefcfc;  
73 - padding: 0px;  
74 - min-height: 560px;  
75 -}  
76 -  
77 -#leaderboard-container table {  
78 - margin-bottom: 0px;  
79 -}  
80 -  
81 -#leaderboard-container .table-striped>tbody>tr:nth-of-type(odd) {  
82 - background-color: #f1f2f2;  
83 -}  
84 -  
85 -#leaderboard-container .table-striped>tbody>tr:hover {  
86 - background-color: #e0e0e0;  
87 -}  
88 -  
89 -#leaderboard-container .table-striped>tbody>tr.highlight {  
90 - background-color: #fbefa3;  
91 -}  
92 -  
93 -#leaderboard-container .table-striped>tbody>tr.highlight:hover {  
94 - background-color: #f7e783;  
95 -}  
96 -  
97 -#leaderboard-container th {  
98 - text-align: center;  
99 - border: 0px;  
100 - padding-bottom: 15px;  
101 -}  
102 -  
103 -#leaderboard-container td {  
104 - text-align: center;  
105 - border: 0px;  
106 -}  
107 -  
108 -#leaderboard-container td:nth-of-type(1), #leaderboard-container td:nth-of-type(2)  
109 - {  
110 - width: 75px;  
111 -}  
112 -  
113 -#leaderboard-container td:nth-of-type(2), #leaderboard-container th:nth-of-type(2),  
114 - #leaderboard-container td:nth-of-type(3), #leaderboard-container th:nth-of-type(3)  
115 - {  
116 - text-align: left;  
117 -}  
118 -  
119 -#leaderboard-container th:nth-of-type(3) img {  
120 - padding-left: 20px;  
121 -}  
122 \ No newline at end of file 0 \ No newline at end of file
wikilibrasV2/view/css/submit-sign.css
@@ -1,38 +0,0 @@ @@ -1,38 +0,0 @@
1 -.submit-sign-form {  
2 - background-color: #556575;  
3 - color: #FFFFFF;  
4 - padding: 30px;  
5 - border-radius: 6px;  
6 - margin-bottom: 20px;  
7 -}  
8 -  
9 -.submit-sign-form .btn {  
10 - margin-left: 7px;  
11 -}  
12 -  
13 -#upload-progress-container {  
14 - display: none;  
15 - padding-top: 15px;  
16 -}  
17 -  
18 -#upload-progress {  
19 - margin-bottom: 0px;  
20 - -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);  
21 - box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);  
22 -}  
23 -  
24 -#submit-sign-container h2 {  
25 - margin-top: 0px;  
26 -}  
27 -  
28 -#upload-success-msg {  
29 - display: none;  
30 -}  
31 -  
32 -.radio-inline .wl-national-sign-radio {  
33 - margin-top: 12px;  
34 -}  
35 -  
36 -#input-state-container, #input-city-container {  
37 - display: none;  
38 -}  
wikilibrasV2/view/css/teached-signs.css
@@ -1,32 +0,0 @@ @@ -1,32 +0,0 @@
1 -#teached-signs-container .teached-signs-msg[type=one] {  
2 - display: none;  
3 -}  
4 -  
5 -#teached-signs-container .teached-signs-msg[type=more] {  
6 - display: none;  
7 -}  
8 -  
9 -#teached-signs-container .col-btn {  
10 - padding-right: 5px;  
11 - margin-bottom: 10px;  
12 -}  
13 -  
14 -#teached-signs-container .modal-xlg {  
15 - width: 100%;  
16 -}  
17 -  
18 -#teached-signs-container .modal-content {  
19 - background: none;  
20 - border: none;  
21 - box-shadow: none;  
22 -}  
23 -  
24 -#teached-sign-name {  
25 - color: #ffffff;  
26 - font-weight: bold;  
27 -}  
28 -  
29 -#teached-sign-video-container video {  
30 - height: 100%;  
31 - width: 100%;  
32 -}  
33 \ No newline at end of file 0 \ No newline at end of file
wikilibrasV2/view/css/tutorial.css
@@ -1,3 +0,0 @@ @@ -1,3 +0,0 @@
1 -#tutorial-container .modal-title {  
2 - color: #34495e;  
3 -}  
4 \ No newline at end of file 0 \ No newline at end of file
wikilibrasV2/view/fonts/roboto/Roboto-Black.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-BlackItalic.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-Bold.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-BoldItalic.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-Italic.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-Light.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-LightItalic.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-Medium.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-MediumItalic.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-Regular.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-Thin.ttf
No preview for this file type
wikilibrasV2/view/fonts/roboto/Roboto-ThinItalic.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-Black.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-Bold.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-BoldItalic.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-ExtraLight.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-ExtraLightItalic.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-Italic.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-Light.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-LightItalic.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-Regular.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-SemiBold.ttf
No preview for this file type
wikilibrasV2/view/fonts/titilliumweb/TitilliumWeb-SemiBoldItalic.ttf
No preview for this file type
wikilibrasV2/view/img/avatar-facial-icon-check.png

30.4 KB

wikilibrasV2/view/img/avatar-facial-icon-hover.png

36.9 KB

wikilibrasV2/view/img/avatar-facial-icon.png

30.5 KB

wikilibrasV2/view/img/avatar-facial.png

181 KB

wikilibrasV2/view/img/avatar-left-hand-icon-check.png

17.3 KB

wikilibrasV2/view/img/avatar-left-hand-icon-hover.png

21.1 KB

wikilibrasV2/view/img/avatar-left-hand-icon.png

17 KB

wikilibrasV2/view/img/avatar-left-hand.png

216 KB

wikilibrasV2/view/img/avatar-right-hand-icon-check.png

17.6 KB

wikilibrasV2/view/img/avatar-right-hand-icon-hover.png

21.6 KB

wikilibrasV2/view/img/avatar-right-hand-icon.png

17.3 KB

wikilibrasV2/view/img/avatar-right-hand.png

222 KB

wikilibrasV2/view/img/avatar-thanks.png

135 KB

wikilibrasV2/view/img/avatar.png

129 KB

wikilibrasV2/view/img/big-edit-icon-hover.png

1.87 KB

wikilibrasV2/view/img/big-edit-icon.png

1.86 KB

wikilibrasV2/view/img/check-icon.png

1.05 KB

wikilibrasV2/view/img/circular/md/plano-baixo-esquerda.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-baixo-esquerda.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-baixo-tras.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-baixo-tras.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-cima-direita.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-cima-direita.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-cima-frente.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-cima-frente.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-direita-baixo.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-direita-baixo.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-direita-tras.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-direita-tras.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-esquerda-cima.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-esquerda-cima.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-esquerda-frente.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-esquerda-frente.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-frente-baixo.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-frente-baixo.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-frente-direita.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-frente-direita.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-tras-cima.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-tras-cima.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-tras-esquerda.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/plano-tras-esquerda.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/raio-grande.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/raio-grande.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/raio-normal.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/raio-normal.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/raio-pequeno.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/raio-pequeno.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/sentido-anti-horario.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/sentido-anti-horario.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/sentido-horario.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/sentido-horario.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/velocidade-lento.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/velocidade-lento.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/velocidade-normal.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/velocidade-normal.webm
No preview for this file type
wikilibrasV2/view/img/circular/md/velocidade-rapido.mp4
No preview for this file type
wikilibrasV2/view/img/circular/md/velocidade-rapido.webm
No preview for this file type
wikilibrasV2/view/img/circular/me/plano-baixo-esquerda.mp4
No preview for this file type
wikilibrasV2/view/img/circular/me/plano-baixo-esquerda.webm
No preview for this file type