final version proposal

This commit is contained in:
anon 2022-07-19 14:01:52 -03:00
parent acfe61f169
commit 24895441b9
152 changed files with 4169 additions and 717 deletions

0
articles/__init__.py Normal file
View file

4
articles/apps.py Normal file
View file

@ -0,0 +1,4 @@
from django.apps import AppConfig
class ArticlesConfig(AppConfig):
name = 'articles'

7
articles/forms.py Normal file
View file

@ -0,0 +1,7 @@
from articles.models import *
from django import forms
class ArticleForm(forms.ModelForm):
class Meta:
model = Article
fields = ['title', 'subtitle', 'thumbnail', 'text']

24
articles/models.py Normal file
View file

@ -0,0 +1,24 @@
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
class Article(models.Model):
owner = models.ForeignKey(User, on_delete=models.CASCADE)
date_added = models.DateTimeField(auto_now_add=True)
date_updated = models.DateField(null=True, blank=True)
date_published = models.DateField(null=True, blank=True)
author = models.CharField(max_length=50)
status = models.CharField(max_length=20)
review = models.TextField(null=True, blank=True)
url = models.CharField(max_length=200)
#formular
title = models.CharField(max_length=150)
subtitle = models.CharField(max_length=100)
thumbnail = models.CharField(max_length=100)
text = models.TextField()
class Meta:
verbose_name_plural = 'articles'
def __str__(self):
return self.title

View file

@ -0,0 +1,115 @@
{% extends "users/base.html" %}
{% block header %}
<title>{{ article.title }}</title>
<style>
/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
#hero {
width: 100%;
height: 30vh;
background: url("../../../static/img/articles/{{ article.thumbnail | safe }}") center center;
background-size: cover;
position: relative;
z-index: 1;
padding: 0;
margin-bottom: -200px;
}
</style>
{% endblock header %}
{% block content %}
{% load static %}
<!-- ======= Hero Section ======= -->
<section id="hero" class="d-flex flex-column justify-content-center align-items-center">
</section>
<!-- End Hero -->
<!-- ======= News Section ======= -->
<section id="news" class="news">
<div class="container">
<div class="row">
<div class="col-xl-1 col-lg-6 icon-boxes">
</div>
<div class="col-xl-10 col-lg-6 icon-boxes">
{% if article.status == 'Pending approval' %}
<div class="alert alert-warning">
<strong><center>Pending approval</center></strong>
</div>
{% elif article.status == 'Reviewed' %}
<div class="alert alert-warning">
<strong><center>Reviewed: {{ article.review }}</center></strong>
</div>
{% endif %}
<div class="icon-box">
{% if article.status == 'Published' %}
<h4>Published by {{ article.owner }}, {{ article.date_published }}</h4>
{% else %}
<h4>
Created {{ article.date_added }}<br>
Updated {{ article.date_updated }}<br>
<a href="{% url 'articles:edit_article' article.id %}">Edit</a> -
<a data-toggle="modal" href="#" data-target="#id_Modal_delete{{ article.id }}">Delete</a>
</h4>
{% endif %}
<h3>{{ article.title }}</h3>
<h4>{{ article.subtitle }}</h4>
<div>
<a href="https://www.facebook.com/sharer/sharer.php?u=https://moneroj.net/article/{{ article.url }}" target="_blank">
<i class="bx bxl-facebook-circle" style="color: #3b5998; font-size: 30px;"></i>
</a>
<a href="https://twitter.com/share?title={{ article.title }}&url=https://moneroj.net/article/{{ article.url }}" target="_blank">
<i class="bx bxl-twitter" style="color: #00acee; font-size: 30px;"></i>
</a>
<a href="https://reddit.com/submit?title={{ article.title }}&url=https://moneroj.net/article/{{ article.url }}" target="_blank">
<i class="bx bxl-reddit" style="color:#ee4056; font-size: 30px;"></i>
</a>
<a href="https://web.whatsapp.com/send?text=https://moneroj.net/article/{{ article.url }}" target="_blank">
<i class="bx bxl-whatsapp" style="color:#007d17; font-size: 30px;"></i>
</a>
<a href="mailto:?subject={{ article.title }}&body=https://moneroj.net/article/{{ article.url }}" target="_blank">
<i class="bx bx-mail-send" style="color:#303030; font-size: 30px;"></i>
</a>
</div><br>
<p>{{ article.text | safe}}</p>
<br>
<!-- Basic Share Links -->
</div>
</div>
<div class="col-xl-1 col-lg-6 icon-boxes">
</div>
</div>
</div>
</section>
<!-- End News Section -->
</main>
<br>
<!-- Modal -->
<div class="modal fade" id="id_Modal_delete{{ article.id }}" tabindex="-1" role="dialog" aria-labelledby="Modal_delete{{ article.id }}" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="Modal_delete{{ article.id }}">Delete article</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Cencel">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
Are you sure you want to block and delete this article?<br>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<a class="btn btn-danger" href="{% url 'articles:delete_article' article.id %}" role="button">Delete</a>
</div>
</div>
</div>
</div>
<!-- Fim do Modal -->
{% endblock content %}

View file

@ -0,0 +1,248 @@
{% extends "users/base.html" %}
{% block header %}
<title>Moneroj.net - Articles</title>
<style>
.login_page {
width: 250px;
}
.form {
position: relative;
z-index: 1;
background: #313030;
max-width: 100%;
padding: 20px;
text-align: center;
border-radius: 20px
}
.form input {
font-family: "Roboto", Sans-serif;
outline: 0;
width: 100%;
border: 0;
margin: 0 0 10px;
padding: 5px;
font-size: 14px;
border-radius: 5px
}
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover,
.form button:active {
background: #db3b13
}
.form .message {
margin: 10px 0 0;
color: rgb(255, 255, 255);
font-size: 16px
}
.form .message a {
color: #ff4d21;
text-decoration: none
}
.link-grey a {
color: #313030;
text-decoration: none
}
.link-grey a:hover {
color: #4f4f4f;
text-decoration: none
}
.link-white a {
color: #ffffff;
text-decoration: none
}
.link-white a:hover {
color: #ececec;
text-decoration: none
}
.form .register_form {
display: none
}
/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
#hero {
width: 100%;
height: 50vh;
background: url("../../../static/img/articles/{{ thumbnail | safe }}") center center;
background-size: cover;
position: relative;
z-index: 1;
padding: 0;
margin-bottom: -100px;
}
</style>
{% endblock header %}
{% block content %}
{% load static %}
<!-- ======= Hero Section ======= -->
<section id="hero" class="d-flex flex-column justify-content-center align-items-center">
</section>
<!-- End Hero -->
<main id="main">
<!-- ======= Articles Section ======= -->
<section id="articles" class="articles">
<div class="container">
{% for article in articles %}
{% if article.count == 0 %}
<div class="row">
<div class="col-xl-8 col-lg-5">
<div class="content">
<h3 class="link-white"><a href="../article/{{ article.url }}">{{ article.title }}</a></h3>
<p class="link-white" style="text-align: justify;">
<b><a href="../article/{{ article.url }}">Article by {{ article.owner.username }}, {{ article.date_published }}</a></b><br><br>{{ article.text | safe }}
</p>
</div>
</div>
<div class="col-xl-4 d-flex flex-column justify-content-center">
<form class="needs-validation" action="{% url 'articles:articles' %}" method='POST' novalidate>
{% csrf_token %}
{% if message %}
{% if message == 'Subscription successful!' %}
<div class="alert alert-success">
<strong><center>{{ message }}</center></strong>
</div>
{% else %}
<div class="alert alert-danger">
<strong><center>{{ message }}</center></strong>
</div>
{% endif %}
{% endif %}
<div class="form">
<h1><i class="bx bx-mail-send" style="color: #ffffff"></i></h1>
<h3 style="color: #ffffff">Subscribe</h3><br>
<input type="text" name="email" placeholder="E-mail">
<div class="invalid-tooltip">
This field must be filled
</div>
<button type="submit">Subscribe</button>
<input type="hidden" name="next" value="{% url 'articles:articles' %}">
</div>
</form>
</div>
</div>
<br>
<div class="row">
{% elif article.count < 7 %}
<div class="icon-boxes col-xl-4">
<div class="card">
<a href="../article/{{ article.url }}"><img class="card-img-top" src="{% static article.thumbnail %}"></a>
<div class="card-body">
<h5><a href="../article/{{ article.url }}">{{ article.title }}</a></h5>
<p>{{ article.text | safe }}</p>
<h6><b>Article by {{ article.owner.username }}, {{ article.date_published }}</b></h6>
</div>
</div>
</div>
{% elif article.count == 7 %}
</div>
<div class="row">
<div class="col-xl-4 d-flex flex-column justify-content-center">
<form class="needs-validation" action="{% url 'articles:articles' %}" method='POST' novalidate>
{% csrf_token %}
{% if message %}
{% if message == 'Subscription successful!' %}
<div class="alert alert-success">
<strong><center>{{ message }}</center></strong>
</div>
{% else %}
<div class="alert alert-danger">
<strong><center>{{ message }}</center></strong>
</div>
{% endif %}
{% endif %}
<div class="form">
<h1><i class="bx bx-mail-send" style="color: #ffffff"></i></h1>
<h3 style="color: #ffffff">Subscribe</h3><br>
<input type="text" name="email" placeholder="E-mail">
<div class="invalid-tooltip">
This field must be filled
</div>
<button type="submit">Subscribe</button>
<input type="hidden" name="next" value="{% url 'articles:articles' %}">
</div>
</form>
</div>
<div class="col-xl-8 col-lg-5">
<div class="content">
<h3 class="link-white"><a href="../article/{{ article.url }}">{{ article.title }}</a></h3>
<p class="link-white" style="text-align: justify;">
<b><a href="../article/{{ article.url }}">Article by {{ article.owner.username }}, {{ article.date_published }}</a></b><br><br>{{ article.text | safe }}
</p>
</div>
</div>
</div>
<br>
<div class="row">
{% elif article.count > 7 %}
<div class="icon-boxes col-xl-4">
<div class="card">
<a href="../article/{{ article.url }}"><img class="card-img-top" src="{% static article.thumbnail %}"></a>
<div class="card-body">
<h5><a href="../article/{{ article.url }}">{{ article.title }}</a></h5>
<p>{{ article.text | safe }}</p>
<h6><b>Article by {{ article.owner.username }}, {{ article.date_published }}</b></h6>
</div>
</div>
</div>
{% endif %}
{% endfor %}
</div>
<div class="row">
<div class="icon-boxes col-xl-12">
<div class="card"><br>
<p>Images were taken from <a href="https://monero.graphics/" target="_blank">https://monero.graphics/</a> under <a href="https://creativecommons.org/licenses/by-sa/4.0/" target="_blank">CC BY-SA 4.0</a> license, check their work and donate them some Moneroj.</p>
</div>
</div>
</div>
</div>
</section>
<!-- End Articles Section -->
</main>
<!-- End #main -->
{% endblock content %}

View file

