Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
l3m-website
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
3
Issues
3
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Corentin Bettiol
l3m-website
Commits
a2b96bcc
Commit
a2b96bcc
authored
Mar 19, 2019
by
Corentin Bettiol
💻
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add rss support
parent
930c3774
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
153 additions
and
2 deletions
+153
-2
rss/.gitignore
rss/.gitignore
+2
-0
rss/projets.xml
rss/projets.xml
+23
-0
site/controller/adminController.php
site/controller/adminController.php
+3
-0
site/model/AdminManager.php
site/model/AdminManager.php
+18
-0
site/model/BlogManager.php
site/model/BlogManager.php
+6
-0
site/model/ProjectsManager.php
site/model/ProjectsManager.php
+6
-0
site/model/RssManager.php
site/model/RssManager.php
+60
-0
site/model/config-dist.php
site/model/config-dist.php
+7
-1
site/view/public/changelog.php
site/view/public/changelog.php
+13
-0
site/view/public/rss.php
site/view/public/rss.php
+15
-1
No files found.
rss/.gitignore
0 → 100644
View file @
a2b96bcc
blog.xml
projects.xml
\ No newline at end of file
rss/projets.xml
0 → 100644
View file @
a2b96bcc
<?xml version="1.0" encoding="UTF-8"?>
<rss
version=
"2.0"
>
<channel>
<title>
l3m website - projets
</title>
<description>
Site perso de Corentin Bettiol.
</description>
<lastBuildDate>
19/03/2019 à 21:32
</lastBuildDate>
<link>
https://l3m.in
</link><item>
<title>
assb
</title>
<description>
assb = another static site builder
</description>
<link>
https://l3m.in/assb-2
</link>
</item><item>
<title>
L'ancienne version
</title>
<description>
Pas de description.
</description>
<link>
https://l3m.in/old-l3m-in
</link>
</item><item>
<title>
AutoRPG
</title>
<description>
Pas de description.
</description>
<link>
https://l3m.in/autorpg
</link>
</item><item>
<title>
l3m website
</title>
<description>
Pas de description.
</description>
<link>
https://l3m.in/l3m-website
</link>
</item></channel></rss>
\ No newline at end of file
site/controller/adminController.php
View file @
a2b96bcc
...
...
@@ -3,6 +3,9 @@
// classe pour l'administration du contenu du site
require_once
(
'site/model/AdminManager.php'
);
// classe pour la màj des fichiers RSS
require_once
(
'site/model/RssManager.php'
);
// tente de connecter l'administrateur
function
loginAdminPage
(
$pageName
){
if
(
password_verify
(
$_POST
[
'pass'
],
pass
)
&&
$_POST
[
'user'
]
==
user
){
...
...
site/model/AdminManager.php
View file @
a2b96bcc
...
...
@@ -33,32 +33,50 @@ class AdminManager extends Base
public
function
updateBlogPost
(){
$blog
=
new
BlogManager
(
$_POST
[
'time'
],
$_POST
[
'title'
],
$_POST
[
'content'
],
$_POST
[
'shortContent'
],
$_POST
[
'id'
]);
$blog
->
update
();
$rss
=
new
RssManager
();
$rss
->
updateRssBlog
();
}
public
function
updateProject
(){
$project
=
new
ProjectManager
(
$_POST
[
'name'
],
$_POST
[
'link'
],
$_POST
[
'content'
],
$_POST
[
'shortContent'
],
$_POST
[
'id'
]);
$project
->
update
();
$rss
=
new
RssManager
();
$rss
->
updateRssProjects
();
}
public
function
sendBlogPost
(){
$blog
=
new
BlogManager
(
$_POST
[
'time'
],
$_POST
[
'title'
],
$_POST
[
'content'
],
$_POST
[
'shortContent'
],
null
);
$blog
->
send
();
$rss
=
new
RssManager
();
$rss
->
updateRssBlog
();
}
public
function
sendProject
(){
$project
=
new
ProjectManager
(
$_POST
[
'name'
],
$_POST
[
'link'
],
$_POST
[
'content'
],
$_POST
[
'shortContent'
],
null
);
$project
->
send
();
$rss
=
new
RssManager
();
$rss
->
updateRssProjects
();
}
public
function
deleteBlogPost
(
$link
){
$blog
=
new
BlogManager
(
null
,
null
,
null
,
null
,
null
,
null
);
$blog
->
delete
(
$link
);
$rss
=
new
RssManager
();
$rss
->
updateRssBlog
();
}
public
function
deleteProject
(
$link
){
$project
=
new
ProjectManager
(
null
,
null
,
null
,
null
,
null
);
$project
->
delete
(
$link
);
$rss
=
new
RssManager
();
$rss
->
updateRssProjects
();
}
}
\ No newline at end of file
site/model/BlogManager.php
View file @
a2b96bcc
...
...
@@ -51,6 +51,12 @@ class BlogManager extends Base
return
$req
;
}
public
function
getBlogRss
()
{
$req
=
self
::
$db
->
query
(
'SELECT time, title, shortContent, slug FROM l3m_blog ORDER BY id DESC LIMIT 10'
);
return
$req
;
}
public
function
pagingList
(
$current
)
{
$total
=
self
::
$db
->
query
(
'select count(*) from l3m_blog'
)
->
fetchColumn
();
...
...
site/model/ProjectsManager.php
View file @
a2b96bcc
...
...
@@ -49,6 +49,12 @@ class ProjectManager extends Base
]);
}
public
function
getProjectsRss
()
{
$req
=
self
::
$db
->
query
(
'SELECT name, shortContent, slug FROM l3m_projects ORDER BY id DESC LIMIT 10'
);
return
$req
;
}
public
function
send
(){
if
(
strlen
(
$this
->
name
)
<
1
){
header
(
'Location:/patate'
);
...
...
site/model/RssManager.php
0 → 100644
View file @
a2b96bcc
<?php
class
RssManager
extends
Base
{
function
updateRssBlog
(){
$contentBlog
=
"<?xml version=
\"
1.0
\"
encoding=
\"
UTF-8
\"
?>
<rss version=
\"
2.0
\"
>
<channel>
<title>l3m website - posts de blog</title>
<description>Site perso de Corentin Bettiol.</description>
<lastBuildDate>"
.
date
(
'd/m/Y à H:i'
)
.
"</lastBuildDate>
<link>https://l3m.in</link>"
;
$blog
=
new
BlogManager
(
null
,
null
,
null
,
null
,
null
);
$posts
=
$blog
->
getBlogRss
();
foreach
(
$posts
as
$post
)
{
$post
[
'datetime'
]
=
new
DateTime
(
$post
[
'time'
]);
$date
=
date_format
(
$post
[
'datetime'
],
'd/m/Y à H:i'
);
$contentBlog
.
=
"<item>
<title>"
.
$post
[
'title'
]
.
"</title>
<description>"
.
$post
[
'shortContent'
]
.
"</description>
<pubDate>"
.
$date
.
"</pubDate>
<link>https://l3m.in/"
.
$post
[
'slug'
]
.
"</link>
</item>"
;
}
$contentBlog
.
=
"</channel></rss>"
;
file_put_contents
(
RSSBLOG
,
$contentBlog
);
}
function
updateRssProjects
(){
$contentProject
=
"<?xml version=
\"
1.0
\"
encoding=
\"
UTF-8
\"
?>
<rss version=
\"
2.0
\"
>
<channel>
<title>l3m website - projets</title>
<description>Site perso de Corentin Bettiol.</description>
<lastBuildDate>"
.
date
(
'd/m/Y à H:i'
)
.
"</lastBuildDate>
<link>https://l3m.in</link>"
;
$projects
=
new
ProjectManager
(
null
,
null
,
null
,
null
,
null
);
$projects
=
$projects
->
getProjectsRss
();
foreach
(
$projects
as
$project
)
{
$contentProject
.
=
"<item>
<title>"
.
$project
[
'name'
]
.
"</title>
<description>"
.
$project
[
'shortContent'
]
.
"</description>
<link>https://l3m.in/"
.
$project
[
'slug'
]
.
"</link>
</item>"
;
}
$contentProject
.
=
"</channel></rss>"
;
file_put_contents
(
RSSPROJECTS
,
$contentProject
);
}
}
\ No newline at end of file
site/model/config-dist.php
View file @
a2b96bcc
...
...
@@ -14,4 +14,10 @@
// login config
define
(
'user'
,
''
);
define
(
'pass'
,
''
);
\ No newline at end of file
define
(
'pass'
,
''
);
// rss config
define
(
'RSSBLOG'
,
''
);
define
(
'RSSPROJECTS'
,
''
);
\ No newline at end of file
site/view/public/changelog.php
View file @
a2b96bcc
<article>
<h3><a
href=
""
>
19/03/19
</a></h3>
<ul>
<li>
Création des flux rss :
<ul>
<li>
Classe RssManager
</li>
<li>
Fonctions updateRssBlog()
&
updateRssProjects()
</li>
<li>
Appel de ces fonctions lors de chaque ajout/edit/suppression de billet de blog/projet
</li>
</ul>
</li>
</ul>
</article>
<article>
<h3><a
href=
"https://git.bitmycode.com/sodimel/l3m-website/commit/d4ee13c79b8bc2c43da23677f6c4d4d015700b69"
>
12/03/19
</a></h3>
<ul>
...
...
site/view/public/rss.php
View file @
a2b96bcc
TODO
--
rss
\ No newline at end of file
<article>
<h3><a
href=
"/rss/blog"
title=
"flux rss blog"
>
Flux RSS du blog
</a></h3>
<p>
Ce flux RSS vous permet d'avoir accès aux dix derniers messages du blog postés.
</p>
</article>
<article>
<h3><a
href=
"/rss/projets"
title=
"flux rss projets"
>
Flux RSS des projets
</a></h3>
<p>
Ce flux RSS vous permet d'avoir accès aux dix derniers projets créés.
</p>
</article>
\ No newline at end of file
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