From 3f57296c3b0bd0f6ca6b50601070d8563fa6078e Mon Sep 17 00:00:00 2001
From: Ethan-clay03 <ethanclay2017@gmail.com>
Date: Wed, 19 Feb 2025 12:32:01 +0000
Subject: [PATCH] Remove legacy migrations as switched to inital creation, use
 migration for future builds, update index.html

---
 README                                        |  6 +-
 app/models/listing_images.py                  |  1 -
 app/static/listings.css                       | 19 +---
 app/templates/index.html                      | 73 ++++++++-------
 .../22de5b143d05_create_user_roles.py         | 34 -------
 ...2e785_create_listing_availibility_table.py | 30 -------
 .../489bab9aaf4f_add_listing_images_table.py  | 32 -------
 .../6791cbf31235_add_listing_table.py         | 37 --------
 ...89ef13132_add_main_listing_image_column.py | 23 -----
 ...6c7070736062_add_role_id_to_users_table.py | 26 ------
 migrations/versions/77815275598c_.py          | 24 -----
 ...5_add_fs_uniquifier_field_to_user_model.py | 89 -------------------
 .../ac9d4555724d_add_api_token_and_expiry.py  | 36 --------
 ...hange_depart_time_and_destination_time_.py | 31 -------
 .../e49c7ce461b6_create_bookings_table.py     | 37 --------
 15 files changed, 44 insertions(+), 454 deletions(-)
 delete mode 100644 migrations/versions/22de5b143d05_create_user_roles.py
 delete mode 100644 migrations/versions/28932a02e785_create_listing_availibility_table.py
 delete mode 100644 migrations/versions/489bab9aaf4f_add_listing_images_table.py
 delete mode 100644 migrations/versions/6791cbf31235_add_listing_table.py
 delete mode 100644 migrations/versions/68d89ef13132_add_main_listing_image_column.py
 delete mode 100644 migrations/versions/6c7070736062_add_role_id_to_users_table.py
 delete mode 100644 migrations/versions/77815275598c_.py
 delete mode 100644 migrations/versions/9a8cc1906445_add_fs_uniquifier_field_to_user_model.py
 delete mode 100644 migrations/versions/ac9d4555724d_add_api_token_and_expiry.py
 delete mode 100644 migrations/versions/ce28a5ddecee_change_depart_time_and_destination_time_.py
 delete mode 100644 migrations/versions/e49c7ce461b6_create_bookings_table.py

diff --git a/README b/README
index b2227e8..ccb8bfe 100644
--- a/README
+++ b/README
@@ -83,12 +83,12 @@ to be fully setup.
 # Then run the following, if you are not on port 5000 you will need to force it with the '--port 5000' arg
 flask run   (Will run on 127.0.0.1:5000)
 
-# To apply database changes/run migrations
-flask db upgrade
-
 # Creating new migration file (for development)
 flask db migrate -m "Add age column to User model"
 
+# To apply database changes/run migrations
+flask db upgrade
+
 ##########################################
 #              Database Commands         #
 ##########################################
diff --git a/app/models/listing_images.py b/app/models/listing_images.py
index d6b43d2..c7e9f56 100644
--- a/app/models/listing_images.py
+++ b/app/models/listing_images.py
@@ -11,7 +11,6 @@ class ListingImages(db.Model):
 
     id = db.Column(db.Integer(), nullable=False, primary_key=True)
     image_location = db.Column(db.String(255), nullable=False)
-    image_description = db.Column(db.String(255), nullable=True)
     main_image = db.Column(db.SmallInteger(), nullable=False)
     listing_id = db.Column(Integer, ForeignKey('listings.id'), nullable=False)
     listing = relationship("Listings", back_populates="listing_images")
diff --git a/app/static/listings.css b/app/static/listings.css
index 4fc4a6a..82d15d1 100644
--- a/app/static/listings.css
+++ b/app/static/listings.css
@@ -7,21 +7,4 @@
     font-family: "Work Sans", sans-serif;
     padding: 20px 20px;
 }
-  
-.deals_underline {
-position: relative;
-white-space: nowrap;
-&:after {
-    --deco-height: 0.3125em;
-    content: "";
-    position: absolute;
-    left: 0;
-    right: 0;
-    bottom: calc(var(--deco-height) * -0.625);
-    height: var(--deco-height);
-    background-image: url("data:image/svg+xml,%3Csvg width='100' height='64' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath d='M-17 30.5C-1 22 72-4 54 13 37.9 28.2-2.5 57.5 16 55.5s72-29 104-40' stroke='%2300FDCF' stroke-width='10'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h100v64H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
-    background-size: auto 100%;
-    background-repeat: round;
-    background-position: 0em;
-}
-}
+
diff --git a/app/templates/index.html b/app/templates/index.html
index 6990c26..1ec15c6 100644
--- a/app/templates/index.html
+++ b/app/templates/index.html
@@ -7,12 +7,25 @@
     <script src="https://cdn.jsdelivr.net/npm/swiffy-slider@1.6.0/dist/js/swiffy-slider.min.js" crossorigin="anonymous" defer></script>
     <style>
         .slider-wrapper {
-            transform: scale(0.8);
             width: 100%;
+            margin-bottom: 30px;
+        }
+        .deals_text {
+            text-align: center;
+            font-size: 1.5rem;
+            font-weight: bold;
+            margin-bottom: 20px;
+        }
+        .slider-nav {
+            opacity: 0.7;
+        }
+        .slider-nav:hover {
+            opacity: 1;
         }
     </style>
 </head>
 <div class="container mt-4">
+    <h2 class="text-center mb-4">Book Your Trip</h2>
     <form id="travelForm" class="row g-3" action="{{ url_for('bookings.listings') }}" method="GET">
         <div class="col-md-6">
             <label for="departLocation" class="form-label">Departure Location:</label>
@@ -53,37 +66,36 @@
         </div>
     </form>
 </div>
-<div>
-    <div class="deals_text"><span class="deals_underline">Currently Hot Locations</span></div>
-    <div class="slider-wrapper">
-        <div class="swiffy-slider slider-item-show2 slider-item-reveal slider-nav-outside slider-nav-round slider-nav-visible slider-nav-loop slider-indicators-outside slider-indicators-round slider-indicators-dark slider-nav-animation slider-nav-animation-fadein slider-item-first-visible">
-            <ul class="slider-container py-4">
-                {% for listing in top_listings %}
-                <li class="slide-visible">
-                    <div class="card shadow h-100">
-                        <div class="ratio ratio-16x9">
-                            <th>{{top_listing_images[listing.id]}}</th>
-                            <img src="{{ url_for('main.upload_file', filename=top_listing_images[listing.id]) }}" class="card-img-top" loading="lazy" alt="Main Image">
-                        </div>
-                        <div class="card-body p-3 p-xl-4">
-                            <h3 class="card-title h5">{{listing.destination_location}}</h3>
-                            <p class="card-text">Add Location description here once implemented</p>
-                            <div><a href="#" class="btn btn-primary">Book now</a>
+<div class="container mt-5">
+    <div class="deals_text"><span style="font-size: 35px;">Currently Hot Deals</span></div>
+        <div class="slider-wrapper">
+            <div class="swiffy-slider slider-item-show3 slider-item-reveal slider-nav-outside slider-nav-round slider-nav-visible slider-nav-loop slider-indicators-outside slider-indicators-round slider-indicators-dark slider-nav-animation slider-nav-animation-slide">
+                <ul class="slider-container py-4">
+                    {% for listing in top_listings %}
+                    <li class="slide-visible">
+                        <div class="card shadow h-100">
+                            <div class="ratio ratio-16x9">
+                                <img src="{{ url_for('main.upload_file', filename=top_listing_images[listing.id]) }}" class="card-img-top" loading="lazy" alt="Main Image">
+                            </div>
+                            <div class="card-body p-3 p-xl-4">
+                                <h3 class="card-title h5">{{listing.destination_location}}</h3>
+                                <p class="card-text">Add Location description here once implemented</p>
+                                <div><a href="#" class="btn btn-primary">Book now</a>
+                                </div>
                             </div>
                         </div>
-                    </div>
-                </li>
-                {% endfor %}
-            </ul>
+                    </li>
+                    {% endfor %}
+                </ul>
 
-            <button type="button" class="slider-nav slider-nav-prev" aria-label="Go left"></button>
-            <button type="button" class="slider-nav slider-nav-next" aria-label="Go right"></button>
+                <button type="button" class="slider-nav slider-nav-prev" aria-label="Go left"></button>
+                <button type="button" class="slider-nav slider-nav-next" aria-label="Go right"></button>
 
-            <div class="slider-indicators">
-                <button class="active" aria-label="Go to slide"></button>
-                <button aria-label="Go to slide"></button>
-                <button aria-label="Go to slide"></button>
-                <button aria-label="Go to slide"></button>
+                <div class="slider-indicators">
+                    <button class="active" aria-label="Go to slide"></button>
+                    <button aria-label="Go to slide"></button>
+                    <button aria-label="Go to slide"></button>
+                </div>
             </div>
         </div>
     </div>
@@ -103,25 +115,20 @@
     });
 
     const departDateInput = document.getElementById('departDate');
-    const resetDateButton = document.getElementById('resetDate');
 
-    // Open date picker when the date field is clicked
     departDateInput.addEventListener('focus', (event) => {
         event.preventDefault();
         departDateInput.showPicker();
     });
 
-    // Prevent any dates being changed by the user manually typing
     departDateInput.addEventListener('keydown', (event) => {
         event.preventDefault();
     });
 
-    // Set default date to today and prevent selecting past dates
     const today = new Date().toISOString().split('T')[0];
     departDateInput.value = today;
     departDateInput.setAttribute('min', today);
 
-    // Set max date to 90 days from today
     let maxDate = new Date();
     maxDate.setDate(maxDate.getDate() + 90);
     departDateInput.setAttribute('max', maxDate.toISOString().split('T')[0]);
diff --git a/migrations/versions/22de5b143d05_create_user_roles.py b/migrations/versions/22de5b143d05_create_user_roles.py
deleted file mode 100644
index 5e6a586..0000000
--- a/migrations/versions/22de5b143d05_create_user_roles.py
+++ /dev/null
@@ -1,34 +0,0 @@
-"""Create user roles
-
-Revision ID: 22de5b143d05
-Revises: 9a8cc1906445
-Create Date: 2025-01-06 13:40:11.307880
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.sql import table, column
-
-# revision identifiers, used by Alembic.
-revision = '22de5b143d05'
-down_revision = '9a8cc1906445'
-branch_labels = None
-depends_on = None
-
-roles_table = table('roles',
-    column('id', sa.Integer),
-    column('name', sa.String),
-    column('description', sa.String)
-)
-
-def upgrade():
-    roles = [
-        {'name': 'super-admin', 'description': 'Super Admin, all admin perms and can create new admins'},
-        {'name': 'admin', 'description': 'Can create/delete and modify bookings'},
-        {'name': 'user', 'description': 'Standard user'}
-    ]
-
-    op.bulk_insert(roles_table, roles)
-
-def downgrade():
-    op.execute('DELETE FROM roles WHERE name IN ("super-admin", "admin", "user")')
diff --git a/migrations/versions/28932a02e785_create_listing_availibility_table.py b/migrations/versions/28932a02e785_create_listing_availibility_table.py
deleted file mode 100644
index 9c9e498..0000000
--- a/migrations/versions/28932a02e785_create_listing_availibility_table.py
+++ /dev/null
@@ -1,30 +0,0 @@
-"""Create listing availibility table
-
-Revision ID: 28932a02e785
-Revises: e49c7ce461b6
-Create Date: 2025-01-08 18:41:40.962877
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.dialects import mysql
-from sqlalchemy.engine.reflection import Inspector
-
-# revision identifiers, used by Alembic.
-revision = '28932a02e785'
-down_revision = 'e49c7ce461b6'
-branch_labels = None
-depends_on = None
-
-def upgrade():
-    bind = op.get_bind()
-    inspector = Inspector.from_engine(bind)
-    if 'listing_availability' not in inspector.get_table_names():
-        op.create_table(
-                'listing_availability',
-                sa.Column('id', sa.Integer(), nullable=False, autoincrement=True, primary_key=True),
-                sa.Column('listing_id', sa.Integer(), nullable=False),
-                sa.Column('business_tickets', sa.Integer(), nullable=False),
-                sa.Column('economy_tickets', sa.Integer(), nullable=False),
-                sa.ForeignKeyConstraint(['listing_id'], ['listings.id'], ondelete='CASCADE')
-        )
diff --git a/migrations/versions/489bab9aaf4f_add_listing_images_table.py b/migrations/versions/489bab9aaf4f_add_listing_images_table.py
deleted file mode 100644
index 3a08224..0000000
--- a/migrations/versions/489bab9aaf4f_add_listing_images_table.py
+++ /dev/null
@@ -1,32 +0,0 @@
-"""Add listing images table
-
-Revision ID: 489bab9aaf4f
-Revises: 6791cbf31235
-Create Date: 2024-11-05 11:13:50.215159
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.engine.reflection import Inspector
-
-
-# revision identifiers, used by Alembic.
-revision = '489bab9aaf4f'
-down_revision = '6791cbf31235'
-branch_labels = None
-depends_on = None
-
-
-def upgrade():
-       bind = op.get_bind()
-       inspector = Inspector.from_engine(bind)
-
-       # Check if the 'users' table exists
-       if 'listing_images' not in inspector.get_table_names():
-              op.create_table(
-                     'listing_images',
-                     sa.Column('id', sa.Integer(), nullable=False, autoincrement=True, primary_key=True),
-                     sa.Column('listing_id', sa.Integer(), nullable=False),
-                     sa.Column('image_location', sa.String(255), nullable=False),
-                     sa.Column('image_description', sa.String(255), nullable=True)
-              )
diff --git a/migrations/versions/6791cbf31235_add_listing_table.py b/migrations/versions/6791cbf31235_add_listing_table.py
deleted file mode 100644
index a8202a8..0000000
--- a/migrations/versions/6791cbf31235_add_listing_table.py
+++ /dev/null
@@ -1,37 +0,0 @@
-"""Add listing table
-
-Revision ID: 6791cbf31235
-Revises: ac9d4555724d
-Create Date: 2024-11-05 10:36:32.872815
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.engine.reflection import Inspector
-
-
-# revision identifiers, used by Alembic.
-revision = '6791cbf31235'
-down_revision = 'ac9d4555724d'
-branch_labels = None
-depends_on = None
-
-
-def upgrade():
-       bind = op.get_bind()
-       inspector = Inspector.from_engine(bind)
-
-       # Check if the 'users' table exists
-       if 'listings' not in inspector.get_table_names():
-              op.create_table(
-                     'listings',
-                     sa.Column('id', sa.Integer(), nullable=False, autoincrement=True, primary_key=True),
-                     sa.Column('depart_location', sa.String(255), nullable=False),
-                     sa.Column('depart_time', sa.DateTime(), nullable=False),
-                     sa.Column('destination_location', sa.String(255), nullable=False),
-                     sa.Column('destination_time', sa.DateTime(), nullable=False),
-                     sa.Column('fair_cost', sa.Float(2), nullable=False),
-                     sa.Column('transport_type', sa.String(255), nullable=False),
-                     sa.Column('business_tickets', sa.Integer(), nullable=False),
-                     sa.Column('economy_tickets', sa.Integer(), nullable=False)
-              )
\ No newline at end of file
diff --git a/migrations/versions/68d89ef13132_add_main_listing_image_column.py b/migrations/versions/68d89ef13132_add_main_listing_image_column.py
deleted file mode 100644
index 9ccafd8..0000000
--- a/migrations/versions/68d89ef13132_add_main_listing_image_column.py
+++ /dev/null
@@ -1,23 +0,0 @@
-"""Add main Listing Image Column
-
-Revision ID: 68d89ef13132
-Revises: 489bab9aaf4f
-Create Date: 2024-11-29 10:29:38.126811
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.dialects import mysql
-
-# revision identifiers, used by Alembic.
-revision = '68d89ef13132'
-down_revision = '489bab9aaf4f'
-branch_labels = None
-depends_on = None
-
-
-def upgrade():
-        op.add_column(
-        'listing_images',
-        sa.Column('main_image', sa.Boolean(), nullable=False, server_default=sa.sql.expression.false())
-    )
\ No newline at end of file
diff --git a/migrations/versions/6c7070736062_add_role_id_to_users_table.py b/migrations/versions/6c7070736062_add_role_id_to_users_table.py
deleted file mode 100644
index b08cdd2..0000000
--- a/migrations/versions/6c7070736062_add_role_id_to_users_table.py
+++ /dev/null
@@ -1,26 +0,0 @@
-"""Add role_id to users table
-
-Revision ID: 6c7070736062
-Revises: 22de5b143d05
-Create Date: 2025-01-06 20:16:19.191868
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.dialects import mysql
-
-# revision identifiers, used by Alembic.
-revision = '6c7070736062'
-down_revision = '22de5b143d05'
-branch_labels = None
-depends_on = None
-
-def upgrade():
-    # Add column role_id to users table
-    op.add_column('users', sa.Column('role_id', sa.Integer(), nullable=True))
-    op.create_foreign_key(None, 'users', 'roles', ['role_id'], ['id'])
-
-def downgrade():
-    # Remove column role_id from users table
-    op.drop_constraint(None, 'users', type_='foreignkey')
-    op.drop_column('users', 'role_id')
diff --git a/migrations/versions/77815275598c_.py b/migrations/versions/77815275598c_.py
deleted file mode 100644
index 6c4f331..0000000
--- a/migrations/versions/77815275598c_.py
+++ /dev/null
@@ -1,24 +0,0 @@
-"""empty message
-
-Revision ID: 77815275598c
-Revises: 6c7070736062
-Create Date: 2025-01-08 16:57:53.560001
-
-"""
-from alembic import op
-import sqlalchemy as sa
-
-
-# revision identifiers, used by Alembic.
-revision = '77815275598c'
-down_revision = '6c7070736062'
-branch_labels = None
-depends_on = None
-
-
-def upgrade():
-    pass
-
-
-def downgrade():
-    pass
diff --git a/migrations/versions/9a8cc1906445_add_fs_uniquifier_field_to_user_model.py b/migrations/versions/9a8cc1906445_add_fs_uniquifier_field_to_user_model.py
deleted file mode 100644
index 7bacfee..0000000
--- a/migrations/versions/9a8cc1906445_add_fs_uniquifier_field_to_user_model.py
+++ /dev/null
@@ -1,89 +0,0 @@
-"""Add fs_uniquifier field to User model
-
-Revision ID: 9a8cc1906445
-Revises: 68d89ef13132
-Create Date: 2025-01-06 12:52:57.272220
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.dialects import mysql
-import os
-
-# revision identifiers, used by Alembic.
-revision = '9a8cc1906445'
-down_revision = '68d89ef13132'
-branch_labels = None
-depends_on = None
-
-def column_exists(table_name, column_name):
-    inspector = sa.inspect(op.get_bind())
-    return column_name in [col['name'] for col in inspector.get_columns(table_name)]
-
-def index_exists(table_name, index_name):
-    inspector = sa.inspect(op.get_bind())
-    indexes = inspector.get_indexes(table_name)
-    return any(index['name'] == index_name for index in indexes)
-
-def upgrade():
-    # Conditionally create roles table
-    if not op.get_bind().dialect.has_table(op.get_bind(), "roles"):
-        op.create_table('roles',
-            sa.Column('id', sa.Integer(), nullable=False),
-            sa.Column('name', sa.String(length=80), nullable=True),
-            sa.Column('description', sa.String(length=255), nullable=True),
-            sa.PrimaryKeyConstraint('id'),
-            sa.UniqueConstraint('name')
-        )
-    
-    # Conditionally create roles_users table
-    if not op.get_bind().dialect.has_table(op.get_bind(), "roles_users"):
-        op.create_table('roles_users',
-            sa.Column('user_id', sa.Integer(), nullable=True),
-            sa.Column('role_id', sa.Integer(), nullable=True),
-            sa.ForeignKeyConstraint(['role_id'], ['roles.id']),
-            sa.ForeignKeyConstraint(['user_id'], ['users.id'])
-        )
-    
-    with op.batch_alter_table('listing_images', schema=None) as batch_op:
-        batch_op.alter_column('main_image',
-               existing_type=mysql.TINYINT(display_width=1),
-               type_=sa.SmallInteger(),
-               existing_nullable=False,
-               existing_server_default=sa.text("'0'"))
-
-    # Assign unique values to fs_uniquifier for existing users before adding the unique constraint
-    conn = op.get_bind()
-    users = conn.execute(sa.text("SELECT id FROM users WHERE fs_uniquifier IS NULL OR fs_uniquifier = ''")).fetchall()
-    for user in users:
-        conn.execute(sa.text("UPDATE users SET fs_uniquifier = :fs_uniquifier WHERE id = :id"), {'fs_uniquifier': os.urandom(32).hex(), 'id': user.id})
-
-    with op.batch_alter_table('users', schema=None) as batch_op:
-        if index_exists('users', 'api_token'):
-            batch_op.drop_index('api_token')
-        batch_op.create_unique_constraint(None, ['fs_uniquifier'])
-        if column_exists('users', 'token_expiry'):
-            batch_op.drop_column('token_expiry')
-        if column_exists('users', 'api_token'):
-            batch_op.drop_column('api_token')
-        if column_exists('users', 'role_id'):
-            batch_op.drop_column('role_id')
-
-def downgrade():
-    with op.batch_alter_table('users', schema=None) as batch_op:
-        batch_op.add_column(sa.Column('role_id', mysql.SMALLINT(), server_default=sa.text("'1'"), autoincrement=False, nullable=False))
-        batch_op.add_column(sa.Column('api_token', mysql.VARCHAR(length=255), nullable=True))
-        batch_op.add_column(sa.Column('token_expiry', mysql.DATETIME(), nullable=True))
-        batch_op.drop_constraint(None, type_='unique')
-        batch_op.create_index('api_token', ['api_token'], unique=True)
-        batch_op.drop_column('fs_uniquifier')
-
-    with op.batch_alter_table('listing_images', schema=None) as batch_op:
-        batch_op.alter_column('main_image',
-               existing_type=sa.SmallInteger(),
-               type_=mysql.TINYINT(display_width=1),
-               existing_nullable=False,
-               existing_server_default=sa.text("'0'"))
-
-    op.drop_table('roles_users')
-    op.drop_table('roles')
diff --git a/migrations/versions/ac9d4555724d_add_api_token_and_expiry.py b/migrations/versions/ac9d4555724d_add_api_token_and_expiry.py
deleted file mode 100644
index 26f22ae..0000000
--- a/migrations/versions/ac9d4555724d_add_api_token_and_expiry.py
+++ /dev/null
@@ -1,36 +0,0 @@
-"""Add api token and expiry
-
-Revision ID: ac9d4555724d
-Revises: 
-Create Date: 2024-11-01 10:56:05.827705
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.dialects import mysql
-from sqlalchemy.engine.reflection import Inspector
-
-# revision identifiers, used by Alembic.
-revision = 'ac9d4555724d'
-down_revision = None
-branch_labels = None
-depends_on = None
-
-
-def upgrade():
-    bind = op.get_bind()
-    inspector = Inspector.from_engine(bind)
-
-    # Check if the 'users' table exists
-    if 'users' not in inspector.get_table_names():
-        op.create_table(
-            'users',
-            sa.Column('id', sa.Integer(), nullable=False, autoincrement=True, primary_key=True),
-            sa.Column('username', sa.String(255), nullable=False, unique=True),
-            sa.Column('email', sa.String(255), nullable=False, unique=True),
-            sa.Column('password', sa.String(255), nullable=False),
-            sa.Column('role_id', sa.SmallInteger(), nullable=False, server_default='3')
-        )
-
-def downgrade():
-    op.drop_table('users')
diff --git a/migrations/versions/ce28a5ddecee_change_depart_time_and_destination_time_.py b/migrations/versions/ce28a5ddecee_change_depart_time_and_destination_time_.py
deleted file mode 100644
index d8cb781..0000000
--- a/migrations/versions/ce28a5ddecee_change_depart_time_and_destination_time_.py
+++ /dev/null
@@ -1,31 +0,0 @@
-"""Change depart_time and destination_time from DateTime to Time
-
-Revision ID: ce28a5ddecee
-Revises: 28932a02e785
-Create Date: 2025-01-17 14:36:45.488306
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.dialects import mysql
-
-# revision identifiers, used by Alembic.
-revision = 'ce28a5ddecee'
-down_revision = '28932a02e785'
-branch_labels = None
-depends_on = None
-
-
-def upgrade():
-    with op.batch_alter_table('listing_images', schema=None) as batch_op:
-        batch_op.create_foreign_key(None, 'listings', ['listing_id'], ['id'])
-
-    with op.batch_alter_table('listings', schema=None) as batch_op:
-        batch_op.alter_column('depart_time',
-               existing_type=mysql.DATETIME(),
-               type_=sa.Time(),
-               existing_nullable=False)
-        batch_op.alter_column('destination_time',
-               existing_type=mysql.DATETIME(),
-               type_=sa.Time(),
-               existing_nullable=False)
diff --git a/migrations/versions/e49c7ce461b6_create_bookings_table.py b/migrations/versions/e49c7ce461b6_create_bookings_table.py
deleted file mode 100644
index 142d587..0000000
--- a/migrations/versions/e49c7ce461b6_create_bookings_table.py
+++ /dev/null
@@ -1,37 +0,0 @@
-"""Create bookings table
-
-Revision ID: e49c7ce461b6
-Revises: 77815275598c
-Create Date: 2025-01-08 17:08:51.080297
-
-"""
-from alembic import op
-import sqlalchemy as sa
-from sqlalchemy.dialects import mysql
-from sqlalchemy.engine.reflection import Inspector
-
-# revision identifiers, used by Alembic.
-revision = 'e49c7ce461b6'
-down_revision = '77815275598c'
-branch_labels = None
-depends_on = None
-
-def upgrade():
-    bind = op.get_bind()
-    inspector = Inspector.from_engine(bind)
-    if 'bookings' not in inspector.get_table_names():
-        op.create_table(
-                'bookings',
-                sa.Column('id', sa.Integer(), nullable=False, autoincrement=True, primary_key=True),
-                sa.Column('user_id', sa.Integer(), nullable=False),
-                sa.Column('listing_id', sa.Integer(), nullable=False),
-                sa.Column('amount_paid', sa.Integer(), nullable=False),
-                sa.Column('cancelled', sa.Boolean(), nullable=False),
-                sa.ForeignKeyConstraint(['listing_id'], ['listings.id'], ondelete='CASCADE'),
-                sa.ForeignKeyConstraint(['user_id'], ['users.id'], ondelete='CASCADE')
-        )
-
-        #Remove columns from listing as moved to new table
-        op.drop_column('listings', 'economy_tickets') 
-        op.drop_column('listings', 'business_tickets')
-
-- 
GitLab