@ -0,0 +1,166 @@
{% extends "users/base.html" %}
{% block header %}
<title>Moneroj.net - Edit Article</title>
<style>
.login_page {
margin: 0 auto 25px;
width: 250px;
}
.form {
position: relative;
z-index: 1;
background: #313030;
max-width: 100%;
margin: 0 auto 25px;
padding: 20px;
text-align: center;
border-radius: 20px
}
.form input {
font-family: "Roboto", Sans-serif;
outline: 0;
width: 100%;
border: 0;
margin: 0 0 10px;
padding: 5px;
font-size: 14px;
border-radius: 5px
}
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover,
.form button:active {
background: #db3b13
}
.form .message {
margin: 10px 0 0;
color: rgb(255, 255, 255);
font-size: 16px
}
.form .message a {
color: #ff4d21;
text-decoration: none
}
.form .register_form {
display: none
}
</style>
{% endblock header %}
{% block content %}
<br><br><br>
<div class="container">
<h2>Write a new article:</h2><br>
<form class="needs-validation" action="{% url 'articles:edit_article' article.id %}" method='POST' novalidate>
{% csrf_token %}
<div class="form-row">
<div class="col-md-12 mb-3">
<label for="title">Title:</label>
<input type="text" class="form-control" name="title" id="id_title" value="{{ article.title }}" required>
<div class="valid-tooltip">
OK
</div>
<div class="invalid-tooltip">
This field is required
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-12 mb-3">
<label for="subtitle">Subtitle (up to five keywords):</label>
<input type="text" class="form-control" name="subtitle" id="id_subtitle" value="{{ article.subtitle }}" required>
<div class="valid-tooltip">
OK
</div>
<div class="invalid-tooltip">
This field is required
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-12 mb-3">
<label for="thumbnail">Thumbnail image <a href="{% url 'articles:images' %}" target="_blank">(check it out)</a></label>
<select class="browser-default custom-select" name="thumbnail" id="id_thumbnail" required>
<option value="{{ article.thumbnail }}" selected>{{ article.thumbnail }}</option>
<option value="price-action-400x300.png">price-action</option>
<option value="stats-400x300.png">stats</option>
<option value="monero-cat-untraceable-400x300.png">monero-cat-untraceable</option>
<option value="monero-geometric-logo-400x300.png">monero-geometric-logo</option>
<option value="monero-is-the-best-regardless-sticker-400x300.png">monero-is-the-best-regardless-sticker</option>
<option value="monero-mining-4-privacy-400x300.png">monero-mining-4-privacy</option>
<option value="monero-support-your-local-cypherpunk-400x300.png">monero-support-your-local-cypherpunk</option>
<option value="monero-the-corrupt-fear-us-400x300.png">monero-the-corrupt-fear-us</option>
<option value="monero-trace-400x300.png">monero-trace</option>
<option value="monero-will-survive-tyranny-sticker-400x300.png">monero-will-survive-tyranny-sticker</option>
<option value="monero-you-need-no-portfolio-400x300.png">monero-you-need-no-portfolio</option>
<option value="private-by-default-400x300.png">private-by-default</option>
<option value="private-electronic-money-400x300.png">private-electronic-money</option>
<option value="ussse-monero-400x300.png">ussse-monero</option>
<option value="why-speculate-400x300.png">why-speculate</option>
</select>
<div class="valid-tooltip">
OK
</div>
<div class="invalid-tooltip">
Preencha esse campo
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-12 mb-3">
<label for="text">Article:</label>
<textarea type="text" rows="10" cols="50" class="form-control" name="text" id="id_text" required>{{ article.text }}</textarea>
<div class="valid-tooltip">
OK
</div>
<div class="invalid-tooltip">
This field is required
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-2 mb-3">
<label for="text">Save:</label>
<button class="btn btn-primary" type="submit">Submit for approval</button>
</div>
</div>
</form>
</div>
<br><br><br>
{% endblock content %}

View file

@ -0,0 +1,162 @@
{% extends "users/base.html" %}
{% block header %}
<title>Moneroj.net - Choose your image</title>
{% endblock header %}
{% block content %}
{% load static %}
<!-- ======= Articles Section ======= -->
<section id="articles" class="articles">
<div class="container">
<div class="row">
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-cat-untraceable-400x300.png' %}">
<div class="card-body">
<p>monero-cat-untraceable</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-geometric-logo-400x300.png' %}">
<div class="card-body">
<p>monero-geometric-logo</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-is-the-best-regardless-sticker-400x300.png' %}">
<div class="card-body">
<p>monero-is-the-best-regardless-sticker</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-mining-4-privacy-400x300.png' %}">
<div class="card-body">
<p>monero-mining-4-privacy</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-support-your-local-cypherpunk-400x300.png' %}">
<div class="card-body">
<p>monero-support-your-local-cypherpunk</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-the-corrupt-fear-us-400x300.png' %}">
<div class="card-body">
<p>monero-the-corrupt-fear-us</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-trace-400x300.png' %}">
<div class="card-body">
<p>monero-trace</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-will-survive-tyranny-sticker-400x300.png' %}">
<div class="card-body">
<p>monero-will-survive-tyranny-sticker</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/monero-you-need-no-portfolio-400x300.png' %}">
<div class="card-body">
<p>monero-you-need-no-portfolio</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/price-action-400x300.png' %}">
<div class="card-body">
<p>price-action</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/private-by-default-400x300.png' %}">
<div class="card-body">
<p>private-by-default</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/private-electronic-money-400x300.png' %}">
<div class="card-body">
<p>private-electronic-money</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/stats-400x300.png' %}">
<div class="card-body">
<p>stats</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/ussse-monero-400x300.png' %}">
<div class="card-body">
<p>ussse-monero</p>
</div>
</div>
</div>
<div class="icon-boxes col-xl-4">
<div class="card">
<img class="card-img-top" src="{% static 'img/articles/why-speculate-400x300.png' %}">
<div class="card-body">
<p>why-speculate</p>
</div>
</div>
</div>
</div>
</div>
</section>
{% endblock content %}

View file

@ -0,0 +1,141 @@
{% extends "users/base.html" %}
{% block header %}
<title>Moneroj.net - New Article</title>
<style>
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover {
background: #d53b14;
}
</style>
{% endblock header %}
{% block content %}
<br><br><br>
<div class="container">
<h2>Write a new article:</h2><br>
<form class="needs-validation form" action="{% url 'articles:new_article' %}" method='POST' novalidate>
{% csrf_token %}
<div class="form-row">
<div class="col-md-12 mb-3">
<label for="title">Title:</label>
<input type="text" class="form-control" name="title" id="id_title" placeholder="Example: Check out new Monero usage and stats" required>
<div class="valid-tooltip">
OK
</div>
<div class="invalid-tooltip">
This field is required
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-12 mb-3">
<label for="subtitle">Subtitle (up to five keywords):</label>
<input type="text" class="form-control" name="subtitle" id="id_subtitle" placeholder="Example: Why privacy matters" required>
<div class="valid-tooltip">
OK
</div>
<div class="invalid-tooltip">
This field is required
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-12 mb-3">
<label for="thumbnail">Thumbnail image <a href="{% url 'articles:images' %}" target="_blank">(check it out)</a></label>
<select class="browser-default custom-select" name="thumbnail" id="id_thumbnail" required>
<option selected>Select one thumbnail option</option>
<option value="price-action-400x300.png">price-action</option>
<option value="stats-400x300.png">stats</option>
<option value="monero-cat-untraceable-400x300.png">monero-cat-untraceable</option>
<option value="monero-geometric-logo-400x300.png">monero-geometric-logo</option>
<option value="monero-is-the-best-regardless-sticker-400x300.png">monero-is-the-best-regardless-sticker</option>
<option value="monero-mining-4-privacy-400x300.png">monero-mining-4-privacy</option>
<option value="monero-support-your-local-cypherpunk-400x300.png">monero-support-your-local-cypherpunk</option>
<option value="monero-the-corrupt-fear-us-400x300.png">monero-the-corrupt-fear-us</option>
<option value="monero-trace-400x300.png">monero-trace</option>
<option value="monero-will-survive-tyranny-sticker-400x300.png">monero-will-survive-tyranny-sticker</option>
<option value="monero-you-need-no-portfolio-400x300.png">monero-you-need-no-portfolio</option>
<option value="private-by-default-400x300.png">private-by-default</option>
<option value="private-electronic-money-400x300.png">private-electronic-money</option>
<option value="ussse-monero-400x300.png">ussse-monero</option>
<option value="why-speculate-400x300.png">why-speculate</option>
</select>
<div class="valid-tooltip">
OK
</div>
<div class="invalid-tooltip">
Preencha esse campo
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-12 mb-3">
<label for="text">Article:</label>
<textarea type="text" rows="10" cols="50" class="form-control" name="text" id="id_text" placeholder="Write here the article, the system accepts HTML formatting such as <p></p> for paragraphs, <br> for line breaks, and so on." required></textarea>
<div class="valid-tooltip">
OK
</div>
<div class="invalid-tooltip">
This field is required
</div>
</div>
</div>
<div class="form-row">
<div class="col-md-2 mb-3">
<label for="text">Save:</label>
<button class="" type="submit">Submit for approval</button>
</div>
</div>
</form>
<br><br>
<h2>Tips for a better article:</h2><br>
<p>All fields are required. Write on a notepad and save locally your article before submitting, otherwise you might
lose all your work. Use simple sentences for the Subtitle, five words at maximum. Select any thumbnail image,
this serves only as a decoration for the article, it doesn't have to be related to the article.
You can use HTML tags to format the article:
<ul>
<li>For paragraphs <b>&#60;p style='font-size: 20px;'&#62;&#60;/p&#62;</b> </li>
<li>For external images <b>&#60;image src='ADDRESS' width='100%'&#62;</b> </li>
<li>To centralize text and images <b>&#60;center&#62;&#60;/center&#62;</b> </li>
<li>For bold text <b>&#60;b&#62;&#60;/b&#62;</b> </li>
<li>Line break <b>&#60;br&#62;</b> </li>
<li>External links <b>&#60;a href='ADDRESS' target='_blank'&#62;&#60;/a&#62;</b> </li>
<li>Title and headers <b>&#60;h1&#62;&#60;/h1&#62; to &#60;h6&#62;&#60;/h6&#62;</b> </li>
<li>Always use single quotes <b>'</b> instead of double quotes <b>"</b> inside HTML tags.</li>
<li>Images must always have <b>width='100%'</b>, or the design will break.</li>
<li>Try not to use images in the middle of the first paragraph of the article. Use them either at the beginning or after the first paragraph.</li>
</ul>
</p>
</div>
<br><br><br>
{% endblock content %}

View file

