<commit_before>AGDSN Sektionsweb
==================================

This project is a flask-based webserver developed by members of the student network Dresden.

Usage / Forking
----------------------------------
As the project is
* not modularized in its current state,
* strongly depends on our infrastructure
* has been designed for our purposes (e.g. view each user's specific data)
it is not suitable for any custom use.

Note that **this will change soon**, because we plan to use the Sektionsweb elsewhere.


Libraries required to run dev server
----------------------------------

Debian packages:
`apt-get install libldap2-dev libffi-dev libsasl2-dev libxml2-dev libxslt1-dev libmysqlclient-dev libpython2.7-dev`


Required format for the markdown files
----------------------------------
In the folder `content/` you can place markdown files to use them as *content pages* as well as *news*.
The folder structure has to look like this, following the conditions explained below:

    content
    ├── images
    │   ├── image.png
    │   └── logo.png
    ├── legal
    │   ├── impressum.de.md
    │   ├── impressum.en.md
    │   ├── index.de.md
    │   └── index.en.md
    ├── news
    │   ├── 2015-03-11-new_website.de.md
    │   ├── 2015-03-11-new_website.en.md
    │   ├── index.de.md
    │   └── index.en.md
    └── support
        ├── contacts.de.md
        ├── contacts.en.md
        ├── faq.de.md
        ├── faq.en.md
        ├── index.de.md
        └── index.en.md

The *navigation bar* is built by scanning every directory for `*.md`-files.
 Directories containing the latter are then expected to contain an index file for every language code, e.g. `index.en.md`
 These index files decide whether it will appear in the navigation bar and which title it will be displayed with.
 
The index files have to contain certain metadata in the form `property: value`. This metadata section is terminated by an empty line (`\n\n`)
* To *not* include a folder in the menu, set `index: false`, as you will need for the `news/` folder(!).
* To *include* a folder, set the title of the navigation bar with `name:` as well as its position with `rank`.
 Do not forget to set `index: true` explicitly.
 
If the parameter `index` does not exist, the corresponding folder will not appear in the navigation bar, although every folder containing a markdown file *must* contain an `index.xx.md` file.

The markdown files must have a header in the same fashion as the index files. A complete .md file can look like this:

    title: Stuff
    author: alice
    date: 2015-03-27
    glyphicon: glyphicon-user
    
    ### Stuff
    #### Part 1
    
    To do stuff, you have to do stuff first.

Another possibility is to include hyperlinks, which only have a metadata section:

    title: Awesome page
    glyphicon: glyphicon-tower
    link: http://http://www.awesome-page.com/
    rank: 1<commit_msg>Change Project name to SIPA && include in README<commit_after>SIPA - Supreme Information Providing Application
==================================


Name
----------------------------------
Just as SIPA stands for a ball over the net game[1], the lesser known **s**upreme **i**nformation **p**roviding **a**pplication
does just the same -- sending packets over the internet.

This project is a flask-based webserver developed by members of the student network Dresden.

Usage / Forking
----------------------------------
As the project is
* not modularized in its current state,
* strongly depends on our infrastructure
* has been designed for our purposes (e.g. view each user's specific data)
it is not suitable for any custom use.

Note that **this will change soon**, because we plan to use the Sektionsweb elsewhere.


Libraries required to run dev server
----------------------------------

Debian packages:
`apt-get install libldap2-dev libffi-dev libsasl2-dev libxml2-dev libxslt1-dev libmysqlclient-dev libpython2.7-dev`


Required format for the markdown files
----------------------------------
In the folder `content/` you can place markdown files to use them as *content pages* as well as *news*.
The folder structure has to look like this, following the conditions explained below:

    content
    ├── images
    │   ├── image.png
    │   └── logo.png
    ├── legal
    │   ├── impressum.de.md
    │   ├── impressum.en.md
    │   ├── index.de.md
    │   └── index.en.md
    ├── news
    │   ├── 2015-03-11-new_website.de.md
    │   ├── 2015-03-11-new_website.en.md
    │   ├── index.de.md
    │   └── index.en.md
    └── support
        ├── contacts.de.md
        ├── contacts.en.md
        ├── faq.de.md
        ├── faq.en.md
        ├── index.de.md
        └── index.en.md

The *navigation bar* is built by scanning every directory for `*.md`-files.
 Directories containing the latter are then expected to contain an index file for every language code, e.g. `index.en.md`
 These index files decide whether it will appear in the navigation bar and which title it will be displayed with.
 
The index files have to contain certain metadata in the form `property: value`. This metadata section is terminated by an empty line (`\n\n`)
* To *not* include a folder in the menu, set `index: false`, as you will need for the `news/` folder(!).
* To *include* a folder, set the title of the navigation bar with `name:` as well as its position with `rank`.
 Do not forget to set `index: true` explicitly.
 
If the parameter `index` does not exist, the corresponding folder will not appear in the navigation bar, although every folder containing a markdown file *must* contain an `index.xx.md` file.

The markdown files must have a header in the same fashion as the index files. A complete .md file can look like this:

    title: Stuff
    author: alice
    date: 2015-03-27
    glyphicon: glyphicon-user
    
    ### Stuff
    #### Part 1
    
    To do stuff, you have to do stuff first.

Another possibility is to include hyperlinks, which only have a metadata section:

    title: Awesome page
    glyphicon: glyphicon-tower
    link: http://http://www.awesome-page.com/
    rank: 1

[1] https://en.wikipedia.org/wiki/Sipa
{'fraction_non_alphanumeric': 0.13775093846907133, 'fraction_numerical': 0.010771992818671455, 'mean_word_length': 2.673860911270983, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 1, 'lorem ipsum': 0, 'www.': 2, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3558823', 'n_tokens_mistral': 1841, 'n_tokens_neox': 1770, 'n_words': 809}