diff --git a/IAP-Website/blog/__pycache__/admin.cpython-39.pyc b/IAP-Website/blog/__pycache__/admin.cpython-39.pyc index ac2aacf..363fe30 100644 Binary files a/IAP-Website/blog/__pycache__/admin.cpython-39.pyc and b/IAP-Website/blog/__pycache__/admin.cpython-39.pyc differ diff --git a/IAP-Website/blog/__pycache__/forms.cpython-39.pyc b/IAP-Website/blog/__pycache__/forms.cpython-39.pyc index 4194a21..dda3f68 100644 Binary files a/IAP-Website/blog/__pycache__/forms.cpython-39.pyc and b/IAP-Website/blog/__pycache__/forms.cpython-39.pyc differ diff --git a/IAP-Website/blog/__pycache__/models.cpython-39.pyc b/IAP-Website/blog/__pycache__/models.cpython-39.pyc index c5666fe..14676b8 100644 Binary files a/IAP-Website/blog/__pycache__/models.cpython-39.pyc and b/IAP-Website/blog/__pycache__/models.cpython-39.pyc differ diff --git a/IAP-Website/blog/__pycache__/urls.cpython-39.pyc b/IAP-Website/blog/__pycache__/urls.cpython-39.pyc index 27c184c..1efb14f 100644 Binary files a/IAP-Website/blog/__pycache__/urls.cpython-39.pyc and b/IAP-Website/blog/__pycache__/urls.cpython-39.pyc differ diff --git a/IAP-Website/blog/__pycache__/views.cpython-39.pyc b/IAP-Website/blog/__pycache__/views.cpython-39.pyc index ce040e4..6919d07 100644 Binary files a/IAP-Website/blog/__pycache__/views.cpython-39.pyc and b/IAP-Website/blog/__pycache__/views.cpython-39.pyc differ diff --git a/IAP-Website/blog/admin.py b/IAP-Website/blog/admin.py index 5e1c392..0b25676 100644 --- a/IAP-Website/blog/admin.py +++ b/IAP-Website/blog/admin.py @@ -1,5 +1,15 @@ from django.contrib import admin -from .models import Post +from blog.models import Post, Comment -# Register your models here. +class BlogAdminArea(admin.AdminSite): + site_header = "IAP Blog Admin Area" + +blog_site = BlogAdminArea(name="BlogAdmin") +blog_site.register(Post) +#blog_site.register(Post) admin.site.register(Post) + + +# Register your models here. +#admin.site.register(Post) +#blog_site.register(models.Post) diff --git a/IAP-Website/blog/forms.py b/IAP-Website/blog/forms.py index e1de38d..90fcab3 100644 --- a/IAP-Website/blog/forms.py +++ b/IAP-Website/blog/forms.py @@ -2,8 +2,14 @@ from django.contrib.auth.models import User from django.contrib.auth.forms import UserCreationForm from django import forms +from .models import Comment class CreateUserForm(UserCreationForm): class Meta: model = User - fields = ['username', 'email', 'password1', 'password2'] \ No newline at end of file + fields = ['username', 'email', 'password1', 'password2'] + +class CommentForm(forms.ModelForm): + class Meta: + model = Comment + fields = ('name', 'email','body') \ No newline at end of file diff --git a/IAP-Website/blog/migrations/0003_alter_post_body_alter_post_current_time.py b/IAP-Website/blog/migrations/0003_alter_post_body_alter_post_current_time.py new file mode 100644 index 0000000..fa0742f --- /dev/null +++ b/IAP-Website/blog/migrations/0003_alter_post_body_alter_post_current_time.py @@ -0,0 +1,23 @@ +# Generated by Django 4.2.6 on 2023-10-30 04:38 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('blog', '0002_post_current_time'), + ] + + operations = [ + migrations.AlterField( + model_name='post', + name='body', + field=models.TextField(), + ), + migrations.AlterField( + model_name='post', + name='current_time', + field=models.DateTimeField(auto_now_add=True), + ), + ] diff --git a/IAP-Website/blog/migrations/0004_alter_post_options.py b/IAP-Website/blog/migrations/0004_alter_post_options.py new file mode 100644 index 0000000..2858d6e --- /dev/null +++ b/IAP-Website/blog/migrations/0004_alter_post_options.py @@ -0,0 +1,17 @@ +# Generated by Django 4.2.6 on 2023-10-30 10:18 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('blog', '0003_alter_post_body_alter_post_current_time'), + ] + + operations = [ + migrations.AlterModelOptions( + name='post', + options={'ordering': ('-current_time',)}, + ), + ] diff --git a/IAP-Website/blog/migrations/0005_post_slug_comment.py b/IAP-Website/blog/migrations/0005_post_slug_comment.py new file mode 100644 index 0000000..4975d04 --- /dev/null +++ b/IAP-Website/blog/migrations/0005_post_slug_comment.py @@ -0,0 +1,31 @@ +# Generated by Django 4.2.6 on 2023-10-31 06:03 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('blog', '0004_alter_post_options'), + ] + + operations = [ + migrations.AddField( + model_name='post', + name='slug', + field=models.SlugField(default=1), + preserve_default=False, + ), + migrations.CreateModel( + name='Comment', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=220)), + ('current_time', models.DateTimeField(auto_now_add=True)), + ('email', models.EmailField(max_length=254)), + ('body', models.TextField()), + ('post', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='comments', to='blog.post')), + ], + ), + ] diff --git a/IAP-Website/blog/migrations/0006_post_image.py b/IAP-Website/blog/migrations/0006_post_image.py new file mode 100644 index 0000000..cb6d6e6 --- /dev/null +++ b/IAP-Website/blog/migrations/0006_post_image.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.6 on 2023-11-03 11:43 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('blog', '0005_post_slug_comment'), + ] + + operations = [ + migrations.AddField( + model_name='post', + name='image', + field=models.ImageField(blank=True, null=True, upload_to='uploaded/galleries'), + ), + ] diff --git a/IAP-Website/blog/migrations/0007_alter_comment_options.py b/IAP-Website/blog/migrations/0007_alter_comment_options.py new file mode 100644 index 0000000..918d8e2 --- /dev/null +++ b/IAP-Website/blog/migrations/0007_alter_comment_options.py @@ -0,0 +1,17 @@ +# Generated by Django 4.2.6 on 2023-12-09 17:14 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('blog', '0006_post_image'), + ] + + operations = [ + migrations.AlterModelOptions( + name='comment', + options={'ordering': ('-current_time',)}, + ), + ] diff --git a/IAP-Website/blog/migrations/__pycache__/0003_alter_post_body_alter_post_current_time.cpython-39.pyc b/IAP-Website/blog/migrations/__pycache__/0003_alter_post_body_alter_post_current_time.cpython-39.pyc new file mode 100644 index 0000000..d5d0b5d Binary files /dev/null and b/IAP-Website/blog/migrations/__pycache__/0003_alter_post_body_alter_post_current_time.cpython-39.pyc differ diff --git a/IAP-Website/blog/migrations/__pycache__/0004_alter_post_options.cpython-39.pyc b/IAP-Website/blog/migrations/__pycache__/0004_alter_post_options.cpython-39.pyc new file mode 100644 index 0000000..1c37a6e Binary files /dev/null and b/IAP-Website/blog/migrations/__pycache__/0004_alter_post_options.cpython-39.pyc differ diff --git a/IAP-Website/blog/migrations/__pycache__/0005_post_slug_comment.cpython-39.pyc b/IAP-Website/blog/migrations/__pycache__/0005_post_slug_comment.cpython-39.pyc new file mode 100644 index 0000000..3dc98e2 Binary files /dev/null and b/IAP-Website/blog/migrations/__pycache__/0005_post_slug_comment.cpython-39.pyc differ diff --git a/IAP-Website/blog/migrations/__pycache__/0006_post_image.cpython-39.pyc b/IAP-Website/blog/migrations/__pycache__/0006_post_image.cpython-39.pyc new file mode 100644 index 0000000..c57338d Binary files /dev/null and b/IAP-Website/blog/migrations/__pycache__/0006_post_image.cpython-39.pyc differ diff --git a/IAP-Website/blog/migrations/__pycache__/0007_alter_comment_options.cpython-39.pyc b/IAP-Website/blog/migrations/__pycache__/0007_alter_comment_options.cpython-39.pyc new file mode 100644 index 0000000..56ad029 Binary files /dev/null and b/IAP-Website/blog/migrations/__pycache__/0007_alter_comment_options.cpython-39.pyc differ diff --git a/IAP-Website/blog/models.py b/IAP-Website/blog/models.py index 3653ddf..ea2eb2f 100644 --- a/IAP-Website/blog/models.py +++ b/IAP-Website/blog/models.py @@ -4,9 +4,24 @@ import datetime class Post(models.Model): - title = models.CharField(max_length=20) - current_time = models.DateTimeField(default=timezone.now, blank=True) - body = models.CharField(max_length=1000000) + title = models.CharField(max_length=100) + current_time = models.DateTimeField(auto_now_add=True) + slug = models.SlugField() + image = models.ImageField(upload_to='uploaded/galleries', blank=True, null=True) + body = models.TextField() + + class Meta: + ordering = ('-current_time',) + +class Comment(models.Model): + post = models.ForeignKey(Post, related_name="comments", on_delete=models.CASCADE) + name = models.CharField(max_length=220) + current_time = models.DateTimeField(auto_now_add=True) + email = models.EmailField() + body = models.TextField() + + class Meta: + ordering = ('-current_time',) # Create your models here. diff --git a/IAP-Website/blog/templates/blog/base.html b/IAP-Website/blog/templates/blog/base.html index cf1c248..eabf6a4 100644 --- a/IAP-Website/blog/templates/blog/base.html +++ b/IAP-Website/blog/templates/blog/base.html @@ -5,7 +5,6 @@ {%block content_area %} -

Learning To code is so sweet

{% endblock %} diff --git a/IAP-Website/blog/templates/blog/blog.html b/IAP-Website/blog/templates/blog/blog.html index a01276e..8934394 100644 --- a/IAP-Website/blog/templates/blog/blog.html +++ b/IAP-Website/blog/templates/blog/blog.html @@ -6,63 +6,68 @@
- -
-

The Rural Cooking Blog

- - -

Lorem ipsum dolor sit amet consectetur adipisicing elit. In, nisi! Reprehenderit tenetur sunt voluptas accusamus est cupiditate totam cumque? Cumque amet aliquid repellendus quidem repellat possimus quibusdam repudiandae nisi omnis? -

- Read More -
- - + + {% for posts in post %}
+
-

Finding Solution

-

Lorem ipsum dolor sit amet consectetur adipisicing elit. Explicabo officia porro dicta, ex deserunt distinctio enim earum voluptates nostrum laborum error eaque quae alias asperiores. Inventore quo excepturi ullam officiis! +

+

{{posts.title|upper}}

+

{{posts.body|truncatewords:20}}

- Continue Reading + Continue Reading
- +
- +
+ {%endfor%} + + + + -
-
-

Finding Solution

-

Lorem ipsum dolor sit amet consectetur adipisicing elit. Explicabo officia porro dicta, ex deserunt distinctio enim earum voluptates nostrum laborum error eaque quae alias asperiores. Inventore quo excepturi ullam officiis! -

- Continue Reading -
- -
- - -
- -
- - -
-
-

Finding Solution

-

Lorem ipsum dolor sit amet consectetur adipisicing elit. Explicabo officia porro dicta, ex deserunt distinctio enim earum voluptates nostrum laborum error eaque quae alias asperiores. Inventore quo excepturi ullam officiis! -

- Continue Reading -
+ -
- - -
+ -
+
@@ -85,23 +90,11 @@

Another heading in recent

Heading Again

- -
-

Heading Again2

- -
- - - -
-

Heading Again2

- -
- -

Learning To code is so sweet

+
+
{% endblock %} diff --git a/IAP-Website/blog/templates/blog/details.html b/IAP-Website/blog/templates/blog/details.html new file mode 100644 index 0000000..e7397c5 --- /dev/null +++ b/IAP-Website/blog/templates/blog/details.html @@ -0,0 +1,60 @@ +{% extends 'blog/base.html' %} +{% load static %} + + +{% block content_area %} +
+
+ +
+ +

{{post.body|truncatewords:20}}

+ +
+

Comment

+
+ {%csrf_token %} + + {{form.as_p}} +
+
+ +
+
+
+
+ +
+ +
+ +
+ + + + + {% for Comment in post.comments.all %} + +
+
+

{{Comment.name }}

{{ Comment.current_time |timesince }} ago
+

{{Comment.body}}

+
+ +
+
+
+ +
+
+ + {% endfor %} + + +{%endblock%} + + + + diff --git a/IAP-Website/blog/templates/blog/footer.html b/IAP-Website/blog/templates/blog/footer.html index ad12dd1..d34a837 100644 --- a/IAP-Website/blog/templates/blog/footer.html +++ b/IAP-Website/blog/templates/blog/footer.html @@ -1,7 +1,8 @@ {%load static %} diff --git a/IAP-Website/blog/templates/blog/index.html b/IAP-Website/blog/templates/blog/index.html index 59bd4a4..029c93f 100644 --- a/IAP-Website/blog/templates/blog/index.html +++ b/IAP-Website/blog/templates/blog/index.html @@ -3,19 +3,65 @@ {%block content_area %} -
-
- - {%for posts in posts reversed %} -

{{posts.title}}

- -

{{posts.body|truncatewords:40}} Read More

- +
+ +
+ {% for posts in post %} +

{{posts.title|upper}}

+ +

{{posts.body|truncatewords:20}}
Read More

+ {%endfor%} + +
+ + + + + + + + + +
+

Welcome New Section coming

+

diff --git a/IAP-Website/blog/templates/blog/nav_bar.html b/IAP-Website/blog/templates/blog/nav_bar.html index 5358267..ab79b53 100644 --- a/IAP-Website/blog/templates/blog/nav_bar.html +++ b/IAP-Website/blog/templates/blog/nav_bar.html @@ -6,6 +6,7 @@ The Inexpensive IAP Reduction System + diff --git a/IAP-Website/blog/urls.py b/IAP-Website/blog/urls.py index a14d62d..163bd0f 100644 --- a/IAP-Website/blog/urls.py +++ b/IAP-Website/blog/urls.py @@ -9,6 +9,8 @@ path('signup/', views.signupPage, name='signup'), path('login/', views.loginPage, name='login'), path('logout/', views.logoutUser, name='logout'), - - -] \ No newline at end of file + + #comment session + path('/', views.details, name='post_details'), + +] diff --git a/IAP-Website/blog/views.py b/IAP-Website/blog/views.py index 05a2f24..b5b75d2 100644 --- a/IAP-Website/blog/views.py +++ b/IAP-Website/blog/views.py @@ -1,25 +1,60 @@ -from django.shortcuts import render, redirect +from django.shortcuts import get_object_or_404, render, redirect from .models import Post from django.http import HttpResponse from django.contrib.auth.forms import UserCreationForm -from .forms import CreateUserForm +from .forms import CreateUserForm, CommentForm from django.contrib import messages from django.contrib.auth import authenticate, login, logout +from django.core.paginator import Paginator # Create your views here. def index(request): - posts = Post.objects.all() - return render(request, "blog/index.html",{"posts":posts}) + post = Post.objects.all() + paginator = Paginator(post,1) + + page_number = request.GET.get("page") + post_obj = paginator.get_page(page_number) + + + return render(request, "blog/index.html",{"post": post_obj}) + +#Comments +def details(request, slug): + post = get_object_or_404(Post, slug=slug) + + if request.method == 'POST': + form = CommentForm(request.POST) + + if form.is_valid(): + comment = form.save(commit=False) + comment.post = post + comment.save() + return redirect('post_details', slug=slug) + + else: + form = CommentForm() + return render(request, 'blog/details.html',{"post":post, "form":form}) +#Comments end here def blog(request): - return render(request, "blog/blog.html") + post = Post.objects.all() + paginator = Paginator(post,2) + + page_number = request.GET.get("page") + post_obj = paginator.get_page(page_number) + + + return render(request, "blog/blog.html",{"post": post_obj}) + def about(request): return render(request, "blog/about.html") + # def blog(request): # return render(request, "blog/blog.html") + #Accounts def loginPage(request): if request.method == 'POST': @@ -49,4 +84,4 @@ def signupPage(request): return redirect('login') context = {'form':form} - return render(request, "accounts/signup.html",context) \ No newline at end of file + return render(request, "accounts/signup.html",context) diff --git a/IAP-Website/db.sqlite3 b/IAP-Website/db.sqlite3 index 06b42ff..5949e73 100644 Binary files a/IAP-Website/db.sqlite3 and b/IAP-Website/db.sqlite3 differ diff --git a/IAP-Website/requirements.txt b/IAP-Website/requirements.txt index a692920..7345c45 100644 --- a/IAP-Website/requirements.txt +++ b/IAP-Website/requirements.txt @@ -1,4 +1,8 @@ asgiref==3.7.2 Django==4.2.6 sqlparse==0.4.4 -typing-extensions==4.8.0 \ No newline at end of file +<<<<<<< HEAD +typing-extensions==4.8.0 +======= +typing-extensions==4.8.0 +>>>>>>> 63123f7a22f85e436239609cea45631ac01a00c0 diff --git a/IAP-Website/ruralcooking_core/__pycache__/settings.cpython-39.pyc b/IAP-Website/ruralcooking_core/__pycache__/settings.cpython-39.pyc index 317450b..8cb1427 100644 Binary files a/IAP-Website/ruralcooking_core/__pycache__/settings.cpython-39.pyc and b/IAP-Website/ruralcooking_core/__pycache__/settings.cpython-39.pyc differ diff --git a/IAP-Website/ruralcooking_core/__pycache__/urls.cpython-39.pyc b/IAP-Website/ruralcooking_core/__pycache__/urls.cpython-39.pyc index 5676913..55d3eba 100644 Binary files a/IAP-Website/ruralcooking_core/__pycache__/urls.cpython-39.pyc and b/IAP-Website/ruralcooking_core/__pycache__/urls.cpython-39.pyc differ diff --git a/IAP-Website/ruralcooking_core/settings.py b/IAP-Website/ruralcooking_core/settings.py index 1da8187..6c44acc 100644 --- a/IAP-Website/ruralcooking_core/settings.py +++ b/IAP-Website/ruralcooking_core/settings.py @@ -33,7 +33,7 @@ INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', - 'blog', + 'blog.apps.BlogConfig', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', @@ -115,11 +115,16 @@ # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/4.2/howto/static-files/ + STATIC_URL = 'static/' -STATICFILES_DIRS = [ - BASE_DIR / "static/", - # "/var/www/static/", +STATICFILES_DIRS =[ + BASE_DIR / 'static/' + # '/var/www/static/', ] +#MEDIA_URL = '/media/' +#MEDIA_ROOT = BASE_DIR / 'media/' + # "/var/www/static/", + diff --git a/IAP-Website/ruralcooking_core/urls.py b/IAP-Website/ruralcooking_core/urls.py index 94c5cec..560ecd3 100644 --- a/IAP-Website/ruralcooking_core/urls.py +++ b/IAP-Website/ruralcooking_core/urls.py @@ -1,5 +1,6 @@ -from django.conf import settings -from django.conf.urls.static import static +#from django.conf import settings +#from django.conf.urls.static import static +from blog.admin import blog_site """ URL configuration for ruralcooking_core project. @@ -22,8 +23,9 @@ urlpatterns = [ path('admin/', admin.site.urls), + path('blogadmin/', blog_site.urls), path('', include('blog.urls')), -] +] diff --git a/IAP-Website/static/asset/css/style.css b/IAP-Website/static/asset/css/style.css index 7721f42..12e7f1e 100644 --- a/IAP-Website/static/asset/css/style.css +++ b/IAP-Website/static/asset/css/style.css @@ -4,21 +4,34 @@ } */ /* Using compound selector on navbar */ -cent{ - text-align : center; -} + body{ margin : 0; font-family : 'Ubuntu', sans-serif; - font-size: 1.25rem; + /* font-size: 1.95rem; */ font-weight: 300; + padding : 2.3rem; + } img { max-width : 100%; + width : 100%; + margin :0; + padding :0; display : block; + } +.media{ + width : 30%; + background-color :#f8f8f8; + color : black; +} + + + + /* ========== Page Layout =============== */ @@ -35,11 +48,12 @@ img { } header{ - padding : 1em 0; + padding : 0 1em; /* background : yellow; */ background: #f8f8f8f8; text-align: left; margin-bottom : 2em; + /* margin : 0 2em; */ } /* Nav bar section */ @@ -49,7 +63,19 @@ nav{ display : flex; justify-content: space-between; align-items: right; - padding : 0 14px; + /* padding : 0 14px; */ + margin : 0; +} + +.banner-heading{ + text-align: center; + font-size : 3rem; + text-shadow: 0 1px 1px; + color : black; + /* color : #FFFFFF; */ + margin-bottom : .9em; + letter-spacing: .2em; + font-weight: 600; } nav ul{ @@ -89,16 +115,14 @@ nav span{ .bar{ display : block; - width : 20px; + width : 25px; height : 3px; margin : 5px auto; - -webkit-transition: all 0.3s ease-in-out; - transition: all 0.3s ease-in-out; - background : black; - - + -webkit-transition : all 0.3s ease-in-out; + transition : all 0.3s ease-in-out; + background-color: black; + } - nav a:hover, nav a:focus{ color : #1792d2; @@ -138,32 +162,87 @@ a:focus{ } .banner-section{ - margin-top : -20px; + /* margin-top : -20px; */ width : 90vw; - height : 70vh; - margin : 0 auto; + height : 55vh; + margin : 0; justify-content: space-between; background-color : #efefef; + padding : 0; } +.banner-heading{ + font-size : 3rem; + color : #fff; +} + +.banner-section{ + align-items: center; + width : 100%; + min-height : 70vh; + background-image: linear-gradient(rgba(0,8,51,0.9),rgba(0,8,51,0.9)); + background-position : center; + background-size : cover; + /* padding : 5%; */ + align-items: center; + justify-content: center; +} .banner-section img{ max-width: 100%; width : 100%; - object-position : top left; - margin-bottom : -15rem; + /* object-position : top left; */ + margin-bottom : -10em; object-fit:cover; - height : 70vh; + height : 65vh; } -.banner-section .banner-heading h1{ - margin-top : -100px; + +.pagination-list{ + min-height : 30px; + margin : 0; + padding : 0 14px; + +} +.nav-list-item{ + font-size : 1.5rem; + display: flex; + margin : 0; + padding : .9, .9em; + +} +.pagination-line{ + display: inline; + padding : .3rem; + /* margin : 0 auto; */ + -webkit-transition: all 0.3s ease-in-out; + transition: all 0.3s ease-in-out; + +} + +.pagination-item{ text-align: left; - color : #daa520; - /* color : #1792d2; */ - margin-top : 60px; - font-size: 3rem; - font-weight: 700; - + } +.page-link{ + font-size : 1.5rem; + margin : .5 .5em; + color : #1792d2; +} + +.page-link:hover{ + background-color : #1792d2; + color : #f8f8f8; + padding : .3em; + -webkit-transition: all 0.3s ease-in-out; + transition: all 0.3s ease-in-out; + border-radius: .3em; +} +.article-title, .article-info, .article-body, .comment{ + font-size : 1.5rem; + margin : 0; + padding : .3em 0; + +} + @@ -175,46 +254,95 @@ Navbar mobile media query ======= */ .hamburger{ display : block; } - + .nav-list{ + flex-direction: column; + margin-right : 0 auto; + } + + .nav-line{ + margin-right : 3em; + } + + .nav-list{ + margin : 0 14px; + padding : .5em; + + } + .nav-list-item{ + padding : .3em; + } + .hamburger.active .bar:nth-child(2){ - opacity: 0; + opacity : 0; } .hamburger.active .bar:nth-child(1){ - transform: translateY(8px) rotate(-50deg); + transform : translateY(8px) rotate(45deg); } + .hamburger.active .bar:nth-child(3){ - transform: translateY(-8px) rotate(-50deg); + transform : translateY(-8px) rotate(-45deg); } + + /* start of editing */ + + /* Place here */ .nav-list{ - display: none; - } - .nav-list.active{ - list-style: none; - display:list-item; position : fixed; - right: 10%; + left : -100%; top : 70px; - gap : 3px; - flex-direction : column; - background-color : #262626; - width : 30%; + gap : 0; + flex-direction: column; + background-color : #f8f8f8; + width : 100%; + text-align: left; transition : 0.3s; + + } + + .nav-list.active{ + left : 0; } .nav-list-item{ - margin : 16px 0; + /* margin : 16px 0; */ + margin-right : 3em; } .nav-list-item.active{ text-align: left; } + + .banner-section{ + /* margin-top : rem; */ + align-items: center; + width : 100%; + min-height : 40vh; + } + .banner-section img{ + max-width: 100%; + width : 100%; + height : 65vh; + } + .banner-heading{ + font-size : 1.5rem; + color : #fff; + padding : .9em; + } + + img { + width : 50%; + margin :0; + padding :0; + display : block; + + } } /* end of Nav media query section */ -/* The rural cooking site tile */ +/* The rural cooking site title */ .site-title{ font-weight : 700; font-size : .75rem; @@ -243,6 +371,7 @@ footer{ color : #fff; text-align : center; padding : 1em; + margin : 0; } @media (min-width: 668px){ .container-main{ @@ -259,8 +388,6 @@ footer{ } } - -.article-read-more, .article-read-more{ font-size: 0.875rem; } @@ -277,9 +404,10 @@ footer{ .article-info{ line-height: 0; + } -.article-title{ +.article-title, .article-read-more{ font-size: 1.5rem; } .widget-title, @@ -343,8 +471,10 @@ footer{ flex-direction : row; justify-content: space-between; } + .article-recent-main{ width : 68%; + padding : 3rem; } .article-rent-secondary{ diff --git a/IAP-Website/uploaded/galleries/mcss-logo.png b/IAP-Website/uploaded/galleries/mcss-logo.png new file mode 100644 index 0000000..ee7a63b Binary files /dev/null and b/IAP-Website/uploaded/galleries/mcss-logo.png differ