Coder Social home page Coder Social logo

zestedesavoir / zds-site Goto Github PK

View Code? Open in Web Editor NEW
269.0 32.0 161.0 157.65 MB

Cœur du projet technique de Zeste de Savoir

Home Page: https://zestedesavoir.com

License: Other

JavaScript 4.65% HTML 16.00% Python 71.48% Shell 1.41% Makefile 0.12% PowerShell 0.25% Handlebars 0.01% SCSS 6.07%
zds savoir partage libre open-source django zestedesavoir hacktoberfest

zds-site's Introduction

Build Status Coverage Status Licence GPL

https://raw.githubusercontent.com/zestedesavoir/zds-site/36c6bbc50fdecd936768ef5a566d98f5d757fcbf/assets/images/logo-background.png

Qu'est-ce que Zeste de Savoir ?

Zeste de Savoir est un site internet communautaire dédié au partage de la connaissance pour tous. Il est propulsé par le framework Django et Python 3.

Zeste de Savoir était à l'origine un fork de Progdupeupl (voir le dépôt Git).

Notre projet technique

Notre projet technique est constitué de plusieurs éléments :

Contribuer à Zeste de Savoir

Notre documentation technique devrait vous être utile pour bien appréhender notre projet.

Merci de prendre connaissance du Code de Conduite de Contributeurs et de le respecter pour garder ce projet ouvert et accueillant !

Nous contacter

N'hésitez pas à discuter avec nous sur le forum Dev Zone de Zeste de Savoir ou sur le canal #dev-de-zds de notre Discord !

Installation

Cette procédure détaillée devrait vous permettre d'installer le projet en autonomie. Si vous rencontrez des difficultés, n'hésitez pas à nous contacter !

Conseils pour débuter

zds-site's People

Contributors

a-312 avatar alex-d avatar amarok1412 avatar amaurycarrade avatar anto59290 avatar arnaud-d avatar artragis avatar cgabard avatar chantytaguan avatar devhugo avatar dralliw avatar emeric54 avatar eskimon avatar firm1 avatar gerardpaligot avatar gllmc avatar gustavi avatar karnaj avatar migwel avatar motet-a avatar philippemilink avatar pierre-24 avatar poulp avatar rezemika avatar sandhose avatar situphen avatar spacefox avatar vayel avatar vhf avatar viki53 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zds-site's Issues

Markdown feature

J'ouvre cette issue pour discuter et répertorier les feautres demandées : changement de syntaxe, nouveau comportement, nouvelle extension, etc...

Une autre issue est ouverte pour répertorier les bugs connus dans le markdown du site : #57

Ici on se concentre sur les feature

La version en prod diffère legerement de ce qui avait été discuté, je vous laisse regarder le mini tuto rédigé par Shig à cet effet : http://zestedesavoir.com/forums/sujet/4/guide-du-markdown-de-zds

Actuellement n'est pas implémenté :

  • Les listes ordonnées autre que chiffre arabes

Associate the committer at nick member

Les commits actuels sur les tutoriels sont tous attribués par défaut à l'utilisateur Django. Ce qui fait qu'on ne sait pas quel auteur à précisément modifié une partie du tutoriel puisque l'auteur est le même et ce, pour tout les tutoriels.

On peut le voir dans l'image suivante.

Any user can see limited forums

Sur la page d’accueil, dans le menu déroulant, ou dans la liste des messages postés par un membre qui as des droits, il est possible de voir le titre des sujets (sans pouvoir y accéder) qui sont censés être dans un forum fermé.

C'est un bug à corriger.

Improve the management of user permissions

J'ai l'impression que la gestion des permissions liées aux sanctions pourraient être améliorées.

Actuellement, c'est géré par 2 booléens et 2 dates associées à ces booléens. Cependant, j'ai cru comprendre qu'un système de permissions était implémenté automatiquement dans Django à travers les Meta.

Il faudrait penser à migrer le système actuel par ce système intégré au framework. Ca rendrait le code vraiment plus joli que de gérer des booléens.

Et, si j'ai bien compris le module du forum, on aurait plus qu'à utiliser des annotations sur les différentes méthodes de views.py pour exécuter ou non la méthode. Les instructions suivantes deviendront inutiles :

profile = Profile.objects.filter(user__pk=request.user.pk).all()
if len(profile)>0:
    if not profile[0].can_read_now():
        raise Http404

Allow update tutorial category

