Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
OpenQuizz
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
10
Issues
10
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Weber Rodolphe
OpenQuizz
Commits
43ff48b0
Commit
43ff48b0
authored
Jul 15, 2021
by
Jérémie Passerat
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Sauvegarde avant tests de couleur de fond
parent
e053b284
Changes
8
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
311 additions
and
111 deletions
+311
-111
shimeta.html
shimeta.html
+40
-0
ImporterFichier.vue
src/ImporterFichier.vue
+43
-4
Index.vue
src/Index.vue
+1
-1
Menu.vue
src/Menu.vue
+2
-0
Test.vue
src/Test.vue
+82
-0
Volet_Base.vue
src/components/Volet_Base.vue
+140
-104
Volet_Menu.vue
src/components/Volet_Menu.vue
+1
-0
Service.js
src/service/Service.js
+2
-2
No files found.
shimeta.html
0 → 100644
View file @
43ff48b0
<!DOCTYPE html>
<html
dir=
"ltr"
lang=
"fr"
xml:lang=
"fr"
>
<head>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"https://celene.univ-orleans.fr/theme/yui_combo.php?rollup/3.17.2/yui-moodlesimple-min.css"
/>
<script
id=
"firstthemesheet"
type=
"text/css"
>
/** Required in order to fix style inclusion problems in IE with YUI **/
</script>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"https://celene.univ-orleans.fr/theme/styles.php/celeneboost/1617792745_1614585414/all"
/>
</head>
<body>
<div
role=
"main"
>
<span
id=
"maincontent"
></span>
<form
method=
"post"
action=
"https://celene.univ-orleans.fr/question/preview.php?id=7920206&previewid=696734&courseid=4997&variant=1&correctness=1&marks=1&markdp=2&feedback=1&generalfeedback=1&rightanswer=1&history=0"
enctype=
"multipart/form-data"
id=
"responseform"
>
<div><input
type=
"hidden"
name=
"sesskey"
value=
"zESgJU3xYb"
/><input
type=
"hidden"
name=
"slots"
value=
"1"
/><input
type=
"hidden"
name=
"scrollpos"
value=
""
id=
"scrollpos"
/></div>
<div
id=
"q1"
class=
"que truefalse deferredfeedback notyetanswered"
>
<div
class=
"info"
>
<h3
class=
"no"
>
Question
<span
class=
"qno"
>
1
</span></h3>
<div
class=
"state"
>
Pas encore répondu
</div>
<div
class=
"grade"
>
Noté sur 10,00
</div>
</div>
<div
class=
"content"
>
<div
class=
"formulation clearfix"
>
<h4
class=
"accesshide"
>
Texte de la question
</h4>
<input
type=
"hidden"
name=
"q696734:1_:sequencecheck"
value=
"1"
/>
<div
class=
"qtext"
>
<p>
ertert
</p>
</div>
<div
class=
"ablock"
>
<div
class=
"prompt"
>
Sélectionnez une réponse :
</div>
<div
class=
"answer"
>
<div
class=
"r0"
><input
type=
"radio"
name=
"q696734:1_answer"
value=
"1"
id=
"q696734:1_answertrue"
/><label
for=
"q696734:1_answertrue"
class=
"m-l-1"
>
Vrai
</label>
</div>
<div
class=
"r1"
><input
type=
"radio"
name=
"q696734:1_answer"
value=
"0"
id=
"q696734:1_answerfalse"
/><label
for=
"q696734:1_answerfalse"
class=
"m-l-1"
>
Faux
</label>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
src/ImporterFichier.vue
View file @
43ff48b0
...
...
@@ -5,7 +5,12 @@
<input
type=
"file"
name=
"fichier"
@
change=
"onUploadFiles"
>
<div
class=
"markdown"
>
<br>
<button
class=
"ajouterContenu"
v-on:click=
"ajouterContenu"
>
créer
</button><br><br>
<button
class=
"retourArriere"
v-on:click=
"retourArriere"
>
revenir en arrière
</button>
</div>
</div>
</
template
>
...
...
@@ -15,13 +20,40 @@ import Service from "./service/Service";
export
default
{
name
:
"ImporterFichier"
,
props
:
{
// l'auteur connecté
auteur
:
{}
},
data
()
{
return
{
formData
:
null
}
},
methods
:
{
onUploadFiles
:
function
(
event
)
{
const
file
=
event
.
target
.
files
.
item
(
0
)
let
formData
=
new
FormData
();
formData
.
append
(
'file'
,
file
);
Service
.
uploaderContenuPerso
(
formData
)
this
.
formData
=
new
FormData
()
this
.
formData
.
append
(
'file'
,
event
.
target
.
files
.
item
(
0
));
},
/**
* @vuese
* (A construire) Fonction de changement du mot de passe utilisateur
*/
retourArriere
:
function
()
{
// evenement pour retourner vers le volet Contenu_Base
this
.
$emit
(
"retourArriere"
)
},
ajouterContenu
:
function
()
{
let
that
=
this
Service
.
uploaderContenuPerso
(
this
.
formData
,
this
.
auteur
).
then
(
function
(
reponse
)
{
let
nouveauContenu
=
reponse
.
data
nouveauContenu
.
provenance
=
"perso"
that
.
$emit
(
"contenuAjoute"
,
{
contenu
:
nouveauContenu
})
that
.
contenuSaisi
=
''
that
.
retourArriere
()
}
)
}
}
}
...
...
@@ -29,4 +61,11 @@ export default {
<
style
scoped
>
button
{
align-items
:
center
;
width
:
auto
;
text-align
:
center
;
line-height
:
1em
;
}
</
style
>
\ No newline at end of file
src/Index.vue
View file @
43ff48b0
...
...
@@ -16,7 +16,7 @@
<Tags
v-show=
"etat === 'Tags'"
></Tags>
<p
style=
"text-align: center"
v-show=
"errorLogin"
>
{{
errorMessage
}}
</p>
<NewContenu
v-show=
"etat === 'newContenu'"
v-bind:auteur=
"auteur"
@
contenuAjoute=
"ajouterUnContenu"
@
retourArriere=
"retourArriere"
></NewContenu>
<ImporterFichier
v-show=
"etat === 'importContenu'"
></ImporterFichier>
<ImporterFichier
v-show=
"etat === 'importContenu'"
v-bind:auteur=
"auteur"
@
contenuAjoute=
"ajouterUnContenu"
@
retourArriere=
"retourArriere"
></ImporterFichier>
</div>
</
template
>
...
...
src/Menu.vue
View file @
43ff48b0
...
...
@@ -176,11 +176,13 @@ export default {
#menuHaut
{
display
:
flex
;
background-color
:
whitesmoke
;
}
.circle
{
background
:
gold
;
border
:
1px
solid
yellow
;
margin-top
:
1%
;
margin-bottom
:
1%
;
border-radius
:
50%
;
display
:
flex
;
/* or inline-flex */
align-items
:
center
;
...
...
src/Test.vue
0 → 100644
View file @
43ff48b0
<
template
>
<div
role=
"main"
>
<span
id=
"maincontent"
></span>
<form
method=
"post"
enctype=
"multipart/form-data"
id=
"responseform"
>
<div><input
type=
"hidden"
name=
"sesskey"
value=
"zESgJU3xYb"
/><input
type=
"hidden"
name=
"slots"
value=
"1"
/><input
type=
"hidden"
name=
"scrollpos"
value=
""
id=
"scrollpos"
/></div>
<div
id=
"q1"
class=
"que truefalse deferredfeedback notyetanswered"
>
<div
class=
"info"
>
<h3
class=
"no"
>
Question
<span
class=
"qno"
>
1
</span></h3>
<div
class=
"state"
>
Pas encore répondu
</div>
<div
class=
"grade"
>
Noté sur 10,000
</div>
</div>
<div
class=
"content"
>
<div
class=
"formulation clearfix"
>
<h4
class=
"accesshide"
>
Texte de la question
</h4>
<input
type=
"hidden"
name=
"q696734:1_:sequencecheck"
value=
"1"
/>
<div
class=
"qtext"
>
<p>
ertert
</p>
</div>
<div
class=
"ablock"
>
<div
class=
"prompt"
>
Sélectionnez une réponse :
</div>
<div
class=
"answer"
>
<div
class=
"r0"
><input
type=
"radio"
name=
"q696734:1_answer"
value=
"1"
id=
"q696734:1_answertrue"
/><label
for=
"q696734:1_answertrue"
class=
"m-l-1"
>
Vrai
</label>
</div>
<div
class=
"r1"
><input
type=
"radio"
name=
"q696734:1_answer"
value=
"0"
id=
"q696734:1_answerfalse"
/><label
for=
"q696734:1_answerfalse"
class=
"m-l-1"
>
Faux
</label>
</div>
</div>
</div>
</div>
</div>
</div>
</form>
<!--
<script
id=
"firstthemesheet"
type=
"text/css"
>
/** Required in order to fix style inclusion problems in IE with YUI **/
</script>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"https://celene.univ-orleans.fr/theme/styles.php/celeneboost/1617792745_1614585414/all"
/>
-->
</div>
</
template
>
<
script
>
export
default
{
name
:
"Test"
}
</
script
>
<
style
scoped
>
/*
YUI 3.17.2 (build 9c3c78e)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
.yui3-widget-hidden
{
display
:
none
}
.yui3-widget-content
{
overflow
:
hidden
}
.yui3-widget-content-expanded
{
-moz-box-sizing
:
border-box
;
-webkit-box-sizing
:
border-box
;
-ms-box-sizing
:
border-box
;
box-sizing
:
border-box
;
height
:
100%
}
.yui3-widget-tmp-forcesize
{
overflow
:
hidden
!important
}
#yui3-css-stamp
.skin-sam-widget-base
{
display
:
none
}
/*
YUI 3.17.2 (build 9c3c78e)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
.yui3-widget-stacked
.yui3-widget-shim
{
opacity
:
0
;
filter
:
alpha
(
opacity
=
0
);
position
:
absolute
;
border
:
0
;
top
:
0
;
left
:
0
;
padding
:
0
;
margin
:
0
;
z-index
:
-1
;
width
:
100%
;
height
:
100%
;
_width
:
0
;
_height
:
0
}
#yui3-css-stamp
.skin-sam-widget-stack
{
display
:
none
}
/*
YUI 3.17.2 (build 9c3c78e)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
.yui3-overlay
{
position
:
absolute
}
.yui3-overlay-hidden
{
visibility
:
hidden
}
.yui3-widget-tmp-forcesize
.yui3-overlay-content
{
overflow
:
hidden
!important
}
#yui3-css-stamp
.skin-sam-overlay
{
display
:
none
}
/*
YUI 3.17.2 (build 9c3c78e)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
.yui3-skin-sam
.yui3-widget-mask
{
background-color
:
black
;
zoom
:
1
;
-ms-filter
:
"alpha(opacity=40)"
;
filter
:
alpha
(
opacity
=
40
);
opacity
:
.4
}
#yui3-css-stamp
.skin-sam-widget-modality
{
display
:
none
}
/*
YUI 3.17.2 (build 9c3c78e)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
.yui3-panel
{
position
:
absolute
}
.yui3-panel-hidden
{
visibility
:
hidden
}
.yui3-widget-tmp-forcesize
.yui3-panel-content
{
overflow
:
hidden
!important
}
.yui3-panel
.yui3-widget-hd
{
position
:
relative
}
.yui3-panel
.yui3-widget-hd
.yui3-widget-buttons
{
position
:
absolute
;
top
:
0
;
right
:
0
}
.yui3-panel
.yui3-widget-ft
.yui3-widget-buttons
{
display
:
inline-block
;
*
display
:
inline
;
zoom
:
1
}
.yui3-skin-sam
.yui3-panel-content
{
-webkit-box-shadow
:
0
0
5px
#333
;
-moz-box-shadow
:
0
0
5px
#333
;
box-shadow
:
0
0
5px
#333
;
border
:
1px
solid
black
;
background
:
white
}
.yui3-skin-sam
.yui3-panel
.yui3-widget-hd
{
padding
:
8px
28px
8px
8px
;
min-height
:
13px
;
_height
:
13px
;
color
:
white
;
background-color
:
#3961c5
;
background
:
-moz-linear-gradient
(
0%
100%
90deg
,
#2647a0
7%
,
#3d67ce
50%
,
#426fd9
100%
);
background
:
-webkit-gradient
(
linear
,
left
bottom
,
left
top
,
from
(
#2647a0
),
color-stop
(
0.07
,
#2647a0
),
color-stop
(
0.5
,
#3d67ce
),
to
(
#426fd9
))}
.yui3-skin-sam
.yui3-panel
.yui3-widget-hd
.yui3-widget-buttons
{
padding
:
8px
}
.yui3-skin-sam
.yui3-panel
.yui3-widget-bd
{
padding
:
10px
}
.yui3-skin-sam
.yui3-panel
.yui3-widget-ft
{
background
:
#edf5ff
;
padding
:
8px
;
text-align
:
right
}
.yui3-skin-sam
.yui3-panel
.yui3-widget-ft
.yui3-button
{
margin-left
:
8px
}
.yui3-skin-sam
.yui3-panel
.yui3-widget-hd
.yui3-button-close
{
background
:
transparent
;
filter
:
none
;
border
:
0
;
-webkit-border-radius
:
0
;
-moz-border-radius
:
0
;
border-radius
:
0
;
-webkit-box-shadow
:
none
;
-moz-box-shadow
:
none
;
box-shadow
:
none
;
width
:
13px
;
height
:
13px
;
padding
:
0
;
overflow
:
hidden
;
vertical-align
:
top
;
*
font-size
:
0
;
*
line-height
:
0
;
*
letter-spacing
:
-1000px
;
*
color
:
#86a5ec
;
*
background
:
url(/theme/yui_image.php?file=3.17.2/sprite_icons.png)
no-repeat
1px
1px
}
.yui3-skin-sam
.yui3-panel
.yui3-widget-hd
.yui3-button-close
:before
{
content
:
url(/theme/yui_image.php?file=3.17.2/sprite_icons.png)
;
display
:
inline-block
;
text-align
:
center
;
font-size
:
0
;
line-height
:
0
;
width
:
13px
;
margin
:
1px
0
0
1px
}
.yui3-skin-sam
.yui3-panel-hidden
.yui3-widget-hd
.yui3-button-close
{
display
:
none
}
#yui3-css-stamp
.skin-sam-panel
{
display
:
none
}
</
style
>
\ No newline at end of file
src/components/Volet_Base.vue
View file @
43ff48b0
This diff is collapsed.
Click to expand it.
src/components/Volet_Menu.vue
View file @
43ff48b0
...
...
@@ -55,6 +55,7 @@ export default {
height
:
5%
;
display
:
inline-flex
;
justify-content
:
space-around
;
}
#recherche
{
...
...
src/service/Service.js
View file @
43ff48b0
...
...
@@ -44,8 +44,8 @@ export default {
creerContenuPerso
(
data
)
{
return
axios
.
post
(
urlBase
+
contenus
+
"addContenu"
,
data
,
this
.
getHeader
(
localStorage
.
token
))
},
uploaderContenuPerso
(
data
){
return
axios
.
post
(
urlBase
+
contenus
+
"uploadContenu
"
,
data
,
{
uploaderContenuPerso
(
data
,
auteur
){
return
axios
.
post
(
urlBase
+
contenus
+
"uploadContenu
/"
+
auteur
,
data
,
{
headers
:
{
'Content-Type'
:
'multipart/form-data'
,
Authorization
:
"Bearer "
+
localStorage
.
token
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment