ekatsah / proj402 Goto Github PK
View Code? Open in Web Editor NEWSource code of cerkinfo's courses plateform
Home Page: cours.cerkinfo.be
Source code of cerkinfo's courses plateform
Home Page: cours.cerkinfo.be
Certains cours s'affichent comme vides alors qu'en fait, il ont tout plein de docs
Ex : http://cours.cerkinfo.be/zoidberg#/course/s/math-h-101
Docs dans ce cours : (affichés dans l'admin)
Browser : Chrome
Depuis le commit des tableaux triables
Il faudrait placer des protections anti-vandalisme.
Pour l'instant y'a pas grand chose à protéger mais autant déjà faire quelque chose, rien que parce que j'ai pas envie que quelqu'un change le titre de mes 300 uploads par de la merde
Assez important, surtout pour enlever tout le spam de haxe
L'ajout d'un cours est totalement contre-intuitif :
Ce serait cool de pouvoir uploader un zip (ou un rar) et que le serveur le décompresse et ajoute tous les sous fichiers ou alors que l'upload multiple soit possible
.
Exemple : http://cours.cerkinfo.be/zoidberg#/document/v/109/ (sur la première page)
Mais j'imagine que le problème doit se trouver ailleurs aussi
Solution :
Screen : http://pix.toile-libre.org/upload/original/1337534932.png
UPDATE : le problème ne se pose que quand le browser ne sait pas ou taper la césure
We should add a feature to remove a course and to modify the name,decsription and slug of a course.
Pouvoir marquer un post comme résolu et marquer la réponse qui l'a résolu.
.
Il faudrait coder une application qui interroge des parties du site et calculer le temps moyen de chaque module. On pourrait faire ça en js, l'implémenter directement sur le site comme ça chaque client peut nous fournir les résultats. On pourrait regarder l'évolution du load en fonction du temps et déterminer s'il faut commencer à mettre du cache et où en priorité
Il faudrait tracker chaque utilisateur pour voir ou il va, ou il reste, son os/browser, associer ip et netid etc...
Pouvoir s'abonner à plein de cours à la fois (en disant juste la section dans laquelle on est)
Ce serait cool d'afficher quelque part la version/le commit qui tourne en prod
Au moment du vote, il faudrait auto-compléter “This document is really in …” pour que les gens qui ont pas envie de regarder ne prennent pas systématiquement le premier de la liste
the search with mnemonic doesn't function anymore
I think a javascript confirm()
should be enough
Pouvoir donner des accès en lecture seule pour ceux qui n'ont pas de netid
Traceback (most recent call last):
File "documents/processing_deamon.py", line 149, in
pendings = list(Task.objects.filter(state='queued').order_by('id'))
File "/home/project402/proj402/venv/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/query.py", line 84, in len
self._result_cache.extend(self._iter)
File "/home/project402/proj402/venv/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/query.py", line 273, in iterator
for row in compiler.results_iter():
File "/home/project402/proj402/venv/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/sql/compiler.py", line 680, in results_iter
for rows in self.execute_sql(MULTI):
File "/home/project402/proj402/venv/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/sql/compiler.py", line 735, in execute_sql
cursor.execute(sql, params)
File "/home/project402/proj402/venv/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/backends/util.py", line 34, in execute
return self.cursor.execute(sql, params)
File "/home/project402/proj402/venv/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/backends/postgresql_psycopg2/base.py", line 44, in execute
return self.cursor.execute(query, args)
django.db.utils.DatabaseError: server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
Le json pour la liste des docs d'un cours est invalide :
Url : http://cours.cerkinfo.be/document/all/math-h-101
Browser : Chrome (et les autres ?)
.
.
.
L'api renvoie parfois du html (par ex. quand on est pas loggé) à la place du json
Url : http://cours.cerkinfo.be/document/all/math-h-101
Les liens pour éditer et supprimer une catégorie ne marchent pas.
Browser : Chrome 18 et 19
URL : http://cours.cerkinfo.be/zoidberg#/admin/tree
Taper un systeme de tableau triable
Certains slides sont beaucoup trop petits.
Exemple : les slides du cours de réseaux (http://cours.cerkinfo.be/zoidberg#/document/v/103/)
Browser : all
Genre 50ms comme ça si on sort le curseur du menu sans faire exprès, le menu ne se ré-enroule pas tout de suite et on ne doit pas tout remonter
Le end-user n'aime pas la markup et ne connait aucun language de markup => Il en faut donc un simple + un WYSIWYG
< C4ptainFork> hsteak: tu crois que "Old solutions" pourait être changé en "Solutions" ? Parce que y'a plein de gens qui croient
que les corrigés sont ceux de l'année passée
Cacher le “Activity” dans “users/templates/user_show.tpl” ou alors remplir la colonne (le tiret peut porter à confusion)
.
Les Bounding box des liens "add" de l'admin (gestion des catgories) trop grands : ils font toute la largeur de la page, ce qui fait que si on clique à droite d'un lien, c'est comme si on cliquait dessus.
Browser : Chrome 18 et 19
URL : http://cours.cerkinfo.be/zoidberg#/admin/tree
Ca pourrait être cool que le titre d'un fichier soit le nom du fichier, mais sans son exension
02:58 < ibizaman> ça me donne ça : AttributeError: 'AnonymousUser' object has no attribute 'get_profile'
02:59 < ibizaman> voir: http://pastie.org/3942396
03:07 < Bram> ça ressemble à un cas où y a pas vérification que l'user est loggé avec de faire un get_profile
03:07 < Bram> puisque l'user est probablement pas censé arriver jusque là
03:09 < ibizaman> Bram: ça ressemble à ça on est d'accord
03:10 < ibizaman> peut-être que je teste mal le fait d'être loggé ou non
03:10 < Bram> ibizaman: regarde ici /Volumes/Data/home/timi/Sites/proj402/../proj402/utils/decorators.py
03:10 < Bram> if request.user.get_profile().moderate:
03:11 < Bram> y a un if request.user.is_anonymous ou un brole du genre
03:11 < Bram> ou "is_logged"
03:11 < Bram> si non tu as ton erreur
03:13 < ibizaman> et non il y a direct "request.user.get_profile().moderate"
En gros, il faut inverser les moderate() et les login required() dans les urls.py.
Rules : enforce_post >> AR >> login_required >> moderate
Le système actuel n'est pas très clair, certains documents vont dans plusieurs catégories et il manque des catégories ce qui fait que beaucoup de docs sont classés dans "Other"
Montrer quand y a des commentaires pas lu (par exemple en changeant la barre bleu en orange)
Si on a du cpu/gpu à cramer, générer 2 aperçus du pdf. A l'affichage, d'abord loader le moins bon, puis, si l'utilisateur reste longtemps sur une partie ou zoome dessus, charger celui de meilleure qualité.
.
Quand on affiche une catégorie, ses sous-catégories ne sont pas triées c'est étrange...
Le titre du post de la première page (http://cours.cerkinfo.be/zoidberg#/document/v/109/), les <> sont transformés en >l; tout va bien.
Par contre on affiche le thread (http://cours.cerkinfo.be/zoidberg#/msg/view_thread/24) les >l; se re font escaper.
Si on veut ramener des gens, qu'ils trouvent ça "cool" et qu'ils en parlent à leurs potes, il faut qu'on leur soit utile et qu'on fasse ce que les autres ne font pas (non, un end-user n'est pas intéressé par du data-porn)
Je propose q'on fasse une liste de tout ce qui pourrait être cool à implémenter un jour pour accroitre notre domination universelle, quite à ouvrir une issue si on compte implémenter la features tout de suite ou qu'elle nécessite une discussion à elle seule
Je commence :
<Bram> c'est un truc tout bête en faite mais ça devrait pouvoir être sympa <Bram> là où y avait ton ancien carré pour les commentaires, en haut à gauche <Bram> tu mets une image d'ancre <Bram> quand on clique dessus ou passe la souris dessus ça présente 4 possibilités <Bram> (ou 3, je sais plus, ma mémoire est mauvaise) <Bram> 0. lien vers cette page <Bram> 1. j'ai arrêté ma lecture ici (-> ça sauve cette endroit là pour ce document là, quand le type réouvre le document ça l'envoie ici ou lui propose d'aller ici) <Bram> 2. sauver cette position (-> c'est comme un bookmark pour cette page avec la possibilité de rajouter une description style "exercice sur la chimie qui tombe TOUT LE TEMPS à l'examen" ou "démonstration machin truc pouetpouet" et LA feature chouette en plus: rendre cette ancre publique -> tout le monde partage les endroits clefs d'un texte -> win tout le sait où est tout ce qui est important) <Bram> 3. voir mes ancres pour ce document (-> popup avec la liste des ancres, possibilités de les éditers, les virers et modifier leur visibilité) <Bram> ah ouai <Bram> manque la possibilité de voir le nombre d'ancre publique sur chaque page et de rajouter une ancre publique dans ses ancres à soit <Bram> et de voir au debut/à un autre endroit toutes les ancres publiques sur un document <Bram> hsteak: voilà une killer feature de plus qui permettra à proj402 de gagner la guerre des platforms !
Flux d'actualité pour pas devoir chercher les nouveautés dans chaque cours
Faudrait la même chose que chez studentpuzzles.
[Bram] : si vous voulez aider pour l'i18n y a une tâche toute simple à faire parcourrir tous les fichiers source et template et marquer à traduire tout ce qui doit être traduit ça consiste en gros à foutre des {% trans "string" %} autour d'un string dans les templates voir un {% blocktrans %}string{% endblocktrans %} si c'est complexe et utiliser gettext dans le code
Quand on change le zoom sur un pdf (avec le input: text), l'aperçu se re-dimensionne un court instant puis on se fait rediriger vers http://cours.cerkinfo.be/zoidberg?#
ULB (exemple) : http://cours.cerkinfo.be/zoidberg#/document/v/70/
Browser : Chrome 18 et 19
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.