آموزش سیمفونی ( Jobeet – قسمت دوم)
توصیه میکنم قبل از مطالعه این مطلب حتماْ قسمت اول را مطالعه فرمائید.
تا کنون هیچ کدی با زبان php ننوشتهایم. با این حال محیط کاریمان را راهاندازی کردیم، پروژهای خالی در سیمفونی ایجاد کردیم و از برخی پیشفرضهای امنیتی خاطر جمع شدیم.
حالا شما میتوانید صفحه پیشفرض را برای پروژههای خالی سیمفونی مشاهده کنید.
اما بیشتر از اینها باید پیش رفت. باید تمام جزئیات ریز و درشت توسعه برنامه در سیمفونی را فرا گرفت. اما امروز دقایقی را به شرح احتیاجاتی میپردازیم که در این پروژه به آنها نیاز است.
زیر و بم پروژه
Jobeet یک تخته اعلانات کاریابی کدباز است. براحتی قابل استفاده و توسعه است و میتواند در وبسایت شما هم بکار رود. از آخرین تکنولوژیهای وب۲ بهره میگیرد و همچنین برای ارتباط متقابل با فعالیتهای برنامه نویسی feed و API تولید میکند.
داستان پروژه jobeet
قبل از شیرجه به درون کدها و شروع کدنویسی، لازم است تا اندکی بیشتر به شرح پروژه بپردازیم. در بخشهای پائین، به تشریح خصوصیاتی میپردازیم که قصد اجرای آن را در نسخه اول پروژه داریم.
وبسایت Jobeet چهار نوع کاربر دارد.
Admin: صاحب وبسایت!
User: جهت یافتن شغل وبسایت را مشاهده میکند.
Poster: برای پست کردن یک شغل به وبسایت میآید.
Affiliate: برخی از مشاغل را در وبسایت خود منتشر میکند.
پروژه Jobeet دو بخش را در بر دارد. یکی بخش frontend ، مکانی که کاربران با وبسایت تعامل دارند (F1 تا F7) و دیگری Backend، جایی که مدیر، به مدیریت خود میپردازد. (B1 تا B3)
بخش Backend محافظت شده است و برای دسترسی به آن اعتبار نامه نیاز است.
F1: صفحه اصلی که کاربران آخرین مشاغل را در آن مشاهده میکنند:
این مشاغل بر حسب دسته و مکانشان ذخیره شدهاند و هرچه جدیدتر باشند، بالاتر قرار میگیرند.
در این صفحه تنها مکان، وضعیت و شرکت هر شغل قابل مشاهده است. برای هر دسته تنها ۱۰ شغل آخر به نمایش در میآیند و یک پیوند امکان لیست شدن مشاغل موجود در یک دسته بندی را ایجاد میکند. (F2)
کاربر میتواند لیست موجود را با توجه به نیازش پالایش کند (F3) و یا شغلی جدید ارسال کند. (F5)
F2: کاربر میتواند بین مشاغل موجود در یک دسته پرس و جو کند:
هنگامی که کاربر بروی نام دسته و یا More Jobs کلیک میکند، تمامی مشاغل موجود در آن دسته را در لیستی که بر حسب تاریخ مرتب شده است را مشاهده میکند.
لیستها بصورت ۲۰ لینک در هر صفحه، صفحه بندی شدهاند.
F3: کاربر میتواند لیست را با استفاده از کلمهای کلیدی پالایش کند:
کاربران میتوانند با توجه به کلمهای کلیدی به جستجو بپردازند. این کلمات کلیدی در مکان، وضعیت، دسته و یا مشخصات شرکت جستجو میشوند.
F4: کاربر بروی عنوان شغل کلیک میکند تا جزئیات را بررسی کند:
کاربران میتوانند یک شغل را از لیست انتخاب کرده و جزئیات آن را مشاهده کنند.
F5: کاربر میتوتند شغلی جدید پست گند:
کاربران شغلی را پست میکنند. این شغل از قسمتهای جداگانهای از اطلاعات تشکیل شده است که به شرح زیر میباشد:
- شرکت
- نوع (full-time, part-time, freelance)
- لوگو
- آدرس وب (URL)
- وضعیت
- مکان
- دسته (کاربران میتوانند دسته مورد نظر را از لیست انتخاب کنند)
- توضیحات (URL و Email بطور اتوماتیک افزوده میشوند)
- چگونگی اعمال (URL و Email بطور اتوماتیک افزوده میشوند)
- عمومیت (آیا امکان انتشار شغل در سایت Affiate میسر است یا خیر)
- پست الکترونیک
برای ارسال یک شغل نیازی به ایجاد اشتراک نیست. این پروسه تنها در ۲ مرحله صورت میگیرد، ابتدا کاربر فرم تشریح شغل را تکمیل میکند، سپس پیش نمایش اطلاعات را در صفحهای مشاهده کرده و ان را تائید میکند. حتی اگر کاربر اشتراکی نداشته باشد در آدرسی مخصوص میتواند شغل ارسالی را ویرایش کند (این امکان بوسیله یک توکن که پس از ایجاد شغل ایجاد میشود، محافظت میشود)
هر شغل به مدت ۳۰ روز Online میماند (قابل تنظیم در پنل مدیریت B2) کاربر میتوتند دوباره آن را فعال کند و یا مدت آن را تمدید کند تا بیشتر از ۳۰ روز Online بماند، اما تنها در صورتی که کمتر از ۵ روز به پایان تاریخ انقضا مانده باشد.
F6: کاربر خود را به عنوان affiliate تعریف میکند:
کاربران جهت استفاده از APIهای Jobeet، باید خود را به عنوان affiliate تعریف کنند و برای اینکار باید اطلاعات زیر را وارد کنند:
- نام
- پست الکترونیک
- آدرس وب سایت
اشتراک affiliate در قسمت مدیریت تائید میشود (B3)، هنگامی که فعال شد، affiliate توکنی را برای استفاده از API بوسیله پست الکترونیک دریافت میکند. پس از این مراحل affiliate میتواند مشاغل را از یک دسته معتیر انتخاب کند.
F7: یک affiliate لیست مشاغل جاری را بدست میآورد:
affiliate میتواند لیست مشاغل جاری را با فراخوانی API بدست آورد. این لیست میتواند در قالبهای JSON, XML و یا YAML باشد.
لیست هم شامل اطلاعات عمومی معتبر یک شغل میباشد. همچنین affiliate میتواند برخی از مشاغل و یا تنها دستهای خاص از آنها را نمایش دهد.
B1: مدیر وبسایت را پیکرهبندی میکند:
یک مدیر میتواند دستههای معتبر در سایت را ویرایش کند.
B2: مدیریت مشاغل بر عهده مدیر است:
یک مدیر میتواند شغلی را ویرایش و یا آن را حذف کند.
B3: مدیریت affiliateها نیز بر عهده مدیر است:
مدیر میتواند affiliate را ایجاد و یا ان را ویرایش کند. او میتواند اشتراک affiliateها را فعال کند و یا انها را ناتوان سازد. هنگامی که مدیر اشتراک affiliate را فعال میکند، سیستم یک توکن منحصر به فرد را برای استفاده affiliate ایجاد میکند.
بقیه داستان jobeet را در روزهای آینده بخوانید
در برنامه نویسی و توسعه وب، هیچگاه نباید از روز اول به کدنویسی پرداخت. ابتدا باید نیازها را شناسایی و بررسی کنیم. این همان کاریاست که امروز انجام شد!



فرید در تاریخ 29 آوریل , 2009 @ 12:59 ب.ظ
سلام
امیدوارم همینطوری ادامه بدی
من که چند وقتیه کلی خراب کردم و کنترل کل زندگیمو از دست دادم متاسفانه!
امیدوارم همه چی درست شه و شما هم به مطالب مفیدتون ادامه بدین
موفق باشی