Now, when i create a tutorial by online interface, i can choose categories for this. But when i edit my tutorial i have no possiblity for update theses categories.

Zone d'édition en chasse fixe

tout est dans le titre. Changer la police de la zone d'édition en casse fixe serait tres utile pour certaines extensions markdown, en particulier grid_table

Write CGU

Pour lancer ZDS, il faut rédiger les conditions générales utilisateurs afin d'être crédible dès le lancement et ne pas passer pour des rigolos.

S'ils y'en a qui se sentent l’âme de commencer un brouillon, je l'intégrerai dans une page dédié qui sera disponible via le footer.

Make a newsletter teasing system

il faudrait mettre en place une page d'accueil avec un champ permettant de rentrer son adresse mail afin d'être tenu informé de la sortie officielle du site. Je pourrai donner l'URL aux auteurs pour qu'ils s'y ajoutent.

Ca permettra de faire un peu de teasing et de "collecter" des utilisateurs potentiels, qui seront dispos une fois le site ouvert.

[Home] Link to the last post on a topic with no answer

Quand on publie un nouveau topic, il apparaît bien dans le bloc "Forums" de la home.

Petit souci, le lien vers la dernière réponse postée (le chiffre "1" encadré et affiché à droite du titre/sous-titre du sujet) ne marche pas, il pointe vers la home.

Certainement une histoire de lien vers le firstPost/lastPost qu'a pas été bien gérée dans le cas d'un sujet sans réponse.

Categories of tutorials

Hello,

Je me suis un peu penché sur les templates pour voir comment ça fonctionnait. J'ai donc compris comment on pouvait récupérer les catégories des forums sur toutes les pages (et je dois dire que c'est plutôt élégant).

Par contre, je me pose beaucoup de questions sur les catégories des tutoriels. Sur cette page. Nous pouvons y voir deux imports :

from zds.forum.models import Category as fCategory
from zds.utils.models import Category as Category

Le premier correspond aux catégories des forums et le second aux catégories des tutoriels. J'aurais aimé savoir pourquoi une partie des tutoriels est gérée dans le module utils et non pas dans tutorials.

Cela ne doit-il pas faire l'objet d'un gros refactoring ?

IP address information

En plus d'avoir notre IP remplacée par celle du serveur, il est aisément possible de la falsifier en spécifiant des en-têtes HTTP comme X-Forwarded-For (et peut-être d'autres).

Il serait intéressant, d'une part, de vérifier que l'IP transmise dans les en-têtes HTTP soit correcte (quatre numéros de 0 à 255, séparés par des points) et, d'autre part, de mémoriser les 2 IP (celle du "device" effectif ainsi que celle fournie par les en-têtes).

En effet, s'il s'agit d'un proxy dont le but premier est d'anonymiser la source, vous vous doutez bien qu'il n'y aura aucune indication de la véritable IP source dans les en-tête HTTP. Si l'information est présente, c'est peut-être parce que le membre se trouve derrière un proxy d'école / d'entreprise, mais dans la grande majorité des cas l'IP récupérée sera de classe privée (cf le cas de Shigerum avec son ip en 10.x...).

Implement a .tuto (xml) to markdown converter

Implementer un convertisseur du formats .tuto vers markdown en langage python.

Il s' agit donc de corriger la fonction tuto_to_markdown presente dans la view.py des tutorial.

La principale difficulté reside en l'ecriture de la regxp associée.

La spécification du markdown utilisé sur ZdS est ici

Pour info, le texte qui sert d'exemple est celui-ci :

Our emails go into spam

Il s'agit probablement d'un problème d'entêtes de nos emails, ou du fait que les emails soient formés de la même façon, ou encore parce que zds n'est pas très connus. Mais quelque soit la cause, ce qui est certains c'est que les emails envoyés par ZdS vont directement dans les spams.

De mon coté, ça m'est arrivé au bout du 3e mails pour me prévenir de l'arrivée d'un MP.

S'il y'a un spécialiste du mailing dans la salle, ce serait cool d'avoir une piste de résolution de ce problème.

Register one who moderates an alert

Actuellement, les alertes sont modérés, mais on ne sait pas qui l'a fait. L'idée est d'enregistrer l'user qui effectue la modération.

Articles need member's comments

Aujourd'hui les articles sont crées et publiés, mais on ne peut pas encore ajoutés des commentaires.

L'idée est de reprendre le même fonctionnement que les réponses de forum, et l'adapter pour des réponses aux articles.

Improve date display in tutorial history view

Actuellement, l'affichage de la date dans l'historique de modification d'un tutoriel n'est pas une date à proprement parlé. C'est une succession de chiffre (cf. image ci-dessous).
L'idée est d'afficher la date correctement dans cette vue dans un format lisible par les humains.

Cette date correspond au retour de la fonction suivante de la lib gitpython.

Ajax implement on +1/-1 button

Now, when you click on a button +1/-1, the topic page is refreshed. The goal is that when you click on, an ajax process is launched to check right of user, and refresh the counter.

Résolution des alertes et actions associées

Quelques idées au sujet des alertes

Il faudrait changer et compléter le mode actuel de résolution des alertes, c'est-à-dire :

  • arrêter de résoudre automatiquement toutes les alertes associées à un post lorsqu'il est édité par un membre du staff ;
  • donner la possibilité aux membres du staff de résoudre manuellement et individuellement les alertes ;
  • conserver la résolution auto des alertes associées à un post lorsqu'il est masqué ;
  • envoyer automatiquement un MP à l'auteur d'une alerte lors de sa résolution pour lui annoncer (texte + lien vers le post alerté). Ce MP pourrait être issu d'un membre "invisible" dans la liste des participants pour empêcher la réponse au MP, ou éventuellement d'un compte "générique" (ZdS, Staff, Zeste de Savoir, etc.).

ZdS need more tests

Comme toute application qui a pour but d'être opensourcée, il faut un maximum de tests pour toutes les contrôles et vues existantes.

La bonne pratique voudrait que ceux qui font des tests, ne soient pas ceux qui ont le nez dans le développement. Je vais éviter de faire l'apologie de l'utilité des tests dans une application/site, mais j'encourage bon nombre de personnes à rédiger des tests pour ZdS.

Pour éviter que mise à jour ne crée de la régression, le développeur consciencieux (à terme ça sera l'équipe de validation du repo) lancera l'ensemble des tests pour s'assurer qu'aucun feature n'est cassée.

Il y'a trois niveaux de contributions à cette issue :

  • Faire une liste (en langage naturel) détaillé (non exhaustive) des tests à rédiger, quelqu'un se chargera de les rédiger.
  • Rédiger les tests simple (test de création, test de maj, test de suppression en cascade)
  • Rédiger des tests complexes (import d'un tuto, inscription d'un membre)

Je commence avec une liste (non exhaustive) de quelques tests (je ferais une MAJ avec la liste des autres) :

Liste des Tests

  • Inscription d'un membre
    • un membre qui a saisi toutes les informations obligatoire doit pouvoir être présent en base, avec un profil.
    • un membre dont l'email ou le pseudo est déjà présent en base ne doit pas pouvoir s'inscrire
    • un membre déjà connecté de dois pas avoir accès à la vue d'inscription
    • ...
  • Connexion d'un utilisateur
    • un membre dont le login est présent en base et le mot de passe correct doit pouvoir se connecter
    • un membre dont le login n'existe pas en base ne dois pas pouvoir se connecter
    • un membre n'ayant pas de profil (table profil) ne doit pas pouvoir se connecter
    • ...
  • Création d'un topic
    • un invité ne doit pas pouvoir créer un topic
    • un membre qui saisi toutes les infos obligatoires doit pouvoir créer son topic
    • un topic crée doit être lié à son premier post
    • la position du premier post doit être égale à 1
    • ...

Documentation sur les tests django :

Limit the amount of SQL queries on main pages

J'ai survolé le code de quelques pages clés du site (liste des forums, des sujets d'un forum, etc.), et sauf erreur de ma part, actuellement niveau consommation de ressources on est proche d'un chalutier soviétique à contre vent (© Ths) !

Pas mal de getters s'appuyant sur des méthodes DAO (exemple) sont directement appelés depuis les templates (exemple).

À moins qu'un truc m'échappe dans le fonctionnement de Django, il faudra revoir la conception ici, ça sera un des premiers bottlenecks niveau perfs quand y'aura de la fréquentation sur le site.

Markdown bug

J'ouvre cette issue pour répertorier les bugs connus dans le markdown du site.

Une autre issue est ouverte pour discuter et répertorier les features demandées : changement de syntaxe, nouveau comportement, nouvelle extension, etc... : #58

Ici on se concentre sur les bugs.

Actuellement de connus :

  • La syntaxe de code "à la git hub" ne fonctionne pas dans des blocs persos ou citation : Ce bug a normalement été résolu mais n'est pas encore poussé en prod.
  • Les smiley s'insères n'importe comment dans les codes ou messages
  • La syntaxe actuelle des tableaux ne permet pas les sauts de ligne au sein d'une cellule, ni l'utilisation du caractère |.
  • les sauts de ligne ne sont pas permis dans un bloc aligné (centré ou à droite, peu importe).

N’hésitez pas si vous en voyez d'autres.

Export documents to pdf with pandoc

Pour rendre le contenu de ZdS disponible en hors ligne, il faudrait pouvoir exporter le contenu en format Pdf.
Pandoc, sait très bien faire les conversion de fichiers markdown en pdf. L'idée est donc de créer les version pdf de chaque contenu lorsqu'il est publié.

La fonction à écrire est donc toute simple, il suffit de suivre les étapes suivantes :

  • Construire un unique fichier markdown qui rassemble tout le tutoriel dans un seul fichier
  • passer la commande pandoc mon-tuto-magique.md -o mon-tuto-magique.pdf

Ressources utiles

Documentation Pandoc

Make a deployment script for production

Make a adminsys friendly script, which, once launched, deploy ZDS on server from git repository.

Script instructions being :

  • python manage.py collectstatic
  • git stash
  • git merge
  • ...

Ressources to test the project

Salut,

J'aimerais discuter sur les divers ressources nécessaires pour tester les différents aspects implémentés dans le projet Django.

Dans un premier temps, j'aimerais savoir deux choses :

  • Est-ce que quelqu'un serait me fournir un .tuto qui fonctionne avec l'implémentation actuelle de l'import des tutoriels ?
  • Comment est-ce que je peux créer des forums ?

Merci d'avance pour vos réponses.

Send Email when MP is send

Je viens d'installer un serveur SMTP sur le serveur de prod. Et il faudrait donc envoyer un mail a chaque MP envoyé non lu.

'Settings' object has no attribute 'CRISPY_TEMPLATE_PACK' error

En allant sur la page d'inscription, j'ai une erreur 'Settings' object has no attribute 'CRISPY_TEMPLATE_PACK' error.

Visiblement un souci avec la version de crispy forms.

(Dirty) Quick fix : désinstaller django-crispy-forms puis le réinstaller mais la version 1.3.2

pip uninstall django-crispy-forms
pip install django-crispy-forms==1.3.2

Doit y avoir moyen de s'arranger pour que ça fonctionne avec la dernière version, pas encore vérifié.

Force slug uniqueness in URLs

Je ne suis pas certain du fonctionnement de Django et de ZdS ici, mais j'ai l'impression qu'il manque un unique=true dans cette ligne de code.

J'ai bon ou pas ? Si la contrainte d'unicité n'est pas respectée, et que deux forums de titres identiques sont créés dans une catégorie, a priori ça va merder (ok, c'est un cas tordu, mais ça mange pas de pain de faire ça propre).

(N.B : si oui, le cas se présente peut-être dans d'autres entités.)

Par ailleurs, j'ai une autre question : c'est pas un peu crade de créer une URL de type /forums/sujet/<id>/<slug> ?

Par exemple, on peut accéder au sujet http://www.zestedesavoir.com/forums/sujet/1/bienvenue-sur-zds en rentrant n'importe quoi à la place du slug. Là encore, je ne fais que supposer et j'espère me tromper, mais je pense que point de vue SEO, ça ne plaira pas aux bots.

Implement search engine

ZDS need a search engine, in two level. Basic and advance search.

The search engine will be implemented with django-haystack and the search engine will be solr wich requires JRE on system.

Advance search allow to search all site content. Forum, Tutorial (public version), etc.

Chapter matching query does not exist

Salut,

J'ai testé l'import de tutoriels en local et sur le serveur de développement, j'obtiens toujours une erreur. J'ai bien essayé de regarder le code pour l'import d'un tuto mais elle semble vraiment complexe. :)

J'obtiens l'erreur suivante :

DoesNotExist at /tutoriels/importer/
Chapter matching query does not exist.

Quelqu'un à une idée ?

Implement moving topic

Now staff users can't move topic in other forum.

However ZdS need this moderation feature.

Crispy don't have template pack in local

Hello,

Lorsque je lance mon serveur et que je veux m'inscrire en local, il m'affiche directement une erreur avec CRISPY du type :

AttributeError at /membres/inscription
'Settings' object has no attribute 'CRISPY_TEMPLATE_PACK'

