PDA

View Full Version : سیستم پروفایل دهی IranProFile



hidensoft
دوشنبه 05 فروردین 1387, 20:59 عصر
سلام دوستان
این پروفایل یک وبسایت ایجاد پروفایل است ، نمی شه گفت حرکت نوینی بود اما با دادن Subdomain به هر کاربر (yourname.iranprofile.com) یکم از سایت های رایج فاصله گرفتیم . طراحی سایت رو هم حمید رضا گودرزی انجام دادند.
اگر نظری در این مورد دارید لطف کنید بگید ، کمک بزرگی می کنید .

IranProFile.com (http://iranprofile.com)


چون من در ساخت Pattern مناسب برای یک وب سایت مشکل دارم بازم مجبور شدم از یک فریم ورک استفاده کنم ، اول می خواستم بطور کامل روی یک فریم ورک پیاده سازیش کنم اما بعدا به دلیل اینکه هیچ فریم ورکی دقیقا اون چیزی نیست که من می خواستم (یا یه چیزی کم داشت یا یه چیزی زیاد) از CI استفاده کردم ، اما بعد از یه مدت به دلیل اینکه CI هم یه چیزایی کم داشت مجبور شدم خودم دست به کار بشم و یه فریم ورک طراحی کنم ، اما فکر اختراع دوباره چرخ مخم رو داشت می ترکوند ، دل به دریا زدم و 3 روز متوالی روی CI کار کردم و تغییرات زیادی توش دادم تا شد همونی که من می خواستم ، مثلا در مورد Pagination مجبور شدم کلش رو تغییر بدم تا با سیستم هماهنگ باشه .
اما بزرگ ترین مشکل CI رابطه یک به یکش بین Controller و View بود که واسه من خیلی دردسر ساز شده . چون میخواستیم سیستم رو جوری طراحی کنیم که بشه با Layout های مختلی کار کرد ، منظورم اینه که بتونیم قالب براش طراحی کنیم و براحتی قالب عوض کنیم مجبور شدم توی هسته CI تغییراتی بدم .. یه جورایی از Symfony تقلید کردم ، اگه با Symfony کار کرده باشید ، یه سیستم Layout داره یعنی یه چارچوب اصلی وجود داره و View توی اون چارچوب لود می شه .. تو نستم تقریبا یه چیزی تو مایه های اون در بیارم اما کامل نبود ، مثل سیمفونی با دستور SetLayout لایوت مورد نظر رو براحتی انتخاب می کردیم ، اما یه مشکلی بود که اگه لایوتی انتخاب نمی شد اررور می داد ، حالا بیا و اینو درست کن ، تو نستم بصورت پیش فرض یه لایوت تعریف کنم ، اگه لایوت خاصی رو انتخاب نمی کردی ، لایوت پیش فرض رو لود می کرد ، حالا یه مسئله دیگه هم بود ، اونم این که حالا با مشکل Partion باید چیکار کرد ؟ منظورم از Partial یه بلاکی هست که شما نیاز داری صداش کنی ، یعنی یه سری آرگومان می گیره داده مورد نظرتون رو به شما نشون می ده ، اولین فکری که به سرم زد این بود که از سیستم پلاگین Ci استفاده کنم اما پلاگین ها توی CI فقط برای نمایش کاربرد داشتن یعنی نمی شد بهشون مقداری رو داد ، ناچار شدیم سیستم پلاگین رو هم یه تکونی بهش بدیم تا بشه بهش مقدار داد ، و این کارو هم کردم ، بعد از اون Lib Session رو هم باید تغییرات می دادم چون به اندازه کافی امکانات نداشت ، توی دیتا بیس همه چیزایی که من می خواستم رو ست نمی کرد ، اونم دستکاری کردم و نوبت رسید به یه سیستم پریمیژن ، اما این سیستم باید به عنوان یک Lib ساخته می شد یا Helper ؟ بعد از کلی کلنجار رفتن تونستم یه سیستم پریمیژن هم بنویسم ، کارکردش به این صورت بود که به محض اینکه session lib یه دیتا جدید می ریخت توی دیتا بیس ، پریمژن ها هم ست می شد و دقیقا می شه فهمید که یه نفر دقیقا اجازه چه کار هایی رو داره ! نمایش ، تغییرات ، ایجاد ، خدا رو شکر سیستم خوبی از آب در اومد و می شه بیشترین دسترسی رو روی یک کاربر داشت ،
بعد از کلی دنگ و فنگ که همش یادم نیست شروع به نوشتن خود APP کردم ، اون وسط یه هو متوجه شدم که شاید نیاز داشته باشم که چند تا APP داشته باشیم ، اینجوری کارم خیلی راحت تر و حرفه ای تر می شد ، اما این یکی رو نتونستم درست کنم ، انگار CI وقتی روی دوتا APP کار می کنه قاطی می کنه ، هر کاری کردم درست نشد . بی خیال این یکی شدم ، کار رو دوباره شروع کردم و اعلان فقط سیستم بازیابی کلمه عبور و جست و جو فعال نیست ، (وقت نکردم روش کار کنم) . ولی خیلی سیستم خوبی از آب در اومد ، اعلان قدرت این رو داریم که N امکانات بهش اضافه کنیم ، بی درده سر . البته دوستان زیادی بهم کمک کردن که اکثرا CI کار حرفه ای بودند و منو خیلی خوب راهنمایی کردند . در مورد ایجاد Subdomin هم من واقعا گیج شده بودم دیگه ، نمی دونستم باید چیکار می کردم که مدیر takblog کمک کردند و این مشکل هم حل شد . یکی از بزرگ ترین مشکلاتمون وجود فایل جاوا اسکریپت سنگین هست . که احتمالا یا برشون می داریم یا حجمشون رو میاریم پایین.

در حال حاضر سیستم تبلیغات نداریم که احتمالا توی نسخه های بعدی بهش اضافه می شه .

می شه بهش گفت نسخه Beta 0.1 ، این نسخه رو روی هاست آپلود کردم و می تونید امتحانش کنید .
دوستان اگر نظری دارند

vahid4134
دوشنبه 05 فروردین 1387, 23:28 عصر
الحق دوست خودمی:لبخند:
خیلی خوشم اومد اما فکر کنم توی توضیحات نوشته بودی که www.name (http://www.name) هم کار می کنه که نکرده بود.

hidensoft
یک شنبه 11 فروردین 1387, 18:45 عصر
جناب آقای هکر ممنون

امروز صبح متوجه یه حمله به وب سایت ایران پروفایل شدیم ، البته متوجه نشدیم دقیقا این کار در چه زمانی صورت گرفته اما ، کسی که این کارو کرده فقط قصد کمک داشته ، چون ما متوجه وجود مشکل شدیم .

در خواست من از ایشون اینه که بگن چطوری این کارو کردند از طریق اسکریپت یا سرور !

از ایشون هم بابت این کمکشون ممنونم.

موفق باشید