@ -0,0 +1,364 @@
{% extends "users/base.html" %}
{% block header %}
<title>Moneroj.net - Profile</title>
<style>
.login_page {
margin: 0 auto 25px;
}
.form {
position: relative;
z-index: 1;
background: #313030;
max-width: 100%;
padding: 20px;
text-align: center;
border-radius: 20px
}
.form input {
font-family: "Roboto", Sans-serif;
outline: 0;
width: 100%;
border: 0;
margin: 0 0 10px;
padding: 5px;
font-size: 14px;
border-radius: 5px
}
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover,
.form button:active {
background: #db3b13
}
.form .message {
margin: 10px 0 0;
color: rgb(255, 255, 255);
font-size: 16px
}
.form .message a {
color: #ff4d21;
text-decoration: none
}
.form .register_form {
display: none
}
</style>
{% endblock header %}
{% block content %}
<!-- ======= Subscribe Section ======= -->
<section id="Subscribe" class="section-bg">
<div class="container">
<div class="row">
<div class="col-xl-6 d-flex flex-column justify-content-center">
<h1>Start writing great articles!</h1>
<h3>Write and submit your articles for approval.</h3>
</div>
<div class="col-xl-3 d-flex flex-column justify-content-center">
<div class="col-md-12 form">
<h1><i class="bx bx-user" style="color: #ffffff"></i></h1>
<p class="message">You are currently:
<br>
<br>
{% if request.user.profile.type == 'user' %}
User / writer
{% elif request.user.profile.type == 'editor' %}
Editor and writer
{% elif request.user.profile.type == 'admin' %}
Administrator
{% endif %}
</p>
</div>
</div>
<div class="col-xl-3 d-flex flex-column justify-content-center">
<div class="col-md-12 form">
<h1><i class="bx bx-pen" style="color: #ffffff"></i></h1>
<p class="message">Write new article:</p><br>
<a href="{% url 'articles:new_article' %}"><button type="submit">Write</button></a>
</div>
</div>
</div>
</div>
</section>
<!-- End Subscribe Section -->
<div class="container">
<br><br>
<div class="section-title">
<h2>My Articles</h2>
</div>
<table class="table table-sm table-hover">
<tbody>
<tr>
<th scope="col">Title</th>
<th scope="col">Created</th>
<th scope="col">Updated</th>
<th scope="col">Published</th>
<th scope="col">Status</th>
<th scope="col" class="table-info"><div style="float:right">View</div></th>
<th scope="col" class="table-warning"><div style="float:right">Edit</div></th>
<th scope="col" class="table-danger"><div style="float:right">Delete</div></th>
</tr>
{% for article in articles %}
<tr>
<td>{{ article.title }}</td>
<td>{{ article.date_added }}</td>
<td>{{ article.date_updated }}</td>
<td>{{ article.date_published }}</td>
<td>{{ article.status }}</td>
<td class="table-info">
<div style="float:right">
<a href="../article/{{ article.url }}">X</a>
</div>
</td>
<td class="table-warning">
<div style="float:right">
<a href="{% url 'articles:edit_article' article.id %}">X</a>
</div>
</td>
<td class="table-danger">
<div style="float:right">
<a data-toggle="modal" href="#" data-target="#id_Modal_delete{{ article.id }}">X</a>
<!-- Modal -->
<div class="modal fade" id="id_Modal_delete{{ article.id }}" tabindex="-1" role="dialog" aria-labelledby="Modal_delete{{ article.id }}" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="Modal_delete{{ article.id }}">Delete article</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Cencel">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
Are you sure you want to block and delete this article?<br>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<a class="btn btn-danger" href="{% url 'articles:delete_article' article.id %}" role="button">Delete</a>
</div>
</div>
</div>
</div>
<!-- Fim do Modal -->
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% if request.user.profile.type == 'editor' %}
<br><br>
<div class="section-title">
<h2>Review Articles</h2>
</div>
<table class="table table-sm table-hover">
<tbody>
<tr>
<th scope="col">Title</th>
<th scope="col">Created</th>
<th scope="col">Updated</th>
<th scope="col">Published</th>
<th scope="col">Status</th>
<th scope="col" class="table-info"><div style="float:right">View</div></th>
<th scope="col" class="table-success"><div style="float:right">Publish</div></th>
<th scope="col" class="table-warning"><div style="float:right">Review</div></th>
</tr>
{% for review in reviews %}
<tr>
<td>{{ review.title }}</td>
<td>{{ review.date_added }}</td>
<td>{{ review.date_updated }}</td>
<td>{{ review.date_published }}</td>
<td>{{ review.status }}</td>
<td class="table-info">
<div style="float:right">
<a href="../article/{{ review.url }}">X</a>
</div>
</td>
<td class="table-success">
<div style="float:right">
<a href="{% url 'articles:publish_article' review.id %}">X</a>
</div>
</td>
<td class="table-warning">
<div style="float:right">
<a href="{% url 'articles:edit_article' review.id %}">X</a>
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% elif request.user.profile.type == 'admin' %}
<br><br>
<div class="section-title">
<h2>Review Articles</h2>
</div>
<table class="table table-sm table-hover">
<tbody>
<tr>
<th scope="col">Title</th>
<th scope="col">Writer</th>
<th scope="col">Created</th>
<th scope="col">Updated</th>
<th scope="col">Status</th>
<th scope="col" class="table-info"><div style="float:right">View</div></th>
<th scope="col" class="table-success"><div style="float:right">Publish</div></th>
<th scope="col" class="table-warning"><div style="float:right">Review</div></th>
<th scope="col" class="table-danger"><div style="float:right">Delete</div></th>
</tr>
{% for review in reviews %}
<tr>
<td>{{ review.title }}</td>
<td>{{ review.owner.username }}</td>
<td>{{ review.date_added }}</td>
<td>{{ review.date_updated }}</td>
<td>{{ review.status }}</td>
<td class="table-info">
<div style="float:right">
<a href="../article/{{ review.url }}">X</a>
</div>
</td>
<td class="table-success">
<div style="float:right">
<a href="{% url 'articles:publish_article' review.id %}">X</a>
</div>
</td>
<td class="table-warning">
<div style="float:right">
<a href="{% url 'articles:edit_article' review.id %}">X</a>
</div>
</td>
<td class="table-danger">
<div style="float:right">
<a data-toggle="modal" href="#" data-target="#id_Modal_delete_review{{ review.id }}">X</a>
<!-- Modal -->
<div class="modal fade" id="id_Modal_delete_review{{ review.id }}" tabindex="-1" role="dialog" aria-labelledby="Modal_delete_review{{ review.id }}" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="Modal_delete_review{{ review.id }}">Delete article</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Cencel">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
Are you sure you want to block and delete this article?<br>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<a class="btn btn-danger" href="{% url 'articles:delete_article' review.id %}" role="button">Delete</a>
</div>
</div>
</div>
</div>
<!-- Fim do Modal -->
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
<br><br>
<div class="section-title">
<h2>Published Articles</h2>
</div>
<table class="table table-sm table-hover">
<tbody>
<tr>
<th scope="col">Title</th>
<th scope="col">Writer</th>
<th scope="col">Created</th>
<th scope="col">Updated</th>
<th scope="col">Status</th>
<th scope="col" class="table-info"><div style="float:right">View</div></th>
<th scope="col" class="table-danger"><div style="float:right">Delete</div></th>
</tr>
{% for publish in published %}
<tr>
<td>{{ publish.title }}</td>
<td>{{ publish.owner.username }}</td>
<td>{{ publish.date_added }}</td>
<td>{{ publish.date_updated }}</td>
<td>{{ publish.status }}</td>
<td class="table-info">
<div style="float:right">
<a href="../article/{{ publish.url }}">X</a>
</div>
</td>
<td class="table-danger">
<div style="float:right">
<a data-toggle="modal" href="#" data-target="#id_Modal_delete_published{{ publish.id }}">X</a>
<!-- Modal -->
<div class="modal fade" id="id_Modal_delete_published{{ publish.id }}" tabindex="-1" role="dialog" aria-labelledby="Modal_delete_published{{ publish.id }}" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="Modal_delete_published{{ publish.id }}">Delete article</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Cencel">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
Are you sure you want to block and delete this article?<br>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<a class="btn btn-danger" href="{% url 'articles:delete_article' publish.id %}" role="button">Delete</a>
</div>
</div>
</div>
</div>
<!-- Fim do Modal -->
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</div>
<br><br><br>
{% endblock content %}

21
articles/urls.py Normal file
View file

@ -0,0 +1,21 @@
from django.urls import path
from django.contrib.auth import views as auth_views
from . import views
urlpatterns = [
# Pages URLs
# Everyone can use these
path('articles/', views.articles, name="articles"),
path('article/<str:identification>/', views.article, name="article"),
# URLs to articles writing and edit, etc
# Only registered users can use these
path('write/', views.write, name="write"),
path('new_article/', views.new_article, name="new_article"),
path('images/', views.images, name="images"),
path('edit_article/<str:identification>/', views.edit_article, name="edit_article"),
path('publish_article/<str:identification>/', views.publish_article, name="publish_article"),
path('delete_article/<str:identification>/', views.delete_article, name="delete_article"),
]

244
articles/views.py Normal file
View file

@ -0,0 +1,244 @@
from django.shortcuts import render
from django.http import HttpResponseRedirect
from django.urls import reverse
from .models import *
from .forms import *
from users.models import *
from users.forms import *
from users.views import update_visitors
from django.contrib.auth import logout, login, authenticate
from django.contrib.auth.forms import UserCreationForm
from django.contrib.auth.decorators import login_required
import datetime
from datetime import date, timedelta
###########################################
# General visitors' pages
###########################################
def articles(request):
update_visitors(False)
articles = Article.objects.filter(status="Published").order_by('-id')
first = True
thumbnail = ''
count = 0
for article in articles:
if first:
thumbnail = article.thumbnail
thumbnail = thumbnail.replace('400x300', '1920x1080')
first = False
article.thumbnail = 'img/articles/' + article.thumbnail
if len(article.title) > 100:
article.title = article.title[:100] + '...'
article.count = count
if count != 5 and count != 0:
article.text = article.text[:400] + '...'
else:
article.text = article.text[:600] + '...'
count += 1
if request.method != 'POST':
#no data, go back to articles section
form = SubscriberForm()
message = False
else:
#e-mail submitted
form = SubscriberForm(data=request.POST)
if form.is_valid():
new_subscriber = form.save(commit=False)
new_subscriber.save()
message = 'Subscription successful!'
else:
message = 'Something went wrong!'
print(thumbnail)
context = {'page': 'article', 'articles': articles, 'form': form, 'message': message, 'thumbnail': thumbnail}
return render(request, 'articles/articles.html', context)
def article(request, identification):
update_visitors(False)
try:
article = Article.objects.get(id=identification)
except:
try:
identification = identification.replace('-', ' ')
article = Article.objects.get(title=identification)
except:
return render(request, 'users/error.html')
article.thumbnail = article.thumbnail.replace('400x300', '1920x1080')
if article.status == 'Published':
context = {'page': 'article', 'article': article}
return render(request, 'articles/article.html', context)
else:
if request.user.username != "Administrador" and request.user.username != "Morpheus" and request.user != article.owner and request.user.profile.type != 'editor':
return render(request, 'users/error.html')
else:
context = {'page': 'article', 'article': article}
return render(request, 'articles/article.html', context)
###########################################
# Required login - Users
###########################################
@login_required
def images(request):
update_visitors(False)
context = {'page': 'article'}
return render(request, 'articles/images.html', context)
@login_required
def write(request):
update_visitors(False)
articles = Article.objects.filter(author=request.user).order_by('-id')
for article in articles:
try:
article.date_added = datetime.datetime.strftime(article.date_added, '%d/%m/%Y')
article.date_updated = datetime.datetime.strftime(article.date_updated, '%d/%m/%Y')
except:
pass
try:
article.date_published = datetime.datetime.strftime(article.date_published, '%d/%m/%Y')
except:
pass
article.title = article.title[:50] + '...'
if request.user.profile.type == 'editor':
reviews = Article.objects.filter(status="Pending approval").exclude(author=request.user)
for review in reviews:
try:
review.date_added = datetime.datetime.strftime(review.date_added, '%d/%m/%Y')
review.date_updated = datetime.datetime.strftime(review.date_updated, '%d/%m/%Y')
except:
pass
try:
review.date_published = datetime.datetime.strftime(review.date_published, '%d/%m/%Y')
except:
pass
review.title = review.title[:50] + '...'
context = {'page': 'article', 'articles': articles, 'reviews': reviews}
if request.user.profile.type == "admin":
reviews = Article.objects.filter(status="Pending approval")
for review in reviews:
try:
review.date_added = datetime.datetime.strftime(review.date_added, '%d/%m/%Y')
review.date_updated = datetime.datetime.strftime(review.date_updated, '%d/%m/%Y')
except:
pass
try:
review.date_published = datetime.datetime.strftime(review.date_published, '%d/%m/%Y')
except:
pass
review.title = review.title[:50] + '...'
published = Article.objects.filter(status="Published")
for publish in published:
try:
publish.date_added = datetime.datetime.strftime(publish.date_added, '%d/%m/%Y')
publish.date_updated = datetime.datetime.strftime(publish.date_updated, '%d/%m/%Y')
except:
pass
try:
publish.date_published = datetime.datetime.strftime(publish.date_published, '%d/%m/%Y')
except:
pass
publish.title = publish.title[:50] + '...'
context = {'page': 'article', 'articles': articles, 'reviews': reviews, 'published': published}
else:
context = {'page': 'article', 'articles': articles}
return render(request, 'articles/write.html', context)
@login_required
def new_article(request):
update_visitors(False)
if request.method != 'POST':
#create new page with blank form
form = ArticleForm()
else:
#process data and submit article
form = ArticleForm(data=request.POST)
if form.is_valid():
new_article = form.save(commit=False)
new_article.author = request.user.username
articles = Article.objects.filter(author=new_article.author).filter(status='Pending approval')
count = 0
if articles:
for article in articles:
count += 1
if count >= 5:
return HttpResponseRedirect(reverse('articles:write'))
new_article.date_updated = datetime.datetime.now()
new_article.owner = request.user
new_article.url = new_article.title.replace(' ', '-')
new_article.status = 'Pending approval'
new_article.save()
return HttpResponseRedirect(reverse('articles:write'))
context = {'form': form, 'page': 'article'}
return render(request, 'articles/new_article.html', context)
@login_required
def edit_article(request, identification):
update_visitors(False)
try:
article = Article.objects.get(id=identification)
except:
return render(request, 'users/error.html')
if request.user.profile.type != "admin" and request.user != article.owner:
return render(request, 'users/error.html')
if request.method != 'POST':
#no data submitted, load saved data
form = ArticleForm(instance=article)
else:
#data submitted, now save it
form = ArticleForm(instance=article, data=request.POST)
if form.is_valid():
new_article = form.save(commit=False)
new_article.author = request.user.username
new_article.date_updated = date.today()
new_article.owner = request.user
new_article.url = new_article.title.replace(' ', '-')
new_article.status = 'Pending approval'
new_article.save()
return HttpResponseRedirect(reverse('articles:write'))
context = {'form': form, 'article': article, 'page': 'article'}
return render(request, 'articles/edit_article.html', context)
@login_required
def delete_article(request, identification):
update_visitors(False)
try:
article = Article.objects.get(id=identification)
except:
return render(request, 'users/error.html')
if request.user.profile.type != "admin" and request.user != article.owner:
return render(request, 'users/error.html')
article.delete()
return HttpResponseRedirect(reverse('articles:write'))
@login_required
def publish_article(request, identification):
update_visitors(False)
try:
article = Article.objects.get(id=identification)
except:
return render(request, 'users/error.html')
if request.user.profile.type != "admin" and request.user.profile.type != "editor":
return render(request, 'users/error.html')
if request.user.profile.type == article.owner.profile.type and request.user.profile.type != 'admin':
return render(request, 'users/error.html')
article.status = 'Published'
article.date_published = date.today()
article.save()
return HttpResponseRedirect(reverse('articles:write'))

3
charts/admin.py Normal file
View file

@ -0,0 +1,3 @@
from django.contrib import admin
# Register your models here.

5
charts/apps.py Normal file
View file

@ -0,0 +1,5 @@
from django.apps import AppConfig
class chartsConfig(AppConfig):
name = 'charts'

View file

@ -1,4 +1,14 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - About</title>
<style>
.break {
word-break: break-all;
}
</style>
{% endblock %}
{% block content %}
{% load static %}
@ -22,10 +32,9 @@
</div><br>
<div class="row">
<div class="col-xl-12 col-md-6 mb-4">
<div class="alert alert-success" role="alert">
Liked this project? Help support it, funding my CCS Proposal >
<a href ="https://repo.getmonero.org/monero-project/ccs-proposals/-/merge_requests/318" target="_blank">Link</a>
<div class="alert alert-success break" role="alert">
Liked this project? Help support it, funding us:
8Agy1JvbsttEV2Jp2ecyRLSoKiCQwr4f2FKjWh2dz8Q1Y4LXCxXDNBf5praUrc1v8vDSqHYUefqxkiLNgnjvDfQNQStwvP6
</div>
</div>
</div>
@ -102,26 +111,6 @@
</div>
</div>
</div>
<div class="row">
<div class="col-xl-12 col-md-6 mb-4">
<div class="card border-left-new">
<div class="card-body">
<div class="row no-gutters align-items-center">
<div class="col mr-2">
<div class="text-xs font-weight-bold text-info text-uppercase mb-1">
Github</div>
<div class="h5 mb-0 font-weight-bold text-gray-800"><a
href="https://github.com/cryptomorpheuss/moneropro" target="_blank">cryptomorpheuss/moneropro</a>
</div>
</div>
<div class="col-auto">
<i class="bx bxl-github text-gray-300"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xl-12 col-md-6 mb-4">
<div class="card border-left-new">

View file

@ -30,20 +30,20 @@
<nav class="navbar navbar-expand-lg navbar-light">
<div class="container">
<a class="navbar-brand" href="{% url 'monerojnet:index' %}"><text class="color-orange">Gazeto</text> Monero<text class="color-orange">j</text> </a>
<a class="navbar-brand" href="{% url 'charts:index' %}"><text class="color-orange">Gazeto</text> Monero<text class="color-orange">j</text> </a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end" id="navbarSupportedContent">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="{% url 'monerojnet:index' %}">Home <span class="sr-only">(current)</span></a>
<a class="nav-link" href="{% url 'charts:index' %}">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'monerojnet:sfmodel' %}">Charts</a>
<a class="nav-link" href="{% url 'charts:sfmodel' %}">Charts</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'monerojnet:articles' %}">Articles</a>
<a class="nav-link" href="{% url 'charts:articles' %}">Articles</a>
</li>
<li class="nav-item dropdown" >
{% if user.is_authenticated %}
@ -62,11 +62,11 @@
<a class="nav-link" href="{% url 'users:login' %}">Login</a>
<a class="nav-link" href="{% url 'users:register' %}">Register</a>
{% endif %}
<a class="nav-link" href="{% url 'monerojnet:about' %}">About</a>
<a class="nav-link" href="{% url 'charts:about' %}">About</a>
<div class="dropdown-divider"></div>
<a class="nav-link" href="{% url 'monerojnet:index' %}">English</a>
<a class="nav-link" href="{% url 'monerojnet:fr' %}">French</a>
<a class="nav-link" href="{% url 'monerojnet:pt' %}">Portuguese</a>
<a class="nav-link" href="{% url 'charts:index' %}">English</a>
<a class="nav-link" href="{% url 'charts:fr' %}">French</a>
<a class="nav-link" href="{% url 'charts:pt' %}">Portuguese</a>
</div>
</li>
</ul>
@ -107,9 +107,9 @@
<div class="col-lg-3 col-md-6 footer-links">
<h4>Useful Links</h4>
<ul>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:index' %}">Home</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:sfmodel' %}">Charts</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:about' %}">About</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:index' %}">Home</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:sfmodel' %}">Charts</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:about' %}">About</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="https://www.getmonero.org/">Getmonero.org</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="https://www.reddit.com/r/Monero/">Reddit/Monero</a></li>
</ul>

View file

@ -30,20 +30,20 @@
<nav class="navbar navbar-expand-lg navbar-light">
<div class="container">
<a class="navbar-brand" href="{% url 'monerojnet:pt' %}"><text class="color-orange">Gazeto</text> Monero<text class="color-orange">j</text> </a>
<a class="navbar-brand" href="{% url 'charts:pt' %}"><text class="color-orange">Gazeto</text> Monero<text class="color-orange">j</text> </a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end" id="navbarSupportedContent">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="{% url 'monerojnet:index' %}">Inicial <span class="sr-only">(current)</span></a>
<a class="nav-link" href="{% url 'charts:index' %}">Inicial <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'monerojnet:sfmodel' %}">Gráficos</a>
<a class="nav-link" href="{% url 'charts:sfmodel' %}">Gráficos</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'monerojnet:artigos' %}">Artigos</a>
<a class="nav-link" href="{% url 'charts:artigos' %}">Artigos</a>
</li>
<li class="nav-item dropdown" >
{% if user.is_authenticated %}
@ -62,11 +62,11 @@
<a class="nav-link" href="{% url 'users:login' %}">Entrar</a>
<a class="nav-link" href="{% url 'users:register' %}">Registrar</a>
{% endif %}
<a class="nav-link" href="{% url 'monerojnet:about' %}">Sobre</a>
<a class="nav-link" href="{% url 'charts:about' %}">Sobre</a>
<div class="dropdown-divider"></div>
<a class="nav-link" href="{% url 'monerojnet:index' %}">Inglês</a>
<a class="nav-link" href="{% url 'monerojnet:fr' %}">Francês</a>
<a class="nav-link" href="{% url 'monerojnet:pt' %}">Português</a>
<a class="nav-link" href="{% url 'charts:index' %}">Inglês</a>
<a class="nav-link" href="{% url 'charts:fr' %}">Francês</a>
<a class="nav-link" href="{% url 'charts:pt' %}">Português</a>
</div>
</li>
</ul>
@ -103,9 +103,9 @@
<div class="col-lg-3 col-md-6 footer-links">
<h4>Links úteis</h4>
<ul>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:pt' %}">Página Inicial</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:sfmodel' %}">Gráficos</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:about' %}">Sobre</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:pt' %}">Página Inicial</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:sfmodel' %}">Gráficos</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:about' %}">Sobre</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="https://www.getmonero.org/">Getmonero.org</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="https://www.reddit.com/r/Monero/">Reddit/Monero</a></li>
</ul>

View file

@ -6,10 +6,8 @@
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content="">
<meta name="author" content="">
<title>Moneroj.net - Charts</title>
<meta name="description" content="Your information source about Monero, with metrics, charts, stats and articles.">
<meta name="author" content="CryptoMorpheus_">
<link href="{% static 'img/favicon.png' %}" rel="icon">
<link href="{% static 'img/apple-touch-icon.png' %}" rel="apple-touch-icon">
@ -51,11 +49,7 @@
padding-left: 12px;
padding-right: 12px;
}
</style>
<!-- Load plotly-->
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
<style>
html,
body {
height: 100%;
@ -87,6 +81,12 @@
color: #00FF00;
}
</style>
<!-- Load plotly-->
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
{% block header %}
{% endblock %}
</head>
<body id="page-top">
@ -99,12 +99,12 @@
<!-- Sidebar - Brand -->
<a class="sidebar-brand d-flex align-items-center justify-content-center"
href="{% url 'monerojnet:index' %}">
href="{% url 'charts:index' %}">
<div class="sidebar-brand-text mx-3">Moneroj</div>
</a>
<br>
<!-- Heading -->
<div class="sidebar-heading">
<br>
Metrics
</div>
<!-- Nav Item - Prices Collapse Menu -->
@ -118,23 +118,23 @@
data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:pricelog' %}">Price in Dollars (Log.)</a>
<a class="collapse-item" href="{% url 'monerojnet:pricelin' %}">Price in Dollars (Lin.)</a>
<a class="collapse-item" href="{% url 'monerojnet:pricesats' %}">Price in Sats (Lin.)</a>
<a class="collapse-item" href="{% url 'monerojnet:fractal' %}">Fractal Multiple</a>
<a class="collapse-item" href="{% url 'monerojnet:inflationfractal' %}">Inflation-Adjusted
<a class="collapse-item" href="{% url 'charts:pricelog' %}">Price in Dollars (Log.)</a>
<a class="collapse-item" href="{% url 'charts:pricelin' %}">Price in Dollars (Lin.)</a>
<a class="collapse-item" href="{% url 'charts:pricesats' %}">Price in Sats (Lin.)</a>
<a class="collapse-item" href="{% url 'charts:fractal' %}">Fractal Multiple</a>
<a class="collapse-item" href="{% url 'charts:inflationfractal' %}">Inflation-Adjusted
Fractal</a>
<a class="collapse-item" href="{% url 'monerojnet:golden' %}">Golden Ratio Multiplier</a>
<a class="collapse-item" href="{% url 'monerojnet:competitors' %}">Performance ($, Log.)</a>
<a class="collapse-item" href="{% url 'monerojnet:competitorslin' %}">Performance ($, Lin.)</a>
<a class="collapse-item" href="{% url 'monerojnet:competitorssats' %}">Performance (Sats, Log.)</a>
<a class="collapse-item" href="{% url 'monerojnet:competitorssatslin' %}">Performance (Sats, Lin.)</a>
<a class="collapse-item" href="{% url 'monerojnet:inflationreturn' %}">Return vs. Inflation</a>
<a class="collapse-item" href="{% url 'monerojnet:bitcoin' %}">Comparison to Bitcoin</a>
<a class="collapse-item" href="{% url 'monerojnet:powerlaw' %}">Power Law</a>
<a class="collapse-item" href="{% url 'monerojnet:thermocap' %}">Thermocap Multiple</a>
<a class="collapse-item" href="{% url 'monerojnet:sharpe' %}">Sharpe Ratio</a>
<a class="collapse-item" href="{% url 'monerojnet:deviation' %}">Price Deviation</a>
<a class="collapse-item" href="{% url 'charts:golden' %}">Golden Ratio Multiplier</a>
<a class="collapse-item" href="{% url 'charts:competitors' %}">Performance ($, Log.)</a>
<a class="collapse-item" href="{% url 'charts:competitorslin' %}">Performance ($, Lin.)</a>
<a class="collapse-item" href="{% url 'charts:competitorssats' %}">Performance (Sats, Log.)</a>
<a class="collapse-item" href="{% url 'charts:competitorssatslin' %}">Performance (Sats, Lin.)</a>
<a class="collapse-item" href="{% url 'charts:inflationreturn' %}">Return vs. Inflation</a>
<a class="collapse-item" href="{% url 'charts:bitcoin' %}">Comparison to Bitcoin</a>
<a class="collapse-item" href="{% url 'charts:powerlaw' %}">Power Law</a>
<a class="collapse-item" href="{% url 'charts:thermocap' %}">Thermocap Multiple</a>
<a class="collapse-item" href="{% url 'charts:sharpe' %}">Sharpe Ratio</a>
<a class="collapse-item" href="{% url 'charts:deviation' %}">Price Deviation</a>
</div>
</div>
</li>
@ -149,12 +149,12 @@
data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:dominance' %}">Monero's Dominance</a>
<a class="collapse-item" href="{% url 'monerojnet:monerodominance' %}">Monero Privacy Dominance</a>
<a class="collapse-item" href="{% url 'monerojnet:privacydominance' %}">Total Privacy Dominance</a>
<a class="collapse-item" href="{% url 'monerojnet:rank' %}">Monero's CMC Rank</a>
<a class="collapse-item" href="{% url 'monerojnet:marketcap' %}">Privacy Coins' Marketcap</a>
<a class="collapse-item" href="{% url 'monerojnet:privacymarketcap' %}">Total Privacy Marketcap</a>
<a class="collapse-item" href="{% url 'charts:dominance' %}">Monero's Dominance</a>
<a class="collapse-item" href="{% url 'charts:monerodominance' %}">Monero Privacy Dominance</a>
<a class="collapse-item" href="{% url 'charts:privacydominance' %}">Total Privacy Dominance</a>
<a class="collapse-item" href="{% url 'charts:rank' %}">Monero's CMC Rank</a>
<a class="collapse-item" href="{% url 'charts:marketcap' %}">Privacy Coins' Marketcap</a>
<a class="collapse-item" href="{% url 'charts:privacymarketcap' %}">Total Privacy Marketcap</a>
</div>
</div>
</li>
@ -163,22 +163,23 @@
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTransactions"
aria-expanded="true" aria-controls="collapseTransactions">
<i class="bx bx-transfer"></i>
<span>Transactions (10)</span>
<span>Transactions (11)</span>
</a>
<div id="collapseTransactions" class="collapse" aria-labelledby="headingTransactions"
data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:translin' %}">Transaction Count (Lin.)</a>
<a class="collapse-item" href="{% url 'monerojnet:translog' %}">Transaction Count (Log.)</a>
<a class="collapse-item" href="{% url 'monerojnet:transmonth' %}">Monthly Transactions (Lin.)</a>
<a class="collapse-item" href="{% url 'monerojnet:transcost' %}">Transaction Cost ($)</a>
<a class="collapse-item" href="{% url 'monerojnet:transcostntv' %}">Transaction Cost (Ntv.)</a>
<a class="collapse-item" href="{% url 'monerojnet:percentage' %}">Transaction Percentage</a>
<a class="collapse-item" href="{% url 'monerojnet:metcalfesats' %}">Metcalfe's Law (Sats)</a>
<a class="collapse-item" href="{% url 'monerojnet:metcalfeusd' %}">Metcalfe's Law ($)</a>
<a class="collapse-item" href="{% url 'monerojnet:deviation_tx' %}">Transacted Price Deviation</a>
<a class="collapse-item" href="{% url 'monerojnet:transactiondominance' %}">Transaction Dominance</a>
<a class="collapse-item" href="{% url 'charts:translin' %}">Transaction Count (Lin.)</a>
<a class="collapse-item" href="{% url 'charts:translog' %}">Transaction Count (Log.)</a>
<a class="collapse-item" href="{% url 'charts:transmonth' %}">Monthly Transactions (Lin.)</a>
<a class="collapse-item" href="{% url 'charts:transcost' %}">Transaction Cost ($)</a>
<a class="collapse-item" href="{% url 'charts:transcostntv' %}">Transaction Cost (Ntv.)</a>
<a class="collapse-item" href="{% url 'charts:percentage' %}">Transaction Percentage</a>
<a class="collapse-item" href="{% url 'charts:percentmonth' %}">Monthly Percentage (Lin.)</a>
<a class="collapse-item" href="{% url 'charts:metcalfesats' %}">Metcalfe's Law (Sats)</a>
<a class="collapse-item" href="{% url 'charts:metcalfeusd' %}">Metcalfe's Law ($)</a>
<a class="collapse-item" href="{% url 'charts:deviation_tx' %}">Transacted Price Deviation</a>
<a class="collapse-item" href="{% url 'charts:transactiondominance' %}">Transaction Dominance</a>
</div>
</div>
</li>
@ -193,13 +194,13 @@
data-parent="#accordionSidebar">
<div class="collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:coins' %}">Coins in Circulation</a>
<a class="collapse-item" href="{% url 'monerojnet:extracoins' %}">Supply Difference</a>
<a class="collapse-item" href="{% url 'monerojnet:inflation' %}">Annual Inflation</a>
<a class="collapse-item" href="{% url 'monerojnet:tail_emission' %}">Tail Emission</a>
<a class="collapse-item" href="{% url 'monerojnet:compinflation' %}">Competitors' Inflation</a>
<a class="collapse-item" href="{% url 'monerojnet:dailyemission' %}">Daily Emission ($)</a>
<a class="collapse-item" href="{% url 'monerojnet:dailyemissionntv' %}">Daily Emission (Ntv.)</a>
<a class="collapse-item" href="{% url 'charts:coins' %}">Coins in Circulation</a>
<a class="collapse-item" href="{% url 'charts:extracoins' %}">Supply Difference</a>
<a class="collapse-item" href="{% url 'charts:inflation' %}">Annual Inflation</a>
<a class="collapse-item" href="{% url 'charts:tail_emission' %}">Tail Emission</a>
<a class="collapse-item" href="{% url 'charts:compinflation' %}">Competitors' Inflation</a>
<a class="collapse-item" href="{% url 'charts:dailyemission' %}">Daily Emission ($)</a>
<a class="collapse-item" href="{% url 'charts:dailyemissionntv' %}">Daily Emission (Ntv.)</a>
</div>
</div>
</li>
@ -214,9 +215,9 @@
<div id="collapseSF" class="collapse" aria-labelledby="headingSF" data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:sfmodel' %}">Stock-to-flow (Log.)</a>
<a class="collapse-item" href="{% url 'monerojnet:sfmodellin' %}">Stock-to-flow (Lin.)</a>
<a class="collapse-item" href="{% url 'monerojnet:sfmultiple' %}">Stock-to-flow Multiple</a>
<a class="collapse-item" href="{% url 'charts:sfmodel' %}">Stock-to-flow (Log.)</a>
<a class="collapse-item" href="{% url 'charts:sfmodellin' %}">Stock-to-flow (Lin.)</a>
<a class="collapse-item" href="{% url 'charts:sfmultiple' %}">Stock-to-flow Multiple</a>
</div>
</div>
</li>
@ -232,20 +233,20 @@
data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:hashrate' %}">Hashrate</a>
<a class="collapse-item" href="{% url 'monerojnet:hashprice' %}">Price Per Hashrate</a>
<a class="collapse-item" href="{% url 'monerojnet:hashvsprice' %}">Hashrate Vs Price</a>
<a class="collapse-item" href="{% url 'monerojnet:minerrev' %}">Miner Revenue ($)</a>
<a class="collapse-item" href="{% url 'monerojnet:minerrevntv' %}">Miner Revenue (Ntv.)</a>
<a class="collapse-item" href="{% url 'monerojnet:minerfees' %}">Miner Fees ($)</a>
<a class="collapse-item" href="{% url 'monerojnet:minerfeesntv' %}">Miner Fees (Ntv.)</a>
<a class="collapse-item" href="{% url 'monerojnet:minerrevcap' %}">Revenue / Marketcap (%)</a>
<a class="collapse-item" href="{% url 'monerojnet:commit' %}">Miner Commitment ($)</a>
<a class="collapse-item" href="{% url 'monerojnet:commitntv' %}">Miner Commitment (Ntv.)</a>
<a class="collapse-item" href="{% url 'monerojnet:blocksize' %}">Block Size (Bytes)</a>
<a class="collapse-item" href="{% url 'monerojnet:blockchainsize' %}">Blockchain Size (Bytes)</a>
<a class="collapse-item" href="{% url 'monerojnet:transactionsize' %}">Transaction Size (Bytes)</a>
<a class="collapse-item" href="{% url 'monerojnet:difficulty' %}">Mining Difficulty</a>
<a class="collapse-item" href="{% url 'charts:hashrate' %}">Hashrate</a>
<a class="collapse-item" href="{% url 'charts:hashprice' %}">Price Per Hashrate</a>
<a class="collapse-item" href="{% url 'charts:hashvsprice' %}">Hashrate Vs Price</a>
<a class="collapse-item" href="{% url 'charts:minerrev' %}">Miner Revenue ($)</a>
<a class="collapse-item" href="{% url 'charts:minerrevntv' %}">Miner Revenue (Ntv.)</a>
<a class="collapse-item" href="{% url 'charts:minerfees' %}">Miner Fees ($)</a>
<a class="collapse-item" href="{% url 'charts:minerfeesntv' %}">Miner Fees (Ntv.)</a>
<a class="collapse-item" href="{% url 'charts:minerrevcap' %}">Revenue / Marketcap (%)</a>
<a class="collapse-item" href="{% url 'charts:commit' %}">Miner Commitment ($)</a>
<a class="collapse-item" href="{% url 'charts:commitntv' %}">Miner Commitment (Ntv.)</a>
<a class="collapse-item" href="{% url 'charts:blocksize' %}">Block Size (Bytes)</a>
<a class="collapse-item" href="{% url 'charts:blockchainsize' %}">Blockchain Size (Bytes)</a>
<a class="collapse-item" href="{% url 'charts:transactionsize' %}">Transaction Size (Bytes)</a>
<a class="collapse-item" href="{% url 'charts:difficulty' %}">Mining Difficulty</a>
</div>
</div>
</li>
@ -267,13 +268,13 @@
data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:social' %}">Total Subscribers</a>
<a class="collapse-item" href="{% url 'monerojnet:social6' %}">Daily Comments</a>
<a class="collapse-item" href="{% url 'monerojnet:social7' %}">Daily Posts</a>
<a class="collapse-item" href="{% url 'monerojnet:social4' %}">Monthly Increase</a>
<a class="collapse-item" href="{% url 'monerojnet:social2' %}">Dollars / Subscriber</a>
<a class="collapse-item" href="{% url 'monerojnet:social3' %}">Subscribers Percentage</a>
<a class="collapse-item" href="{% url 'monerojnet:social5' %}">Subscribers & Transac.</a>
<a class="collapse-item" href="{% url 'charts:social' %}">Total Subscribers</a>
<a class="collapse-item" href="{% url 'charts:social6' %}">Daily Comments</a>
<a class="collapse-item" href="{% url 'charts:social7' %}">Daily Posts</a>
<a class="collapse-item" href="{% url 'charts:social4' %}">Monthly Increase</a>
<a class="collapse-item" href="{% url 'charts:social2' %}">Dollars / Subscriber</a>
<a class="collapse-item" href="{% url 'charts:social3' %}">Subscribers Percentage</a>
<a class="collapse-item" href="{% url 'charts:social5' %}">Subscribers & Transac.</a>
</div>
</div>
</li>
@ -288,7 +289,7 @@
data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:dread_subscribers' %}">Total Subscribers</a>
<a class="collapse-item" href="{% url 'charts:dread_subscribers' %}">Total Subscribers</a>
</div>
</div>
</li>
@ -303,10 +304,10 @@
data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Charts:</h6>
<a class="collapse-item" href="{% url 'monerojnet:coincards' %}">Coincards Usage</a>
<a class="collapse-item" href="{% url 'monerojnet:merchants' %}">Merchant Acceptance</a>
<a class="collapse-item" href="{% url 'monerojnet:merchants_increase' %}">Merchant Increase</a>
<a class="collapse-item" href="{% url 'monerojnet:merchants_percentage' %}">Merchant Increase (%)</a>
<a class="collapse-item" href="{% url 'charts:coincards' %}">Coincards Usage</a>
<a class="collapse-item" href="{% url 'charts:merchants' %}">Merchant Acceptance</a>
<a class="collapse-item" href="{% url 'charts:merchants_increase' %}">Merchant Increase</a>
<a class="collapse-item" href="{% url 'charts:merchants_percentage' %}">Merchant Increase (%)</a>
</div>
</div>
</li>
@ -345,9 +346,8 @@
data-parent="#accordionSidebar">
<div class="py-2 collapse-inner rounded">
<h6 class="collapse-header text-dark">Info:</h6>
<a class="collapse-item" href="{% url 'monerojnet:about' %}">About Us</a>
<a class="collapse-item" href="{% url 'charts:about' %}">About Us</a>
<a class="collapse-item" href="https://twitter.com/CryptoMorpheus_" target="_blank">Twitter</a>
<a class="collapse-item" href ="https://repo.getmonero.org/monero-project/ccs-proposals/-/merge_requests/318" target="_blank">CCS Proposal Link</a>
</div>
</div>
</li>

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Bitcoin Comparison</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Blockchain Size</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Block Size</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Coincards Usage</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Coins in Circulation</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Miner Commitment</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Miner Commitment</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Competitor Performance</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Competitor Performance</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Competitor Performance</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Competitor Performance</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Inflation</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Daily Emission</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Daily Emission</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Price Deviation</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Transacted Price Deviation</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Mining Difficulty</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Marketcap Dominance</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Dread Subscribers</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Dread Total Subscribes</h6>
<h6 class="m-0 text-light">Dread Subscribes</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"
onclick="$('#graph1').toggleClass('fullscreen');window.dispatchEvent(new Event('resize'));">

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Supply Difference</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -7,8 +7,8 @@
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<title>Moneroj.net</title>
<meta content="" name="description">
<meta content="" name="keywords">
<meta name="description" content="Votre source d'informations sur Monero, avec des mesures, des graphiques, des statistiques et des articles.">
<meta name="author" content="CryptoMorpheus_">
<link href="{% static 'css/style.css' %}" rel="stylesheet">
<link href="{% static 'img/favicon.png' %}" rel="icon">
@ -16,6 +16,7 @@
<link href="{% static 'vendor/bootstrap/css/bootstrap.min.css' %}" rel="stylesheet">
<link href="{% static 'vendor/boxicons/css/boxicons.min.css' %}" rel="stylesheet">
<style>
div.a {
word-break: break-all;
@ -24,13 +25,73 @@
.color-orange {
color: #ff6b3b;
}
.login_page {
margin: 0 auto 25px;
width: 250px;
}
.form {
position: relative;
z-index: 1;
background: #313030;
max-width: 100%;
margin: 0 auto 25px;
padding: 20px;
text-align: center;
border-radius: 20px
}
.form input {
font-family: "Roboto", Sans-serif;
outline: 0;
width: 100%;
border: 0;
margin: 0 0 10px;
padding: 5px;
font-size: 14px;
border-radius: 5px
}
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover,
.form button:active {
background: #db3b13
}
.form .message {
margin: 10px 0 0;
color: rgb(255, 255, 255);
font-size: 16px
}
.form .message a {
color: #ff4d21;
text-decoration: none
}
.form .register_form {
display: none
}
</style>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-light">
<div class="container">
<a class="navbar-brand" href="{% url 'monerojnet:fr' %}">Monero<text class="color-orange">j</text></a>
<a class="navbar-brand" href="{% url 'charts:fr' %}">Monero<text class="color-orange">j</text></a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
@ -38,13 +99,13 @@
<div class="collapse navbar-collapse justify-content-end" id="navbarSupportedContent">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="{% url 'monerojnet:index' %}">Accueil <span class="sr-only">(current)</span></a>
<a class="nav-link" href="{% url 'charts:fr' %}">Accueil <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'monerojnet:sfmodel' %}">Graphiques</a>
<a class="nav-link" href="{% url 'charts:sfmodel' %}">Graphiques</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'monerojnet:articles' %}">Articles</a>
<a class="nav-link" href="{% url 'articles:articles' %}">Articles</a>
</li>
<li class="nav-item dropdown">
{% if user.is_authenticated %}
@ -65,11 +126,11 @@
<a class="nav-link" href="{% url 'users:login' %}">Connexion</a>
<a class="nav-link" href="{% url 'users:register' %}">Enregistrement</a>
{% endif %}
<a class="nav-link" href="{% url 'monerojnet:about' %}">Sur</a>
<a class="nav-link" href="{% url 'charts:about' %}">Sur</a>
<div class="dropdown-divider"></div>
<a class="nav-link" href="{% url 'monerojnet:index' %}">Anglais</a>
<a class="nav-link" href="{% url 'monerojnet:fr' %}">Français</a>
<a class="nav-link" href="{% url 'monerojnet:pt' %}">Portugaise</a>
<a class="nav-link" href="{% url 'charts:index' %}">Anglais</a>
<a class="nav-link" href="{% url 'charts:fr' %}">Français</a>
<a class="nav-link" href="{% url 'charts:pt' %}">Portugaise</a>
</div>
</li>
</ul>
@ -79,10 +140,42 @@
<!-- ======= Hero Section ======= -->
<section id="hero" class="d-flex flex-column justify-content-center align-items-center">
{% if user.is_authenticated %}
<div class="container">
<h1>Saviez-vous que toutes vos données sont exposées lorsque vous utilisez Bitcoin?</h1>
<h2>Monero est ce que les gens pensent acheter lorsqu'ils investissent dans Bitcoin.</h2>
</div>
{% else %}
<div class="container">
<div class="row">
<div class="col-xl-9 d-flex flex-column justify-content-center">
<h1>Saviez-vous que toutes vos données sont exposées lorsque vous utilisez Bitcoin?</h1>
<h2>Monero est ce que les gens pensent acheter lorsqu'ils investissent dans Bitcoin.</h2>
</div>
<div class="col-xl-3 d-flex flex-column justify-content-center">
<form action="{% url 'users:login' %}" method='POST'>
{% csrf_token %}
{% if form.errors %}
<div class="alert alert-danger">
<strong><center>Identifiant ou mot de passe incorrect.</center></strong>
</div>
{% endif %}
<div class="form">
<h1><i class="bx bx-user text-white"></i></h1>
<p class="message">Connexion:</p><br>
<input type="text" name="username" placeholder="Identifiant">
<input type="password" name="password" placeholder="Passe">
<button>Connexion</button>
<p class="message"><a href="{% url 'users:register' %}">Créer un compte!</a></p>
<input type="hidden" name="next" value="{% url 'charts:index' %}">
</div>
</form>
</div>
</div>
</div>
{% endif %}
</section>
<!-- End Hero -->
@ -730,9 +823,9 @@
<div class="col-lg-3 col-md-6 footer-links">
<h4>Liens utiles</h4>
<ul>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:fr' %}">Accueil</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:sfmodel' %}">Graphiques</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:about' %}">Sur</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:fr' %}">Accueil</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:sfmodel' %}">Graphiques</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:about' %}">Sur</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="https://www.getmonero.org/">Getmonero.org</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="https://www.reddit.com/r/Monero/">Reddit/Monero</a></li>
</ul>
@ -752,7 +845,6 @@
<div class="social-links text-center text-lg-right pt-3 pt-lg-0">
<a href="http://ilt7jgmfro76wgrtt6752lvfnhcz6wk5sjqhyvntjixygp3cwpvr4nad.onion" class="onion" alt="Tor Version"><i class="bx bx-hide"></i></a>
<a href="https://twitter.com/CryptoMorpheus_" class="twitter" alt="Twitter Profile"><i class="bx bxl-twitter"></i></a>
<a href="https://github.com/cryptomorpheuss/moneropro" class="github" alt="Github"><i class="bx bxl-github"></i></a>
<a href="mailto:morpheus.anonymous@protonmail.com" class="email" alt="Send E-mail"><i class="bx bx-mail-send"></i></a>
</div>
</div>

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Fractal Multiple</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Golden Ratio Multiplier</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Price per hashrate</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Hashrate</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Price Versus Hashrate</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Price in Dollars Versus Hashrate</h6>
<h6 class="m-0 text-light">Price Versus Hashrate (Dollars)</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"
onclick="$('#graph1').toggleClass('fullscreen');window.dispatchEvent(new Event('resize'));">

View file

@ -1,12 +1,175 @@
{% extends "users/base.html" %}
{% block header %}
<title>Moneroj.net - Monero Metrics</title>
<style>
.login_page {
margin: 0 auto 25px;
}
.form {
position: relative;
z-index: 1;
background: #313030;
max-width: 100%;
margin: 0 auto 25px;
padding: 20px;
text-align: center;
border-radius: 20px
}
.form input {
font-family: "Roboto", Sans-serif;
outline: 0;
width: 100%;
border: 0;
margin: 0 0 10px;
padding: 5px;
font-size: 14px;
border-radius: 5px
}
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover,
.form button:active {
background: #db3b13
}
.form .message {
margin: 10px 0 0;
color: rgb(255, 255, 255);
font-size: 16px
}
.form .message a {
color: #ff4d21;
text-decoration: none
}
.form .register_form {
display: none
}
.break {
word-break: break-all;
}
</style>
{% endblock header %}
{% block content %}
<!-- ======= Hero Section ======= -->
<section id="hero" class="d-flex flex-column justify-content-center align-items-center">
{% if user.is_authenticated %}
<div class="container">
<!--
<h1>Did you know all your data is exposed when you use Bitcoin?</h1>
<h2>Monero is what people think they are buying when they invest in Bitcoin.</h2>
-->
<div class="icon-boxes d-flex flex-column justify-content-center">
<div class="row">
<div class="col-xl-12 d-flex align-items-stretch">
<div class="icon-box mt-4 mt-xl-0">
<h4>Crowdfunding for Moneroj.net improvements</h4>
<p class="break">Moneroj.net needs your help to pay for server expenses and further development. I'm currently developing new charts with new metrics,
and I'm happy to launch 12 new ones, along with another 10 already launched since the CCS Proposal on May 11. There's also our new Hidden Service
available for TOR users and our brand new Articles section. <a href="https://moneroj.net/article/New-charts-released,-and-why-we-gave-up-the-CCS-Proposal">Read more about it.</a> <br><br>Address: 8Agy1JvbsttEV2Jp2ecyRLSoKiCQwr4f2FKjWh2dz8Q1Y4LXCxXDNBf5praUrc1v8vDSqHYUefqxkiLNgnjvDfQNQStwvP6
</p>
<div class="row">
<div class="col">
<p>
<i class="bx bx-user"></i> Morpheus
<i class="bx bx-calendar"></i> May 11
</p>
</div>
<div class="col">
<p style="text-align: right;">
<i class="bx bx-money"></i> Raised 0 of 46 XMR
</p>
</div>
</div>
<div class="progress">
<div class="progress-bar bg-danger" role="progressbar" style="width: 0.1%; color: #ff4d21" aria-valuenow="0.1" aria-valuemin="0" aria-valuemax="100"></div>
</div>
</div>
</div>
</div>
</div>
</div>
{% else %}
<div class="container">
<div class="row">
<div class="col-xl-9 d-flex flex-column justify-content-center">
<div class="icon-boxes d-flex flex-column justify-content-center">
<div class="row">
<div class="col-xl-12 d-flex align-items-stretch">
<div class="icon-box mt-4 mt-xl-0">
<h4>Crowdfunding for Moneroj.net - we need your donation (two months development)</h4>
<p class="break">Moneroj.net needs your help to pay for server expenses and further development. I'm currently developing new charts with new metrics,
and I'm happy to launch 12 new ones, along with another 10 already launched since the CCS Proposal on May 11. There's also our new Hidden Service
available for TOR users and our brand new Articles section. Read more about it. <br><br>Address: 8Agy1JvbsttEV2Jp2ecyRLSoKiCQwr4f2FKjWh2dz8Q1Y4LXCxXDNBf5praUrc1v8vDSqHYUefqxkiLNgnjvDfQNQStwvP6
</p>
<div class="row">
<div class="col">
<p>
<i class="bx bx-user"></i> Morpheus
<i class="bx bx-calendar"></i> May 11
</p>
</div>
<div class="col">
<p style="text-align: right;">
<i class="bx bx-money"></i> Raised 0 of 46 XMR
</p>
</div>
</div>
<div class="progress">
<div class="progress-bar bg-danger" role="progressbar" style="width: 0.1%; color: #ff4d21" aria-valuenow="0.1" aria-valuemin="0" aria-valuemax="100"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-xl-3 d-flex flex-column justify-content-center">
<form action="{% url 'users:login' %}" method='POST'>
{% csrf_token %}
{% if form.errors %}
<div class="alert alert-danger">
<strong><center>Username or password incorrect.</center></strong>
</div>
{% endif %}
<div class="form">
<h1><i class="bx bx-user text-white"></i></h1>
<p class="message">Login:</p><br>
<input type="text" name="username" placeholder="Username">
<input type="password" name="password" placeholder="Password">
<button>Enter</button>
<p class="message"><a href="{% url 'users:register' %}">Create Account!</a></p>
<input type="hidden" name="next" value="{% url 'charts:index' %}">
</div>
</form>
</div>
</div>
</div>
{% endif %}
</section>
<!-- End Hero -->
@ -360,8 +523,3 @@
{% endblock content %}

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Annualized Inflation</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Inflation-Adjusted Fractal</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Return Versus Inflation</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Return vs. Inflation
<h6 class="m-0 text-light">Return Versus Inflation
</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"

View file

@ -0,0 +1,81 @@
{% extends "users/base.html" %}
{% block header %}
<title>Moneroj.net - Monero Metrics</title>
<style>
.login_page {
margin: 0 auto 25px;
}
.form {
position: relative;
z-index: 1;
background: #313030;
max-width: 100%;
margin: 0 auto 25px;
padding: 20px;
text-align: center;
border-radius: 20px
}
.form input {
font-family: "Roboto", Sans-serif;
outline: 0;
width: 100%;
border: 0;
margin: 0 0 10px;
padding: 5px;
font-size: 14px;
border-radius: 5px
}
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover,
.form button:active {
background: #db3b13
}
.form .message {
margin: 10px 0 0;
color: rgb(255, 255, 255);
font-size: 16px
}
.form .message a {
color: #ff4d21;
text-decoration: none
}
.form .register_form {
display: none
}
</style>
{% endblock header %}
{% block content %}
<!-- ======= Hero Section ======= -->
<section id="hero" class="d-flex flex-column justify-content-center align-items-center">
<div class="container">
<h1>{{ message }}</h1>
</div>
</section>
<br><br>
<!-- End Hero -->
{% endblock content %}

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Marketcap</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Total Merchants</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Merchants Increase</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Merchants Percentage</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Metcalfe's Law</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Metcalfe's Law</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Miner Fees</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Daily Miner Fees (Fees excluded new coins, Dollars)
<h6 class="m-0 text-light">Miner Fees (Fees excluded new coins, Dollars)
</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Miner Fees</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Daily Miner Fees (Fees excluded new coins, Native Units)
<h6 class="m-0 text-light">Miner Fees (Fees excluded new coins, Native Units)
</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Miner Revenue</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Average Daily Miner Revenue (Dollars)</h6>
<h6 class="m-0 text-light">Average Miner Revenue (Dollars)</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"
onclick="$('#graph1').toggleClass('fullscreen');window.dispatchEvent(new Event('resize'));">

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Miner Revenue</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Miner Revenue</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Monero's Dominance</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Price</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Price in log scale (USD)</h6>
<h6 class="m-0 text-light">Price (log scale, USD)</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"
onclick="$('#graph1').toggleClass('fullscreen');window.dispatchEvent(new Event('resize'));">

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Transaction Percentage</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -0,0 +1,327 @@
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Monthly Percentage</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
<div id="content-wrapper" style="background-color:rgb(48, 44, 41)">
<!-- Main Content -->
<div id="content">
<!-- Begin Page Content -->
<div class="container-fluid"><br>
<div class="row">
<div class="col-xl-12 col-lg-12">
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Monthly Percentage (XMR's tx / BTC's tx)</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"
onclick="$('#graph1').toggleClass('fullscreen');window.dispatchEvent(new Event('resize'));">
<i class="bx bx-expand text-gray-400"></i>
</a>
</div>
</div>
<div class="card-body pb-0 pt-0 pl-0 pr-0" style="height: 100px;">
<div id="graph" style="height: 100%; width:100%;"></div>
</div>
</div>
<br>
</div>
</div>
<!-- Content Row -->
<div class="row">
<!-- Card -->
<div class="col-xl-6 col-md-6 mb-4">
<div class="card border-left-new h-100 py-2">
<div class="card-body">
<div class="text-xs font-weight-bold text-info text-uppercase mb-1">
Monthly Percentage</div>
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ now_transactions }}</div>
</div>
</div>
</div>
<!-- Card -->
<div class="col-xl-6 col-md-6 mb-4">
<div class="card border-left-new h-100 py-2">
<div class="card-body">
<div class="text-xs font-weight-bold text-info text-uppercase mb-1">
Highest Percentage of Transactions</div>
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ maximum }}</div>
</div>
</div>
</div>
</div>
<!-- Content Row -->
<div class="row">
<div class="col-xl-11 col-md-6 mb-4">
<div class="alert alert-dark" role="alert">
Not financial advice.
For information about the chart, click the button >
</div>
</div>
<div class="col-xl-1">
<button type="button" class="btn btn-dark btn-block" data-toggle="modal" href="#"
data-target="#id_Modal">
<div class="col-auto">
+
</div>
</button>
</div>
</div>
</div>
<!-- /.container-fluid -->
</div>
<!-- End of Main Content -->
</div>
<!-- End of Content Wrapper -->
<!-- Modal -->
<div class="modal fade" id="id_Modal" tabindex="-1" role="dialog" aria-labelledby="Modal" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="Modal">Help about the chart</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Cancelar">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
Number of monthly Monero transactions as a percentage of total Bitcoin transactions.<br>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<!-- Fim do Modal -->
<!-- Page level plugins -->
<script>
var data2 = {
type: "bar",
name: 'Number of Transactions (XMR)',
x: {{ dates|safe }},
y: {{ transactions|safe }},
hovertemplate: '%{y}',
line: {
color: '#dd1d1d'
,width: 3
},
textposition: 'inside',
marker: {
color: '#dd1d1d',
opacity: 0.9,
line: {
color: '#fd4d4d',
width: 1
}
}
};
var data2_mobile = {
type: "bar",
name: 'Number of Transactions (XMR)',
x: {{ dates|safe }},
y: {{ transactions|safe }},
hovertemplate: '%{y}',
line: {
color: '#dd1d1d'
,width: 3
},
textposition: 'inside',
marker: {
color: '#dd1d1d',
opacity: 0.9,
line: {
color: '#fd4d4d',
width: 1
}
}
};
var data = [data2];
var data_mobile = [data2_mobile];
var layout = {
plot_bgcolor:"#252221",
paper_bgcolor:"#252221",
annotations: [
{
xref: 'paper',
yref: 'paper',
x: 0.02,
xanchor: 'auto',
y: 0.98,
yanchor: 'auto',
text: 'Moneroj<br>https://www.moneroj.net',
showarrow: false,
borderwidth: 1,
bordercolor: '#5f5f5f',
bgcolor: '#333333',
borderpad: 5,
align: 'center',
font: {
color: "white",
size: 12
}
}],
separators: ",.",
legend: {
x: 0.02,
y: 0.50,
bgcolor: '#333333',
bordercolor: '#5f5f5f',
borderwidth: 1,
font: {
color: 'white',
size: 12
},
traceorder: 'normal',
xanchor: 'auto',
yanchor: 'auto'
},
hoverlabel: {
namelength: -1
},
yaxis: {
type: "linear",
title: {
text: 'Percentage',
font: {
size: 20,
color: 'white'
}
},
tickformat :",.1f"
,nticks: 10
,tickfont: {
color: "#ffffff"
,size: 12
}
,gridcolor: "#333333"
},
xaxis: {
hoverformat: "%Y-%m",
showgrid: true,
type: 'date',
nticks: 10
,tickfont: {
color: "#dddddd"
,size: 13
}
,gridcolor: "#333333"
,range: ['2014-05-01', '2023-06-01']
,zeroline: true
},
margin: {
l: 120,
r: 60,
b: 35,
t: 10,
pad: 4
}
};
var layout_mobile = {
plot_bgcolor:"black",
paper_bgcolor:"black",
separators: ",.",
hoverlabel: {
namelength: -1
},
legend: {
x: 0.02,
y: 0.98,
bgcolor: '#000000',
bordercolor: '#5f5f5f',
borderwidth: 1,
font: {
color: 'white',
size: 5
},
traceorder: 'normal',
xanchor: 'auto',
yanchor: 'auto'
},
showlegend: false,
yaxis: {
type: "linear",
tickformat :",.1f"
,nticks: 10
,tickfont: {
color: "#ffffff"
,size: 7
}
,gridcolor: "#444444"
},
xaxis: {
hoverformat: "%Y-%m",
showgrid: true,
type: 'date',
nticks: 10
,tickfont: {
color: "#dddddd"
,size: 13
}
,gridcolor: "#333333"
,range: ['2014-05-01', '2023-06-01']
,zeroline: true
},
margin: {
l: 40,
r: 0,
b: 35,
t: 10,
pad: 0
}
};
function findBootstrapEnvironment() {
let envs = ['xs', 'sm', 'md', 'lg', 'xl'];
let el = document.createElement('div');
document.body.appendChild(el);
let curEnv = envs.shift();
for (let env of envs.reverse()) {
el.classList.add(`d-${env}-none`);
if (window.getComputedStyle(el).display === 'none') {
curEnv = env;
break;
}
}
document.body.removeChild(el);
return curEnv;
}
env_size = findBootstrapEnvironment();
if (env_size == "xs") {
document.getElementById("graph1").style.height="350px";
Plotly.newPlot('graph', data_mobile, layout_mobile, {responsive: true, modeBarButtonsToRemove: ['toImage', 'hoverCompareCartesian', 'hoverClosest2d', 'toggleSpikelines', 'lasso2d', 'select2d', 'hoverClosestCartesian'], displaylogo: false});
}
else {
document.getElementById("graph1").style.height="700px";
Plotly.newPlot('graph', data, layout, {responsive: true, modeBarButtonsToRemove: ['toImage', 'hoverCompareCartesian', 'hoverClosest2d', 'toggleSpikelines', 'lasso2d', 'select2d', 'hoverClosestCartesian'], displaylogo: false});
}
</script>
{% endblock %}

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Power Law</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Price</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Price (USD)</h6>
<h6 class="m-0 text-light">Price (linear scale, USD)</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"
onclick="$('#graph1').toggleClass('fullscreen');window.dispatchEvent(new Event('resize'));">

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Price</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->
@ -14,7 +19,7 @@
<div class="card" id="graph1">
<div
class="card-header py-3 d-flex flex-row align-items-center justify-content-between text-white">
<h6 class="m-0 text-light">Price (USD)</h6>
<h6 class="m-0 text-light">Price (log scale, USD)</h6>
<div class="dropdown no-arrow">
<a class="dropdown-toggle" href="#" role="button"
onclick="$('#graph1').toggleClass('fullscreen');window.dispatchEvent(new Event('resize'));">

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Price</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Privacy Dominance</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Privacy Marketcap</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -6,8 +6,8 @@
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<title>Moneroj.net</title>
<meta content="" name="description">
<meta content="" name="keywords">
<meta name="description" content="Sua fonte de informações sobre Monero, com gráficos, estatísticas, métricas e artigos.">
<meta name="author" content="CryptoMorpheus_">
<link href="{% static 'css/style.css' %}" rel="stylesheet">
<link href="{% static 'img/favicon.png' %}" rel="icon">
@ -23,6 +23,66 @@
.color-orange {
color: #ff6b3b;
}
.login_page {
margin: 0 auto 25px;
width: 250px;
}
.form {
position: relative;
z-index: 1;
background: #313030;
max-width: 100%;
margin: 0 auto 25px;
padding: 20px;
text-align: center;
border-radius: 20px
}
.form input {
font-family: "Roboto", Sans-serif;
outline: 0;
width: 100%;
border: 0;
margin: 0 0 10px;
padding: 5px;
font-size: 14px;
border-radius: 5px
}
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover,
.form button:active {
background: #db3b13
}
.form .message {
margin: 10px 0 0;
color: rgb(255, 255, 255);
font-size: 16px
}
.form .message a {
color: #ff4d21;
text-decoration: none
}
.form .register_form {
display: none
}
</style>
</head>
@ -30,20 +90,20 @@
<nav class="navbar navbar-expand-lg navbar-light">
<div class="container">
<a class="navbar-brand" href="{% url 'monerojnet:pt' %}">Monero<text class="color-orange">j</text></a>
<a class="navbar-brand" href="{% url 'charts:pt' %}">Monero<text class="color-orange">j</text></a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end" id="navbarSupportedContent">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="{% url 'monerojnet:index' %}">Inicial <span class="sr-only">(current)</span></a>
<a class="nav-link" href="{% url 'charts:pt' %}">Inicial <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'monerojnet:sfmodel' %}">Gráficos</a>
<a class="nav-link" href="{% url 'charts:sfmodel' %}">Gráficos</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'monerojnet:artigos' %}">Artigos</a>
<a class="nav-link" href="{% url 'articles:articles' %}">Artigos</a>
</li>
<li class="nav-item dropdown" >
{% if user.is_authenticated %}
@ -62,11 +122,11 @@
<a class="nav-link" href="{% url 'users:login' %}">Entrar</a>
<a class="nav-link" href="{% url 'users:register' %}">Registrar</a>
{% endif %}
<a class="nav-link" href="{% url 'monerojnet:about' %}">Sobre</a>
<a class="nav-link" href="{% url 'charts:about' %}">Sobre</a>
<div class="dropdown-divider"></div>
<a class="nav-link" href="{% url 'monerojnet:index' %}">Inglês</a>
<a class="nav-link" href="{% url 'monerojnet:fr' %}">Francês</a>
<a class="nav-link" href="{% url 'monerojnet:pt' %}">Português</a>
<a class="nav-link" href="{% url 'charts:index' %}">Inglês</a>
<a class="nav-link" href="{% url 'charts:fr' %}">Francês</a>
<a class="nav-link" href="{% url 'charts:pt' %}">Português</a>
</div>
</li>
</ul>
@ -76,10 +136,42 @@
<!-- ======= Hero Section ======= -->
<section id="hero" class="d-flex flex-column justify-content-center align-items-center">
{% if user.is_authenticated %}
<div class="container">
<h1>Você sabia que todos os seus dados são expostos quando você usa Bitcoin?</h1>
<h2>Monero é o que as pessoas pensam que estão comprando quando investem em Bitcoins.</h2>
</div>
{% else %}
<div class="container">
<div class="row">
<div class="col-xl-9 d-flex flex-column justify-content-center">
<h1>Você sabia que todos os seus dados são expostos quando você usa Bitcoin?</h1>
<h2>Monero é o que as pessoas pensam que estão comprando quando investem em Bitcoins.</h2>
</div>
<div class="col-xl-3 d-flex flex-column justify-content-center">
<form action="{% url 'users:login' %}" method='POST'>
{% csrf_token %}
{% if form.errors %}
<div class="alert alert-danger">
<strong><center>Usuário ou senha incorretos.</center></strong>
</div>
{% endif %}
<div class="form">
<h1><i class="bx bx-user text-white"></i></h1>
<p class="message">Entrar:</p><br>
<input type="text" name="username" placeholder="Usuário">
<input type="password" name="password" placeholder="Senha">
<button>Entrar</button>
<p class="message"><a href="{% url 'users:register' %}">Criar uma conta!</a></p>
<input type="hidden" name="next" value="{% url 'charts:index' %}">
</div>
</form>
</div>
</div>
</div>
{% endif %}
</section>
<!-- End Hero -->
@ -461,9 +553,9 @@
<div class="col-lg-3 col-md-6 footer-links">
<h4>Links úteis</h4>
<ul>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:pt' %}">Página Inicial</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:sfmodel' %}">Gráficos</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'monerojnet:about' %}">Sobre</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:pt' %}">Página Inicial</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:sfmodel' %}">Gráficos</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="{% url 'charts:about' %}">Sobre</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="https://www.getmonero.org/">Getmonero.org</a></li>
<li><i class="bx bx-chevron-right"></i> <a href="https://www.reddit.com/r/Monero/">Reddit/Monero</a></li>
</ul>
@ -483,7 +575,6 @@
<div class="social-links text-center text-lg-right pt-3 pt-lg-0">
<a href="http://ilt7jgmfro76wgrtt6752lvfnhcz6wk5sjqhyvntjixygp3cwpvr4nad.onion" class="onion" alt="Tor Version"><i class="bx bx-hide"></i></a>
<a href="https://twitter.com/CryptoMorpheus_" class="twitter" alt="Twitter Profile"><i class="bx bxl-twitter"></i></a>
<a href="https://github.com/cryptomorpheuss/moneropro" class="github" alt="Github"><i class="bx bxl-github"></i></a>
<a href="mailto:morpheus.anonymous@protonmail.com" class="email" alt="Send E-mail"><i class="bx bx-mail-send"></i></a>
</div>
</div>

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Monero's Coinmarketcap Rank</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -0,0 +1,81 @@
{% extends "users/base.html" %}
{% block header %}
<title>Moneroj.net - Monero Metrics</title>
<style>
.login_page {
margin: 0 auto 25px;
}
.form {
position: relative;
z-index: 1;
background: #313030;
max-width: 100%;
margin: 0 auto 25px;
padding: 20px;
text-align: center;
border-radius: 20px
}
.form input {
font-family: "Roboto", Sans-serif;
outline: 0;
width: 100%;
border: 0;
margin: 0 0 10px;
padding: 5px;
font-size: 14px;
border-radius: 5px
}
.form button {
font-family: "Roboto", Sans-serif;
outline: 0;
background: #ff4d21;
width: 100%;
border: 0;
border-radius: 5px;
padding: 5px;
color: #ffffff;
font-size: 14px;
cursor: pointer
}
.form button:hover,
.form button:active {
background: #db3b13
}
.form .message {
margin: 10px 0 0;
color: rgb(255, 255, 255);
font-size: 16px
}
.form .message a {
color: #ff4d21;
text-decoration: none
}
.form .register_form {
display: none
}
</style>
{% endblock header %}
{% block content %}
<!-- ======= Hero Section ======= -->
<section id="hero" class="d-flex flex-column justify-content-center align-items-center">
<div class="container">
<h1>Total of {{ deleted }} data deleted and {{ added }} new additions.</h1>
</div>
</section>
<br><br>
<!-- End Hero -->
{% endblock content %}

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Stock to Flow Model</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Stock to Flow Model</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Stock to Flow Multiple</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Sharpe Ratio</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Reddit Subscribers</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Reddit Subscribers</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Reddit Subscribers</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Reddit Subscribers</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Reddit Subscribers and Transactions</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Reddit Comments</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Reddit Posts</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Tail Emission</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Thermocap Multiple</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Privacy Transactions</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Transactions</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Transactions</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Transaction Cost</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Transaction Cost</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Transaction Count</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Transaction Count</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

View file

@ -1,4 +1,9 @@
{% extends 'monerojnet/base.html' %}
{% extends 'charts/base.html' %}
{% block header %}
<title>Moneroj.net - Monthly Transactions</title>
{% endblock %}
{% block content %}
<!-- Content Wrapper -->

3
charts/tests.py Normal file
View file

@ -0,0 +1,3 @@
from django.test import TestCase
# Create your tests here.

View file

@ -69,8 +69,6 @@ urlpatterns = [
path('rank/', views.rank, name='rank'),
path('percentage/', views.percentage, name='percentage'),
path('marketcap/', views.marketcap, name='marketcap'),
path('artigos/', views.artigos, name='artigos'),
path('articles/', views.articles, name='articles'),
path('tail_emission/', views.tail_emission, name='tail_emission'),
path('privacymarketcap/', views.privacymarketcap, name='privacymarketcap'),
path('privacydominance/', views.privacydominance, name='privacydominance'),
@ -83,8 +81,9 @@ urlpatterns = [
path('deviation/', views.deviation, name='deviation'),
path('deviation_tx/', views.deviation_tx, name='deviation_tx'),
path('transactiondominance/', views.transactiondominance, name='transactiondominance'),
path('percentmonth/', views.percentmonth, name='percentmonth'),
# URLs to useful functions on monerojnet/views.py
# URLs to useful functions on charts/views.py
# Only admins can use these
path('get_history/<str:symbol>/<str:start_time>/<str:end_time>/', views.get_history, name='get_history'),
path('get_complete_history/<str:symbol>/', views.get_history, name='get_complete_history'),

File diff suppressed because it is too large Load diff

Some files were not shown because too many files have changed in this diff Show more