Pagina con la lista delle dispense degli utenti, gli utenti possono inoltre aggiungere delle proprie dispense e i macchinisti possono "pinnare" delle dispense importanti.
Altre idee/discussioni sono ben accette
Edit.
/appunti
Pagina di appunti, anche qui come per la pagina utenti con fuzzy search e ricerca per tags.
Inoltre bisogna aggiungere finalmente un DB e l'autenticazione per utente in modo che ciascuno abbia una propria pagina per aggiungere link a delle dispense con un sistema di approvazione da parte dei macchinisti per approvare i link alle dispense e/o controllare che non si siano rotti dei link (?)
Lista appunti di tutti gli utenti
Tags
Ricerca fuzzy nella lista e per tag
/appunti/condivisi
Pagina di ogni utente per aggiungere e modificare link ad appunti, ci si può anche arrivare /profilo, se l'utente è un admin allora questa è anche la pagina per approvare dispense.
Possibilità di aggiungere dispense per ogni utente
Intanto serve caricare un PDF contenente la dispensa, varie proprietà di una dispensa sono
titolo
descrizione
insieme di tag
data di creazione della dispensa
nome del file (eg. quando l'utente scarica il PDF non vedrà il nome con l'hash ma solo {nomeFile}.pdf)
hash del pdf corrente
Inoltre se la dispensa è nella forma di appunti di un corso tra i tag si possono aggiungere anche
nome del corso (eg. Geometria 2)
codice del corso (eg. 511AA)
anno accademico del corso (eg. 2017/2018)
professore lo ha tenuto
Cose da fare:
Upload di PDF, aggiungere una variabile d'ambiente per indicare dove upload-are i file. Probabilmente i file finiranno in {hash}.{nomeFile}.pdf anche se la parte {nomeFile} verrà ignorata per quanto riguarda il content-store.
Per ora i file saranno sulla stessa macchina del server del sito, poi magari aggiungeremo un collegheremo ad un servizio di storage come phc/storage o un bucket S3.
Sistema di approvazione delle nuove dispense
I PDF delle dispense saranno identificati dal proprio hash (probabilmente sha256), e ci sarà una lista di hash approvati che indicherà quali dispense sono scaricabili.
Pagina con la lista delle dispense degli utenti, gli utenti possono inoltre aggiungere delle proprie dispense e i macchinisti possono "pinnare" delle dispense importanti.
Altre idee/discussioni sono ben accette
**Edit.**
- [ ] `/appunti`
Pagina di appunti, anche qui come per la pagina utenti con fuzzy search e ricerca per tags.
Inoltre bisogna aggiungere finalmente un DB e l'autenticazione per utente in modo che ciascuno abbia una propria pagina per aggiungere link a delle dispense con un sistema di approvazione da parte dei macchinisti per approvare i link alle dispense e/o controllare che non si siano rotti dei link (?)
- [ ] Lista appunti di tutti gli utenti
- [ ] Tags
- [ ] Ricerca fuzzy nella lista e per tag
- [ ] `/appunti/condivisi`
Pagina di ogni utente per aggiungere e modificare link ad appunti, ci si può anche arrivare `/profilo`, se l'utente è un admin allora questa è anche la pagina per approvare dispense.
- [ ] Possibilità di aggiungere dispense per ogni utente
Intanto serve caricare un PDF contenente la dispensa, varie proprietà di una dispensa sono
- titolo
- descrizione
- insieme di tag
- data di creazione della dispensa
- nome del file (eg. quando l'utente scarica il PDF non vedrà il nome con l'hash ma solo `{nomeFile}.pdf`)
- hash del pdf corrente
Inoltre se la dispensa è nella forma di appunti di un corso tra i **tag** si possono aggiungere anche
- nome del corso (eg. `Geometria 2`)
- codice del corso (eg. `511AA`)
- anno accademico del corso (eg. `2017/2018`)
- professore lo ha tenuto
**Cose da fare:**
- [ ] Upload di PDF, aggiungere una variabile d'ambiente per indicare dove upload-are i file. Probabilmente i file finiranno in `{hash}.{nomeFile}.pdf` anche se la parte `{nomeFile}` verrà ignorata per quanto riguarda il _content-store_.
Per ora i file saranno sulla stessa macchina del server del sito, poi magari aggiungeremo un collegheremo ad un servizio di storage come `phc/storage` o un bucket S3.
- [ ] Sistema di approvazione delle nuove dispense
I PDF delle dispense saranno identificati dal proprio hash (probabilmente sha256), e ci sarà una lista di hash approvati che indicherà quali dispense sono scaricabili.
aziis98
added this to the Roadmap project 3 years ago
Pagina di appunti, anche qui come per la pagina utenti con fuzzy search e ricerca per tags.
Inoltre bisogna aggiungere finalmente un DB e l'autenticazione per utente in modo che ciascuno abbia una propria pagina per aggiungere link a delle dispense con un sistema di approvazione da parte dei macchinisti per approvare i link alle dispense e/o controllare che non si siano rotti dei link (?)
/u/:poisson_uid
Pagina personale di ogni utenti con la possibilità di mettere like e cose del genere. Se l'utente è loggato sulla propria pagina compare anche il campo per aggiungere dispense (?) (oppure si può fare una pagina a parte per utente tipo /dashboard-dispense)
/appunti/condivisi
Pagina di ogni utente per aggiungere e modificare link ad appunti, se l'utente è un admin questa è la pagina per approvare dispense e vedere se ci sono broken links.
### Pagine mancanti
- `/appunti`
Pagina di appunti, anche qui come per la pagina utenti con fuzzy search e ricerca per tags.
Inoltre bisogna aggiungere finalmente un DB e l'autenticazione per utente in modo che ciascuno abbia una propria pagina per aggiungere link a delle dispense con un sistema di approvazione da parte dei macchinisti per approvare i link alle dispense e/o controllare che non si siano rotti dei link (?)
- `/u/:poisson_uid`
Pagina personale di ogni utenti con la possibilità di mettere like e cose del genere. ~~Se l'utente è loggato sulla propria pagina compare anche il campo per aggiungere dispense (?) (oppure si può fare una pagina a parte per utente tipo `/dashboard-dispense`)~~
- `/appunti/condivisi`
Pagina di ogni utente per aggiungere e modificare link ad appunti, se l'utente è un admin questa è la pagina per approvare dispense e vedere se ci sono _broken links_.
Come permettere agli utenti di aggiungere dispense?
Per ora abbiamo esplorato varie idee
La lista di appunti e dispense è semplicemente una lista di link a dei file presenti su Poisson.
I link devono per forza puntare ad un contenuto statico altrimenti un utente malvagio potrebbe modificare le cose servite alla fine del link ed aggiungere cose a piacere. (tipo da questo punto di vista permettere link a GoogleDrive sarebbe molto pericoloso)
Il problema dei link è che possono rompersi oppure peggio un utente malvagio potrebbe rimpiazzare il contenuto alla fine del link con contenuti malvagi. Un'idea per contrastare ciò oltre all'approvazione da parte di un admin o moderatore potrebbe essere di salvare l'hash del contenuto puntato dal link ed ogni tanto verificare che non siano cambiati (difficile e richiede dei cronjob in qualche forma).
Usare solo i link magnet di Torrent per gli appunti, per come funziona Torrent una volta approvati i file non possono essere modificati, questo risolverebbe ogni problema di approvazione (in quanto una volta approvato un link rimane valido per sempre) e si può anche fare in modo che si possano scaricare i file direttamente dal sito con cose tipo WebTorrent.
Far direttamente upload-are i contenuti sul sito del PHC, a quel punto i file non possono essere modificati ed il problema scompare (solo che scrivere il codice per fare upload di cose è brutto e serve avere molto spazio libero sulla macchina a meno di non offloadare i file a qualche altro servizio, e.g. https://github.com/minio/minio).
Upload-are direttamente dal sito nelle public_html/ delle persone, si potrebbe fare però ad un certo punto serve un qualche script che copia cose con permessi di root e non mi sembra troppo saggio.
Un sistema ibrido in cui gli utenti possono sia mettere link a file sulle loro pagine Poisson ed anche caricare file hostati dal sito.
Osservazioni
Nel caso dell'upload di cose i file potrebbero essere serviti come /appunti/{documentHash}.pdf oppure visto che alla fine sarebbero caricati da un utente singolo /u/{username}/appunti/{documentHash}.pdf
## Come permettere agli utenti di aggiungere dispense?
Per ora abbiamo esplorato varie idee
- La lista di appunti e dispense è semplicemente una lista di link a dei file presenti su Poisson.
I link devono per forza puntare ad un contenuto statico altrimenti un utente malvagio potrebbe modificare le cose servite alla fine del link ed aggiungere cose a piacere. (tipo da questo punto di vista permettere link a GoogleDrive sarebbe molto pericoloso)
- Il problema dei link è che possono rompersi oppure peggio un utente malvagio potrebbe rimpiazzare il contenuto alla fine del link con contenuti malvagi. Un'idea per contrastare ciò oltre all'approvazione da parte di un admin o moderatore potrebbe essere di salvare l'hash del contenuto puntato dal link ed ogni tanto verificare che non siano cambiati (difficile e richiede dei cronjob in qualche forma).
- Usare solo i link magnet di Torrent per gli appunti, per come funziona Torrent una volta approvati i file non possono essere modificati, questo risolverebbe ogni problema di approvazione (in quanto una volta approvato un link rimane valido per sempre) e si può anche fare in modo che si possano scaricare i file direttamente dal sito con cose tipo [WebTorrent](https://webtorrent.io/).
- Far direttamente upload-are i contenuti sul sito del PHC, a quel punto i file non possono essere modificati ed il problema scompare (solo che scrivere il codice per fare upload di cose è brutto e serve avere molto spazio libero sulla macchina a meno di non offloadare i file a qualche altro servizio, e.g. <https://github.com/minio/minio>).
- Upload-are direttamente dal sito nelle `public_html/` delle persone, si potrebbe fare però ad un certo punto serve un qualche script che copia cose con permessi di `root` e non mi sembra troppo saggio.
- Un sistema ibrido in cui gli utenti possono sia mettere link a file sulle loro pagine Poisson ed anche caricare file hostati dal sito.
### Osservazioni
- Nel caso dell'upload di cose i file potrebbero essere serviti come `/appunti/{documentHash}.pdf` oppure visto che alla fine sarebbero caricati da un utente singolo `/u/{username}/appunti/{documentHash}.pdf`
Alla fine è stato deciso per far upload-are i file a mano alle persone e ci sarà un mini sistema di moderazione per accettare i PDF caricati dagli utenti.
Alla fine è stato deciso per far upload-are i file a mano alle persone e ci sarà un mini sistema di moderazione per accettare i PDF caricati dagli utenti.
Pagina con la lista delle dispense degli utenti, gli utenti possono inoltre aggiungere delle proprie dispense e i macchinisti possono "pinnare" delle dispense importanti.
Altre idee/discussioni sono ben accette
Edit.
/appunti
Pagina di appunti, anche qui come per la pagina utenti con fuzzy search e ricerca per tags.
Inoltre bisogna aggiungere finalmente un DB e l'autenticazione per utente in modo che ciascuno abbia una propria pagina per aggiungere link a delle dispense con un sistema di approvazione da parte dei macchinisti per approvare i link alle dispense e/o controllare che non si siano rotti dei link (?)
Lista appunti di tutti gli utenti
Tags
Ricerca fuzzy nella lista e per tag
/appunti/condivisi
Pagina di ogni utente per aggiungere e modificare link ad appunti, ci si può anche arrivare
/profilo
, se l'utente è un admin allora questa è anche la pagina per approvare dispense.Possibilità di aggiungere dispense per ogni utente
Intanto serve caricare un PDF contenente la dispensa, varie proprietà di una dispensa sono
{nomeFile}.pdf
)Inoltre se la dispensa è nella forma di appunti di un corso tra i tag si possono aggiungere anche
Geometria 2
)511AA
)2017/2018
)Cose da fare:
Upload di PDF, aggiungere una variabile d'ambiente per indicare dove upload-are i file. Probabilmente i file finiranno in
{hash}.{nomeFile}.pdf
anche se la parte{nomeFile}
verrà ignorata per quanto riguarda il content-store.Per ora i file saranno sulla stessa macchina del server del sito, poi magari aggiungeremo un collegheremo ad un servizio di storage come
phc/storage
o un bucket S3.Sistema di approvazione delle nuove dispense
I PDF delle dispense saranno identificati dal proprio hash (probabilmente sha256), e ci sarà una lista di hash approvati che indicherà quali dispense sono scaricabili.
In aggiunta le dispense dovrebbero poter essere taggabili in modo da favorirne la ricerca tramite argomento/materia
Pagine mancanti
/appunti
Pagina di appunti, anche qui come per la pagina utenti con fuzzy search e ricerca per tags.
Inoltre bisogna aggiungere finalmente un DB e l'autenticazione per utente in modo che ciascuno abbia una propria pagina per aggiungere link a delle dispense con un sistema di approvazione da parte dei macchinisti per approvare i link alle dispense e/o controllare che non si siano rotti dei link (?)
/u/:poisson_uid
Pagina personale di ogni utenti con la possibilità di mettere like e cose del genere.
Se l'utente è loggato sulla propria pagina compare anche il campo per aggiungere dispense (?) (oppure si può fare una pagina a parte per utente tipo/dashboard-dispense
)/appunti/condivisi
Pagina di ogni utente per aggiungere e modificare link ad appunti, se l'utente è un admin questa è la pagina per approvare dispense e vedere se ci sono broken links.
Come permettere agli utenti di aggiungere dispense?
Per ora abbiamo esplorato varie idee
La lista di appunti e dispense è semplicemente una lista di link a dei file presenti su Poisson.
I link devono per forza puntare ad un contenuto statico altrimenti un utente malvagio potrebbe modificare le cose servite alla fine del link ed aggiungere cose a piacere. (tipo da questo punto di vista permettere link a GoogleDrive sarebbe molto pericoloso)
Il problema dei link è che possono rompersi oppure peggio un utente malvagio potrebbe rimpiazzare il contenuto alla fine del link con contenuti malvagi. Un'idea per contrastare ciò oltre all'approvazione da parte di un admin o moderatore potrebbe essere di salvare l'hash del contenuto puntato dal link ed ogni tanto verificare che non siano cambiati (difficile e richiede dei cronjob in qualche forma).
Usare solo i link magnet di Torrent per gli appunti, per come funziona Torrent una volta approvati i file non possono essere modificati, questo risolverebbe ogni problema di approvazione (in quanto una volta approvato un link rimane valido per sempre) e si può anche fare in modo che si possano scaricare i file direttamente dal sito con cose tipo WebTorrent.
Far direttamente upload-are i contenuti sul sito del PHC, a quel punto i file non possono essere modificati ed il problema scompare (solo che scrivere il codice per fare upload di cose è brutto e serve avere molto spazio libero sulla macchina a meno di non offloadare i file a qualche altro servizio, e.g. https://github.com/minio/minio).
Upload-are direttamente dal sito nelle
public_html/
delle persone, si potrebbe fare però ad un certo punto serve un qualche script che copia cose con permessi diroot
e non mi sembra troppo saggio.Un sistema ibrido in cui gli utenti possono sia mettere link a file sulle loro pagine Poisson ed anche caricare file hostati dal sito.
Osservazioni
/appunti/{documentHash}.pdf
oppure visto che alla fine sarebbero caricati da un utente singolo/u/{username}/appunti/{documentHash}.pdf
Alla fine è stato deciso per far upload-are i file a mano alle persone e ci sarà un mini sistema di moderazione per accettare i PDF caricati dagli utenti.
devto website-ng 9 months agoPagina Dispenseto Pagina Appunti 4 days ago