├── .gitignore ├── Readme.md ├── authuser ├── __init__.py ├── admin.py ├── apps.py ├── backends.py ├── migrations │ ├── 0001_initial.py │ └── __init__.py ├── models.py ├── serializers.py ├── tests.py ├── urls.py └── views.py ├── manage.py ├── placementcell ├── __init__.py ├── __pycache__ │ ├── __init__.cpython-311.pyc │ ├── settings.cpython-311.pyc │ └── urls.cpython-311.pyc ├── asgi.py ├── settings.py ├── urls.py └── wsgi.py ├── static ├── css │ ├── animate.min.css │ ├── bootstrap.min.css │ ├── font-awesome.min.css │ ├── fontawesome.min.css │ ├── homepage-five.css │ ├── homepage-five.css.map │ ├── homepage-five.scss │ ├── homepage-four.css │ ├── homepage-four.css.map │ ├── homepage-four.scss │ ├── kursor.css │ ├── leaflet-map.css │ ├── meanmenu.min.css │ ├── modal-video.min.css │ ├── nice-select.css │ ├── normalize.css │ ├── owl.carousel.min.css │ ├── owl.theme.default.css │ ├── responsive.css │ ├── sal.css │ ├── slick-lightbox.css │ ├── slick-theme.css │ ├── slick.css │ ├── style.css │ └── swiper.min.css ├── fonts │ ├── fa-brands-400.ttf │ ├── fa-brands-400.woff2 │ ├── fa-duotone-900.html │ ├── fa-duotone-901.html │ ├── fa-light-300.ttf │ ├── fa-light-300.woff2 │ ├── fa-regular-400.ttf │ ├── fa-regular-400.woff2 │ ├── fa-solid-900.ttf │ ├── fa-solid-900.woff2 │ ├── fa-thin-100.ttf │ ├── fa-thin-100.woff2 │ ├── fa-v4compatibility.ttf │ └── fa-v4compatibility.woff2 ├── img │ ├── Logo.svg │ ├── about-img-1.jpg │ ├── about-img-2.jpg │ ├── about-us-btn.png │ ├── about │ │ ├── about-3-1.jpg │ │ ├── about-3.jpg │ │ ├── about-4.jpg │ │ ├── about-two-2.jpg │ │ ├── about-two.jpg │ │ ├── design-team.jpg │ │ ├── developer-team.jpg │ │ ├── marketing-team.jpg │ │ └── reasearch-team.jpg │ ├── animated-icon │ │ ├── funfact.svg │ │ ├── grap-2.png │ │ ├── graph.png │ │ ├── hero-3-before.png │ │ ├── hero-3.png │ │ ├── hero-3.svg │ │ ├── line-3.png │ │ ├── line.png │ │ ├── play.png │ │ ├── quote-four.png │ │ ├── quote-three.svg │ │ ├── quote-two.png │ │ ├── quote.png │ │ ├── section.svg │ │ ├── star-icon.png │ │ └── star.png │ ├── author │ │ ├── author-1.jpg │ │ ├── author-2.jpg │ │ └── author-3.jpg │ ├── banner-img.jpg │ ├── blog │ │ ├── blog-1-2.jpg │ │ ├── blog-1-3.jpg │ │ ├── blog-1.jpg │ │ ├── blog-2-1.jpg │ │ ├── blog-2-2.jpg │ │ ├── blog-2-3.jpg │ │ ├── blog-3-2.jpg │ │ ├── blog-3-3.jpg │ │ ├── blog-3.jpg │ │ ├── blog-4-1.jpg │ │ ├── blog-4-2.jpg │ │ ├── blog-4.jpg │ │ ├── blog-details.jpg │ │ ├── blog-related-1.jpg │ │ ├── blog-related-2.jpg │ │ ├── blog-three-2.jpg │ │ ├── blog-three.jpg │ │ ├── popular-1.jpg │ │ ├── popular-2.jpg │ │ └── popular-3.jpg │ ├── border.svg │ ├── career-details.jpeg │ ├── chart__img.jpg │ ├── clients │ │ ├── author-1.jpg │ │ ├── author-2.jpg │ │ ├── author-3.jpg │ │ ├── sponsor-1.png │ │ ├── sponsor-2.png │ │ ├── sponsor-3.png │ │ ├── sponsor-4.png │ │ └── sponsor-5.png │ ├── counter-bg.jpg │ ├── design-1.jpg │ ├── design-2.jpg │ ├── design-3.jpg │ ├── design-4.jpg │ ├── design-5.jpg │ ├── down-1.png │ ├── down-2.png │ ├── faq.jpg │ ├── help-bg.jpg │ ├── hero-slider │ │ ├── slide-1.jpg │ │ ├── slide-2.jpg │ │ ├── slide-3.jpg │ │ └── slide-4.jpg │ ├── hero │ │ ├── customer-1.jpg │ │ ├── customer-2.jpg │ │ ├── customer-3.jpg │ │ ├── customer-service-cute-guy-grey-suit-with-computer-headset-smiling-showing-good-gesture.jpg │ │ ├── happy-business-couple-working-computer-while-sitting-cafe.jpg │ │ ├── hero-2.jpg │ │ ├── hero-3-graph.png │ │ ├── hero-3.jpg │ │ ├── hero-bg-2.svg │ │ ├── modern-equipped-computer-lab.jpg │ │ └── team.jpg │ ├── home4 │ │ ├── about1.png │ │ ├── about2.png │ │ ├── about3.png │ │ ├── banner1.png │ │ ├── banner2.png │ │ ├── blog1.png │ │ ├── blog2.png │ │ ├── blog3.png │ │ ├── choose.png │ │ ├── date-bg1.png │ │ ├── date-bg2.png │ │ ├── icon1.png │ │ ├── icon2.png │ │ ├── icon3.png │ │ ├── icon4.png │ │ ├── logo-4.svg │ │ ├── portfolio1.jpg │ │ ├── portfolio2.jpg │ │ ├── portfolio3.jpg │ │ ├── portfolio4.jpg │ │ ├── ser-img.png │ │ ├── shape1.png │ │ ├── shape2.png │ │ ├── shape3.png │ │ ├── shape4.png │ │ ├── shape5.png │ │ ├── shape6.png │ │ ├── team1.jpg │ │ ├── team2.jpg │ │ ├── team3.jpg │ │ ├── team4.jpg │ │ ├── testimonials-bg1.png │ │ ├── testimonials-bg2.png │ │ ├── user-bg.png │ │ ├── user1.png │ │ ├── user2.png │ │ ├── user3.png │ │ ├── user4.png │ │ ├── user5.png │ │ ├── user6.png │ │ ├── user7.png │ │ └── user8.png │ ├── icon-1.png │ ├── icon-2.png │ ├── icon-3.png │ ├── icon │ │ ├── all-star.svg │ │ ├── ball.svg │ │ ├── brand.png │ │ ├── brand.svg │ │ ├── bullseye-arrow.svg │ │ ├── calendar.svg │ │ ├── cloud.svg │ │ ├── four-round-start.svg │ │ ├── graph.png │ │ ├── graph.svg │ │ ├── graphic.png │ │ ├── graphic.svg │ │ ├── house-medical-solid.svg │ │ ├── lightbulb-on.svg │ │ ├── map-marker.png │ │ ├── marketing.png │ │ ├── marketing.svg │ │ ├── mastercard-full-svgrepo-com.svg │ │ ├── paypal.svg │ │ ├── play.svg │ │ ├── product.png │ │ ├── product.svg │ │ ├── quote.png │ │ ├── software.png │ │ ├── software.svg │ │ ├── stripe-svgrepo-com.svg │ │ ├── ui.png │ │ ├── ui.svg │ │ ├── uiux.png │ │ ├── uiux.svg │ │ └── visa-4-logo-svgrepo-com.svg │ ├── like.svg │ ├── logo │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ ├── favicon.ico │ │ ├── favicon.png │ │ ├── footer-logo.svg │ │ ├── home-2-header-logo.svg │ │ ├── logo-2.svg │ │ ├── logo-3.svg │ │ ├── logo.svg │ │ ├── placementlogo.png │ │ └── rojgarimitra.png │ ├── product │ │ ├── 01.jpg │ │ ├── 02.jpg │ │ ├── 03.jpg │ │ ├── 04.jpg │ │ ├── 05.jpg │ │ ├── 06.jpg │ │ ├── 07.jpg │ │ ├── 09.jpg │ │ ├── 10.jpg │ │ ├── 11.jpg │ │ ├── 12.jpg │ │ └── 13.jpg │ ├── project │ │ ├── case-1.jpg │ │ ├── case-2.jpg │ │ ├── case-3.jpg │ │ ├── dasboard-design.jpg │ │ ├── e-learning.jpg │ │ ├── eccomerce-mobile.jpg │ │ ├── future-design.jpg │ │ ├── landing-page.jpg │ │ ├── project-4-2.jpg │ │ ├── project-4-3.jpg │ │ ├── project-4-4.jpg │ │ ├── project-4-5.jpg │ │ ├── project-4.jpg │ │ ├── project-details-1.jpg │ │ ├── project-details-2.jpg │ │ ├── sass-landing.jpg │ │ ├── tool-icon.png │ │ ├── travel-ui.jpg │ │ └── ui-design.jpg │ ├── read-more-shape.png │ ├── read-more.svg │ ├── service │ │ ├── service-3-1.jpg │ │ ├── service-3-2.jpg │ │ ├── service-3-3.jpg │ │ ├── service-3-4.jpg │ │ ├── service-details.jpg │ │ ├── service-vector-hover.png │ │ └── service-vector.png │ ├── services-1.png │ ├── services-2.png │ ├── shape-1.png │ ├── star.svg │ ├── team │ │ ├── team-1.png │ │ ├── team-10.png │ │ ├── team-11.png │ │ ├── team-12.png │ │ ├── team-3.png │ │ ├── team-4.png │ │ ├── team-5.png │ │ ├── team-6.png │ │ ├── team-7.png │ │ ├── team-8.png │ │ ├── team-9.png │ │ ├── team-details.png │ │ └── team-member-4.png │ ├── testimonial │ │ ├── author-1.png │ │ ├── author-2.png │ │ ├── author-3.png │ │ ├── author-4.png │ │ ├── author-5.png │ │ ├── testimonial-three-2.jpg │ │ ├── testimonial-three-3.jpg │ │ ├── testimonial-three-4.jpg │ │ ├── testimonial-three.jpg │ │ └── testimonial-two.jpg │ ├── thanks.jpg │ ├── title-shape.png │ ├── user-1.png │ ├── user-2.png │ ├── user-3.png │ └── why__choose.jpg ├── js │ ├── Jquery-3.7.0.js │ ├── ajax-contact.js │ ├── appear.min.js │ ├── bootstrap.min.js │ ├── imagesloaded.pkgd.min.js │ ├── jquery-modal-video.min.js │ ├── jquery.meanmenu.min.js │ ├── jquery.nice-select.min.js │ ├── kursor.min.js │ ├── leaflet-custom-map.js │ ├── leaflet-map.js │ ├── magicmouse.js │ ├── main.js │ ├── mixitup.min.js │ ├── modernizr-3.12.0.min.js │ ├── owl.carousel.min.js │ ├── popper.min.js │ ├── sal.js │ ├── slick-lightbox.min.js │ ├── slick.min.js │ ├── swiper.min.js │ └── wow.min.js ├── scss │ ├── _about.scss │ ├── _animation.scss │ ├── _back-totop.scss │ ├── _blog.scss │ ├── _breadcrumb.scss │ ├── _career.scss │ ├── _cart.scss │ ├── _checkout.scss │ ├── _common.scss │ ├── _contact.scss │ ├── _elements.scss │ ├── _error.scss │ ├── _faq.scss │ ├── _footer.scss │ ├── _header.scss │ ├── _hero-slider.scss │ ├── _hero.scss │ ├── _homepage-three.scss │ ├── _homepage-two.scss │ ├── _homepage.scss │ ├── _information.scss │ ├── _login-signup.scss │ ├── _misc.scss │ ├── _mixin.scss │ ├── _offcanvase.scss │ ├── _our-work.scss │ ├── _page.scss │ ├── _pagination.scss │ ├── _preloader.scss │ ├── _pricing.scss │ ├── _product.scss │ ├── _project.scss │ ├── _service.scss │ ├── _sidebar.scss │ ├── _spacing.scss │ ├── _team.scss │ ├── _testimonial.scss │ └── main.scss └── webfonts │ ├── fa-brands-400.ttf │ ├── fa-brands-400.woff2 │ ├── fa-regular-400.ttf │ ├── fa-regular-400.woff2 │ ├── fa-solid-900.ttf │ ├── fa-solid-900.woff2 │ ├── fa-v4compatibility.ttf │ └── fa-v4compatibility.woff2 ├── templates ├── .gitattributes ├── .gitignore ├── about.html ├── admin │ ├── change_password.html │ └── dashboard.html ├── application_list.html ├── atsreport.html ├── boiler_plate.html ├── career.html ├── contact.html ├── dashboard.html ├── email │ ├── application_confirmation_student.html │ └── application_notification_organization.html ├── faq.html ├── index.html ├── job_detail.html ├── login.html └── package.json ├── utils ├── __init__.py ├── admin.py ├── apps.py ├── constants.py ├── feedback_on_resume.py ├── migrations │ └── __init__.py ├── models.py ├── renderer_utils.py ├── tests.py └── views.py └── vacancy ├── __init__.py ├── admin.py ├── apps.py ├── management └── commands │ └── load_data.py ├── migrations ├── 0001_initial.py ├── 0002_application.py ├── 0003_alter_jobvacancy_description.py ├── 0004_alter_jobvacancy_description.py ├── 0005_alter_application_cover_letter_and_more.py ├── 0006_alter_application_cover_letter.py └── __init__.py ├── models.py ├── pagination.py ├── permissions.py ├── resume_parser.py ├── serializers.py ├── tests.py ├── urls.py └── views.py /.gitignore: -------------------------------------------------------------------------------- 1 | # Django # 2 | *.log 3 | *.pot 4 | *.pyc 5 | __pycache__ 6 | db.sqlite3 7 | media 8 | 9 | # Backup files # 10 | *.bak 11 | 12 | # If you are using PyCharm # 13 | # User-specific stuff 14 | .idea/**/workspace.xml 15 | .idea/**/tasks.xml 16 | .idea/**/usage.statistics.xml 17 | .idea/**/dictionaries 18 | .idea/**/shelf 19 | 20 | # AWS User-specific 21 | .idea/**/aws.xml 22 | 23 | # Generated files 24 | .idea/**/contentModel.xml 25 | 26 | # Sensitive or high-churn files 27 | .idea/**/dataSources/ 28 | .idea/**/dataSources.ids 29 | .idea/**/dataSources.local.xml 30 | .idea/**/sqlDataSources.xml 31 | .idea/**/dynamic.xml 32 | .idea/**/uiDesigner.xml 33 | .idea/**/dbnavigator.xml 34 | 35 | # Gradle 36 | .idea/**/gradle.xml 37 | .idea/**/libraries 38 | 39 | # File-based project format 40 | *.iws 41 | 42 | # IntelliJ 43 | out/ 44 | 45 | # JIRA plugin 46 | atlassian-ide-plugin.xml 47 | 48 | # Python # 49 | *.py[cod] 50 | *$py.class 51 | 52 | # Distribution / packaging 53 | .Python build/ 54 | develop-eggs/ 55 | dist/ 56 | downloads/ 57 | eggs/ 58 | .eggs/ 59 | lib/ 60 | lib64/ 61 | parts/ 62 | sdist/ 63 | var/ 64 | wheels/ 65 | *.whl 66 | *.egg-info/ 67 | .installed.cfg 68 | *.egg 69 | *.manifest 70 | *.spec 71 | 72 | # Installer logs 73 | pip-log.txt 74 | pip-delete-this-directory.txt 75 | 76 | # Unit test / coverage reports 77 | htmlcov/ 78 | .tox/ 79 | .coverage 80 | .coverage.* 81 | .cache 82 | .pytest_cache/ 83 | nosetests.xml 84 | coverage.xml 85 | *.cover 86 | .hypothesis/ 87 | 88 | # Jupyter Notebook 89 | .ipynb_checkpoints 90 | 91 | # pyenv 92 | .python-version 93 | 94 | # celery 95 | celerybeat-schedule.* 96 | 97 | # SageMath parsed files 98 | *.sage.py 99 | 100 | # Environments 101 | .env 102 | .venv 103 | env/ 104 | venv/ 105 | designs/ 106 | ENV/ 107 | env.bak/ 108 | venv.bak/ 109 | chapter4.txt 110 | chapter5.txt 111 | chapter6.txt 112 | poster.txt 113 | references.txt 114 | 115 | # mkdocs documentation 116 | /site 117 | 118 | # mypy 119 | .mypy_cache/ 120 | 121 | # Sublime Text # 122 | *.tmlanguage.cache 123 | *.tmPreferences.cache 124 | *.stTheme.cache 125 | *.sublime-workspace 126 | *.sublime-project 127 | 128 | # sftp configuration file 129 | sftp-config.json 130 | 131 | # Package control specific files Package 132 | Control.last-run 133 | Control.ca-list 134 | Control.ca-bundle 135 | Control.system-ca-bundle 136 | GitHub.sublime-settings 137 | 138 | # Visual Studio Code # 139 | .vscode/* 140 | !.vscode/settings.json 141 | !.vscode/tasks.json 142 | !.vscode/launch.json 143 | !.vscode/extensions.json 144 | .history -------------------------------------------------------------------------------- /authuser/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/authuser/__init__.py -------------------------------------------------------------------------------- /authuser/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | from django.contrib.auth.admin import UserAdmin 3 | from .models import User 4 | from unfold.admin import ModelAdmin 5 | class CustomUserAdmin(UserAdmin,ModelAdmin): 6 | list_display = ('email', 'user_type', 'name', 'is_staff', 'is_active') 7 | list_filter = ('user_type', 'is_staff', 'is_active') 8 | fieldsets = ( 9 | (None, {'fields': ('email', 'password')}), 10 | ('Personal Info', {'fields': ('user_type', 'name', 'description', 'website', 'roll_number', 'department')}), 11 | ('Permissions', {'fields': ('is_active', 'is_staff', 'is_superuser', 'groups', 'user_permissions')}), 12 | ('Important Dates', {'fields': ('last_login',)}), # Removed 'created_at' 13 | ) 14 | add_fieldsets = ( 15 | (None, { 16 | 'classes': ('wide',), 17 | 'fields': ('email', 'password1', 'password2', 'user_type', 'name'), 18 | }), 19 | ) 20 | search_fields = ('email', 'name') 21 | ordering = ('email',) 22 | 23 | admin.site.register(User, CustomUserAdmin) -------------------------------------------------------------------------------- /authuser/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class AuthuserConfig(AppConfig): 5 | default_auto_field = 'django.db.models.BigAutoField' 6 | name = 'authuser' 7 | -------------------------------------------------------------------------------- /authuser/backends.py: -------------------------------------------------------------------------------- 1 | from django.contrib.auth import get_user_model 2 | from django.contrib.auth.backends import ModelBackend 3 | 4 | User = get_user_model() 5 | 6 | class EmailBackend(ModelBackend): 7 | """ 8 | Custom authentication backend to allow users to log in with their email address. 9 | """ 10 | def authenticate(self, request, email=None, password=None, **kwargs): 11 | try: 12 | user = User.objects.get(email=email) 13 | if user.check_password(password): 14 | return user 15 | except User.DoesNotExist: 16 | return None 17 | 18 | def get_user(self, user_id): 19 | try: 20 | return User.objects.get(pk=user_id) 21 | except User.DoesNotExist: 22 | return None -------------------------------------------------------------------------------- /authuser/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 5.1.4 on 2025-02-02 10:57 2 | 3 | from django.db import migrations, models 4 | 5 | 6 | class Migration(migrations.Migration): 7 | 8 | initial = True 9 | 10 | dependencies = [ 11 | ('auth', '0012_alter_user_first_name_max_length'), 12 | ] 13 | 14 | operations = [ 15 | migrations.CreateModel( 16 | name='User', 17 | fields=[ 18 | ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 19 | ('password', models.CharField(max_length=128, verbose_name='password')), 20 | ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), 21 | ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')), 22 | ('email', models.EmailField(max_length=254, unique=True)), 23 | ('user_type', models.CharField(choices=[('UNIVERSITY', 'University'), ('ORGANIZATION', 'Organization'), ('STUDENT', 'Student')], max_length=20)), 24 | ('name', models.CharField(blank=True, max_length=255, null=True)), 25 | ('description', models.TextField(blank=True, null=True)), 26 | ('website', models.URLField(blank=True, null=True)), 27 | ('roll_number', models.CharField(blank=True, max_length=20, null=True)), 28 | ('department', models.CharField(blank=True, max_length=100, null=True)), 29 | ('is_active', models.BooleanField(default=True)), 30 | ('is_staff', models.BooleanField(default=False)), 31 | ('created_at', models.DateTimeField(auto_now_add=True)), 32 | ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='custom_user_set', related_query_name='user', to='auth.group', verbose_name='groups')), 33 | ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='custom_user_set', related_query_name='user', to='auth.permission', verbose_name='user permissions')), 34 | ], 35 | options={ 36 | 'abstract': False, 37 | }, 38 | ), 39 | ] 40 | -------------------------------------------------------------------------------- /authuser/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/authuser/migrations/__init__.py -------------------------------------------------------------------------------- /authuser/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | from django.contrib.auth.models import AbstractBaseUser, BaseUserManager, PermissionsMixin 3 | 4 | class UserManager(BaseUserManager): 5 | def create_user(self, email, password=None, **extra_fields): 6 | if not email: 7 | raise ValueError('The Email field must be set') 8 | email = self.normalize_email(email) 9 | user = self.model(email=email, **extra_fields) 10 | user.set_password(password) 11 | user.save(using=self._db) 12 | return user 13 | 14 | def create_superuser(self, email, password=None, **extra_fields): 15 | extra_fields.setdefault('is_staff', True) 16 | extra_fields.setdefault('is_superuser', True) 17 | return self.create_user(email, password, **extra_fields) 18 | 19 | class User(AbstractBaseUser, PermissionsMixin): 20 | USER_TYPE_CHOICES = [ 21 | ('UNIVERSITY', 'University'), 22 | ('ORGANIZATION', 'Organization'), 23 | ('STUDENT', 'Student'), 24 | ] 25 | 26 | email = models.EmailField(unique=True) 27 | user_type = models.CharField(max_length=20, choices=USER_TYPE_CHOICES) 28 | name = models.CharField(max_length=255, blank=True, null=True) 29 | description = models.TextField(blank=True, null=True) # For Organization/University 30 | website = models.URLField(blank=True, null=True) # For Organization/University 31 | roll_number = models.CharField(max_length=20, blank=True, null=True) # For Student 32 | department = models.CharField(max_length=100, blank=True, null=True) # For Student 33 | is_active = models.BooleanField(default=True) 34 | is_staff = models.BooleanField(default=False) # Staff status (for admin access) 35 | created_at = models.DateTimeField(auto_now_add=True) 36 | 37 | # Add custom related_name to avoid clashes with auth.User 38 | groups = models.ManyToManyField( 39 | 'auth.Group', 40 | verbose_name='groups', 41 | blank=True, 42 | help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', 43 | related_name='custom_user_set', # Custom related_name 44 | related_query_name='user', 45 | ) 46 | user_permissions = models.ManyToManyField( 47 | 'auth.Permission', 48 | verbose_name='user permissions', 49 | blank=True, 50 | help_text='Specific permissions for this user.', 51 | related_name='custom_user_set', # Custom related_name 52 | related_query_name='user', 53 | ) 54 | 55 | objects = UserManager() 56 | 57 | USERNAME_FIELD = 'email' 58 | REQUIRED_FIELDS = ['name'] 59 | 60 | def __str__(self): 61 | return f"{self.email} ({self.user_type})" -------------------------------------------------------------------------------- /authuser/serializers.py: -------------------------------------------------------------------------------- 1 | from rest_framework import serializers 2 | from django.contrib.auth import get_user_model 3 | from rest_framework_simplejwt.tokens import RefreshToken 4 | 5 | User = get_user_model() 6 | 7 | class UserLoginSerializer(serializers.Serializer): 8 | email = serializers.EmailField() 9 | password = serializers.CharField(write_only=True) 10 | 11 | def validate(self, attrs): 12 | email = attrs.get('email') 13 | password = attrs.get('password') 14 | 15 | # Authenticate the user 16 | user = User.objects.filter(email=email).first() 17 | if user and user.check_password(password): 18 | # Generate JWT tokens 19 | refresh = RefreshToken.for_user(user) 20 | return { 21 | 'user': user, # Include the user object 22 | 'email': user.email, 23 | 'name': user.name, 24 | 'user_type': user.user_type, 25 | 'access_token': str(refresh.access_token), 26 | 'refresh_token': str(refresh), 27 | } 28 | raise serializers.ValidationError('Invalid email or password.') -------------------------------------------------------------------------------- /authuser/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /authuser/urls.py: -------------------------------------------------------------------------------- 1 | from django.urls import path 2 | from .views import UserLoginAPIView 3 | from rest_framework_simplejwt.views import TokenRefreshView 4 | from rest_framework_simplejwt.views import TokenObtainPairView 5 | from .views import GoogleAuthAPIView, google_auth_callback 6 | from . import views 7 | 8 | urlpatterns = [ 9 | path('login/', UserLoginAPIView.as_view(), name='user-login'), 10 | path('api/token/refresh/', TokenRefreshView.as_view(), name='token-refresh'), 11 | path('api/token/', TokenObtainPairView.as_view(), name='token-obtain-pair'), 12 | path("google/", GoogleAuthAPIView.as_view(), name="google_auth"), 13 | # path("oauth_test/", google_auth_test_view, name="google-auth-test"), # URL for template 14 | path("google/callback/", google_auth_callback, name="google_callback"), 15 | path('admin/change-password//', views.change_user_password, name='change_user_password'), 16 | ] -------------------------------------------------------------------------------- /manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | """Django's command-line utility for administrative tasks.""" 3 | import os 4 | import sys 5 | 6 | 7 | def main(): 8 | """Run administrative tasks.""" 9 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'placementcell.settings') 10 | try: 11 | from django.core.management import execute_from_command_line 12 | except ImportError as exc: 13 | raise ImportError( 14 | "Couldn't import Django. Are you sure it's installed and " 15 | "available on your PYTHONPATH environment variable? Did you " 16 | "forget to activate a virtual environment?" 17 | ) from exc 18 | execute_from_command_line(sys.argv) 19 | 20 | 21 | if __name__ == '__main__': 22 | main() 23 | -------------------------------------------------------------------------------- /placementcell/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/placementcell/__init__.py -------------------------------------------------------------------------------- /placementcell/__pycache__/__init__.cpython-311.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/placementcell/__pycache__/__init__.cpython-311.pyc -------------------------------------------------------------------------------- /placementcell/__pycache__/settings.cpython-311.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/placementcell/__pycache__/settings.cpython-311.pyc -------------------------------------------------------------------------------- /placementcell/__pycache__/urls.cpython-311.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/placementcell/__pycache__/urls.cpython-311.pyc -------------------------------------------------------------------------------- /placementcell/asgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | ASGI config for placementcell project. 3 | 4 | It exposes the ASGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/5.1/howto/deployment/asgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.asgi import get_asgi_application 13 | 14 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'placementcell.settings') 15 | 16 | application = get_asgi_application() 17 | -------------------------------------------------------------------------------- /placementcell/urls.py: -------------------------------------------------------------------------------- 1 | """ 2 | URL configuration for placementcell project. 3 | 4 | The `urlpatterns` list routes URLs to views. For more information please see: 5 | https://docs.djangoproject.com/en/5.1/topics/http/urls/ 6 | Examples: 7 | Function views 8 | 1. Add an import: from my_app import views 9 | 2. Add a URL to urlpatterns: path('', views.home, name='home') 10 | Class-based views 11 | 1. Add an import: from other_app.views import Home 12 | 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') 13 | Including another URLconf 14 | 1. Import the include() function: from django.urls import include, path 15 | 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) 16 | """ 17 | from django.contrib import admin 18 | from django.urls import path, include 19 | from django.conf import settings 20 | from django.conf.urls.static import static 21 | 22 | # change the title from django administration to corp gems 23 | admin.site.site_header = "Placement Administration" 24 | # also change the login administration to login into corpgems admin 25 | admin.site.site_title = "Placement Admin" 26 | 27 | BASE_URL = 'api/v1/' 28 | 29 | urlpatterns = [ 30 | path('admin/', admin.site.urls), 31 | 32 | # API endpoints 33 | path('api/auth/', include('authuser.urls')), 34 | path('api/v1/vacancy/', include('vacancy.urls')), 35 | path("ckeditor5/", include('django_ckeditor_5.urls')), 36 | 37 | # Template views 38 | ] 39 | 40 | if settings.DEBUG: 41 | urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) 42 | urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 43 | -------------------------------------------------------------------------------- /placementcell/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for placementcell project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/5.1/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'placementcell.settings') 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /static/css/meanmenu.min.css: -------------------------------------------------------------------------------- 1 | /*! ####################################################################### 2 | 3 | MeanMenu 2.0.7 4 | -------- 5 | 6 | To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/) 7 | 8 | ####################################################################### */a.meanmenu-reveal{display:none}.mean-container .mean-bar{float:left;width:100%;position:relative;background:#0c1923;padding:4px 0;min-height:42px;z-index:999999}.mean-container a.meanmenu-reveal{width:22px;height:22px;padding:13px 13px 11px;position:absolute;top:0;right:0;cursor:pointer;color:#fff;text-decoration:none;font-size:16px;text-indent:-9999em;line-height:22px;font-size:1px;display:block;font-family:Arial,Helvetica,sans-serif;font-weight:700}.mean-container a.meanmenu-reveal span{display:block;background:#fff;height:3px;margin-top:3px}.mean-container .mean-nav{float:left;width:100%;background:#0c1923;margin-top:44px}.mean-container .mean-nav ul{padding:0;margin:0;width:100%;list-style-type:none}.mean-container .mean-nav ul li{position:relative;float:left;width:100%}.mean-container .mean-nav ul li a{display:block;float:left;width:90%;padding:1em 5%;margin:0;text-align:left;color:#fff;border-top:1px solid #383838;border-top:1px solid rgba(255,255,255,.5);text-decoration:none;text-transform:uppercase}.mean-container .mean-nav ul li li a{width:80%;padding:1em 10%;border-top:1px solid #f1f1f1;border-top:1px solid rgba(255,255,255,.25);opacity:.75;filter:alpha(opacity=75);text-shadow:none!important;visibility:visible}.mean-container .mean-nav ul li.mean-last a{border-bottom:0;margin-bottom:0}.mean-container .mean-nav ul li li li a{width:70%;padding:1em 15%}.mean-container .mean-nav ul li li li li a{width:60%;padding:1em 20%}.mean-container .mean-nav ul li li li li li a{width:50%;padding:1em 25%}.mean-container .mean-nav ul li a:hover{background:#252525;background:rgba(255,255,255,.1)}.mean-container .mean-nav ul li a.mean-expand{margin-top:1px;width:26px;height:32px;padding:12px!important;text-align:center;position:absolute;right:0;top:0;z-index:2;font-weight:700;background:rgba(255,255,255,.1);border:0!important;border-left:1px solid rgba(255,255,255,.4)!important;border-bottom:1px solid rgba(255,255,255,.2)!important}.mean-container .mean-nav ul li a.mean-expand:hover{background:rgba(0,0,0,.9)}.mean-container .mean-push{float:left;width:100%;padding:0;margin:0;clear:both}.mean-nav .wrapper{width:100%;padding:0;margin:0}.mean-container .mean-bar,.mean-container .mean-bar *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.mean-remove{display:none!important} 9 | -------------------------------------------------------------------------------- /static/css/modal-video.min.css: -------------------------------------------------------------------------------- 1 | @keyframes modal-video{from{opacity:0}to{opacity:1}}@keyframes modal-video-inner{from{transform:translate(0, 100px)}to{transform:translate(0, 0)}}.modal-video{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.5);z-index:1000000;cursor:pointer;opacity:1;animation-timing-function:ease-out;animation-duration:.3s;animation-name:modal-video;-webkit-transition:opacity .3s ease-out;-moz-transition:opacity .3s ease-out;-ms-transition:opacity .3s ease-out;-o-transition:opacity .3s ease-out;transition:opacity .3s ease-out}.modal-video-close{opacity:0}.modal-video-close .modal-video-movie-wrap{-webkit-transform:translate(0, 100px);-moz-transform:translate(0, 100px);-ms-transform:translate(0, 100px);-o-transform:translate(0, 100px);transform:translate(0, 100px)}.modal-video-body{max-width:960px;width:100%;height:100%;margin:0 auto;padding:0 10px;display:flex;justify-content:center;box-sizing:border-box}.modal-video-inner{display:flex;justify-content:center;align-items:center;width:100%;height:100%}@media (orientation: landscape){.modal-video-inner{padding:10px 60px;box-sizing:border-box}}.modal-video-movie-wrap{width:100%;height:0;position:relative;padding-bottom:56.25%;background-color:#333;animation-timing-function:ease-out;animation-duration:.3s;animation-name:modal-video-inner;-webkit-transform:translate(0, 0);-moz-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-ms-transition:-ms-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal-video-movie-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%}.modal-video-close-btn{position:absolute;z-index:2;top:-45px;right:0;display:inline-block;width:35px;height:35px;overflow:hidden;border:none;background:transparent}@media (orientation: landscape){.modal-video-close-btn{top:0;right:-45px}}.modal-video-close-btn:before{transform:rotate(45deg)}.modal-video-close-btn:after{transform:rotate(-45deg)}.modal-video-close-btn:before,.modal-video-close-btn:after{content:'';position:absolute;height:2px;width:100%;top:50%;left:0;margin-top:-1px;background:#fff;border-radius:5px;margin-top:-6px} 2 | -------------------------------------------------------------------------------- /static/css/owl.carousel.min.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Owl Carousel v2.3.4 3 | * Copyright 2013-2018 David Deutsch 4 | * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE 5 | */ 6 | .owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%} -------------------------------------------------------------------------------- /static/css/owl.theme.default.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Owl Carousel v2.3.4 3 | * Copyright 2013-2018 David Deutsch 4 | * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE 5 | */ 6 | /* 7 | * Default theme - Owl Carousel CSS File 8 | */ 9 | .owl-theme .owl-nav { 10 | margin-top: 10px; 11 | text-align: center; 12 | -webkit-tap-highlight-color: transparent; } 13 | .owl-theme .owl-nav [class*='owl-'] { 14 | color: #FFF; 15 | font-size: 14px; 16 | margin: 5px; 17 | padding: 4px 7px; 18 | background: #D6D6D6; 19 | display: inline-block; 20 | cursor: pointer; 21 | border-radius: 3px; } 22 | .owl-theme .owl-nav [class*='owl-']:hover { 23 | background: #869791; 24 | color: #FFF; 25 | text-decoration: none; } 26 | .owl-theme .owl-nav .disabled { 27 | opacity: 0.5; 28 | cursor: default; } 29 | 30 | .owl-theme .owl-nav.disabled + .owl-dots { 31 | margin-top: 10px; } 32 | 33 | .owl-theme .owl-dots { 34 | text-align: center; 35 | -webkit-tap-highlight-color: transparent; } 36 | .owl-theme .owl-dots .owl-dot { 37 | display: inline-block; 38 | zoom: 1; 39 | *display: inline; } 40 | .owl-theme .owl-dots .owl-dot span { 41 | width: 10px; 42 | height: 10px; 43 | margin: 5px 7px; 44 | background: #D6D6D6; 45 | display: block; 46 | -webkit-backface-visibility: visible; 47 | transition: opacity 200ms ease; 48 | border-radius: 30px; } 49 | .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span { 50 | background: #869791; } 51 | -------------------------------------------------------------------------------- /static/css/responsive.css: -------------------------------------------------------------------------------- 1 | 2 | /*XX-Large devices (larger desktops, 1400px and up)*/ 3 | 4 | @media (min-width: 1400px) { 5 | 6 | 7 | } 8 | 9 | 10 | /* Xtar Large Device: 1200px. */ 11 | @media (min-width: 1200px) and (max-width: 1500px){ 12 | 13 | } 14 | /* Medium Layout: 1280px. */ 15 | @media only screen and (min-width: 992px) and (max-width: 1200px) { 16 | 17 | } 18 | /* Tablet & mobile Layout: 768px. */ 19 | @media only screen and (max-width: 991px) { 20 | 21 | } 22 | 23 | /* Tablet Layout: 768px. */ 24 | @media only screen and (min-width: 768px) and (max-width: 991px) { 25 | 26 | } 27 | /* Mobile Layout: 320px. */ 28 | @media only screen and (max-width: 767px) { 29 | 30 | 31 | } 32 | /* extra small device*/ 33 | @media only screen and (min-width: 320px) and (max-width: 487px){ 34 | } 35 | /* Wide Mobile Layout: 480px. */ 36 | @media only screen and (min-width: 480px) and (max-width: 767px) { 37 | 38 | } -------------------------------------------------------------------------------- /static/css/slick-lightbox.css: -------------------------------------------------------------------------------- 1 | .slick-lightbox{position:fixed;top:0;left:0;z-index:9999;width:100%;height:100%;background:black;-webkit-transition:opacity 0.5s ease;transition:opacity 0.5s ease}.slick-lightbox .slick-loading .slick-list{background-color:transparent}.slick-lightbox .slick-prev{left:15px}.slick-lightbox .slick-next{right:15px}.slick-lightbox-hide{opacity:0}.slick-lightbox-hide.slick-lightbox-ie{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0)}.slick-lightbox-hide-init{position:absolute;top:-9999px;opacity:0}.slick-lightbox-hide-init.slick-lightbox-ie{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0)}.slick-lightbox-inner{position:fixed;top:0;left:0;width:100%;height:100%}.slick-lightbox-slick-item{text-align:center;overflow:hidden}.slick-lightbox-slick-item:before{content:'';display:inline-block;height:100%;vertical-align:middle;margin-right:-0.25em}.slick-caption-bottom .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption{position:absolute;bottom:0;left:0;text-align:center;width:100%;margin-bottom:20px}.slick-caption-dynamic .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption{display:block;text-align:center}.slick-lightbox-slick-item-inner{display:inline-block;vertical-align:middle;max-width:90%;max-height:90%}.slick-lightbox-slick-img{margin:0 auto;display:block;max-width:90%;max-height:90%}.slick-lightbox-slick-caption{margin:10px 0 0;color:white}.slick-lightbox-close{position:absolute;top:15px;right:15px;display:block;height:20px;width:20px;line-height:0;font-size:0;cursor:pointer;background:transparent;color:transparent;padding:0;border:none}.slick-lightbox-close:focus{outline:none}.slick-lightbox-close:before{font-family:"slick";font-size:20px;line-height:1;color:white;opacity:0.85;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:'×'} 2 | -------------------------------------------------------------------------------- /static/css/slick-theme.css: -------------------------------------------------------------------------------- 1 | @charset 'UTF-8'; 2 | /* Slider */ 3 | .slick-loading .slick-list 4 | { 5 | background: #fff url('./ajax-loader.gif') center center no-repeat; 6 | } 7 | 8 | /* Icons */ 9 | @font-face 10 | { 11 | font-family: 'slick'; 12 | font-weight: normal; 13 | font-style: normal; 14 | 15 | src: url('./fonts/slick.eot'); 16 | src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg'); 17 | } 18 | /* Arrows */ 19 | .slick-prev, 20 | .slick-next 21 | { 22 | font-size: 0; 23 | line-height: 0; 24 | 25 | position: absolute; 26 | top: 50%; 27 | 28 | display: block; 29 | 30 | width: 20px; 31 | height: 20px; 32 | padding: 0; 33 | -webkit-transform: translate(0, -50%); 34 | -ms-transform: translate(0, -50%); 35 | transform: translate(0, -50%); 36 | 37 | cursor: pointer; 38 | 39 | color: transparent; 40 | border: none; 41 | outline: none; 42 | background: transparent; 43 | } 44 | .slick-prev:hover, 45 | .slick-prev:focus, 46 | .slick-next:hover, 47 | .slick-next:focus 48 | { 49 | color: transparent; 50 | outline: none; 51 | background: transparent; 52 | } 53 | .slick-prev:hover:before, 54 | .slick-prev:focus:before, 55 | .slick-next:hover:before, 56 | .slick-next:focus:before 57 | { 58 | opacity: 1; 59 | } 60 | .slick-prev.slick-disabled:before, 61 | .slick-next.slick-disabled:before 62 | { 63 | opacity: .25; 64 | } 65 | 66 | .slick-prev:before, 67 | .slick-next:before 68 | { 69 | font-family: 'slick'; 70 | font-size: 20px; 71 | line-height: 1; 72 | 73 | opacity: .75; 74 | color: white; 75 | 76 | -webkit-font-smoothing: antialiased; 77 | -moz-osx-font-smoothing: grayscale; 78 | } 79 | 80 | .slick-prev 81 | { 82 | left: -25px; 83 | } 84 | [dir='rtl'] .slick-prev 85 | { 86 | right: -25px; 87 | left: auto; 88 | } 89 | .slick-prev:before 90 | { 91 | content: '←'; 92 | } 93 | [dir='rtl'] .slick-prev:before 94 | { 95 | content: '→'; 96 | } 97 | 98 | .slick-next 99 | { 100 | right: -25px; 101 | } 102 | [dir='rtl'] .slick-next 103 | { 104 | right: auto; 105 | left: -25px; 106 | } 107 | .slick-next:before 108 | { 109 | content: '→'; 110 | } 111 | [dir='rtl'] .slick-next:before 112 | { 113 | content: '←'; 114 | } 115 | 116 | /* Dots */ 117 | .slick-dotted.slick-slider 118 | { 119 | margin-bottom: 30px; 120 | } 121 | 122 | .slick-dots 123 | { 124 | position: absolute; 125 | bottom: -25px; 126 | 127 | display: block; 128 | 129 | width: 100%; 130 | padding: 0; 131 | margin: 0; 132 | 133 | list-style: none; 134 | 135 | text-align: center; 136 | } 137 | .slick-dots li 138 | { 139 | position: relative; 140 | 141 | display: inline-block; 142 | 143 | width: 20px; 144 | height: 20px; 145 | margin: 0 5px; 146 | padding: 0; 147 | 148 | cursor: pointer; 149 | } 150 | .slick-dots li button 151 | { 152 | font-size: 0; 153 | line-height: 0; 154 | 155 | display: block; 156 | 157 | width: 20px; 158 | height: 20px; 159 | padding: 5px; 160 | 161 | cursor: pointer; 162 | 163 | color: transparent; 164 | border: 0; 165 | outline: none; 166 | background: transparent; 167 | } 168 | .slick-dots li button:hover, 169 | .slick-dots li button:focus 170 | { 171 | outline: none; 172 | } 173 | .slick-dots li button:hover:before, 174 | .slick-dots li button:focus:before 175 | { 176 | opacity: 1; 177 | } 178 | .slick-dots li button:before 179 | { 180 | font-family: 'slick'; 181 | font-size: 6px; 182 | line-height: 20px; 183 | 184 | position: absolute; 185 | top: 0; 186 | left: 0; 187 | 188 | width: 20px; 189 | height: 20px; 190 | 191 | content: '•'; 192 | text-align: center; 193 | 194 | opacity: .25; 195 | color: black; 196 | 197 | -webkit-font-smoothing: antialiased; 198 | -moz-osx-font-smoothing: grayscale; 199 | } 200 | .slick-dots li.slick-active button:before 201 | { 202 | opacity: .75; 203 | color: black; 204 | } 205 | -------------------------------------------------------------------------------- /static/css/slick.css: -------------------------------------------------------------------------------- 1 | /* Slider */ 2 | .slick-slider 3 | { 4 | position: relative; 5 | 6 | display: block; 7 | box-sizing: border-box; 8 | 9 | -webkit-user-select: none; 10 | -moz-user-select: none; 11 | -ms-user-select: none; 12 | user-select: none; 13 | 14 | -webkit-touch-callout: none; 15 | -khtml-user-select: none; 16 | -ms-touch-action: pan-y; 17 | touch-action: pan-y; 18 | -webkit-tap-highlight-color: transparent; 19 | } 20 | 21 | .slick-list 22 | { 23 | position: relative; 24 | 25 | display: block; 26 | overflow: hidden; 27 | 28 | margin: 0; 29 | padding: 0; 30 | } 31 | .slick-list:focus 32 | { 33 | outline: none; 34 | } 35 | .slick-list.dragging 36 | { 37 | cursor: pointer; 38 | cursor: hand; 39 | } 40 | 41 | .slick-slider .slick-track, 42 | .slick-slider .slick-list 43 | { 44 | -webkit-transform: translate3d(0, 0, 0); 45 | -moz-transform: translate3d(0, 0, 0); 46 | -ms-transform: translate3d(0, 0, 0); 47 | -o-transform: translate3d(0, 0, 0); 48 | transform: translate3d(0, 0, 0); 49 | } 50 | 51 | .slick-track 52 | { 53 | position: relative; 54 | top: 0; 55 | left: 0; 56 | 57 | display: block; 58 | margin-left: auto; 59 | margin-right: auto; 60 | } 61 | .slick-track:before, 62 | .slick-track:after 63 | { 64 | display: table; 65 | 66 | content: ''; 67 | } 68 | .slick-track:after 69 | { 70 | clear: both; 71 | } 72 | .slick-loading .slick-track 73 | { 74 | visibility: hidden; 75 | } 76 | 77 | .slick-slide 78 | { 79 | display: none; 80 | float: left; 81 | 82 | height: 100%; 83 | min-height: 1px; 84 | } 85 | [dir='rtl'] .slick-slide 86 | { 87 | float: right; 88 | } 89 | .slick-slide img 90 | { 91 | display: block; 92 | } 93 | .slick-slide.slick-loading img 94 | { 95 | display: none; 96 | } 97 | .slick-slide.dragging img 98 | { 99 | pointer-events: none; 100 | } 101 | .slick-initialized .slick-slide 102 | { 103 | display: block; 104 | } 105 | .slick-loading .slick-slide 106 | { 107 | visibility: hidden; 108 | } 109 | .slick-vertical .slick-slide 110 | { 111 | display: block; 112 | 113 | height: auto; 114 | 115 | border: 1px solid transparent; 116 | } 117 | .slick-arrow.slick-hidden { 118 | display: none; 119 | } 120 | -------------------------------------------------------------------------------- /static/fonts/fa-brands-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-brands-400.ttf -------------------------------------------------------------------------------- /static/fonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /static/fonts/fa-light-300.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-light-300.ttf -------------------------------------------------------------------------------- /static/fonts/fa-light-300.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-light-300.woff2 -------------------------------------------------------------------------------- /static/fonts/fa-regular-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-regular-400.ttf -------------------------------------------------------------------------------- /static/fonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /static/fonts/fa-solid-900.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-solid-900.ttf -------------------------------------------------------------------------------- /static/fonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /static/fonts/fa-thin-100.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-thin-100.ttf -------------------------------------------------------------------------------- /static/fonts/fa-thin-100.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-thin-100.woff2 -------------------------------------------------------------------------------- /static/fonts/fa-v4compatibility.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-v4compatibility.ttf -------------------------------------------------------------------------------- /static/fonts/fa-v4compatibility.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/fonts/fa-v4compatibility.woff2 -------------------------------------------------------------------------------- /static/img/about-img-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about-img-1.jpg -------------------------------------------------------------------------------- /static/img/about-img-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about-img-2.jpg -------------------------------------------------------------------------------- /static/img/about-us-btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about-us-btn.png -------------------------------------------------------------------------------- /static/img/about/about-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/about-3-1.jpg -------------------------------------------------------------------------------- /static/img/about/about-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/about-3.jpg -------------------------------------------------------------------------------- /static/img/about/about-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/about-4.jpg -------------------------------------------------------------------------------- /static/img/about/about-two-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/about-two-2.jpg -------------------------------------------------------------------------------- /static/img/about/about-two.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/about-two.jpg -------------------------------------------------------------------------------- /static/img/about/design-team.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/design-team.jpg -------------------------------------------------------------------------------- /static/img/about/developer-team.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/developer-team.jpg -------------------------------------------------------------------------------- /static/img/about/marketing-team.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/marketing-team.jpg -------------------------------------------------------------------------------- /static/img/about/reasearch-team.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/about/reasearch-team.jpg -------------------------------------------------------------------------------- /static/img/animated-icon/funfact.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/img/animated-icon/grap-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/grap-2.png -------------------------------------------------------------------------------- /static/img/animated-icon/graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/graph.png -------------------------------------------------------------------------------- /static/img/animated-icon/hero-3-before.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/hero-3-before.png -------------------------------------------------------------------------------- /static/img/animated-icon/hero-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/hero-3.png -------------------------------------------------------------------------------- /static/img/animated-icon/hero-3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /static/img/animated-icon/line-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/line-3.png -------------------------------------------------------------------------------- /static/img/animated-icon/line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/line.png -------------------------------------------------------------------------------- /static/img/animated-icon/play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/play.png -------------------------------------------------------------------------------- /static/img/animated-icon/quote-four.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/quote-four.png -------------------------------------------------------------------------------- /static/img/animated-icon/quote-three.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/img/animated-icon/quote-two.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/quote-two.png -------------------------------------------------------------------------------- /static/img/animated-icon/quote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/quote.png -------------------------------------------------------------------------------- /static/img/animated-icon/section.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /static/img/animated-icon/star-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/star-icon.png -------------------------------------------------------------------------------- /static/img/animated-icon/star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/animated-icon/star.png -------------------------------------------------------------------------------- /static/img/author/author-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/author/author-1.jpg -------------------------------------------------------------------------------- /static/img/author/author-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/author/author-2.jpg -------------------------------------------------------------------------------- /static/img/author/author-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/author/author-3.jpg -------------------------------------------------------------------------------- /static/img/banner-img.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/banner-img.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-1-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-1-2.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-1-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-1-3.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-1.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-2-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-2-1.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-2-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-2-2.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-2-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-2-3.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-3-2.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-3-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-3-3.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-3.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-4-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-4-1.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-4-2.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-4.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-details.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-details.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-related-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-related-1.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-related-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-related-2.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-three-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-three-2.jpg -------------------------------------------------------------------------------- /static/img/blog/blog-three.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/blog-three.jpg -------------------------------------------------------------------------------- /static/img/blog/popular-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/popular-1.jpg -------------------------------------------------------------------------------- /static/img/blog/popular-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/popular-2.jpg -------------------------------------------------------------------------------- /static/img/blog/popular-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/blog/popular-3.jpg -------------------------------------------------------------------------------- /static/img/border.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /static/img/career-details.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/career-details.jpeg -------------------------------------------------------------------------------- /static/img/chart__img.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/chart__img.jpg -------------------------------------------------------------------------------- /static/img/clients/author-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/clients/author-1.jpg -------------------------------------------------------------------------------- /static/img/clients/author-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/clients/author-2.jpg -------------------------------------------------------------------------------- /static/img/clients/author-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/clients/author-3.jpg -------------------------------------------------------------------------------- /static/img/clients/sponsor-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/clients/sponsor-1.png -------------------------------------------------------------------------------- /static/img/clients/sponsor-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/clients/sponsor-2.png -------------------------------------------------------------------------------- /static/img/clients/sponsor-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/clients/sponsor-3.png -------------------------------------------------------------------------------- /static/img/clients/sponsor-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/clients/sponsor-4.png -------------------------------------------------------------------------------- /static/img/clients/sponsor-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/clients/sponsor-5.png -------------------------------------------------------------------------------- /static/img/counter-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/counter-bg.jpg -------------------------------------------------------------------------------- /static/img/design-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/design-1.jpg -------------------------------------------------------------------------------- /static/img/design-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/design-2.jpg -------------------------------------------------------------------------------- /static/img/design-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/design-3.jpg -------------------------------------------------------------------------------- /static/img/design-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/design-4.jpg -------------------------------------------------------------------------------- /static/img/design-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/design-5.jpg -------------------------------------------------------------------------------- /static/img/down-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/down-1.png -------------------------------------------------------------------------------- /static/img/down-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/down-2.png -------------------------------------------------------------------------------- /static/img/faq.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/faq.jpg -------------------------------------------------------------------------------- /static/img/help-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/help-bg.jpg -------------------------------------------------------------------------------- /static/img/hero-slider/slide-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero-slider/slide-1.jpg -------------------------------------------------------------------------------- /static/img/hero-slider/slide-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero-slider/slide-2.jpg -------------------------------------------------------------------------------- /static/img/hero-slider/slide-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero-slider/slide-3.jpg -------------------------------------------------------------------------------- /static/img/hero-slider/slide-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero-slider/slide-4.jpg -------------------------------------------------------------------------------- /static/img/hero/customer-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/customer-1.jpg -------------------------------------------------------------------------------- /static/img/hero/customer-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/customer-2.jpg -------------------------------------------------------------------------------- /static/img/hero/customer-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/customer-3.jpg -------------------------------------------------------------------------------- /static/img/hero/customer-service-cute-guy-grey-suit-with-computer-headset-smiling-showing-good-gesture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/customer-service-cute-guy-grey-suit-with-computer-headset-smiling-showing-good-gesture.jpg -------------------------------------------------------------------------------- /static/img/hero/happy-business-couple-working-computer-while-sitting-cafe.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/happy-business-couple-working-computer-while-sitting-cafe.jpg -------------------------------------------------------------------------------- /static/img/hero/hero-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/hero-2.jpg -------------------------------------------------------------------------------- /static/img/hero/hero-3-graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/hero-3-graph.png -------------------------------------------------------------------------------- /static/img/hero/hero-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/hero-3.jpg -------------------------------------------------------------------------------- /static/img/hero/hero-bg-2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /static/img/hero/modern-equipped-computer-lab.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/modern-equipped-computer-lab.jpg -------------------------------------------------------------------------------- /static/img/hero/team.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/hero/team.jpg -------------------------------------------------------------------------------- /static/img/home4/about1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/about1.png -------------------------------------------------------------------------------- /static/img/home4/about2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/about2.png -------------------------------------------------------------------------------- /static/img/home4/about3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/about3.png -------------------------------------------------------------------------------- /static/img/home4/banner1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/banner1.png -------------------------------------------------------------------------------- /static/img/home4/banner2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/banner2.png -------------------------------------------------------------------------------- /static/img/home4/blog1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/blog1.png -------------------------------------------------------------------------------- /static/img/home4/blog2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/blog2.png -------------------------------------------------------------------------------- /static/img/home4/blog3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/blog3.png -------------------------------------------------------------------------------- /static/img/home4/choose.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/choose.png -------------------------------------------------------------------------------- /static/img/home4/date-bg1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/date-bg1.png -------------------------------------------------------------------------------- /static/img/home4/date-bg2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/date-bg2.png -------------------------------------------------------------------------------- /static/img/home4/icon1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/icon1.png -------------------------------------------------------------------------------- /static/img/home4/icon2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/icon2.png -------------------------------------------------------------------------------- /static/img/home4/icon3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/icon3.png -------------------------------------------------------------------------------- /static/img/home4/icon4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/icon4.png -------------------------------------------------------------------------------- /static/img/home4/portfolio1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/portfolio1.jpg -------------------------------------------------------------------------------- /static/img/home4/portfolio2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/portfolio2.jpg -------------------------------------------------------------------------------- /static/img/home4/portfolio3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/portfolio3.jpg -------------------------------------------------------------------------------- /static/img/home4/portfolio4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/portfolio4.jpg -------------------------------------------------------------------------------- /static/img/home4/ser-img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/ser-img.png -------------------------------------------------------------------------------- /static/img/home4/shape1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/shape1.png -------------------------------------------------------------------------------- /static/img/home4/shape2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/shape2.png -------------------------------------------------------------------------------- /static/img/home4/shape3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/shape3.png -------------------------------------------------------------------------------- /static/img/home4/shape4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/shape4.png -------------------------------------------------------------------------------- /static/img/home4/shape5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/shape5.png -------------------------------------------------------------------------------- /static/img/home4/shape6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/shape6.png -------------------------------------------------------------------------------- /static/img/home4/team1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/team1.jpg -------------------------------------------------------------------------------- /static/img/home4/team2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/team2.jpg -------------------------------------------------------------------------------- /static/img/home4/team3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/team3.jpg -------------------------------------------------------------------------------- /static/img/home4/team4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/team4.jpg -------------------------------------------------------------------------------- /static/img/home4/testimonials-bg1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/testimonials-bg1.png -------------------------------------------------------------------------------- /static/img/home4/testimonials-bg2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/testimonials-bg2.png -------------------------------------------------------------------------------- /static/img/home4/user-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user-bg.png -------------------------------------------------------------------------------- /static/img/home4/user1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user1.png -------------------------------------------------------------------------------- /static/img/home4/user2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user2.png -------------------------------------------------------------------------------- /static/img/home4/user3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user3.png -------------------------------------------------------------------------------- /static/img/home4/user4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user4.png -------------------------------------------------------------------------------- /static/img/home4/user5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user5.png -------------------------------------------------------------------------------- /static/img/home4/user6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user6.png -------------------------------------------------------------------------------- /static/img/home4/user7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user7.png -------------------------------------------------------------------------------- /static/img/home4/user8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/home4/user8.png -------------------------------------------------------------------------------- /static/img/icon-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon-1.png -------------------------------------------------------------------------------- /static/img/icon-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon-2.png -------------------------------------------------------------------------------- /static/img/icon-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon-3.png -------------------------------------------------------------------------------- /static/img/icon/ball.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /static/img/icon/brand.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/brand.png -------------------------------------------------------------------------------- /static/img/icon/brand.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/img/icon/bullseye-arrow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /static/img/icon/calendar.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /static/img/icon/four-round-start.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /static/img/icon/graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/graph.png -------------------------------------------------------------------------------- /static/img/icon/graph.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /static/img/icon/graphic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/graphic.png -------------------------------------------------------------------------------- /static/img/icon/graphic.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/img/icon/house-medical-solid.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static/img/icon/lightbulb-on.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /static/img/icon/map-marker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/map-marker.png -------------------------------------------------------------------------------- /static/img/icon/marketing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/marketing.png -------------------------------------------------------------------------------- /static/img/icon/marketing.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/img/icon/play.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /static/img/icon/product.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/product.png -------------------------------------------------------------------------------- /static/img/icon/product.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/img/icon/quote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/quote.png -------------------------------------------------------------------------------- /static/img/icon/software.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/software.png -------------------------------------------------------------------------------- /static/img/icon/software.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/img/icon/stripe-svgrepo-com.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /static/img/icon/ui.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/ui.png -------------------------------------------------------------------------------- /static/img/icon/ui.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /static/img/icon/uiux.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/icon/uiux.png -------------------------------------------------------------------------------- /static/img/icon/uiux.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/img/icon/visa-4-logo-svgrepo-com.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /static/img/like.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/img/logo/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/logo/favicon-16x16.png -------------------------------------------------------------------------------- /static/img/logo/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/logo/favicon-32x32.png -------------------------------------------------------------------------------- /static/img/logo/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/logo/favicon.ico -------------------------------------------------------------------------------- /static/img/logo/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/logo/favicon.png -------------------------------------------------------------------------------- /static/img/logo/placementlogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/logo/placementlogo.png -------------------------------------------------------------------------------- /static/img/logo/rojgarimitra.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/logo/rojgarimitra.png -------------------------------------------------------------------------------- /static/img/product/01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/01.jpg -------------------------------------------------------------------------------- /static/img/product/02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/02.jpg -------------------------------------------------------------------------------- /static/img/product/03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/03.jpg -------------------------------------------------------------------------------- /static/img/product/04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/04.jpg -------------------------------------------------------------------------------- /static/img/product/05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/05.jpg -------------------------------------------------------------------------------- /static/img/product/06.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/06.jpg -------------------------------------------------------------------------------- /static/img/product/07.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/07.jpg -------------------------------------------------------------------------------- /static/img/product/09.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/09.jpg -------------------------------------------------------------------------------- /static/img/product/10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/10.jpg -------------------------------------------------------------------------------- /static/img/product/11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/11.jpg -------------------------------------------------------------------------------- /static/img/product/12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/12.jpg -------------------------------------------------------------------------------- /static/img/product/13.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/product/13.jpg -------------------------------------------------------------------------------- /static/img/project/case-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/case-1.jpg -------------------------------------------------------------------------------- /static/img/project/case-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/case-2.jpg -------------------------------------------------------------------------------- /static/img/project/case-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/case-3.jpg -------------------------------------------------------------------------------- /static/img/project/dasboard-design.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/dasboard-design.jpg -------------------------------------------------------------------------------- /static/img/project/e-learning.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/e-learning.jpg -------------------------------------------------------------------------------- /static/img/project/eccomerce-mobile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/eccomerce-mobile.jpg -------------------------------------------------------------------------------- /static/img/project/future-design.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/future-design.jpg -------------------------------------------------------------------------------- /static/img/project/landing-page.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/landing-page.jpg -------------------------------------------------------------------------------- /static/img/project/project-4-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/project-4-2.jpg -------------------------------------------------------------------------------- /static/img/project/project-4-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/project-4-3.jpg -------------------------------------------------------------------------------- /static/img/project/project-4-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/project-4-4.jpg -------------------------------------------------------------------------------- /static/img/project/project-4-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/project-4-5.jpg -------------------------------------------------------------------------------- /static/img/project/project-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/project-4.jpg -------------------------------------------------------------------------------- /static/img/project/project-details-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/project-details-1.jpg -------------------------------------------------------------------------------- /static/img/project/project-details-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/project-details-2.jpg -------------------------------------------------------------------------------- /static/img/project/sass-landing.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/sass-landing.jpg -------------------------------------------------------------------------------- /static/img/project/tool-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/tool-icon.png -------------------------------------------------------------------------------- /static/img/project/travel-ui.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/travel-ui.jpg -------------------------------------------------------------------------------- /static/img/project/ui-design.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/project/ui-design.jpg -------------------------------------------------------------------------------- /static/img/read-more-shape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/read-more-shape.png -------------------------------------------------------------------------------- /static/img/service/service-3-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/service/service-3-1.jpg -------------------------------------------------------------------------------- /static/img/service/service-3-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/service/service-3-2.jpg -------------------------------------------------------------------------------- /static/img/service/service-3-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/service/service-3-3.jpg -------------------------------------------------------------------------------- /static/img/service/service-3-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/service/service-3-4.jpg -------------------------------------------------------------------------------- /static/img/service/service-details.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/service/service-details.jpg -------------------------------------------------------------------------------- /static/img/service/service-vector-hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/service/service-vector-hover.png -------------------------------------------------------------------------------- /static/img/service/service-vector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/service/service-vector.png -------------------------------------------------------------------------------- /static/img/services-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/services-1.png -------------------------------------------------------------------------------- /static/img/services-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/services-2.png -------------------------------------------------------------------------------- /static/img/shape-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/shape-1.png -------------------------------------------------------------------------------- /static/img/team/team-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-1.png -------------------------------------------------------------------------------- /static/img/team/team-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-10.png -------------------------------------------------------------------------------- /static/img/team/team-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-11.png -------------------------------------------------------------------------------- /static/img/team/team-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-12.png -------------------------------------------------------------------------------- /static/img/team/team-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-3.png -------------------------------------------------------------------------------- /static/img/team/team-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-4.png -------------------------------------------------------------------------------- /static/img/team/team-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-5.png -------------------------------------------------------------------------------- /static/img/team/team-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-6.png -------------------------------------------------------------------------------- /static/img/team/team-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-7.png -------------------------------------------------------------------------------- /static/img/team/team-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-8.png -------------------------------------------------------------------------------- /static/img/team/team-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-9.png -------------------------------------------------------------------------------- /static/img/team/team-details.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-details.png -------------------------------------------------------------------------------- /static/img/team/team-member-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/team/team-member-4.png -------------------------------------------------------------------------------- /static/img/testimonial/author-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/author-1.png -------------------------------------------------------------------------------- /static/img/testimonial/author-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/author-2.png -------------------------------------------------------------------------------- /static/img/testimonial/author-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/author-3.png -------------------------------------------------------------------------------- /static/img/testimonial/author-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/author-4.png -------------------------------------------------------------------------------- /static/img/testimonial/author-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/author-5.png -------------------------------------------------------------------------------- /static/img/testimonial/testimonial-three-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/testimonial-three-2.jpg -------------------------------------------------------------------------------- /static/img/testimonial/testimonial-three-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/testimonial-three-3.jpg -------------------------------------------------------------------------------- /static/img/testimonial/testimonial-three-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/testimonial-three-4.jpg -------------------------------------------------------------------------------- /static/img/testimonial/testimonial-three.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/testimonial-three.jpg -------------------------------------------------------------------------------- /static/img/testimonial/testimonial-two.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/testimonial/testimonial-two.jpg -------------------------------------------------------------------------------- /static/img/thanks.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/thanks.jpg -------------------------------------------------------------------------------- /static/img/title-shape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/title-shape.png -------------------------------------------------------------------------------- /static/img/user-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/user-1.png -------------------------------------------------------------------------------- /static/img/user-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/user-2.png -------------------------------------------------------------------------------- /static/img/user-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/user-3.png -------------------------------------------------------------------------------- /static/img/why__choose.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/img/why__choose.jpg -------------------------------------------------------------------------------- /static/js/ajax-contact.js: -------------------------------------------------------------------------------- 1 | (function ($) { 2 | 'use strict'; 3 | 4 | var form = $('.contact__php'), 5 | message = $('.contact__msg'), 6 | form_data; 7 | 8 | // Success function 9 | function done_func(response) { 10 | message.fadeIn().removeClass('alert-danger').addClass('alert-success'); 11 | message.text(response); 12 | setTimeout(function () { 13 | message.fadeOut(); 14 | }, 2000); 15 | form.find('input:not([type="submit"]), textarea').val(''); 16 | } 17 | 18 | // fail function 19 | function fail_func(data) { 20 | message.fadeIn().removeClass('alert-success').addClass('alert-success'); 21 | message.text(data.responseText); 22 | setTimeout(function () { 23 | message.fadeOut(); 24 | }, 2000); 25 | } 26 | 27 | form.submit(function (e) { 28 | e.preventDefault(); 29 | form_data = $(this).serialize(); 30 | $.ajax({ 31 | type: 'POST', 32 | url: form.attr('action'), 33 | data: form_data 34 | }) 35 | .done(done_func) 36 | .fail(fail_func); 37 | }); 38 | 39 | })(jQuery); -------------------------------------------------------------------------------- /static/js/appear.min.js: -------------------------------------------------------------------------------- 1 | /* appear.min.js 1.2.1 */ 2 | !function(e){"use strict";function t(){var t=e.scrollY||e.pageYOffset;null!=i&&(r.velocity=t-i,r.delta=r.velocity>=0?r.velocity:-1*r.velocity),i=t,o&&clearTimeout(o),o=setTimeout(function(){i=null},30)}function n(t,n){var i=t.getBoundingClientRect();return i.top+i.height>=0&&i.left+i.width>=0&&i.bottom-i.height<=(e.innerHeight||document.documentElement.clientHeight)+n&&i.right-i.width<=(e.innerWidth||document.documentElement.clientWidth)+n}var i=null,o=0,r={};return addEventListener("scroll",t,!1),function(t){return function(t){function i(e,t){return function(){var n=this,i=arguments;clearTimeout(s),s=setTimeout(function(){e.apply(n,i)},t)}}function o(){r.delta",meanRevealPosition:"right",meanRevealPositionDistance:"0",meanRevealColour:"",meanScreenWidth:"480",meanNavPush:"",meanShowChildren:!0,meanExpandableChildren:!0,meanExpand:"+",meanContract:"-",meanRemoveAttrs:!1,onePage:!1,meanDisplay:"block",removeElements:""};e=$.extend(n,e);var a=window.innerWidth||document.documentElement.clientWidth;return this.each(function(){var n=e.meanMenuTarget,t=e.meanMenuContainer,r=e.meanMenuClose,i=e.meanMenuCloseSize,s=e.meanMenuOpen,u=e.meanRevealPosition,m=e.meanRevealPositionDistance,l=e.meanRevealColour,o=e.meanScreenWidth,c=e.meanNavPush,v=".meanmenu-reveal",h=e.meanShowChildren,d=e.meanExpandableChildren,y=e.meanExpand,j=e.meanContract,Q=e.meanRemoveAttrs,f=e.onePage,g=e.meanDisplay,p=e.removeElements,C=!1;(navigator.userAgent.match(/iPhone/i)||navigator.userAgent.match(/iPod/i)||navigator.userAgent.match(/iPad/i)||navigator.userAgent.match(/Android/i)||navigator.userAgent.match(/Blackberry/i)||navigator.userAgent.match(/Windows Phone/i))&&(C=!0),(navigator.userAgent.match(/MSIE 8/i)||navigator.userAgent.match(/MSIE 7/i))&&jQuery("html").css("overflow-y","scroll");var w="",x=function(){if("center"===u){var e=window.innerWidth||document.documentElement.clientWidth,n=e/2-22+"px";w="left:"+n+";right:auto;",C?jQuery(".meanmenu-reveal").animate({left:n}):jQuery(".meanmenu-reveal").css("left",n)}},A=!1,E=!1;"right"===u&&(w="right:"+m+";left:auto;"),"left"===u&&(w="left:"+m+";right:auto;"),x();var M="",P=function(){M.html(jQuery(M).is(".meanmenu-reveal.meanclose")?r:s)},W=function(){jQuery(".mean-bar,.mean-push").remove(),jQuery(t).removeClass("mean-container"),jQuery(n).css("display",g),A=!1,E=!1,jQuery(p).removeClass("mean-remove")},b=function(){var e="background:"+l+";color:"+l+";"+w;if(o>=a){jQuery(p).addClass("mean-remove"),E=!0,jQuery(t).addClass("mean-container"),jQuery(".mean-container").prepend('');var r=jQuery(n).html();jQuery(".mean-nav").html(r),Q&&jQuery("nav.mean-nav ul, nav.mean-nav ul *").each(function(){jQuery(this).is(".mean-remove")?jQuery(this).attr("class","mean-remove"):jQuery(this).removeAttr("class"),jQuery(this).removeAttr("id")}),jQuery(n).before('
'),jQuery(".mean-push").css("margin-top",c),jQuery(n).hide(),jQuery(".meanmenu-reveal").show(),jQuery(v).html(s),M=jQuery(v),jQuery(".mean-nav ul").hide(),h?d?(jQuery(".mean-nav ul ul").each(function(){jQuery(this).children().length&&jQuery(this,"li:first").parent().append(''+y+"")}),jQuery(".mean-expand").on("click",function(e){e.preventDefault(),jQuery(this).hasClass("mean-clicked")?(jQuery(this).text(y),jQuery(this).prev("ul").slideUp(300,function(){})):(jQuery(this).text(j),jQuery(this).prev("ul").slideDown(300,function(){})),jQuery(this).toggleClass("mean-clicked")})):jQuery(".mean-nav ul ul").show():jQuery(".mean-nav ul ul").hide(),jQuery(".mean-nav ul li").last().addClass("mean-last"),M.removeClass("meanclose"),jQuery(M).click(function(e){e.preventDefault(),A===!1?(M.css("text-align","center"),M.css("text-indent","0"),M.css("font-size",i),jQuery(".mean-nav ul:first").slideDown(),A=!0):(jQuery(".mean-nav ul:first").slideUp(),A=!1),M.toggleClass("meanclose"),P(),jQuery(p).addClass("mean-remove")}),f&&jQuery(".mean-nav ul > li > a:first-child").on("click",function(){jQuery(".mean-nav ul:first").slideUp(),A=!1,jQuery(M).toggleClass("meanclose").html(s)})}else W()};C||jQuery(window).resize(function(){a=window.innerWidth||document.documentElement.clientWidth,a>o,W(),o>=a?(b(),x()):W()}),jQuery(window).resize(function(){a=window.innerWidth||document.documentElement.clientWidth,C?(x(),o>=a?E===!1&&b():W()):(W(),o>=a&&(b(),x()))}),b()})}}(jQuery); -------------------------------------------------------------------------------- /static/js/jquery.nice-select.min.js: -------------------------------------------------------------------------------- 1 | /* jQuery Nice Select - v1.0 2 | https://github.com/hernansartorio/jquery-nice-select 3 | Made by Hernán Sartorio */ 4 | !function(e){e.fn.niceSelect=function(t){function s(t){t.after(e("
").addClass("nice-select").addClass(t.attr("class")||"").addClass(t.attr("disabled")?"disabled":"").attr("tabindex",t.attr("disabled")?null:"0").html('
    '));var s=t.next(),n=t.find("option"),i=t.find("option:selected");s.find(".current").html(i.data("display")||i.text()),n.each(function(t){var n=e(this),i=n.data("display");s.find("ul").append(e("
  • ").attr("data-value",n.val()).attr("data-display",i||null).addClass("option"+(n.is(":selected")?" selected":"")+(n.is(":disabled")?" disabled":"")).html(n.text()))})}if("string"==typeof t)return"update"==t?this.each(function(){var t=e(this),n=e(this).next(".nice-select"),i=n.hasClass("open");n.length&&(n.remove(),s(t),i&&t.next().trigger("click"))}):"destroy"==t?(this.each(function(){var t=e(this),s=e(this).next(".nice-select");s.length&&(s.remove(),t.css("display",""))}),0==e(".nice-select").length&&e(document).off(".nice_select")):console.log('Method "'+t+'" does not exist.'),this;this.hide(),this.each(function(){var t=e(this);t.next().hasClass("nice-select")||s(t)}),e(document).off(".nice_select"),e(document).on("click.nice_select",".nice-select",function(t){var s=e(this);e(".nice-select").not(s).removeClass("open"),s.toggleClass("open"),s.hasClass("open")?(s.find(".option"),s.find(".focus").removeClass("focus"),s.find(".selected").addClass("focus")):s.focus()}),e(document).on("click.nice_select",function(t){0===e(t.target).closest(".nice-select").length&&e(".nice-select").removeClass("open").find(".option")}),e(document).on("click.nice_select",".nice-select .option:not(.disabled)",function(t){var s=e(this),n=s.closest(".nice-select");n.find(".selected").removeClass("selected"),s.addClass("selected");var i=s.data("display")||s.text();n.find(".current").text(i),n.prev("select").val(s.data("value")).trigger("change")}),e(document).on("keydown.nice_select",".nice-select",function(t){var s=e(this),n=e(s.find(".focus")||s.find(".list .option.selected"));if(32==t.keyCode||13==t.keyCode)return s.hasClass("open")?n.trigger("click"):s.trigger("click"),!1;if(40==t.keyCode){if(s.hasClass("open")){var i=n.nextAll(".option:not(.disabled)").first();i.length>0&&(s.find(".focus").removeClass("focus"),i.addClass("focus"))}else s.trigger("click");return!1}if(38==t.keyCode){if(s.hasClass("open")){var l=n.prevAll(".option:not(.disabled)").first();l.length>0&&(s.find(".focus").removeClass("focus"),l.addClass("focus"))}else s.trigger("click");return!1}if(27==t.keyCode)s.hasClass("open")&&s.trigger("click");else if(9==t.keyCode&&s.hasClass("open"))return!1});var n=document.createElement("a").style;return n.cssText="pointer-events:auto","auto"!==n.pointerEvents&&e("html").addClass("no-csspointerevents"),this}}(jQuery); -------------------------------------------------------------------------------- /static/js/leaflet-custom-map.js: -------------------------------------------------------------------------------- 1 | /*========== leaflet map=======*/ 2 | var map = L.map('map', { 3 | scrollWheelZoom: false 4 | }).setView([23.8959, 89.1348], 15); 5 | L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', { 6 | attribution: '© OpenStreetMap contributors' 7 | }).addTo(map); 8 | L.marker([23.8959, 89.1348], {icon: customMarker}).addTo(map).bindPopup('This is your.
    Company Location.').openPopup(); 9 | var customMarker = L.icon({ 10 | iconUrl: './../img/icon/map-marker.png', 11 | iconSize: [58, 95], 12 | iconAnchor: [29, 94], 13 | popupAnchor: [17, -34], 14 | }); -------------------------------------------------------------------------------- /static/js/popper.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/js/popper.min.js -------------------------------------------------------------------------------- /static/js/sal.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.sal=t():e.sal=t()}(this,(function(){return(()=>{"use strict";var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},t={};function n(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function r(e){for(var t=1;tj});var a="Sal was not initialised! Probably it is used in SSR.",s="Your browser does not support IntersectionObserver!\nGet a polyfill from here:\nhttps://github.com/w3c/IntersectionObserver/tree/master/polyfill",i={root:null,rootMargin:"0% 50%",threshold:.5,animateClassName:"sal-animate",disabledClassName:"sal-disabled",enterEventName:"sal:in",exitEventName:"sal:out",selector:"[data-sal]",once:!0,disabled:!1},l=[],c=null,u=function(e){e&&e!==i&&(i=r(r({},i),e))},d=function(e){e.classList.remove(i.animateClassName)},f=function(e,t){var n=new CustomEvent(e,{bubbles:!0,detail:t});t.target.dispatchEvent(n)},b=function(){document.body.classList.add(i.disabledClassName)},p=function(){c.disconnect(),c=null},m=function(){return i.disabled||"function"==typeof i.disabled&&i.disabled()},v=function(e,t){e.forEach((function(e){var n=e.target,r=void 0!==n.dataset.salRepeat,o=void 0!==n.dataset.salOnce,a=r||!(o||i.once);e.intersectionRatio>=i.threshold?(function(e){e.target.classList.add(i.animateClassName),f(i.enterEventName,e)}(e),a||t.unobserve(n)):a&&function(e){d(e.target),f(i.exitEventName,e)}(e)}))},y=function(){var e=[].filter.call(document.querySelectorAll(i.selector),(function(e){return!function(e){return e.classList.contains(i.animateClassName)}(e,i.animateClassName)}));return e.forEach((function(e){return c.observe(e)})),e},O=function(){b(),p()},h=function(){document.body.classList.remove(i.disabledClassName),c=new IntersectionObserver(v,{root:i.root,rootMargin:i.rootMargin,threshold:i.threshold}),l=y()},g=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};p(),Array.from(document.querySelectorAll(i.selector)).forEach(d),u(e),h()},w=function(){var e=y();l.push(e)};const j=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i;if(u(e),"undefined"==typeof window)return console.warn(a),{elements:l,disable:O,enable:h,reset:g,update:w};if(!window.IntersectionObserver)throw b(),Error(s);return m()?b():h(),{elements:l,disable:O,enable:h,reset:g,update:w}};return t.default})()})); 2 | //# sourceMappingURL=sal.js.map -------------------------------------------------------------------------------- /static/scss/_back-totop.scss: -------------------------------------------------------------------------------- 1 | /*========= back to top ======== */ 2 | .scroll { 3 | cursor: pointer; 4 | display: block; 5 | border-radius: 3.125rem; 6 | box-shadow: inset 0 0 0 2px var(--bc); 7 | z-index: 999999; 8 | opacity: 0; 9 | visibility: hidden; 10 | transform: translateY(15px); 11 | position: fixed; 12 | right: 1.526rem; 13 | bottom: 2.8175rem; 14 | height: 3.125rem; 15 | width: 3.125rem; 16 | @include animation(transition, all .3s ease-in); 17 | 18 | &:after { 19 | position: absolute; 20 | font-family: "Font Awesome 6 Pro"; 21 | content: "\f062"; 22 | text-align: center; 23 | line-height: 3.125rem; 24 | font-weight: 700; 25 | font-size: 1.125rem; 26 | color: #fff; 27 | left: 0; 28 | top: 0; 29 | height: 3.125rem; 30 | width: 3.125rem; 31 | cursor: pointer; 32 | display: block; 33 | z-index: 1; 34 | @include animation(transition, all .3s ease-in); 35 | } 36 | 37 | & svg path { 38 | fill: none; 39 | } 40 | 41 | &__circle { 42 | & path { 43 | stroke: var(--btn-bg); 44 | stroke-width: 4px; 45 | box-sizing: border-box; 46 | @include animation(transition, all .3s ease-in); 47 | } 48 | } 49 | 50 | &.active-scroll { 51 | opacity: 1; 52 | visibility: visible; 53 | transform: translateY(0); 54 | z-index: 9999; 55 | background: var(--body-bg); 56 | } 57 | } 58 | 59 | .style-two{ 60 | & .scroll{ 61 | &__circle { 62 | & path { 63 | stroke: var(--style-two-color); 64 | 65 | } 66 | } 67 | } 68 | } 69 | .style-three{ 70 | & .scroll{ 71 | &__circle { 72 | & path { 73 | stroke: #D1099F; 74 | } 75 | } 76 | } 77 | } -------------------------------------------------------------------------------- /static/scss/_breadcrumb.scss: -------------------------------------------------------------------------------- 1 | /*======== breadcrumb css ======== */ 2 | .breadcrumb { 3 | background: var(--body-bg); 4 | margin-bottom: 0; 5 | 6 | &__vector { 7 | position: relative; 8 | 9 | & img:nth-child(1) { 10 | position: absolute; 11 | right: 20%; 12 | top: -3.75rem; 13 | @include animation(animation, top 5s infinite alternate); 14 | 15 | @include responsive($sm) { 16 | display: none; 17 | } 18 | 19 | @include responsive($md) { 20 | right: 25%; 21 | } 22 | } 23 | 24 | & img:nth-child(2) { 25 | position: absolute; 26 | left: 30%; 27 | @include animation(animation, roundAnim 10s linear infinite); 28 | 29 | @include responsive($md) { 30 | top: -3.75rem; 31 | left: 45%; 32 | } 33 | 34 | @include responsive($xs) { 35 | top: 0; 36 | position: absolute; 37 | left: 70%; 38 | } 39 | } 40 | } 41 | 42 | &__wrapper { 43 | display: grid; 44 | grid-template-columns: 30% auto; 45 | justify-content: space-between; 46 | align-items: center; 47 | 48 | @include responsive($md) { 49 | grid-template-columns: 60% auto; 50 | } 51 | 52 | @include responsive($xs) { 53 | grid-template-columns: 100%; 54 | grid-gap: 1.25rem; 55 | } 56 | 57 | &--text { 58 | & .title { 59 | font-size: 1.25rem; 60 | font-weight: 600; 61 | font-family: var(--inter); 62 | text-transform: capitalize; 63 | color: #fff; 64 | margin-bottom: .9375rem; 65 | 66 | @include responsive($xs) { 67 | margin: 0; 68 | } 69 | } 70 | 71 | & p { 72 | margin-bottom: 0; 73 | 74 | @include responsive($xs) { 75 | display: none; 76 | } 77 | } 78 | } 79 | 80 | &--link { 81 | & ul { 82 | display: flex; 83 | list-style: none; 84 | padding: 0; 85 | margin: 0; 86 | 87 | & li+li:before { 88 | content: '-' !important; 89 | background: var(--Linear-01); 90 | -webkit-background-clip: text; 91 | -webkit-text-fill-color: transparent; 92 | background-clip: text; 93 | 94 | } 95 | 96 | & li.active { 97 | background: var(--Linear-01); 98 | -webkit-background-clip: text; 99 | -webkit-text-fill-color: transparent; 100 | background-clip: text; 101 | font-family: var(--sora); 102 | text-transform: capitalize; 103 | } 104 | 105 | & a { 106 | color: #fff; 107 | } 108 | } 109 | } 110 | } 111 | } -------------------------------------------------------------------------------- /static/scss/_common.scss: -------------------------------------------------------------------------------- 1 | 2 | :root { 3 | --inter: 'Inter', sans-serif; 4 | --playfair: 'Playfair Display', serif; 5 | --sora: 'Sora', sans-serif; 6 | --font-awesome: "Font Awesome 6 Pro"; 7 | // --bg: #161611; 8 | --text-color: #A0A0A6; 9 | --bc: #A0A0A645; 10 | --line-height: 25px; 11 | --body-font-size: 16px; 12 | --body-bg: #0D0C1C; 13 | --page-bg: #131225; 14 | --btn-bg: #68F2A0; 15 | --blank-color: #D1F831; 16 | --blank: #0E1627; 17 | --style-two: #15202E; 18 | --style-two-color: #2B85FF; 19 | --style-three: #0E1722; 20 | --Linear-01: linear-gradient(42deg, #E9F950 -1.07%, #55F4C4 -1.06%, #BAE906 104.1%); 21 | --Linear-02: var(--Linear-Style-01, linear-gradient(270deg, #E24B3E 0%, #F1A252 99.48%)); 22 | --g-4: linear-gradient(99deg, #D1099F 0%, #8A1128 98.57%); 23 | } 24 | .light{ 25 | --text-color: #616175; 26 | --bc: #A0A0A645; 27 | --body-bg: #0D0C1C; 28 | --page-bg: #131225; 29 | --btn-bg: #68F2A0; 30 | --heading: #1A1929; 31 | --Linear-01: linear-gradient(42deg, #E9F950 -1.07%, #55F4C4 -1.06%, #BAE906 104.1%); 32 | } 33 | body{ 34 | font-family: var(--inter); 35 | color: var(--text-color); 36 | line-height: var(--line-height); 37 | font-size: var(--body-font-size); 38 | font-weight: 400; 39 | scroll-behavior: smooth; 40 | } 41 | a, abbr{ 42 | text-decoration: none; 43 | } 44 | ul{ 45 | list-style: none; 46 | padding: 0; 47 | margin: 0; 48 | } 49 | img{ 50 | max-width: 100%; 51 | } 52 | .home{ 53 | background: var(--body-bg); 54 | } 55 | .page-template{ 56 | background: var(--page-bg) !important; 57 | } 58 | input[type="number"] { 59 | -webkit-appearance: none; 60 | -moz-appearance: textfield in !important; 61 | appearance: none; 62 | } 63 | .inso-preloader { 64 | height: 100vh; 65 | width: 100%; 66 | display: flex; 67 | align-items: center; 68 | justify-content: center; 69 | background: var(--body-bg); 70 | position: fixed; 71 | z-index: 99999; 72 | } 73 | .loader { 74 | width: 1rem; 75 | height: 1rem; 76 | border-radius: 50%; 77 | display: block; 78 | margin:1rem auto; 79 | position: relative; 80 | background: #FFF; 81 | box-sizing: border-box; 82 | animation: shadowExpandX 2s linear infinite alternate; 83 | } 84 | @import 'spacing'; 85 | 86 | -------------------------------------------------------------------------------- /static/scss/_contact.scss: -------------------------------------------------------------------------------- 1 | /*====== contact us =======*/ 2 | .contact { 3 | &__single { 4 | position: relative; 5 | margin-bottom: 1.875rem; 6 | 7 | &:before { 8 | content: ""; 9 | position: absolute; 10 | top: 0; 11 | left: 0; 12 | right: 0; 13 | bottom: 0; 14 | background: var(--Linear-01); 15 | border-radius: 1.25rem; 16 | z-index: -1; 17 | margin: -2px; 18 | opacity: 0; 19 | @include animation(transition, opacity .3s ease-in); 20 | } 21 | 22 | &:hover { 23 | &:before { 24 | opacity: 1; 25 | } 26 | & .icon{ 27 | background: var(--btn-bg); 28 | color: var(--body-bg); 29 | } 30 | 31 | } 32 | 33 | &--item { 34 | padding: 3.125rem; 35 | background: var(--body-bg); 36 | border-radius: 1.25rem; 37 | text-align: center; 38 | display: flex; 39 | justify-content: center; 40 | flex-direction: column; 41 | align-items: center; 42 | 43 | & .icon { 44 | background: var(--page-bg); 45 | border-radius: 3.125rem; 46 | height: 3.75rem; 47 | width: 3.75rem; 48 | display: flex; 49 | justify-content: center; 50 | align-items: center; 51 | color: #fff; 52 | font-size: 1.125rem; 53 | margin-bottom: 1.875rem; 54 | @include animation(transition, background .3s ease-in); 55 | } 56 | 57 | & .content { 58 | & h6 { 59 | font-family: var(--sora); 60 | font-size: 1.125rem; 61 | font-weight: 600; 62 | color: #fff; 63 | margin-bottom: 1.25rem; 64 | } 65 | 66 | & a, 67 | p { 68 | display: block; 69 | color: #fff; 70 | 71 | &:not(:last-child) { 72 | margin-bottom: 1rem; 73 | } 74 | } 75 | 76 | & p { 77 | margin: 0; 78 | } 79 | } 80 | } 81 | } 82 | 83 | &__form { 84 | margin-top: 2.5rem; 85 | } 86 | 87 | &__template { 88 | & .submit-btn { 89 | text-align: center; 90 | } 91 | } 92 | &__map{ 93 | & #map{ 94 | height: 32rem; 95 | max-width: 100%; 96 | } 97 | & .google__map{ 98 | height: 32rem; 99 | width: 100%; 100 | } 101 | } 102 | } -------------------------------------------------------------------------------- /static/scss/_homepage-three.scss: -------------------------------------------------------------------------------- 1 | .style-three { 2 | background: var(--style-three); 3 | } 4 | .section__title__three { 5 | display: flex; 6 | justify-content: space-between; 7 | align-items: center; 8 | padding-bottom: 30px; 9 | border-bottom: 1px solid #fff; 10 | margin-bottom: 50px; 11 | @include responsive($sm) { 12 | flex-direction: column; 13 | gap: 20px; 14 | } 15 | h2 { 16 | font-size: 30px; 17 | font-weight: 600; 18 | font-family: var(--sora); 19 | color: #fff; 20 | 21 | > span { 22 | background: var(--g-4); 23 | background-clip: text; 24 | -webkit-background-clip: text; 25 | -webkit-text-fill-color: transparent; 26 | font-family: var(--sora); 27 | font-size: 30px; 28 | font-style: normal; 29 | font-weight: 600; 30 | line-height: 45px; 31 | } 32 | } 33 | 34 | p { 35 | max-width: 500px; 36 | } 37 | 38 | } 39 | // hero slider four 40 | .heroSlider { 41 | &__single { 42 | clip-path: polygon(50% 3%, 100% 0, 100% 100%, 50% 97%, 0 100%, 0 0); 43 | overflow: hidden; 44 | 45 | img { 46 | width: 100%; 47 | height: 390px; 48 | object-fit: cover; 49 | border-radius: 10px; 50 | } 51 | } 52 | 53 | &__active { 54 | overflow: hidden; 55 | position: relative; 56 | } 57 | 58 | &__pagination { 59 | text-align: center; 60 | margin-top: 30px; 61 | 62 | span { 63 | width: 25px; 64 | height: 25px; 65 | background: transparent; 66 | border-radius: 50%; 67 | position: relative; 68 | border: 1px solid transparent; 69 | opacity: 1; 70 | 71 | &:after { 72 | position: absolute; 73 | height: 10px; 74 | width: 10px; 75 | content: ''; 76 | border-radius: 50%; 77 | background: #fff; 78 | top: 50%; 79 | left: 50%; 80 | transform: translate(-50%, -50%); 81 | } 82 | 83 | &.swiper-pagination-bullet-active { 84 | border-color: #fff; 85 | } 86 | 87 | } 88 | } 89 | } -------------------------------------------------------------------------------- /static/scss/_homepage.scss: -------------------------------------------------------------------------------- 1 | @import 'offcanvase'; 2 | @import 'hero'; 3 | @import 'hero-slider'; 4 | @import 'information'; 5 | @import 'service'; 6 | @import 'about'; 7 | @import 'our-work'; 8 | @import 'project'; 9 | @import 'team'; 10 | @import 'testimonial'; 11 | @import 'blog'; 12 | 13 | -------------------------------------------------------------------------------- /static/scss/_information.scss: -------------------------------------------------------------------------------- 1 | /*========== information css start ===========*/ 2 | .information { 3 | display: -webkit-box; 4 | display: -ms-flexbox; 5 | display: flex; 6 | -webkit-box-orient: vertical; 7 | -webkit-box-direction: normal; 8 | -ms-flex-direction: column; 9 | flex-direction: column; 10 | overflow: hidden; 11 | 12 | &__wrapper { 13 | display: -webkit-box; 14 | display: -ms-flexbox; 15 | display: flex; 16 | -webkit-box-align: center; 17 | -ms-flex-align: center; 18 | align-items: center; 19 | -webkit-box-pack: center; 20 | -ms-flex-pack: center; 21 | justify-content: center; 22 | background: #151429; 23 | padding: 2rem 0; 24 | -webkit-transform: rotate(-2deg); 25 | -ms-transform: rotate(-2deg); 26 | transform: rotate(-2deg); 27 | } 28 | 29 | &__content { 30 | @include animation(animation, Marque 50s linear infinite); 31 | display: flex; 32 | 33 | & .single-information { 34 | display: flex; 35 | align-items: center; 36 | gap: 2rem; 37 | margin-right: 2rem; 38 | white-space: nowrap; 39 | 40 | & .icon {} 41 | 42 | & h6 { 43 | text-transform: uppercase; 44 | margin: 0; 45 | font-size: 1.2rem; 46 | 47 | & span { 48 | background: linear-gradient(42deg, #E9F950 -1.07%, #55F4C4 -1.06%, #BAE906 104.1%); 49 | background-clip: text; 50 | -webkit-background-clip: text; 51 | -webkit-text-fill-color: transparent; 52 | font-family: var(--sora); 53 | } 54 | } 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /static/scss/_login-signup.scss: -------------------------------------------------------------------------------- 1 | /*====== login ========*/ 2 | .login{ 3 | &__wrapper{ 4 | padding: 3.75rem 4.375rem; 5 | border: 1px solid var(--bc); 6 | @include responsive($xs){ 7 | padding: 0; 8 | border: none; 9 | } 10 | &--title{ 11 | text-align: center; 12 | text-transform: capitalize; 13 | & h5{ 14 | font-size: 1.25rem; 15 | font-weight: 600; 16 | color: #fff; 17 | margin-bottom: 1rem; 18 | } 19 | p{margin: 0;} 20 | } 21 | } 22 | &__social{ 23 | margin-top: 1.875rem; 24 | & ul li{ 25 | display: flex; 26 | gap: 1rem; 27 | @include responsive($sm){ 28 | flex-direction: column; 29 | } 30 | & a{ 31 | padding: 1.125rem 1.25rem; 32 | background: var(--body-bg); 33 | border-radius: .625rem; 34 | color: #fff; 35 | display: flex; 36 | gap: .875rem; 37 | position: relative; 38 | &:before{ 39 | position: absolute; 40 | content: ''; 41 | top: 0; 42 | left: 0; 43 | bottom: 0; 44 | right: 0; 45 | border-radius: inherit; 46 | z-index: -1; 47 | background: var(--Linear-01); 48 | margin: -1px; 49 | @include animation(transition, all .3s ease-in); 50 | opacity: 0; 51 | } 52 | &:hover:before{ 53 | opacity: 1; 54 | } 55 | } 56 | } 57 | } 58 | &__form{ 59 | & .form-group{ 60 | display: flex; 61 | flex-direction: column; 62 | gap: 1.25rem; 63 | margin-bottom: 1.25rem; 64 | & input{ 65 | width: 100%; 66 | border: 1px solid var(--bc); 67 | border-radius: 0; 68 | padding:.625rem 1.25rem; 69 | background: var(--body-bg); 70 | outline: none; 71 | color: #fff; 72 | box-shadow: none; 73 | @include animation(transition, all .3s ease); 74 | &:focus { 75 | border-color: #75f087; 76 | } 77 | &::placeholder{ 78 | color: var(--text-color); 79 | } 80 | 81 | } 82 | } 83 | & .remember-me{ 84 | margin: 0; 85 | a{ 86 | color: #fff; 87 | text-decoration: underline; 88 | } 89 | } 90 | & .forgot-password{ 91 | a{ 92 | color: #fff; 93 | font-weight: 500; 94 | } 95 | } 96 | & .login-button{ 97 | button{ 98 | width: 100%; 99 | } 100 | } 101 | & .register-button{ 102 | margin-top: 1.875rem; 103 | text-transform: capitalize; 104 | p{ 105 | margin: 0; 106 | a{ 107 | text-decoration: underline; 108 | font-weight: 600; 109 | font-family: var(--sora); 110 | color: #fff; 111 | } 112 | } 113 | } 114 | & .input-group{ 115 | & .single-input{ 116 | & input{ 117 | padding: .625rem 1.25rem !important; 118 | } 119 | 120 | } 121 | } 122 | } 123 | } 124 | 125 | 126 | 127 | /*====== Signup ========*/ 128 | -------------------------------------------------------------------------------- /static/scss/_misc.scss: -------------------------------------------------------------------------------- 1 | .arrow-style .slick-next { 2 | display: inline-block; 3 | border-right: 1px solid #ddd; 4 | padding-right: 15px; 5 | margin-right: 35px; 6 | } 7 | 8 | .arrow-style .slick-arrow { 9 | position: absolute; 10 | right: 10px; 11 | top: -75px; 12 | border: 0; 13 | background-color: transparent; 14 | cursor: pointer; 15 | color: #383b40; 16 | transition: .3s; 17 | } -------------------------------------------------------------------------------- /static/scss/_mixin.scss: -------------------------------------------------------------------------------- 1 | @mixin box-shadow($x: 0, $y: 0, $blur: 5px, $color: rgba(0, 0, 0, 0.2)) { 2 | box-shadow: $x $y $blur $color; 3 | } 4 | // @include box-shadow(2px, 2px, 10px, rgba(0, 0, 0, 0.5)); 5 | 6 | 7 | // for text gradient generator 8 | @mixin text-gradient($start-color, $end-color) { 9 | background-clip: text; 10 | -webkit-background-clip: text; 11 | color: transparent; 12 | background-image: linear-gradient(to right, $start-color, $end-color); 13 | } 14 | // @include text-gradient(#FF5733, #3498DB); 15 | 16 | 17 | // for css prefix 18 | @mixin animation($property, $values...) { 19 | @each $value in $values { 20 | -webkit-#{$property}: $value; 21 | -moz-#{$property}: $value; 22 | -ms-#{$property}: $value; 23 | -o-#{$property}: $value; 24 | #{$property}: $value; 25 | } 26 | } 27 | 28 | // for css prefix 29 | @mixin prefix($property, $values...) { 30 | @each $value in $values { 31 | -webkit-#{$property}: $value; 32 | -ms-#{$property}: $value; 33 | #{$property}: $value; 34 | } 35 | } 36 | 37 | // responsive breakpoint 38 | 39 | $xxl: "screen and (min-width: 1400px) and (max-width: 1600px)"; 40 | $xl: "screen and (max-width: 1400px)"; 41 | $lg: "screen and (max-width: 1200px)"; 42 | $md: "screen and (max-width: 992px)"; 43 | $sm: "screen and (max-width: 768px)"; 44 | $xs: "screen and (max-width: 576px)"; 45 | $xss: "screen and (max-width: 400px)"; 46 | 47 | @mixin responsive($query) { 48 | @media #{$query} { 49 | @content; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /static/scss/_our-work.scss: -------------------------------------------------------------------------------- 1 | /*===== our work =======*/ 2 | .our-work { 3 | display: -webkit-box; 4 | display: -ms-flexbox; 5 | display: flex; 6 | -webkit-box-orient: vertical; 7 | -webkit-box-direction: normal; 8 | -ms-flex-direction: column; 9 | flex-direction: column; 10 | overflow: hidden; 11 | 12 | &__wrapper { 13 | display: -webkit-box; 14 | display: -ms-flexbox; 15 | display: flex; 16 | -webkit-box-align: center; 17 | -ms-flex-align: center; 18 | align-items: center; 19 | -webkit-box-pack: center; 20 | -ms-flex-pack: center; 21 | justify-content: center; 22 | gap: 2rem; 23 | @include animation(animation, Marque 50s linear infinite); 24 | & .our-work__content{ 25 | display: flex; 26 | gap: 2rem; 27 | } 28 | & .single-work-item { 29 | display: -webkit-box; 30 | display: -ms-flexbox; 31 | display: flex; 32 | -webkit-box-align: center; 33 | -ms-flex-align: center; 34 | align-items: center; 35 | -webkit-box-pack: center; 36 | -ms-flex-pack: center; 37 | justify-content: center; 38 | gap: 2rem; 39 | 40 | &:nth-child(2n) { 41 | & .title:nth-child(1) { 42 | background: var(--Linear-01, linear-gradient(42deg, #E9F950 -1.07%, #55F4C4 -1.06%, #BAE906 104.1%)); 43 | background-clip: text; 44 | -webkit-background-clip: text; 45 | -webkit-text-fill-color: transparent; 46 | } 47 | } 48 | 49 | & .title { 50 | list-style-type: none; 51 | position: relative; 52 | font-size: 4rem; 53 | font-weight: 700; 54 | font-family: var(--sora); 55 | color: #fff; 56 | line-height: 3.5rem; 57 | text-transform: uppercase; 58 | 59 | } 60 | 61 | & .start { 62 | font-size: 4rem; 63 | font-weight: 700; 64 | margin-top: 1.215rem; 65 | white-space: nowrap; 66 | line-height: 0; 67 | } 68 | 69 | } 70 | } 71 | } -------------------------------------------------------------------------------- /static/scss/_page.scss: -------------------------------------------------------------------------------- 1 | /*========= page template css ==========*/ 2 | .page-template .footer-credit--img{ 3 | background-color: var(--page-bg); 4 | } 5 | @import 'breadcrumb'; 6 | @import 'career'; 7 | @import 'cart'; 8 | @import 'checkout'; 9 | @import 'contact'; 10 | @import 'error'; 11 | @import 'faq'; 12 | @import 'login-signup'; 13 | @import 'pricing'; 14 | @import 'product'; 15 | @import 'sidebar'; 16 | @import 'pagination'; 17 | -------------------------------------------------------------------------------- /static/scss/_pagination.scss: -------------------------------------------------------------------------------- 1 | /*======== pagination css ========*/ 2 | .pagination { 3 | margin-top: 15px; 4 | padding-left: 1rem; 5 | & .pagination-link { 6 | padding: 0; 7 | margin: 0; 8 | list-style: none; 9 | display: flex; 10 | gap: .875rem; 11 | 12 | & .page-item { 13 | display: flex; 14 | justify-content: center; 15 | align-items: center; 16 | background: var(--body-bg); 17 | border-radius: .625rem; 18 | height: 3.125rem; 19 | width: 3.125rem; 20 | @include animation(transition, all .4s ease); 21 | &:hover{ 22 | background: var(--Linear-01); 23 | & a { 24 | color: var(--body-bg); 25 | 26 | } 27 | } 28 | &.active{ 29 | background: var(--Linear-01); 30 | & a{ 31 | color: var(--body-bg); 32 | } 33 | } 34 | 35 | & a { 36 | height: 3.125rem; 37 | width: 3.125rem; 38 | display: flex; 39 | justify-content: center; 40 | align-items: center; 41 | color: #fff; 42 | @include animation(transition, all .4s ease); 43 | } 44 | } 45 | } 46 | } -------------------------------------------------------------------------------- /static/scss/_preloader.scss: -------------------------------------------------------------------------------- 1 | /*============ preloader css ============*/ 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/scss/main.scss: -------------------------------------------------------------------------------- 1 | /* Table of content 2 | ===================================== 3 | Template Name : Insoand - It Startup and Sass Agency HTML5 Template. 4 | Author : Insomniacafe 5 | Description : "Insoand is a modern HTML5 template tailored for IT startups and SaaS agencies. It offers a sleek design and features that cater to tech businesses, providing a solid foundation for an impressive online presence.". 6 | Version : 1.0.1 7 | Author Link : https://insomniacafe.org 8 | Tags : It, Agency, Sass, Startup, Business, Foundation 9 | ========================================== 10 | 11 | 1. Basic Styles 12 | - Google Fonts 13 | 14 | 2. Animation Styles 15 | - Keyframes Animations 16 | 17 | 3. Navigation Styles 18 | - Offcanvas Menu CSS 19 | - Header CSS 20 | 21 | 4. Hero Section Styles 22 | - Hero CSS 23 | - Hero Slider CSS 24 | 25 | 5. Content Section Styles 26 | - Information CSS 27 | - Service CSS 28 | - About CSS 29 | - Our Work CSS 30 | - Project CSS 31 | - Team CSS 32 | - Testimonial CSS 33 | - Blog CSS 34 | 35 | 6. Page Styles 36 | - Breadcrumb CSS 37 | - Career CSS 38 | - Cart CSS 39 | - Checkout CSS 40 | - Contact CSS 41 | - Page Not Found CSS 42 | - FAQ CSS 43 | - Login/Signup CSS 44 | - Pricing CSS 45 | 46 | 7. Additional Styles 47 | - Sidebar CSS 48 | - Pagination CSS 49 | - Elements CSS 50 | - Footer CSS 51 | - Back to Top CSS 52 | 53 | ========================================== 54 | */ 55 | @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Playfair+Display:ital,wght@0,600;1,600&family=Sora:wght@400;700&display=swap'); 56 | @import 'mixin'; 57 | @import 'common'; 58 | @import 'animation'; 59 | @import 'header'; 60 | @import 'homepage'; 61 | @import 'homepage-two'; 62 | @import 'homepage-three'; 63 | @import 'page'; 64 | @import 'elements'; 65 | @import 'footer'; 66 | @import 'back-totop'; 67 | 68 | /*================ Thanks for choosing our Template ==============*/ 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | -------------------------------------------------------------------------------- /static/webfonts/fa-brands-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/webfonts/fa-brands-400.ttf -------------------------------------------------------------------------------- /static/webfonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/webfonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /static/webfonts/fa-regular-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/webfonts/fa-regular-400.ttf -------------------------------------------------------------------------------- /static/webfonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/webfonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /static/webfonts/fa-solid-900.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/webfonts/fa-solid-900.ttf -------------------------------------------------------------------------------- /static/webfonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/webfonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /static/webfonts/fa-v4compatibility.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/webfonts/fa-v4compatibility.ttf -------------------------------------------------------------------------------- /static/webfonts/fa-v4compatibility.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/static/webfonts/fa-v4compatibility.woff2 -------------------------------------------------------------------------------- /templates/.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /templates/.gitignore: -------------------------------------------------------------------------------- 1 | ## node modules 2 | node_modules -------------------------------------------------------------------------------- /templates/admin/change_password.html: -------------------------------------------------------------------------------- 1 | {% extends "admin/base_site.html" %} 2 | {% load i18n static %} 3 | 4 | {% block extrastyle %} 5 | 6 | 62 | {% endblock %} 63 | 64 | {% block content %} 65 |
    66 |

    Change Password for {{ target_user.email }}

    67 | 68 | {% if messages %} 69 |
    70 | {% for message in messages %} 71 |
    72 | {{ message }} 73 |
    74 | {% endfor %} 75 |
    76 | {% endif %} 77 | 78 |
    79 | {% csrf_token %} 80 |
    81 | 82 | 83 |
    84 |
    85 | 86 | 87 |
    88 |
    89 | 90 |
    91 |
    92 |
    93 | {% endblock %} -------------------------------------------------------------------------------- /templates/admin/dashboard.html: -------------------------------------------------------------------------------- 1 | {% extends 'base_site.html' %} 2 | {% load static %} 3 | 4 | {% block content %} 5 |
    6 |

    Admin Dashboard

    7 | 8 |
    9 |

    Quick Actions

    10 |
    11 | Change Password 12 | 13 |
    14 |
    15 | 16 | 17 |
    18 | {% endblock %} -------------------------------------------------------------------------------- /templates/application_list.html: -------------------------------------------------------------------------------- 1 | {% extends 'boiler_plate.html' %} 2 | {% load static %} 3 | 4 | {% block title %}{{ status }} Applications - Placement Cell{% endblock %} 5 | 6 | {% block content %} 7 |
    8 |
    9 |
    10 |
    11 |

    {{ status }} Applications

    12 |
    13 | 14 |
    15 |
    16 |
    17 | {% if applications %} 18 | {% for application in applications %} 19 | 20 |
    21 |
    {{ application.job_vacancy.get_job_type_display }}
    22 |

    {{ application.job_vacancy.title }}

    23 |

    {{ application.job_vacancy.description|striptags|truncatechars:200 }}

    24 |
    25 | {% if application.job_vacancy.location %} 26 | {{ application.job_vacancy.location }} 27 | {% endif %} 28 | {% if application.job_vacancy.salary %} 29 | {{ application.job_vacancy.salary }} 30 | {% endif %} 31 | Applied: {{ application.applied_on|date:"M d, Y" }} 32 |
    33 |
    34 | View Details 35 |
    36 |
    37 | {% endfor %} 38 | {% else %} 39 |
    40 | No {{ status|lower }} applications found. 41 |
    42 | {% endif %} 43 |
    44 |
    45 |
    46 |
    47 |
    48 |
    49 | {% endblock %} -------------------------------------------------------------------------------- /templates/email/application_confirmation_student.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Application Confirmation 7 | 56 | 57 | 58 |
    59 |
    60 |

    Application Submitted Successfully!

    61 |
    62 |
    63 |

    Dear {{ student_name }},

    64 | 65 |

    Thank you for applying to {{ job_title }} at {{ company_name }}. Your application has been successfully submitted and is now under review.

    66 | 67 |
    68 |

    Job Details:

    69 |

    Position: {{ job_title }}

    70 |

    Company: {{ company_name }}

    71 |

    Job Type: {{ job_type }}

    72 |

    Location: {{ job_location }}

    73 |

    Application Date: {{ application_date }}

    74 |
    75 | 76 |

    The hiring team will review your application and may contact you for further steps in the selection process.

    77 | 78 |

    You can track the status of your application by logging into your account on our platform.

    79 | 80 | 83 | 84 |

    If you have any questions, please don't hesitate to contact us.

    85 | 86 |

    Best regards,
    The Placement Cell Team

    87 |
    88 | 92 |
    93 | 94 | -------------------------------------------------------------------------------- /templates/email/application_notification_organization.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | New Job Application 7 | 62 | 63 | 64 |
    65 |
    66 |

    New Job Application Received

    67 |
    68 |
    69 |

    Dear {{ organization_name }},

    70 | 71 |

    A new application has been submitted for the position of {{ job_title }} at your organization.

    72 | 73 |
    74 |

    Job Details:

    75 |

    Position: {{ job_title }}

    76 |

    Job Type: {{ job_type }}

    77 |

    Location: {{ job_location }}

    78 |

    Application Date: {{ application_date }}

    79 |
    80 | 81 |
    82 |

    Candidate Information:

    83 |

    Name: {{ student_name }}

    84 |

    Email: {{ student_email }}

    85 |

    Phone: {{ student_phone|default:"Not provided" }}

    86 |

    Resume: View Resume

    87 |
    88 | 89 |

    The candidate has submitted a cover letter with their application. You can view the complete application details by logging into your account.

    90 | 91 |
    92 | View Application 93 |
    94 | 95 |

    Please review this application at your earliest convenience and update the application status accordingly.

    96 | 97 |

    Best regards,
    The Placement Cell Team

    98 |
    99 | 103 |
    104 | 105 | -------------------------------------------------------------------------------- /templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends 'boiler_plate.html' %} 2 | {% load static %} 3 | 4 | {% block title %}Home - Placement Cell{% endblock %} 5 | 6 | {% block content %} 7 | 8 |
    9 |
    10 |
    11 |
    12 |
    13 |
    14 | graph 15 | 16 | graph 17 |
    18 |
    19 |

    20 | Explore Job Vaccancies and get
    graph 21 | Placed with-Your Tech Skills 22 |

    23 |
    26 |
    27 |
    28 | 29 |

    Your placement portal is often the first point of contact between students and recruiters. Expertly designed platforms can create a seamless, 30 | user-friendly experience that showcases student talent and 31 | helps recruiters find the perfect candidates. 32 |

    33 |
    34 | Explore Career 36 |
    37 |
    38 |
    39 |
    40 |
    41 |
    42 | 43 | 44 | 45 | 46 | 47 | 48 | {% endblock %} -------------------------------------------------------------------------------- /templates/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Insoand - Startup and Technology Website HTML5 Template", 3 | "version": "1.0.1", 4 | "description": "Insoand - Startup and Technology Website HTML5 Template", 5 | "main": "index.js", 6 | "scripts": { 7 | "dev": "node-sass assets/scss/main.scss style.css -w" 8 | }, 9 | "author": "Insomniacafe.org", 10 | "license": "ISC", 11 | "devDependencies": { 12 | "node-sass": "^9.0.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/utils/__init__.py -------------------------------------------------------------------------------- /utils/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | # Register your models here. 4 | -------------------------------------------------------------------------------- /utils/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class UtilsConfig(AppConfig): 5 | default_auto_field = 'django.db.models.BigAutoField' 6 | name = 'utils' 7 | -------------------------------------------------------------------------------- /utils/constants.py: -------------------------------------------------------------------------------- 1 | import os 2 | from dotenv import load_dotenv 3 | 4 | load_dotenv() 5 | 6 | # Constants 7 | API_KEY = os.getenv("GEMINI_API_KEY") -------------------------------------------------------------------------------- /utils/feedback_on_resume.py: -------------------------------------------------------------------------------- 1 | import os 2 | from langchain_google_genai import ChatGoogleGenerativeAI 3 | from langchain.schema import SystemMessage, HumanMessage 4 | import re 5 | import json 6 | 7 | # Load the API key 8 | GEMINI_API_KEY = os.getenv("GEMINI_API_KEY") 9 | 10 | # Initialize the Gemini model 11 | llm = ChatGoogleGenerativeAI(model="gemini-1.5-flash", google_api_key=GEMINI_API_KEY) 12 | 13 | def generate_feedback(resume_text, job_description): 14 | """ 15 | Generate feedback for a resume based on a job description. 16 | Returns structured data with feedback, current score, and expected score. 17 | """ 18 | system_prompt = SystemMessage(content=""" 19 | You are an ATS system that evaluates resumes based on job descriptions. 20 | 21 | First, analyze the resume against the job description and determine: 22 | 1. A current ATS score (out of 100) 23 | 2. An expected ATS score (out of 100) if the candidate implements your suggestions 24 | 25 | Then, provide your evaluation in the following format: 26 | 1. Start with "## ATS Resume Evaluation" 27 | 2. Include the job title from the job description 28 | 3. Provide an ATS Score out of 100 (e.g., "ATS Score: 85/100") 29 | 4. List strengths and weaknesses in bullet points 30 | 5. Provide suggested improvements in numbered list format 31 | 6. End with a conclusion that includes the expected score after improvements 32 | 33 | Be specific, detailed, and actionable in your feedback. 34 | 35 | After your analysis, return a JSON object with the following structure: 36 | { 37 | "feedback": "Your detailed feedback in markdown format", 38 | "current_score": 85, 39 | "expected_score": 95 40 | } 41 | 42 | The JSON should be valid and parseable. 43 | """) 44 | 45 | user_prompt = HumanMessage(content=f"Here is a resume:\n{resume_text}\n\nHere is the job description:\n{job_description}\n\nEvaluate the resume, provide an ATS score (out of 100), and suggest improvements. Return your response in the JSON format specified.") 46 | 47 | # Get response from Gemini 48 | response = llm.invoke([system_prompt, user_prompt]) 49 | 50 | try: 51 | # Try to parse the response as JSON 52 | result = json.loads(response.content) 53 | return result 54 | except json.JSONDecodeError: 55 | # If JSON parsing fails, extract scores using regex and create structured response 56 | feedback_content = response.content 57 | 58 | # Extract current score 59 | current_score_match = re.search(r'ATS Score:\s*(\d+)\/100', feedback_content) 60 | current_score = int(current_score_match.group(1)) if current_score_match else 70 61 | 62 | # Extract expected score or estimate it 63 | expected_score_match = re.search(r'expected score (?:of|after).*?(\d+)', feedback_content, re.IGNORECASE) 64 | if expected_score_match: 65 | expected_score = int(expected_score_match.group(1)) 66 | else: 67 | # Fallback: estimate expected score as current + 15% improvement 68 | expected_score = min(99, int(current_score * 1.15)) 69 | 70 | return { 71 | "feedback": feedback_content, 72 | "current_score": current_score, 73 | "expected_score": expected_score 74 | } 75 | -------------------------------------------------------------------------------- /utils/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/utils/migrations/__init__.py -------------------------------------------------------------------------------- /utils/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | 3 | # Create your models here. 4 | -------------------------------------------------------------------------------- /utils/renderer_utils.py: -------------------------------------------------------------------------------- 1 | from rest_framework.compat import ( 2 | INDENT_SEPARATORS, LONG_SEPARATORS, SHORT_SEPARATORS) 3 | from rest_framework.renderers import JSONRenderer 4 | from rest_framework.utils import json 5 | 6 | 7 | def get_message(response): 8 | status_code = response.status_code 9 | response_message = getattr(response, 'message', None) 10 | if response_message: 11 | return response_message 12 | if 200 <= status_code <= 300: 13 | return 'Successful' 14 | return 'Error. See details' 15 | 16 | 17 | class CustomRenderer(JSONRenderer): 18 | def render(self, data, accepted_media_type=None, renderer_context=None): 19 | """ 20 | Render `data` into JSON, returning a bytestring. 21 | """ 22 | if data is None: 23 | return b'' 24 | 25 | renderer_context = renderer_context or {} 26 | indent = self.get_indent(accepted_media_type, renderer_context) 27 | 28 | if indent is None: 29 | separators = SHORT_SEPARATORS if self.compact else LONG_SEPARATORS 30 | else: 31 | separators = INDENT_SEPARATORS 32 | is_paginated = False 33 | if hasattr(renderer_context.get('view'), 'pagination_class'): 34 | is_paginated = getattr(renderer_context.get('view'), 'pagination_class') is not None 35 | data_dict = dict( 36 | success=200 <= renderer_context.get('response').status_code <= 300, 37 | message=get_message(renderer_context.get('response')), 38 | is_paginated=is_paginated, 39 | data=data 40 | ) 41 | ret = json.dumps( 42 | data_dict, cls=self.encoder_class, 43 | indent=indent, ensure_ascii=self.ensure_ascii, 44 | allow_nan=not self.strict, separators=separators 45 | ) 46 | 47 | # We always fully escape \u2028 and \u2029 to ensure we output JSON 48 | # that is a strict javascript subset. 49 | # See: http://timelessrepo.com/json-isnt-a-javascript-subset 50 | ret = ret.replace('\u2028', '\\u2028').replace('\u2029', '\\u2029') 51 | return ret.encode() 52 | 53 | 54 | def create_response(success, message, data): 55 | return dict(success=success, message=message, data=data) -------------------------------------------------------------------------------- /utils/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /utils/views.py: -------------------------------------------------------------------------------- 1 | from django.shortcuts import render 2 | 3 | # Create your views here. 4 | -------------------------------------------------------------------------------- /vacancy/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/vacancy/__init__.py -------------------------------------------------------------------------------- /vacancy/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class VacancyConfig(AppConfig): 5 | default_auto_field = 'django.db.models.BigAutoField' 6 | name = 'vacancy' 7 | -------------------------------------------------------------------------------- /vacancy/management/commands/load_data.py: -------------------------------------------------------------------------------- 1 | import random 2 | from django.core.management.base import BaseCommand 3 | from django.utils.timezone import now, timedelta 4 | from faker import Faker 5 | from django.contrib.auth import get_user_model 6 | from vacancy.models import JobVacancy, Application 7 | 8 | User = get_user_model() 9 | 10 | class Command(BaseCommand): 11 | help = 'Populate the database with 10 fake job vacancies and applications' 12 | 13 | def handle(self, *args, **kwargs): 14 | fake = Faker() 15 | users = list(User.objects.all()) 16 | 17 | if not users: 18 | self.stdout.write(self.style.ERROR("No users found in the database. Create some users first.")) 19 | return 20 | 21 | job_types = ['FULL_TIME', 'PART_TIME', 'INTERNSHIP'] 22 | 23 | for _ in range(10): 24 | job = JobVacancy.objects.create( 25 | title=fake.job(), 26 | description=fake.paragraph(nb_sentences=5), 27 | job_type=random.choice(job_types), 28 | is_open=random.choice([True, False]), 29 | posted_by=random.choice(users), 30 | posted_on=now(), 31 | application_deadline=now() + timedelta(days=random.randint(10, 60)), 32 | salary=fake.random_int(min=30000, max=120000, step=5000), 33 | location=fake.city(), 34 | skills_required=", ".join(fake.words(nb=5)) 35 | ) 36 | 37 | # Creating fake applications for the job 38 | 39 | self.stdout.write(self.style.SUCCESS('Successfully added 10 job vacancies with applications!')) 40 | -------------------------------------------------------------------------------- /vacancy/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 5.1.4 on 2025-02-02 11:19 2 | 3 | import django.db.models.deletion 4 | from django.conf import settings 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | initial = True 11 | 12 | dependencies = [ 13 | migrations.swappable_dependency(settings.AUTH_USER_MODEL), 14 | ] 15 | 16 | operations = [ 17 | migrations.CreateModel( 18 | name='JobVacancy', 19 | fields=[ 20 | ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 21 | ('title', models.CharField(max_length=255)), 22 | ('description', models.TextField()), 23 | ('job_type', models.CharField(choices=[('FULL_TIME', 'Full Time'), ('PART_TIME', 'Part Time'), ('INTERNSHIP', 'Internship')], max_length=20)), 24 | ('is_open', models.BooleanField(default=True)), 25 | ('posted_on', models.DateTimeField(auto_now_add=True)), 26 | ('application_deadline', models.DateTimeField()), 27 | ('salary', models.CharField(blank=True, max_length=100, null=True)), 28 | ('location', models.CharField(blank=True, max_length=255, null=True)), 29 | ('skills_required', models.TextField(blank=True, null=True)), 30 | ('posted_by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='job_vacancies', to=settings.AUTH_USER_MODEL)), 31 | ], 32 | ), 33 | ] 34 | -------------------------------------------------------------------------------- /vacancy/migrations/0002_application.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 5.1.4 on 2025-02-02 11:24 2 | 3 | import django.db.models.deletion 4 | from django.conf import settings 5 | from django.db import migrations, models 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('vacancy', '0001_initial'), 12 | migrations.swappable_dependency(settings.AUTH_USER_MODEL), 13 | ] 14 | 15 | operations = [ 16 | migrations.CreateModel( 17 | name='Application', 18 | fields=[ 19 | ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 20 | ('applied_on', models.DateTimeField(auto_now_add=True)), 21 | ('status', models.CharField(choices=[('PENDING', 'Pending'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected')], default='PENDING', max_length=20)), 22 | ('cover_letter', models.TextField(blank=True, null=True)), 23 | ('resume', models.FileField(blank=True, null=True, upload_to='resumes/')), 24 | ('job_vacancy', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='applications', to='vacancy.jobvacancy')), 25 | ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='applications', to=settings.AUTH_USER_MODEL)), 26 | ], 27 | options={ 28 | 'unique_together': {('student', 'job_vacancy')}, 29 | }, 30 | ), 31 | ] 32 | -------------------------------------------------------------------------------- /vacancy/migrations/0003_alter_jobvacancy_description.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 5.1.4 on 2025-02-02 11:33 2 | 3 | import django_ckeditor_5.fields 4 | from django.db import migrations 5 | 6 | 7 | class Migration(migrations.Migration): 8 | 9 | dependencies = [ 10 | ('vacancy', '0002_application'), 11 | ] 12 | 13 | operations = [ 14 | migrations.AlterField( 15 | model_name='jobvacancy', 16 | name='description', 17 | field=django_ckeditor_5.fields.CKEditor5Field(verbose_name='Description'), 18 | ), 19 | ] 20 | -------------------------------------------------------------------------------- /vacancy/migrations/0004_alter_jobvacancy_description.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 5.1.4 on 2025-02-02 11:36 2 | 3 | from django.db import migrations, models 4 | 5 | 6 | class Migration(migrations.Migration): 7 | 8 | dependencies = [ 9 | ('vacancy', '0003_alter_jobvacancy_description'), 10 | ] 11 | 12 | operations = [ 13 | migrations.AlterField( 14 | model_name='jobvacancy', 15 | name='description', 16 | field=models.TextField(), 17 | ), 18 | ] 19 | -------------------------------------------------------------------------------- /vacancy/migrations/0005_alter_application_cover_letter_and_more.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 5.1.4 on 2025-02-02 11:38 2 | 3 | import django_ckeditor_5.fields 4 | from django.db import migrations 5 | 6 | 7 | class Migration(migrations.Migration): 8 | 9 | dependencies = [ 10 | ('vacancy', '0004_alter_jobvacancy_description'), 11 | ] 12 | 13 | operations = [ 14 | migrations.AlterField( 15 | model_name='application', 16 | name='cover_letter', 17 | field=django_ckeditor_5.fields.CKEditor5Field(blank=True, null=True, verbose_name='Cover Letter'), 18 | ), 19 | migrations.AlterField( 20 | model_name='jobvacancy', 21 | name='description', 22 | field=django_ckeditor_5.fields.CKEditor5Field(verbose_name='Description'), 23 | ), 24 | ] 25 | -------------------------------------------------------------------------------- /vacancy/migrations/0006_alter_application_cover_letter.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 5.1.4 on 2025-02-02 13:10 2 | 3 | from django.db import migrations, models 4 | 5 | 6 | class Migration(migrations.Migration): 7 | 8 | dependencies = [ 9 | ('vacancy', '0005_alter_application_cover_letter_and_more'), 10 | ] 11 | 12 | operations = [ 13 | migrations.AlterField( 14 | model_name='application', 15 | name='cover_letter', 16 | field=models.TextField(blank=True, null=True), 17 | ), 18 | ] 19 | -------------------------------------------------------------------------------- /vacancy/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushaldotel/placementcell/785932cbac7755d9b703a12287efdd7a42fc8b0a/vacancy/migrations/__init__.py -------------------------------------------------------------------------------- /vacancy/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | from django.contrib.auth import get_user_model 3 | from django_ckeditor_5.fields import CKEditor5Field # Import CKEditor5Field 4 | User = get_user_model() 5 | 6 | class JobVacancy(models.Model): 7 | JOB_TYPE_CHOICES = [ 8 | ('FULL_TIME', 'Full Time'), 9 | ('PART_TIME', 'Part Time'), 10 | ('INTERNSHIP', 'Internship'), 11 | ] 12 | 13 | title = models.CharField(max_length=255) 14 | description = CKEditor5Field('Description', config_name='extends') # Use CKEditor5Field 15 | job_type = models.CharField(max_length=20, choices=JOB_TYPE_CHOICES) 16 | is_open = models.BooleanField(default=True) 17 | posted_by = models.ForeignKey(User, on_delete=models.CASCADE, related_name='job_vacancies') 18 | posted_on = models.DateTimeField(auto_now_add=True) 19 | application_deadline = models.DateTimeField() 20 | salary = models.CharField(max_length=100, blank=True, null=True) 21 | location = models.CharField(max_length=255, blank=True, null=True) 22 | skills_required = models.TextField(blank=True, null=True) 23 | 24 | def __str__(self): 25 | return f"{self.title} ({self.get_job_type_display()})" 26 | 27 | 28 | class Application(models.Model): 29 | STATUS_CHOICES = [ 30 | ('PENDING', 'Pending'), 31 | ('ACCEPTED', 'Accepted'), 32 | ('REJECTED', 'Rejected'), 33 | ] 34 | 35 | student = models.ForeignKey(User, on_delete=models.CASCADE, related_name='applications') 36 | job_vacancy = models.ForeignKey(JobVacancy, on_delete=models.CASCADE, related_name='applications') 37 | applied_on = models.DateTimeField(auto_now_add=True) 38 | status = models.CharField(max_length=20, choices=STATUS_CHOICES, default='PENDING') 39 | cover_letter = models.TextField(blank=True, null=True) 40 | resume = models.FileField(upload_to='resumes/', blank=True, null=True) 41 | 42 | class Meta: 43 | unique_together = ('student', 'job_vacancy') 44 | 45 | def __str__(self): 46 | return f"{self.student.name} - {self.job_vacancy.title} ({self.status})" 47 | 48 | #Property decorator so that i can access the student name and use in admin 49 | @property 50 | def student_name(self): 51 | return self.student.name -------------------------------------------------------------------------------- /vacancy/pagination.py: -------------------------------------------------------------------------------- 1 | from rest_framework.pagination import PageNumberPagination 2 | 3 | class JobVacancyPagination(PageNumberPagination): 4 | page_size = 10 # Default page size 5 | page_size_query_param = 'page_size' # Allows frontend to change page size 6 | max_page_size = 100 # Maximum limit to prevent abuse 7 | -------------------------------------------------------------------------------- /vacancy/permissions.py: -------------------------------------------------------------------------------- 1 | from rest_framework.permissions import BasePermission 2 | 3 | class IsStudentUser(BasePermission): 4 | """ 5 | Custom permission to allow only students to access the job vacancies. 6 | """ 7 | def has_permission(self, request, view): 8 | return request.user.is_authenticated and request.user.user_type == 'STUDENT' -------------------------------------------------------------------------------- /vacancy/resume_parser.py: -------------------------------------------------------------------------------- 1 | # import PyPDF2 2 | import docx 3 | import PyPDF2 4 | 5 | def extract_text_from_pdf(pdf_path): 6 | """ 7 | Extract text from a PDF file. 8 | """ 9 | text = "" 10 | with open(pdf_path, "rb") as file: 11 | reader = PyPDF2.PdfReader(file) 12 | for page in reader.pages: 13 | text += page.extract_text() + "\n" 14 | return text.strip() 15 | 16 | def extract_text_from_docx(docx_path): 17 | """ 18 | Extract text from a DOCX file. 19 | """ 20 | doc = docx.Document(docx_path) 21 | text = "\n".join([para.text for para in doc.paragraphs]) 22 | return text.strip() 23 | -------------------------------------------------------------------------------- /vacancy/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /vacancy/urls.py: -------------------------------------------------------------------------------- 1 | from django.urls import path 2 | from .views import ( 3 | JobVacancyListAPIView, 4 | JobVacancyDetailAPIView, 5 | resume_feedback, 6 | index_view, 7 | about_view, 8 | career_view, 9 | contact_view, 10 | atsreport_view, 11 | login_view, 12 | logout_view, 13 | job_detail_view, 14 | dashboard_view, 15 | application_list_view 16 | ) 17 | 18 | urlpatterns = [ 19 | # API endpoints 20 | path('jobs/', JobVacancyListAPIView.as_view(), name='job-list'), 21 | path('jobs//', JobVacancyDetailAPIView.as_view(), name='job-detail'), 22 | path('resume-feedback/', resume_feedback, name='resume-feedback'), 23 | 24 | # Template views 25 | path('', index_view, name='index'), 26 | path('about/', about_view, name='about'), 27 | path('career/', career_view, name='career'), 28 | path('contact/', contact_view, name='contact'), 29 | path('atsreport/', atsreport_view, name='atsreport'), 30 | path('login/', login_view, name='login'), 31 | path('logout/', logout_view, name='logout'), 32 | path('job//', job_detail_view, name='job-detail-view'), 33 | path('dashboard/', dashboard_view, name='dashboard'), 34 | path('applications//', application_list_view, name='application_list'), 35 | ] --------------------------------------------------------------------------------