Commit 288f3938 authored by Vince Tozzi's avatar Vince Tozzi
Browse files

Merge branch 'refactoring_interface' of...

Merge branch 'refactoring_interface' of https://github.com/RedeMocambos/baobaxia into refactoring_relations
parents 22a5750c 27a37ee5
Showing with 2344 additions and 79 deletions
+2344 -79
......@@ -7,6 +7,7 @@ from rest_framework.parsers import JSONParser
from django.contrib.auth.models import User, check_password
from django.utils.translation import ugettext_lazy as _
from django.contrib.auth.hashers import PBKDF2PasswordHasher
from mocambola.serializers import UserSerializer
from mucua.models import Mucua
......@@ -63,10 +64,8 @@ class FileBackend(object):
serializer.is_valid()
current_user = serializer.object
login_valid = (username == current_user.username)
pwd_valid = check_password(password, current_user.password)
if login_valid and pwd_valid:
logger.info(u"%s %s %s" % (_('User'),
current_mocambola,
......
......@@ -6,27 +6,122 @@
* base
*/
html { font-family: sans-serif}
body {margin: 0; padding: 0}
#container {width: 100%; height: 87px; margin: auto; background-color: #d5c590; height: 100%}
#header {background: #fff url('../images/cabecalho-meio.png') repeat-x left top; }
#cabecalho .esq {background-image: url('../images/cabecalho-esq.png'); width: 164px; height: 87px; float: left; }
#cabecalho .dir {background-image: url('../images/cabecalho-dir.png'); width: 725px; height: 87px; float: right; } /*TODO: fix quando redimensiona para tela pequena (celular) */
#content {min-height: 400px}
#footer {clear: both; background: #ddd}
body {margin: 0; padding: 0; background-color: #D5C590}
html, body, #container {height: 100% }
#container {margin: 0 auto;}
#content {float: left; width: 60%; padding: 10px}
#sidebar {float: left; width: 30%; height: 70%; max-width: 400px !important; margin-right: 5%; background-color: #fff; padding: 10px }
#footer {clear: both; height: 40px; position: fixed; z-index: 10; background-color: #D5C590; width: 100%; bottom: -2px; border-top: #fff solid 2px; }
a {text-decoration: none;}
/*
* general
*/
.inline {float: left}
.bold {font-weight: bold}
/*
* header
*/
#cabecalho {height: 150px;}
#cabecalho img { margin-top: 25px; margin-left: 100px; float: left}
#title-mucua { color: #f4c00a; float: left; margin-top: 70px; margin-left: 20px; font-size: 14px}
#header {width: 100%;height: 180px; background-color: #fff }
#header-top {background: #fff url('../images/cabecalho.png') no-repeat fixed center top; height: 106px; width: 1113px; margin: 0 auto }
#header-top img { margin-top: 25px; margin-left: 70px}
.posicoes {display: none}
h3 #nome_mucua { color: #e33; }
.home #header {background-image: url('../images/login-home-header.png'); background-repeat: no-repeat; background-size: 100% auto; height: 50%}
.home #content { height: 50%; background: url('../images/home-login-content.png') no-repeat; background-size: 100% auto; padding:0; width: 100%}
.home #content .left {width:45%; float: left; height: 100%}
.home #content .middle {width:15%; float: left; height: 100%; }
.home #content .right {width:40%; float: left; height: 100%; font-size: 13px; }
.home #footer {display: none}
#menu {margin-left: 35%; margin-top: 50px}
.menu-itens li {display: inline-block; border-radius: 8px; background-color: #d5c590; border: 2px solid #fff; color: #fff; font-size: 18px; font-weight: bold; padding: 4px; margin: 4px;}
.menu-itens li a {color: #fff; text-decoration: none; }
/*
* media view, edit & publish
* login
*/
.login #content .right #form_login .first-line div {float: left; }
.login #content .right #form_login p,
.login #content .right #form_login span,
.login #content .right #form_login a {color: #2f7f37; font-weight: bold; margin: 6px; margin-bottom:0; text-decoration: none}
.login #content .right #form_login .second-line p {color: #d1c188 }
.login #content .right #form_login .second-line input {border: #d1c188 solid 1px }
.login #content .right #form_login .second-line a {color: #a4945c }
.login #content .right #form_login img {vertical-align: bottom; margin: 2px}
.login #content .right #form_login .second-line div {clear: both; color: #2f7f37; font-weight: bold }
.login #content .right #form_login input,
.login #content .right #form_login select {border: #81bc5f solid 1px; border-radius: 4px; font-size: 10px; width: 100px; margin: 5px }
.login input.submit {width: 30px !important }
.login #message-area {color: #f66 !important}
/*
* footer
*/
#usage-content {padding: 6px; width: 1000px; font-size: 10px; font-weight: bold }
#usage-content .usage-bar,
#usage-content .legend {width: 700px; height: 15px; padding-left: 6px }
#usage-content .legend .used {color: #36a; width: 150px}
#usage-content .legend .demanded {color: #c33; width: 150px}
#usage-content .usage-bar .the-bar {border: 3px solid #fff; height: 9px; width: 700px}
#usage-content .usage-bar .the-bar .used {background-color: #36a; height: 9px}
#usage-content .usage-bar .the-bar .demanded {background-color: #c33; height: 9px}
#usage-content .total {width: 100px; color: #385; padding-left: 6px; }
/*
* sidebar
*/
#user-profile {height: 50px}
#sidebar #user-profile img {float: left; width: 45px; height: 45px}
#sidebar #user-profile h4 {float: left; text-decoration: none; color: #D5C590; margin: 0 auto; padding-top: 12px; padding-left: 8px}
#user-profile a.logout {font-size:11px; color:#D5C590; float: right}
#place-profile {padding-top: 5px; text-align: center; color: #aac0ca }
#place-profile a {text-decoration: none}
#place-profile .link a {color: #005880; font-weight: bold}
#place-profile div {padding: 3px}
#place-profile .more-info a {border-radius: 4px; border: 2px solid #aac0ca; color: #aac0ca; padding-left: 6px; padding-right: 6px; }
#cloud {padding: 20px}
#cloud div {display: inline}
#cloud div a {color: #aac0ca; font-weight: bold}
/*
* visualizacoes de media
*/
.destaques {clear: both}
.destaques h3.title {color: #fff; font-size: 26px; margin: 4px}
/*
* media grid
*/
.media_box { float: left; width: 192px; height: 170px; background: #f4efdd; margin: 5px; font-size: 12px; border-radius: 5px; padding: 10px; text-align: center}
.media_box .result-thumb {width: 192px; height: 130px; background: #aa6}
.media_box .title {font-size: 12px }
.media_box .format_type { color: #aaa; text-transform: uppercase }
.media_box .date {font-size: 10px }
.media_box .format_type {padding: 6px; font-size: 12px}
.media_box .origin {font-size: 10px; color: #aaa; padding-right: 10px }
.media_box .license {color: #b96c;}
.media_box a {color: #2E7E36}
.media_box a:hover {color: #005500}
/*
* functional tags
*/
.video .result-thumb { }
.audio .result-thumb { }
.imagem .result-thumb { } /*background: #f00*/
.arquivo .result-thumb { width: 192px; height: 130px; background: #9c9 }
.video .result-thumb .assist {background-image: url('../images/play.png'); background-repeat: no-repeat; width: 79px; height: 79px; float: left; margin: 26px; margin-left: 58px}
.audio .result-thumb .assist {}
/* COMMENTED EVERYTHING (old template)
* media view, edit & publish
* /
#media_publish, #media_update, #media_view {font-size: 12px}
#media_publish, #media_update, #media_view .title {font-size: 14px}
h3.results-title { color: #fff; padding-left: 20px}
......@@ -76,7 +171,7 @@ div.image_preview {height: 130px; background: url(../images/no-preview-video.png
.modo-edicao {background-color: #a59560; padding: 4px; border-radius: 4px; border: 2px solid #958555; margin: 2px }
.modo-edicao .title {font-size: 20px; font-weight: bold}
/* media publish */
/* media publish * /
#media_publish {}
#media_publish #uuid {color:#999 }
#media_publish #arquivo_passo2, #media_publish #dia_hora, #media_publish #dados_gerais, #media_publish #tags_area, #media_publish #uuid_area {display: none}
......@@ -87,14 +182,14 @@ div.image_preview {height: 130px; background: url(../images/no-preview-video.png
#media_publish #tags_area,
#media_publish #uuid_area { float: left; width: 50% }
/* form progress meter */
/* form progress meter * /
.progress { position:relative; width:400px; border: 1px solid #ddd; padding: 1px; border-radius: 3px; }
.bar { background-color: #B4F5B4; width:0%; height:20px; border-radius: 3px; }
.percent { position:absolute; display:inline-block; top:3px; left:48%; }
/*
* busca / resultados
*/
* /
.caixa_busca { border: 2px solid #a59560; border-radius: 8px; }
#busca-menu .button {float: right; background-image: url('../images/search.png'); width: 27px; height: 27px; cursor: pointer }
......@@ -103,9 +198,10 @@ div.image_preview {height: 130px; background: url(../images/no-preview-video.png
.menu-itens li {display: inline-block; border-radius: 8px; background-color: #d5c590; border: 2px solid #fff; color: #fff; font-size: 18px; font-weight: bold; padding: 4px; margin: 4px;}
.menu-itens li a {color: #fff; text-decoration: none; }
.caixa-resultado-busca {background-color: #eeffaa; padding: 2px; }
.caixa-resultado-busca .nome-termo {margin: 12px; }
.caixa-resultado-busca .nome-termo {margin: 12px; display:inline }
.caixa-resultado-busca a {background-color: #cdde87; padding: 4px; text-decoration: none; font-weight: bold }
.adicionar-termo {font-size: 16px; font-weight: bold; cursor: pointer}
.remover-termo {font-size: 16px; font-weight: bold; cursor: pointer}
#resultado-busca .caixa_busca {}
#media-results-content h4.message {padding: 10px; color: #900}
\ No newline at end of file
#media-results-content h4.message {padding: 10px; color: #900}
*/
\ No newline at end of file
app/django-bbx/bbx/static/images/arroba.png

995 Bytes

app/django-bbx/bbx/static/images/avatar-default.png

2.6 KB

app/django-bbx/bbx/static/images/cabecalho-dir.png

13.4 KB

app/django-bbx/bbx/static/images/cabecalho-esq.png

1.32 KB

app/django-bbx/bbx/static/images/cabecalho-meio.png

145 Bytes

app/django-bbx/bbx/static/images/cabecalho.png

13.4 KB | W: 0px | H: 0px

app/django-bbx/bbx/static/images/cabecalho.png

17.8 KB | W: 0px | H: 0px

app/django-bbx/bbx/static/images/cabecalho.png
app/django-bbx/bbx/static/images/cabecalho.png
app/django-bbx/bbx/static/images/cabecalho.png
app/django-bbx/bbx/static/images/cabecalho.png
  • 2-up
  • Swipe
  • Onion skin
app/django-bbx/bbx/static/images/home-login-content.png

55.3 KB

app/django-bbx/bbx/static/images/login-home-header.png

50.9 KB

app/django-bbx/bbx/static/images/logo.png

11.7 KB | W: 0px | H: 0px

app/django-bbx/bbx/static/images/logo.png

14.6 KB | W: 0px | H: 0px

app/django-bbx/bbx/static/images/logo.png
app/django-bbx/bbx/static/images/logo.png
app/django-bbx/bbx/static/images/logo.png
app/django-bbx/bbx/static/images/logo.png
  • 2-up
  • Swipe
  • Onion skin
app/django-bbx/bbx/static/images/mucua-default.png

12.5 KB

app/django-bbx/bbx/static/images/ponto.png

308 Bytes

......@@ -5,18 +5,30 @@
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<title></title>
<title>Baobáxia</title>
<link rel="stylesheet" type="text/css" href="css/main.css">
</head>
<body>
<body class="home">
<div id="container">
<div id="header"></div>
<div id="content-full">
<div id="content"></div>
<div id="content">
<!-- left -->
<div class="left">
<div></div>
</div>
<!-- end left -->
<!-- middle -->
<div class="middle">
<div>
<img src="images/logo.png"><br/>
</div>
</div>
<!-- end middle -->
</div>
<script data-main="js/main" src="js/lib/require.js"></script>
<div id="footer"></div>
</div>
<div id="footer"></div>
</div>
<script data-main="js/main" src="js/lib/require.js"></script>
</body>
</html>
{
"imagePath": "",
"imagePath": "/images",
"apiUrl": "/api",
"interfaceUrl": "/baobaxia/#",
"defaultMucua": ""
"interfaceUrl": "/bbx/app/django-bbx/bbx/static/#",
"defaultMucua": "namaste-laptop"
}
\ No newline at end of file
/*
* jQuery Form Plugin; v20140218
* http://jquery.malsup.com/form/
* Copyright (c) 2014 M. Alsup; Dual licensed: MIT/GPL
* https://github.com/malsup/form#copyright-and-license
*/
;!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):a("undefined"!=typeof jQuery?jQuery:window.Zepto)}(function(a){"use strict";function b(b){var c=b.data;b.isDefaultPrevented()||(b.preventDefault(),a(b.target).ajaxSubmit(c))}function c(b){var c=b.target,d=a(c);if(!d.is("[type=submit],[type=image]")){var e=d.closest("[type=submit]");if(0===e.length)return;c=e[0]}var f=this;if(f.clk=c,"image"==c.type)if(void 0!==b.offsetX)f.clk_x=b.offsetX,f.clk_y=b.offsetY;else if("function"==typeof a.fn.offset){var g=d.offset();f.clk_x=b.pageX-g.left,f.clk_y=b.pageY-g.top}else f.clk_x=b.pageX-c.offsetLeft,f.clk_y=b.pageY-c.offsetTop;setTimeout(function(){f.clk=f.clk_x=f.clk_y=null},100)}function d(){if(a.fn.ajaxSubmit.debug){var b="[jquery.form] "+Array.prototype.join.call(arguments,"");window.console&&window.console.log?window.console.log(b):window.opera&&window.opera.postError&&window.opera.postError(b)}}var e={};e.fileapi=void 0!==a("<input type='file'/>").get(0).files,e.formdata=void 0!==window.FormData;var f=!!a.fn.prop;a.fn.attr2=function(){if(!f)return this.attr.apply(this,arguments);var a=this.prop.apply(this,arguments);return a&&a.jquery||"string"==typeof a?a:this.attr.apply(this,arguments)},a.fn.ajaxSubmit=function(b){function c(c){var d,e,f=a.param(c,b.traditional).split("&"),g=f.length,h=[];for(d=0;g>d;d++)f[d]=f[d].replace(/\+/g," "),e=f[d].split("="),h.push([decodeURIComponent(e[0]),decodeURIComponent(e[1])]);return h}function g(d){for(var e=new FormData,f=0;f<d.length;f++)e.append(d[f].name,d[f].value);if(b.extraData){var g=c(b.extraData);for(f=0;f<g.length;f++)g[f]&&e.append(g[f][0],g[f][1])}b.data=null;var h=a.extend(!0,{},a.ajaxSettings,b,{contentType:!1,processData:!1,cache:!1,type:i||"POST"});b.uploadProgress&&(h.xhr=function(){var c=a.ajaxSettings.xhr();return c.upload&&c.upload.addEventListener("progress",function(a){var c=0,d=a.loaded||a.position,e=a.total;a.lengthComputable&&(c=Math.ceil(d/e*100)),b.uploadProgress(a,d,e,c)},!1),c}),h.data=null;var j=h.beforeSend;return h.beforeSend=function(a,c){c.data=b.formData?b.formData:e,j&&j.call(this,a,c)},a.ajax(h)}function h(c){function e(a){var b=null;try{a.contentWindow&&(b=a.contentWindow.document)}catch(c){d("cannot get iframe.contentWindow document: "+c)}if(b)return b;try{b=a.contentDocument?a.contentDocument:a.document}catch(c){d("cannot get iframe.contentDocument: "+c),b=a.document}return b}function g(){function b(){try{var a=e(r).readyState;d("state = "+a),a&&"uninitialized"==a.toLowerCase()&&setTimeout(b,50)}catch(c){d("Server abort: ",c," (",c.name,")"),h(A),w&&clearTimeout(w),w=void 0}}var c=l.attr2("target"),f=l.attr2("action"),g="multipart/form-data",j=l.attr("enctype")||l.attr("encoding")||g;x.setAttribute("target",o),(!i||/post/i.test(i))&&x.setAttribute("method","POST"),f!=m.url&&x.setAttribute("action",m.url),m.skipEncodingOverride||i&&!/post/i.test(i)||l.attr({encoding:"multipart/form-data",enctype:"multipart/form-data"}),m.timeout&&(w=setTimeout(function(){v=!0,h(z)},m.timeout));var k=[];try{if(m.extraData)for(var n in m.extraData)m.extraData.hasOwnProperty(n)&&(a.isPlainObject(m.extraData[n])&&m.extraData[n].hasOwnProperty("name")&&m.extraData[n].hasOwnProperty("value")?k.push(a('<input type="hidden" name="'+m.extraData[n].name+'">').val(m.extraData[n].value).appendTo(x)[0]):k.push(a('<input type="hidden" name="'+n+'">').val(m.extraData[n]).appendTo(x)[0]));m.iframeTarget||q.appendTo("body"),r.attachEvent?r.attachEvent("onload",h):r.addEventListener("load",h,!1),setTimeout(b,15);try{x.submit()}catch(p){var s=document.createElement("form").submit;s.apply(x)}}finally{x.setAttribute("action",f),x.setAttribute("enctype",j),c?x.setAttribute("target",c):l.removeAttr("target"),a(k).remove()}}function h(b){if(!s.aborted&&!F){if(E=e(r),E||(d("cannot access response document"),b=A),b===z&&s)return s.abort("timeout"),y.reject(s,"timeout"),void 0;if(b==A&&s)return s.abort("server abort"),y.reject(s,"error","server abort"),void 0;if(E&&E.location.href!=m.iframeSrc||v){r.detachEvent?r.detachEvent("onload",h):r.removeEventListener("load",h,!1);var c,f="success";try{if(v)throw"timeout";var g="xml"==m.dataType||E.XMLDocument||a.isXMLDoc(E);if(d("isXml="+g),!g&&window.opera&&(null===E.body||!E.body.innerHTML)&&--G)return d("requeing onLoad callback, DOM not available"),setTimeout(h,250),void 0;var i=E.body?E.body:E.documentElement;s.responseText=i?i.innerHTML:null,s.responseXML=E.XMLDocument?E.XMLDocument:E,g&&(m.dataType="xml"),s.getResponseHeader=function(a){var b={"content-type":m.dataType};return b[a.toLowerCase()]},i&&(s.status=Number(i.getAttribute("status"))||s.status,s.statusText=i.getAttribute("statusText")||s.statusText);var j=(m.dataType||"").toLowerCase(),k=/(json|script|text)/.test(j);if(k||m.textarea){var l=E.getElementsByTagName("textarea")[0];if(l)s.responseText=l.value,s.status=Number(l.getAttribute("status"))||s.status,s.statusText=l.getAttribute("statusText")||s.statusText;else if(k){var o=E.getElementsByTagName("pre")[0],p=E.getElementsByTagName("body")[0];o?s.responseText=o.textContent?o.textContent:o.innerText:p&&(s.responseText=p.textContent?p.textContent:p.innerText)}}else"xml"==j&&!s.responseXML&&s.responseText&&(s.responseXML=H(s.responseText));try{D=J(s,j,m)}catch(t){f="parsererror",s.error=c=t||f}}catch(t){d("error caught: ",t),f="error",s.error=c=t||f}s.aborted&&(d("upload aborted"),f=null),s.status&&(f=s.status>=200&&s.status<300||304===s.status?"success":"error"),"success"===f?(m.success&&m.success.call(m.context,D,"success",s),y.resolve(s.responseText,"success",s),n&&a.event.trigger("ajaxSuccess",[s,m])):f&&(void 0===c&&(c=s.statusText),m.error&&m.error.call(m.context,s,f,c),y.reject(s,"error",c),n&&a.event.trigger("ajaxError",[s,m,c])),n&&a.event.trigger("ajaxComplete",[s,m]),n&&!--a.active&&a.event.trigger("ajaxStop"),m.complete&&m.complete.call(m.context,s,f),F=!0,m.timeout&&clearTimeout(w),setTimeout(function(){m.iframeTarget?q.attr("src",m.iframeSrc):q.remove(),s.responseXML=null},100)}}}var j,k,m,n,o,q,r,s,t,u,v,w,x=l[0],y=a.Deferred();if(y.abort=function(a){s.abort(a)},c)for(k=0;k<p.length;k++)j=a(p[k]),f?j.prop("disabled",!1):j.removeAttr("disabled");if(m=a.extend(!0,{},a.ajaxSettings,b),m.context=m.context||m,o="jqFormIO"+(new Date).getTime(),m.iframeTarget?(q=a(m.iframeTarget),u=q.attr2("name"),u?o=u:q.attr2("name",o)):(q=a('<iframe name="'+o+'" src="'+m.iframeSrc+'" />'),q.css({position:"absolute",top:"-1000px",left:"-1000px"})),r=q[0],s={aborted:0,responseText:null,responseXML:null,status:0,statusText:"n/a",getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){},abort:function(b){var c="timeout"===b?"timeout":"aborted";d("aborting upload... "+c),this.aborted=1;try{r.contentWindow.document.execCommand&&r.contentWindow.document.execCommand("Stop")}catch(e){}q.attr("src",m.iframeSrc),s.error=c,m.error&&m.error.call(m.context,s,c,b),n&&a.event.trigger("ajaxError",[s,m,c]),m.complete&&m.complete.call(m.context,s,c)}},n=m.global,n&&0===a.active++&&a.event.trigger("ajaxStart"),n&&a.event.trigger("ajaxSend",[s,m]),m.beforeSend&&m.beforeSend.call(m.context,s,m)===!1)return m.global&&a.active--,y.reject(),y;if(s.aborted)return y.reject(),y;t=x.clk,t&&(u=t.name,u&&!t.disabled&&(m.extraData=m.extraData||{},m.extraData[u]=t.value,"image"==t.type&&(m.extraData[u+".x"]=x.clk_x,m.extraData[u+".y"]=x.clk_y)));var z=1,A=2,B=a("meta[name=csrf-token]").attr("content"),C=a("meta[name=csrf-param]").attr("content");C&&B&&(m.extraData=m.extraData||{},m.extraData[C]=B),m.forceSync?g():setTimeout(g,10);var D,E,F,G=50,H=a.parseXML||function(a,b){return window.ActiveXObject?(b=new ActiveXObject("Microsoft.XMLDOM"),b.async="false",b.loadXML(a)):b=(new DOMParser).parseFromString(a,"text/xml"),b&&b.documentElement&&"parsererror"!=b.documentElement.nodeName?b:null},I=a.parseJSON||function(a){return window.eval("("+a+")")},J=function(b,c,d){var e=b.getResponseHeader("content-type")||"",f="xml"===c||!c&&e.indexOf("xml")>=0,g=f?b.responseXML:b.responseText;return f&&"parsererror"===g.documentElement.nodeName&&a.error&&a.error("parsererror"),d&&d.dataFilter&&(g=d.dataFilter(g,c)),"string"==typeof g&&("json"===c||!c&&e.indexOf("json")>=0?g=I(g):("script"===c||!c&&e.indexOf("javascript")>=0)&&a.globalEval(g)),g};return y}if(!this.length)return d("ajaxSubmit: skipping submit process - no element selected"),this;var i,j,k,l=this;"function"==typeof b?b={success:b}:void 0===b&&(b={}),i=b.type||this.attr2("method"),j=b.url||this.attr2("action"),k="string"==typeof j?a.trim(j):"",k=k||window.location.href||"",k&&(k=(k.match(/^([^#]+)/)||[])[1]),b=a.extend(!0,{url:k,success:a.ajaxSettings.success,type:i||a.ajaxSettings.type,iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank"},b);var m={};if(this.trigger("form-pre-serialize",[this,b,m]),m.veto)return d("ajaxSubmit: submit vetoed via form-pre-serialize trigger"),this;if(b.beforeSerialize&&b.beforeSerialize(this,b)===!1)return d("ajaxSubmit: submit aborted via beforeSerialize callback"),this;var n=b.traditional;void 0===n&&(n=a.ajaxSettings.traditional);var o,p=[],q=this.formToArray(b.semantic,p);if(b.data&&(b.extraData=b.data,o=a.param(b.data,n)),b.beforeSubmit&&b.beforeSubmit(q,this,b)===!1)return d("ajaxSubmit: submit aborted via beforeSubmit callback"),this;if(this.trigger("form-submit-validate",[q,this,b,m]),m.veto)return d("ajaxSubmit: submit vetoed via form-submit-validate trigger"),this;var r=a.param(q,n);o&&(r=r?r+"&"+o:o),"GET"==b.type.toUpperCase()?(b.url+=(b.url.indexOf("?")>=0?"&":"?")+r,b.data=null):b.data=r;var s=[];if(b.resetForm&&s.push(function(){l.resetForm()}),b.clearForm&&s.push(function(){l.clearForm(b.includeHidden)}),!b.dataType&&b.target){var t=b.success||function(){};s.push(function(c){var d=b.replaceTarget?"replaceWith":"html";a(b.target)[d](c).each(t,arguments)})}else b.success&&s.push(b.success);if(b.success=function(a,c,d){for(var e=b.context||this,f=0,g=s.length;g>f;f++)s[f].apply(e,[a,c,d||l,l])},b.error){var u=b.error;b.error=function(a,c,d){var e=b.context||this;u.apply(e,[a,c,d,l])}}if(b.complete){var v=b.complete;b.complete=function(a,c){var d=b.context||this;v.apply(d,[a,c,l])}}var w=a("input[type=file]:enabled",this).filter(function(){return""!==a(this).val()}),x=w.length>0,y="multipart/form-data",z=l.attr("enctype")==y||l.attr("encoding")==y,A=e.fileapi&&e.formdata;d("fileAPI :"+A);var B,C=(x||z)&&!A;b.iframe!==!1&&(b.iframe||C)?b.closeKeepAlive?a.get(b.closeKeepAlive,function(){B=h(q)}):B=h(q):B=(x||z)&&A?g(q):a.ajax(b),l.removeData("jqxhr").data("jqxhr",B);for(var D=0;D<p.length;D++)p[D]=null;return this.trigger("form-submit-notify",[this,b]),this},a.fn.ajaxForm=function(e){if(e=e||{},e.delegation=e.delegation&&a.isFunction(a.fn.on),!e.delegation&&0===this.length){var f={s:this.selector,c:this.context};return!a.isReady&&f.s?(d("DOM not ready, queuing ajaxForm"),a(function(){a(f.s,f.c).ajaxForm(e)}),this):(d("terminating; zero elements found by selector"+(a.isReady?"":" (DOM not ready)")),this)}return e.delegation?(a(document).off("submit.form-plugin",this.selector,b).off("click.form-plugin",this.selector,c).on("submit.form-plugin",this.selector,e,b).on("click.form-plugin",this.selector,e,c),this):this.ajaxFormUnbind().bind("submit.form-plugin",e,b).bind("click.form-plugin",e,c)},a.fn.ajaxFormUnbind=function(){return this.unbind("submit.form-plugin click.form-plugin")},a.fn.formToArray=function(b,c){var d=[];if(0===this.length)return d;var f,g=this[0],h=this.attr("id"),i=b?g.getElementsByTagName("*"):g.elements;if(i&&!/MSIE 8/.test(navigator.userAgent)&&(i=a(i).get()),h&&(f=a(":input[form="+h+"]").get(),f.length&&(i=(i||[]).concat(f))),!i||!i.length)return d;var j,k,l,m,n,o,p;for(j=0,o=i.length;o>j;j++)if(n=i[j],l=n.name,l&&!n.disabled)if(b&&g.clk&&"image"==n.type)g.clk==n&&(d.push({name:l,value:a(n).val(),type:n.type}),d.push({name:l+".x",value:g.clk_x},{name:l+".y",value:g.clk_y}));else if(m=a.fieldValue(n,!0),m&&m.constructor==Array)for(c&&c.push(n),k=0,p=m.length;p>k;k++)d.push({name:l,value:m[k]});else if(e.fileapi&&"file"==n.type){c&&c.push(n);var q=n.files;if(q.length)for(k=0;k<q.length;k++)d.push({name:l,value:q[k],type:n.type});else d.push({name:l,value:"",type:n.type})}else null!==m&&"undefined"!=typeof m&&(c&&c.push(n),d.push({name:l,value:m,type:n.type,required:n.required}));if(!b&&g.clk){var r=a(g.clk),s=r[0];l=s.name,l&&!s.disabled&&"image"==s.type&&(d.push({name:l,value:r.val()}),d.push({name:l+".x",value:g.clk_x},{name:l+".y",value:g.clk_y}))}return d},a.fn.formSerialize=function(b){return a.param(this.formToArray(b))},a.fn.fieldSerialize=function(b){var c=[];return this.each(function(){var d=this.name;if(d){var e=a.fieldValue(this,b);if(e&&e.constructor==Array)for(var f=0,g=e.length;g>f;f++)c.push({name:d,value:e[f]});else null!==e&&"undefined"!=typeof e&&c.push({name:this.name,value:e})}}),a.param(c)},a.fn.fieldValue=function(b){for(var c=[],d=0,e=this.length;e>d;d++){var f=this[d],g=a.fieldValue(f,b);null===g||"undefined"==typeof g||g.constructor==Array&&!g.length||(g.constructor==Array?a.merge(c,g):c.push(g))}return c},a.fieldValue=function(b,c){var d=b.name,e=b.type,f=b.tagName.toLowerCase();if(void 0===c&&(c=!0),c&&(!d||b.disabled||"reset"==e||"button"==e||("checkbox"==e||"radio"==e)&&!b.checked||("submit"==e||"image"==e)&&b.form&&b.form.clk!=b||"select"==f&&-1==b.selectedIndex))return null;if("select"==f){var g=b.selectedIndex;if(0>g)return null;for(var h=[],i=b.options,j="select-one"==e,k=j?g+1:i.length,l=j?g:0;k>l;l++){var m=i[l];if(m.selected){var n=m.value;if(n||(n=m.attributes&&m.attributes.value&&!m.attributes.value.specified?m.text:m.value),j)return n;h.push(n)}}return h}return a(b).val()},a.fn.clearForm=function(b){return this.each(function(){a("input,select,textarea",this).clearFields(b)})},a.fn.clearFields=a.fn.clearInputs=function(b){var c=/^(?:color|date|datetime|email|month|number|password|range|search|tel|text|time|url|week)$/i;return this.each(function(){var d=this.type,e=this.tagName.toLowerCase();c.test(d)||"textarea"==e?this.value="":"checkbox"==d||"radio"==d?this.checked=!1:"select"==e?this.selectedIndex=-1:"file"==d?/MSIE/.test(navigator.userAgent)?a(this).replaceWith(a(this).clone(!0)):a(this).val(""):b&&(b===!0&&/hidden/.test(d)||"string"==typeof b&&a(this).is(b))&&(this.value="")})},a.fn.resetForm=function(){return this.each(function(){("function"==typeof this.reset||"object"==typeof this.reset&&!this.reset.nodeType)&&this.reset()})},a.fn.enable=function(a){return void 0===a&&(a=!0),this.each(function(){this.disabled=!a})},a.fn.selected=function(b){return void 0===b&&(b=!0),this.each(function(){var c=this.type;if("checkbox"==c||"radio"==c)this.checked=b;else if("option"==this.tagName.toLowerCase()){var d=a(this).parent("select");b&&d[0]&&"select-one"==d[0].type&&d.find("option").selected(!1),this.selected=b}})},a.fn.ajaxSubmit.debug=!1});
\ No newline at end of file
/*! jQuery JSON plugin 2.4.0 | code.google.com/p/jquery-json */
(function($){'use strict';var escape=/["\\\x00-\x1f\x7f-\x9f]/g,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},hasOwn=Object.prototype.hasOwnProperty;$.toJSON=typeof JSON==='object'&&JSON.stringify?JSON.stringify:function(o){if(o===null){return'null';}
var pairs,k,name,val,type=$.type(o);if(type==='undefined'){return undefined;}
if(type==='number'||type==='boolean'){return String(o);}
if(type==='string'){return $.quoteString(o);}
if(typeof o.toJSON==='function'){return $.toJSON(o.toJSON());}
if(type==='date'){var month=o.getUTCMonth()+1,day=o.getUTCDate(),year=o.getUTCFullYear(),hours=o.getUTCHours(),minutes=o.getUTCMinutes(),seconds=o.getUTCSeconds(),milli=o.getUTCMilliseconds();if(month<10){month='0'+month;}
if(day<10){day='0'+day;}
if(hours<10){hours='0'+hours;}
if(minutes<10){minutes='0'+minutes;}
if(seconds<10){seconds='0'+seconds;}
if(milli<100){milli='0'+milli;}
if(milli<10){milli='0'+milli;}
return'"'+year+'-'+month+'-'+day+'T'+
hours+':'+minutes+':'+seconds+'.'+milli+'Z"';}
pairs=[];if($.isArray(o)){for(k=0;k<o.length;k++){pairs.push($.toJSON(o[k])||'null');}
return'['+pairs.join(',')+']';}
if(typeof o==='object'){for(k in o){if(hasOwn.call(o,k)){type=typeof k;if(type==='number'){name='"'+k+'"';}else if(type==='string'){name=$.quoteString(k);}else{continue;}
type=typeof o[k];if(type!=='function'&&type!=='undefined'){val=$.toJSON(o[k]);pairs.push(name+':'+val);}}}
return'{'+pairs.join(',')+'}';}};$.evalJSON=typeof JSON==='object'&&JSON.parse?JSON.parse:function(str){return eval('('+str+')');};$.secureEvalJSON=typeof JSON==='object'&&JSON.parse?JSON.parse:function(str){var filtered=str.replace(/\\["\\\/bfnrtu]/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,'');if(/^[\],:{}\s]*$/.test(filtered)){return eval('('+str+')');}
throw new SyntaxError('Error parsing JSON, source is not valid.');};$.quoteString=function(str){if(str.match(escape)){return'"'+str.replace(escape,function(a){var c=meta[a];if(typeof c==='string'){return c;}
c=a.charCodeAt();return'\\u00'+Math.floor(c/16).toString(16)+(c%16).toString(16);})+'"';}
return'"'+str+'"';};}(jQuery));
\ No newline at end of file
/*!
* jquery.tagcloud.js
* A Simple Tag Cloud Plugin for JQuery
*
* https://github.com/addywaddy/jquery.tagcloud.js
* created by Adam Groves
*/
(function($) {
/*global jQuery*/
"use strict";
var compareWeights = function(a, b)
{
return a - b;
};
// Converts hex to an RGB array
var toRGB = function(code) {
if (code.length === 4) {
code = code.replace(/(\w)(\w)(\w)/gi, "\$1\$1\$2\$2\$3\$3");
}
var hex = /(\w{2})(\w{2})(\w{2})/.exec(code);
return [parseInt(hex[1], 16), parseInt(hex[2], 16), parseInt(hex[3], 16)];
};
// Converts an RGB array to hex
var toHex = function(ary) {
return "#" + jQuery.map(ary, function(i) {
var hex = i.toString(16);
hex = (hex.length === 1) ? "0" + hex : hex;
return hex;
}).join("");
};
var colorIncrement = function(color, range) {
return jQuery.map(toRGB(color.end), function(n, i) {
return (n - toRGB(color.start)[i])/range;
});
};
var tagColor = function(color, increment, weighting) {
var rgb = jQuery.map(toRGB(color.start), function(n, i) {
var ref = Math.round(n + (increment[i] * weighting));
if (ref > 255) {
ref = 255;
} else {
if (ref < 0) {
ref = 0;
}
}
return ref;
});
return toHex(rgb);
};
$.fn.tagcloud = function(options) {
var opts = $.extend({}, $.fn.tagcloud.defaults, options);
var tagWeights = this.map(function(){
return $(this).attr("rel");
});
tagWeights = jQuery.makeArray(tagWeights).sort(compareWeights);
var lowest = tagWeights[0];
var highest = tagWeights.pop();
var range = highest - lowest;
if(range === 0) {range = 1;}
// Sizes
var fontIncr, colorIncr;
if (opts.size) {
fontIncr = (opts.size.end - opts.size.start)/range;
}
// Colors
if (opts.color) {
colorIncr = colorIncrement (opts.color, range);
}
return this.each(function() {
var weighting = $(this).attr("rel") - lowest;
if (opts.size) {
$(this).css({"font-size": opts.size.start + (weighting * fontIncr) + opts.size.unit});
}
if (opts.color) {
$(this).css({"color": tagColor(opts.color, colorIncr, weighting)});
}
});
};
$.fn.tagcloud.defaults = {
size: {start: 14, end: 18, unit: "pt"}
};
})(jQuery);
This diff is collapsed.
......@@ -9,25 +9,35 @@ require.config({
backbone: {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
}
},
},
paths: {
jquery: 'lib/jquery-min',
jquery_cookie: 'lib/jquery.cookie',
jquery_form: 'lib/jquery.form.min',
jquery_json: 'lib/jquery.json.min',
underscore: 'lib/underscore-amd',
backbone: 'lib/backbone-amd',
backbone_form: 'lib/backbone-forms.min',
templates: '../templates',
backbone_subroute: 'lib/backbone.subroute.min',
tagcloud: 'lib/jquery.tagcloud',
json: 'lib/require/json',
text: 'lib/require/text',
text: 'lib/require/text',
},
waitSeconds: 200
});
require([
'jquery', 'underscore', 'backbone', 'app', 'backbone_subroute'
], function($, _, Backbone, App){
App.initialize();
'jquery', 'underscore', 'backbone', 'app', 'backbone_subroute'], function($, _, Backbone, App){
// add csrftoken support to backbone posts
// thx to https://gist.github.com/gcollazo/1240683 :D
var oldSync = Backbone.sync;
Backbone.sync = function(method, model, options) {
options.beforeSend = function(xhr) {
xhr.setRequestHeader('X-CSRFToken', $.cookie('csrftoken'));
}
return oldSync(method, model, options);
}
App.initialize();
});
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment