Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
d858653
init
MahdiMazloum96 Feb 26, 2025
9e41243
add UI components: Label, Input, Button; implement HomePage and MainP…
MahdiMazloum96 Mar 1, 2025
10764ea
refactor BuyTicket form layout and styles; improve responsiveness and…
MahdiMazloum96 Mar 1, 2025
6182d76
adding width for large screen
MahdiMazloum96 Mar 1, 2025
1ef0b4d
adding fonts
MahdiMazloum96 Mar 1, 2025
ebe061b
add CfpPage component with form validation; update StickyHeader and H…
MahdiMazloum96 Mar 2, 2025
54c60b3
adding notfound component for 404
MahdiMazloum96 Mar 2, 2025
97098f2
add Rules page with markdown content; update MenubarItems links and i…
MahdiMazloum96 Mar 2, 2025
a5ec1f8
refactor BuyTicket component layout; improve form field spacing and s…
MahdiMazloum96 Mar 3, 2025
44d8e06
refactor layout of BuyTicket and CfpPage components; adjust height an…
MahdiMazloum96 Mar 3, 2025
3ac140b
refactor MenubarItems and SidebarSheet components for adding route an…
MahdiMazloum96 Mar 3, 2025
19569f4
fixing menubar problem in larg screen
MahdiMazloum96 Mar 3, 2025
8168ca3
adding margin-b to rules and d replace fragment with div (temporarily)
MahdiMazloum96 Mar 3, 2025
ae1d641
adding like to socialMedia
MahdiMazloum96 Mar 3, 2025
b4cc043
refactor ContantContent with reactMarkDown
MahdiMazloum96 Mar 3, 2025
7932ce1
fix: update link for ContactUs in MenubarItems and improve scroll beh…
MahdiMazloum96 Mar 3, 2025
d0d971e
adding pics and links for committee
MahdiMazloum96 Mar 3, 2025
3af6040
feat: add new member to program committee with image and LinkedIn link
MahdiMazloum96 Mar 3, 2025
bc1f115
feat: enhance file upload UI and update program committee member details
MahdiMazloum96 Mar 4, 2025
2e95287
fix: update font paths and change body font to IranSans
MahdiMazloum96 Mar 4, 2025
72bfa04
feat: replace img with next/image for program committee member images
MahdiMazloum96 Mar 4, 2025
c7b46f8
feat: implement navigation menu and dynamic page
MahdiMazloum96 Mar 5, 2025
97e00a4
feat: create dynamic Irnog event pages with content structure
MahdiMazloum96 Mar 5, 2025
2c9811a
feat: add dynamic content and validation for Irnog event pages
MahdiMazloum96 Mar 8, 2025
4e1da24
fixing header for irnog page
MahdiMazloum96 Mar 8, 2025
1ab4863
adding time to irnog page
MahdiMazloum96 Mar 8, 2025
4ee63f1
fixing location in irnog page
MahdiMazloum96 Mar 8, 2025
e8f8f36
fixing agenda in irnog page
MahdiMazloum96 Mar 8, 2025
179e7b2
change link to span for documents
MahdiMazloum96 Mar 8, 2025
69f18cb
make irnogAgenda optional in IrnogEvent interface
MahdiMazloum96 Mar 8, 2025
11ecd12
fixing sponsers in irnogpage
MahdiMazloum96 Mar 8, 2025
ecb3510
fixing sponsers in irnog page
MahdiMazloum96 Mar 9, 2025
a8a7c06
fixing Participants to irnogpage
MahdiMazloum96 Mar 9, 2025
2e78ec6
replace Accordion component with AccordionTable and update Participan…
MahdiMazloum96 Mar 9, 2025
49b6dc9
adding gallery to irnogpage
MahdiMazloum96 Mar 9, 2025
c0c5d46
adding key for galley map
MahdiMazloum96 Mar 9, 2025
587eb21
add event items to Menubar
MahdiMazloum96 Mar 9, 2025
2e61e0a
validate allowed IDs for IrnogPage navigation
MahdiMazloum96 Mar 9, 2025
00c5ed8
add new font faces and update body font to Sahel
MahdiMazloum96 Mar 9, 2025
4445ecf
refactor: replace unique keys with index in map functions for consist…
MahdiMazloum96 Mar 9, 2025
de0a17d
adding key for map and fixing margin in HomePage
MahdiMazloum96 Mar 10, 2025
ee8b47e
fixing content card in moblie screen
MahdiMazloum96 Mar 10, 2025
c5ecd1a
refactor: remove unused props interfaces from components
MahdiMazloum96 Mar 10, 2025
d11bdc9
refactor: update font paths and add new font face for Yekan
MahdiMazloum96 Mar 10, 2025
abb93b1
refactor: remove unused font files and update globals.css
MahdiMazloum96 Mar 10, 2025
31bda39
adding rounded-4xl contact us
MahdiMazloum96 Mar 10, 2025
2d2a05e
refactor : changing imports in main page to add ticket component
MahdiMazloum96 Mar 10, 2025
0db30fd
fixing news
MahdiMazloum96 Mar 10, 2025
d7323cd
adding news routes
MahdiMazloum96 Mar 10, 2025
810ed6a
README is changed
mostafawkhd Mar 10, 2025
ecdb56f
Merge branch 'dev' of github.com:HoopadCorp/irnog_frontend
mostafawkhd Mar 10, 2025
7594c3e
adding ... to newsContent summary
MahdiMazloum96 Mar 11, 2025
0063c0b
refactor : menubar
MahdiMazloum96 Mar 11, 2025
7432a36
adding footer component
MahdiMazloum96 Mar 11, 2025
486774a
changing image height in news
MahdiMazloum96 Mar 11, 2025
46982f8
irnog1 and irnog 2 and irnog 3 content added
MahdiMazloum96 Mar 12, 2025
7a989e7
adding irnog imports to page content
MahdiMazloum96 Mar 12, 2025
1b35045
adding irnog4 participants
MahdiMazloum96 Mar 12, 2025
880c11c
Merge branch 'feature/content' of github.com:HoopadCorp/irnog_fronten…
mostafawkhd Mar 12, 2025
aa01731
replace img with next/image in Gallery component and add default imag…
MahdiMazloum96 Mar 15, 2025
aceff48
refactor IrnogPage layout and styling; center location detail and adj…
MahdiMazloum96 Mar 15, 2025
065b29c
adjust font size of Program Committee title for improved readability
MahdiMazloum96 Mar 15, 2025
d3a2c95
adding margin right to drop down
MahdiMazloum96 Mar 15, 2025
ffa04a7
refactor key props in components for improved performance and consist…
MahdiMazloum96 Mar 16, 2025
c03cae4
fixing linkdin links
MahdiMazloum96 Mar 16, 2025
ea7bb9d
remove unnecessary overflow-x-auto wrapper from AccordionTable component
MahdiMazloum96 Mar 16, 2025
2cae1d5
add no-scrollbar utility class and apply to AccordionTable for improv…
MahdiMazloum96 Mar 16, 2025
e307882
replace limoHost.jpg with limoHost.svg for improved logo quality
MahdiMazloum96 Mar 16, 2025
2ec0483
adding content for mian gallery
MahdiMazloum96 Mar 16, 2025
e672258
changing logo
MahdiMazloum96 Mar 16, 2025
422f23d
adding file to agenda
MahdiMazloum96 Mar 16, 2025
dd797e1
refactor table layout and improve padding for better readability
MahdiMazloum96 Apr 5, 2025
f53b113
Update README.md
mostafawkhd Apr 26, 2025
e92fb06
Merge pull request from MahdiMazloum96/master
MahdiMazloum96 Apr 26, 2025
1d733fd
Merge branch 'main' into dev
mostafawkhd May 4, 2025
ef59dea
change theme
MahdiMazloum96 Dec 3, 2025
a25e4a1
Merge pull request #3 from MahdiMazloum96/main
spmzt Dec 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# env files (can opt-in for committing if needed)
.env*

# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts
41 changes: 41 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# IRNOG Website

Welcome to the IRNOG Website project! 🚀 This is a **Next.js** application designed to power the official website for IRNOG, providing information, updates, and resources for the IRNOG community.

## 🌐 About the Project

IRNOG is a community-driven initiative that brings together networking professionals and enthusiasts. This website serves as the central hub for:

- Event announcements and schedules
- Blog posts and technical articles
- Community discussions
- Networking resources and guides

## 🛠 Tech Stack
- **Next.js** - React Framework
- **Tailwind CSS** - Styling
- **TypeScript** - Strongly Typed Codebase
- **Vercel** - Deployment platform


## 🚀 Getting Started
To run the project locally, follow these steps:
1. **Clone the repository**:

2. **Install dependencies**:
```sh
npm install
```
3. **Start the development server**:
```sh
npm run dev
```
4. Open [http://localhost:3000](http://localhost:3000) in your browser to view the site.


## 🙌 Join the Community
Feel free to ask questions, suggest improvements, or just say hi! Connect with us via:
- **GitHub Issues**
- **Discussions Tab**


159 changes: 159 additions & 0 deletions app/buyTicket/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,159 @@
"use client";
import { Card } from "@/components/ui/card";
import { FC } from "react";

import { zodResolver } from "@hookform/resolvers/zod";
import { useForm } from "react-hook-form";
import { z } from "zod";

import { toast } from "react-toastify";
import { Button } from "@/components/ui/button";
import {
Form,
FormControl,
FormField,
FormItem,
FormMessage,
} from "@/components/ui/form";
import { Input } from "@/components/ui/input";

const FormSchema = z.object({
username: z.string().min(2, { message: "نام باید حداقل ۲ کاراکتر باشد" }),
lastName: z
.string()
.min(2, { message: "نام خانوادگی باید حداقل ۲ کاراکتر باشد" }),
phone: z.string().min(10, { message: "شماره تماس معتبر وارد کنید" }),
email: z.string().email({ message: "ایمیل معتبر وارد کنید" }),
company: z.string().optional(),
});

const BuyTicket: FC = () => {
const form = useForm<z.infer<typeof FormSchema>>({
resolver: zodResolver(FormSchema),
defaultValues: {
username: "",
lastName: "",
phone: "",
email: "",
company: "",
},
});

function onSubmit(data: z.infer<typeof FormSchema>) {
toast.success(`اطلاعات ارسال شد `);
}

return (
<div className="h-auto min-h-screen mb-10">
<Card className=" md:w-3/5 lg:w-2/5 p-8 h-auto align-middle md:mx-auto mx-4 mt-16 backdrop-blur-sm bg-gradient-to-r from-orange-400/40 to-orange-600/40 border border-white/20 shadow-[0px_15px_60px_#eb9b3e] rounded-lg">
<h1 className="text-2xl text-white align-middle m-auto mt-5 select-none">
تهیه بلیط
</h1>
<Form {...form}>
<form
onSubmit={form.handleSubmit(onSubmit)}
className="space-y-12 my-5"
>
<div className="flex flex-col md:flex-row md:gap-4 gap-10 w-full">
{/** Username */}
<FormField
control={form.control}
name="username"
render={({ field }) => (
<FormItem className="w-full">
<FormControl>
<Input
placeholder="نام"
{...field}
className="text-right"
/>
</FormControl>
<FormMessage className="text-gray-300 text-right text-md" />
</FormItem>
)}
/>
{/** Last Name */}
<FormField
control={form.control}
name="lastName"
render={({ field }) => (
<FormItem className="w-full">
<FormControl>
<Input
placeholder="نام خانوادگی"
{...field}
className="text-right"
/>
</FormControl>
<FormMessage className="text-gray-300 text-right text-md" />
</FormItem>
)}
/>
</div>
<div className="flex flex-col md:flex-row md:gap-4 gap-10 w-full">
{/** Phone */}
<FormField
control={form.control}
name="phone"
render={({ field }) => (
<FormItem className="w-full">
<FormControl>
<Input
placeholder="شماره تماس"
{...field}
className="text-right"
/>
</FormControl>
<FormMessage className="text-gray-300 text-right text-md" />
</FormItem>
)}
/>
{/** Email */}
<FormField
control={form.control}
name="email"
render={({ field }) => (
<FormItem className="w-full">
<FormControl>
<Input
placeholder="ایمیل"
{...field}
className="text-right"
/>
</FormControl>
<FormMessage className="text-gray-300 text-right text-md" />
</FormItem>
)}
/>
</div>
{/** Company (Optional) */}
<FormField
control={form.control}
name="company"
render={({ field }) => (
<FormItem>
<FormControl>
<Input
placeholder="نام شرکت (اختیاری)"
{...field}
className="text-right"
/>
</FormControl>
<FormMessage className="text-white text-right text-md" />
</FormItem>
)}
/>

<Button
className="w-4/5 bg-secondary text-white text-md align-middle mx-auto cursor-pointer hover:shadow-[0px_2px_3px_#FFFFFF] flex "
type="submit"
>
ارسال
</Button>
</form>
</Form>
</Card>
</div>
);
};
export default BuyTicket;
Loading