Suis-je le seul à avoir cette erreur ? Ca ne fonctionne pas en local mais je vois que ça fonctionne sur zestedesavoir.com

ImportError with GeoIP

Hello,

La version actuelle sur la branche master ne fonctionne pas, il manque la dépendance GeoIP : ImportError: cannot import name GeoIP.

Sur Mac, j'ai du installer la dépendance grâce à la commande brew install geoip mais j'en ai aucune idée pour les autres plateformes.

Faudrait le rajouter dans les dépendances pré-requis.

Check and validate code updates before push !

Préface : mon anglais est merdique, le titre est peut-être dégueulasse, mais visiblement la mode est au titrage anglophone.

Je met ce message pour attirer votre attention sur certaines modifications qui ne sont pas cool, comme par exemple celle-ci qui m'a fait perdre pas mal de temps, tout simplement parce qu'elle a entre autre exclu le dossier assets des commits à venir. Par ailleurs, ces lignes n'ont pas été commentés, donc à la première lecture, j'ai cru que c'était lié à MacOS, or pas du tout.

Bref, là c'est dralliw, demain ça sera peut-être un autre. Le gitignore est un fichier sensible.

Merci :)

Crispy don't have template pack in local

Hello,

Lorsque je lance mon serveur et que je veux m'inscrire en local, il m'affiche directement une erreur avec CRISPY du type :

AttributeError at /membres/inscription
'Settings' object has no attribute 'CRISPY_TEMPLATE_PACK'

Suis-je le seul à avoir cette erreur ? Ca ne fonctionne pas en local mais je vois que ça fonctionne sur zestedesavoir.com

Create robot.txt file for improve SEO

ZDS n'a pas encore de fichier robot.txt, qui est pourtant très important pour diriger les crawler et améliorer ainsi notre référencement sur le web.

L'idée est de montrer aux bots tous les tutos publié, et les messages sur le forum.

S'il y'a des pros du SEO dans la salle, c'est le moment.

Improve SEO

SEO is very important, and now the SEO isn't optimized.

We must ensure that :

  • private messages aren't invisible to any search engine (google, bing, etc.)
  • private forum, same that PM
  • each module must be understood by search engine
  • etc.

Subcategory of tutorials

Hello,

J'ai tenté d'implémenter les sous-catégories pour les tutoriels mais je me suis cassé les dents toute la soirée d'hier. Pour une raison vraiment toute bête : Impossible de mettre à jour le schéma d'une classe (table) existante.

J'ai essayé pas mal de choses, notamment la suppression du fichier base.db, mais même si les champs semblaient exister dans la console python, impossible de créer les sous-catégories via l'espace admin.

Est-ce que quelqu'un (sans doute firm1) pourrait m'aider à comprendre ?

Au delà de ça, il faudrait penser à implémenter ces sous-catégories si ce n'est pas moi qui m'en occupe. :)

Editeur Markdown JavaScript

Le markdown c'est bien beau, mais nous avons bien vu qu'il n'est pas forcément suffisant de base, et nous avons été obligé de rajouter nos extensions fait maison.

Cependant, un débutant moyen, n'a pas envie de lire un tuto pour écrire dans un premier temps un texte proprement. Il ne va pas chercher midi à quartorze heure pour savoir comment on insère une balise code si on ne le guide pas un peu, bref, le débutant à besoin d'un coup de pouce. C'est la raison pour laquelle ZdS a besoin d'un éditeur de Markdown Javascript.

J'ai donc un peu prospecté quelques solutions existantes, selon quelques critères, et j'en ai retenu certains. A vous de me dire ce qui irait le mieux avec ZdS et son avenir.

Est-ce possible d'avoir notre propre éditeur Markdown, qui gère directement toutes nos extensions ? Je pense par exemple à la création des tableaux qui peut être chiante, ou encore l'upload automatique des images, etc.

Markit up

Démonstration

Dépendances

  • JQuery

Points forts:

  • Opensource
  • Previsualisation JS

Points faibles:

  • Markdown simple

EpicEditor

Démonstration

Dépendances

  • NodeJS
  • JQuery

Points forts:

  • Gère le markdown de base
  • Previsualisation JS
  • permet l'écriture en plein écran avec d'un coté la version md et de l'autre le rendu
  • Le thème est modifiable
  • Possibilité d'import de fichier

Points faibles

  • Je ne le connais pas assez pour en dire plus

Tutorials need member's comments

Aujourd'hui les tutoriels sont crées et publiés, mais on ne peut pas encore ajoutés des commentaires.

L'idée est de faire des commentaires par :

  • Tutoriel
  • Partie
  • Chapitre
  • Extrait

J'aimerai à moyen terme qu'on puisse faire des commentaires par ligne, comme c'est fait actuellement sur github par exemple. Les commentaires par lignes, seront détruits à chaque mis à jour d'une version du tuto.

Allow change username and email

  • Add a new template for change username and email as like as template for change password.
  • Add a new form for change username and email in member/form.py with verifications
class ChangeUserForm(forms.Form):
    #my code
  • Add a view in member/view.py :
@login_required
def settings_user(request):
    if request.method == 'POST':
        form = ChangeUserForm(request.user, request.POST)
        c = {
            'form': form,
        }
        if form.is_valid():
            #Code for update user/email
        else:
            return render_to_response('member/settings_user.html', c, RequestContext(request))
    else:
        form = ChangeUserForm(request.user)
        c = {
            'form': form,
        }
        return render_to_response('member/settings_user.html', c, RequestContext(request))
  • Add url like url(r'^parametres/user$', views.settings_user), in member/url.py

Special char of username in Admin Zone

Actuellement, en s'inscrivant, on peut créer un pseudo qui contient des caractères spéciaux, des accents et tout le tralala. Cependant, il est actuellement impossible de modifier ces utilisateurs via l'interface d'admin.

Le fait est que django par defaut, n'autorise pas les caractères spéciaux dans les username. Du coup, il est impossible d'agir sur un username comme "GéoMl" dans la zone d’administration, pour le passer staff en l’occurrence.

C'est un problème, à résoudre.

Gets last answer of a topic

Je suis en train de revoir et de comprendre le module forum du projet. Puis, dans la class Topic, je tombe sur cette méthode :

def get_last_answer(self):
    '''Gets the last answer in the thread, if any'''
    last_post = Post.objects.filter(topic__pk=self.pk).order_by('-pubdate').all()[0]

    if last_post == self.first_post():
        return None
    else:
        return last_post

Je ne comprends pas pourquoi cette méthode renvoie None si le dernier message est égal au premier. Je suppose que c'est pour éviter de faire le test autre part mais ce n'est pas logique. Pour moi, si une méthode annonce de renvoyer le dernier poste, il renvoie le dernier poste, même si c'est le premier.

Willard, tu sais me dire pourquoi tu as fais ce test ?

I forgot my password

Aujourd'hui, si quelqu'un perd son mot de passe, il n'a aucun moyen de la retrouver, ce qui est totalement con, puisque ça force à créer un multi juste parce qu'on a une mémoire de poisson rouge.

Validation

Je suis en train de bosser sur le dropdown des différents menus du header et je me rends compte d'une chose, le système de validation est identique à celui des tutoriels.

Pour récupérer la liste des articles à valider, ils font tous les deux exactement les mêmes requêtes. Est-ce que c'est normal ? Si oui, pourquoi répéter ce code ?

Error to run project

Salut,

J'ai cloné le projet pour pouvoir le tester sur ma machine et, à terme, pouvoir contribuer quand j'aurai du temps.

J'ai suivi les instructions du projet de PDP mais j'obtiens toujours l'erreur suivante :

ImportError: No module named smileys

Quelqu'un serait en mesure de m'aider ? Ca serait vraiment top ! :)

know the member that modifies a message

Actuellement, un message peut-être édité par un modo ou par l'auteur du topic. L'idée serait d'enregistrer le membre qui à modifier ou masqué un message.

Contributions au projet

Récemment, nous avons intégré notre première page officielle avec la page teasing. Tout le monde semblait vraiment content et enthousiaste. Tellement que les contributions autour de cette page pour des "modifications mineurs" ont incitées les membres du staff, sans mal, à contribuer directement sur la branche master.

Pour cette page, ce n'est pas bien grave. Ce n'est pas une page critique et elle n'est pas encore accessible au public. Par contre, ce n'est pas une pratique à encourager, très loin de là.

Je propose donc que nous commençons à mettre en place la structure finale du projet GitHub en créant les différentes branches (dev, stable, master) et affinant les permissions de chaque contributeur avec l'organisation créé par Talus, zeste-de-savoir. Ainsi, nous pourrions obliger que toutes les contributions se fassent par un PR.

Qu'en pensez-vous ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.