Refs #39 -- New concept of "teams" (#478)

* New models

* CRUD UI

* UI for adding/removing team members

* Log display for teams

* Fix invitations, move frontend

* Drop old models (incomplete)

* Drop more old stuff

* Drop even more old stuff

* Fix tests

* Fix permission test

* flake8 fix

* Add tests fore the new code

* Rebase migrations
This commit is contained in:
Raphael Michel
2017-05-03 16:55:37 +02:00
committed by GitHub
parent 8294391ebc
commit d08a0bdb00
62 changed files with 1960 additions and 867 deletions

View File

@@ -0,0 +1,128 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="82.443535mm"
height="75.68663mm"
viewBox="0 0 82.443535 75.68663"
version="1.1"
id="svg8"
inkscape:version="0.92.1 r"
sodipodi:docname="moved.svg">
<defs
id="defs2" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.7"
inkscape:cx="81.791119"
inkscape:cy="179.25689"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1364"
inkscape:window-height="747"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
fit-margin-top="2"
fit-margin-left="2"
fit-margin-right="2"
fit-margin-bottom="2" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Ebene 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-55.908059,-103.84336)">
<path
transform="rotate(-15)"
style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#cccccc;stroke-width:2.51185489;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:100;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="m 19.795938,154.71252 h 69.745453 v 33.08414 H 19.795938 Z"
id="rect4567" />
<g
aria-label="WE HAVE"
transform="rotate(-15)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12.1819725px;line-height:15.22746563px;font-family:DIN;-inkscape-font-specification:DIN;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;stroke-width:0.60909861px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="text4571">
<path
d="m 37.290917,169.57716 h -2.777823 l -0.832752,-3.78902 q -0.05948,-0.23793 -0.190344,-0.94577 -0.124912,-0.70784 -0.184395,-1.18369 -0.04759,0.38663 -0.154654,0.96361 -0.107068,0.57103 -0.214136,1.05284 -0.10112,0.4818 -0.862493,3.90203 h -2.777823 l -2.153259,-8.69631 h 2.266275 l 0.945769,4.36005 q 0.321204,1.44542 0.440169,2.30197 0.07733,-0.60672 0.273618,-1.64766 0.20224,-1.04094 0.374739,-1.72499 l 0.767321,-3.28937 h 2.177052 l 0.743529,3.28937 q 0.190343,0.79112 0.386634,1.82611 0.196292,1.03499 0.261722,1.54654 0.07733,-0.66025 0.422325,-2.29007 l 0.963613,-4.37195 h 2.266275 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:12.1819725px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.60909861px"
id="path4605" />
<path
d="m 45.719557,169.57716 h -5.163062 v -8.69631 h 5.163062 v 1.88559 h -2.813512 v 1.36809 h 2.605324 v 1.88559 h -2.605324 v 1.64171 h 2.813512 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:12.1819725px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.60909861px"
id="path4607" />
<path
d="m 57.859893,169.57716 h -2.361447 v -3.54514 h -2.730237 v 3.54514 h -2.361447 v -8.69631 h 2.361447 v 3.22394 h 2.730237 v -3.22394 h 2.361447 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:12.1819725px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.60909861px"
id="path4609" />
<path
d="m 65.069145,169.57716 -0.428272,-1.62981 h -2.825409 l -0.440169,1.62981 h -2.581531 l 2.837305,-8.732 h 3.134717 l 2.872994,8.732 z m -0.916027,-3.55704 -0.374738,-1.42757 q -0.130861,-0.47586 -0.321205,-1.23129 -0.184395,-0.75542 -0.243877,-1.08257 -0.05353,0.30336 -0.214136,0.9993 -0.154654,0.69594 -0.695943,2.74213 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:12.1819725px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.60909861px"
id="path4611" />
<path
d="m 73.468046,160.88085 h 2.629117 l -2.849202,8.69631 h -2.765926 l -2.837305,-8.69631 h 2.641013 l 1.183698,4.40764 q 0.36879,1.46921 0.404479,2.04619 0.04164,-0.41637 0.166551,-1.04094 0.124912,-0.62456 0.220084,-0.98146 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:12.1819725px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.60909861px"
id="path4613" />
<path
d="m 82.194096,169.57716 h -5.163063 v -8.69631 h 5.163063 v 1.88559 h -2.813512 v 1.36809 h 2.605324 v 1.88559 h -2.605324 v 1.64171 h 2.813512 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:12.1819725px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.60909861px"
id="path4615" />
</g>
<g
aria-label="MOVED"
transform="rotate(-15)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.88248253px;line-height:14.85310268px;font-family:DIN;-inkscape-font-specification:DIN;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;stroke-width:0.59412414px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="text4575">
<path
d="m 36.905863,181.548 -1.734797,-6.10949 h -0.05222 q 0.121841,1.56073 0.121841,2.42523 v 3.68426 h -2.030697 v -8.48251 h 3.051848 l 1.769608,6.02247 h 0.04642 l 1.734796,-6.02247 h 3.057651 v 8.48251 h -2.106124 v -3.71907 q 0,-0.2901 0.0058,-0.64402 0.0116,-0.35393 0.08123,-1.7348 H 40.799 l -1.711588,6.09789 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:11.88248253px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.59412414px"
id="path4594" />
<path
d="m 52.635066,177.29514 q 0,2.14094 -1.050161,3.25492 -1.05016,1.11398 -3.075056,1.11398 -1.995886,0 -3.063453,-1.11978 -1.061764,-1.11979 -1.061764,-3.26072 0,-2.11773 1.055962,-3.23171 1.061765,-1.11979 3.080859,-1.11979 2.024896,0 3.069254,1.10818 1.044359,1.10819 1.044359,3.25492 z m -5.836805,0 q 0,2.46005 1.711588,2.46005 0.870299,0 1.288042,-0.59761 0.423546,-0.5976 0.423546,-1.86244 0,-1.27063 -0.429348,-1.87404 -0.423545,-0.60921 -1.270636,-0.60921 -1.723192,0 -1.723192,2.48325 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:11.88248253px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.59412414px"
id="path4596" />
<path
d="m 58.930228,173.06549 h 2.564481 l -2.779155,8.48251 h -2.697927 l -2.767551,-8.48251 h 2.576085 l 1.154597,4.29928 q 0.359724,1.43309 0.394536,1.99588 0.04061,-0.40614 0.162455,-1.01535 0.121842,-0.60921 0.214674,-0.95733 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:11.88248253px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.59412414px"
id="path4598" />
<path
d="m 67.441752,181.548 h -5.03613 v -8.48251 h 5.03613 v 1.83923 h -2.744343 v 1.33446 h 2.541273 v 1.83923 h -2.541273 v 1.60135 h 2.744343 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:11.88248253px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.59412414px"
id="path4600" />
<path
d="m 76.127338,177.12689 q 0,2.12352 -1.172003,3.27232 -1.1662,1.14879 -3.283928,1.14879 h -2.744343 v -8.48251 h 2.935809 q 2.042302,0 3.150482,1.04436 1.113983,1.04436 1.113983,3.01704 z m -2.378817,0.0812 q 0,-1.1662 -0.46416,-1.72899 -0.458357,-0.56279 -1.39828,-0.56279 h -0.667229 v 4.75183 h 0.510575 q 1.044359,0 1.531726,-0.60341 0.487368,-0.60921 0.487368,-1.85664 z"
style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:11.88248253px;font-family:'Open Sans';-inkscape-font-specification:'Open Sans, Ultra-Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#cccccc;fill-opacity:1;stroke-width:0.59412414px"
id="path4602" />
</g>
<path
sodipodi:nodetypes="ccc"
inkscape:connector-curvature="0"
id="path4579"
d="m 64.275315,142.94767 29.986329,-36.09493 27.159886,20.78265"
style="fill:none;fill-rule:evenodd;stroke:#cccccc;stroke-width:1.46500003;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -201,6 +201,17 @@ $(function () {
dependency.on("change", update);
});
$("input[data-inverse-dependency]").each(function () {
var dependent = $(this),
dependency = $($(this).attr("data-inverse-dependency")),
update = function () {
var enabled = !dependency.prop('checked');
dependent.prop('disabled', !enabled).parents('.form-group').toggleClass('disabled', !enabled);
};
update();
dependency.on("change", update);
});
$("input[data-display-dependency]").each(function () {
var dependent = $(this),
dependency = $($(this).attr("data-display-dependency")),

View File

@@ -118,6 +118,21 @@ h1 .btn-sm {
margin-bottom: 10px;
}
.section-moved {
margin: 20px 0;
text-align: center;
p {
font-size: 18px;
margin: 20px auto;
max-width: 800px;
}
.img-moved {
height: 200px;
width: auto;
}
}
.empty-collection {
margin: 20px 0;
text-align: center;
@@ -230,3 +245,14 @@ body.loading #wrapper {
.fa-danger {
color: $brand-danger;
}
.nearly-gone {
overflow: visible !important;
height: 0 !important;
width: 0 !important;
margin: 0 !important;
border: 0 !important;
padding: 0 !important;
display: block !important;
}