پست‌ها

لیست دسترسی به بخش ها برای ادمین پنل

سلام بر مهدی جون پدر، یاشام رو نیاوردی زیارت کنیم ها :( یادت باشه. یکی از ایده های پشت ( پرده ) ادمین پنل جدید این بود که هر بخش سطح دسترسی های خود را داشته باشه و فقط افرادی که دسترسی داشته باشن بتونن استفاده کرده و لذتش را ببرن. آنهایی هم که دسترسی ندارن، حسرتش را بر دل خویش، احساس خواهند کرد :( (شکلک زندگی چقدر بی رحمه) ریسورسی برای این منظور طراحی و ساخته شده که تنها کارش اینه که یه لیستی از بخش های که ادمین بهش دسترسی داره رو لیست کنه. برای استفاده از این ریسورس نیازه JWT توکن داشته باشیم و دسترسی ادمین هم نیازه داشته باشیم. یعنی یه ادمین ایوندی می تونه به این ریسورس دسترسی داشته باشه. در نتیجه ازطریق هدر نیازه توکن مربوطه نیز ارسال گردد: Headers: Authorization: Bearer ... برای دریافت لیست، به این شکل عمل می کنیم: GET https://api.evand.com/admin-panel/accessible-sections [   "advertising_campaigns" ] خروجی مربوطه یه آرایه از بخش هایی که کاربر بهش دسترسی داره هست. خیلی شیک و ساده. مهدی جون خدافظ :(

رویدادهای موضوعات مورد علاقه کاربر

?سلام در صفحه اول ایوند نیازه بوده که رویدادهای مربوط به موضوعاتی که کاربر علاقمند هست نمایش داده شود. از آنجایی هم که ریسورس ای برای این منظور در دست نبود، فرانت برای این منظور از ریسورس های مختلفی برای این کار استفاده می کرد که لیست موضوعات رو پیدا کنه، و برای هر موضوع درخواستی به لیست رویدادهای بزنه و رویدادهای موضوعات رو در بیاره که البته درش خطایی هم هست. درخواست هایی می خوره که نتایجی به همراه نخواهد بود. و البته ترتیب دیتاها هم به راحتی توسط فرانت قابل انجام نبود. این ریسورس برای اینکه که لیستی از موضوعات ای که کاربر بهش علاقمند هست به همراه ۴ تن از رویداد مربوط به موضوع مورد نظر رو در دسترس کلاینت قراره بده. ترتیب موضوعات هم بر اساس بیشترین فروشش چیده شده. برای دریافت لیست موضوعات و رویدادهای بدین شکل عمل می کنیم: GET https://api.evand.com/followed-categories/events {   "data": [     {       "category_id": 1,       "category_title": "کارآفرینی",       "category_slug": "کارآفرینی",    

تغییرات مربوط به مشکلات وندو با AdBlocker

سلام و درود یه سری مشکلات بخاطر استفاده از اسم advertise و استفاده همزمان با AdBlocker داشتیم که یکی از کارهایی که بنظر در راستاش می شه کرد اینه که بجای کلمه advertise از کلمه دیگری استفاده بشه. که خوب چون اسم vando بین خودمون رایج شده و برای اکثر بچه ها معنی و مفهوم داره تصمیم گرفتم بجای advertise  از این کلمه استفاده کنم. اگر پیشنهاد بهتری دارید، اطلاع بدید حتما لحاظ می شه. از آنجایی که پیشنهاد دیگری هم هنگام انجام این تسک نبود به همین خاطر مستقیم می رم سر اجرایی کردن همین تصمیم و تست بشه و ببینیم چه اتفاقی می افته و تصمیمی های بعدی اگه نیاز باشه گرفته بشه. اینجا صرفا ریسورس هایی که تغییر نام داده شدن رو لیست می کنم. البته صرفا alias ای برای ریسورس های قبلی ایجاد شده که بشه دیپلوی کرد و بچه‌های فرانت مجبور به دیپلوی موازی با بک نشه که سر فرصت بتونن تغییرات مربوطه رو اعمال کنند. GET /events/{slug}/ advertises /overview => /events/{slug}/ vando /overview POST /events/{slug}/ advertise_calculator => /events/{slug}/ vando/calculator POST /events/{slug}

وضعیت اشتراک در مبحث ای

سلام  از آنجایی که اطلاع دارید، هر کسی می تونه بر روی موضوع، تگ و موارد این چنینی اشتراکی داشته باشه تا از مزایاش استفاده کرده و لذتش رو ببره. از رو برای اینکه بتونیم تصمیم بگیریم آیا از کسی اطلاعات مربوط را دوباره بگیریم یا نه، نیاز به مکانیزمی بود که بشه فهمید آیا کسی بر روی مبحث ای اشتراک داره یا نه. بدنیا آمدن این ریسورس هم برای محقق کردن این هدف بود. البته بنظر ایراداتی دارد و درست و حسابی روش فکر نشده بود که چطور اجرا بشه. مسل اینکه کاربر مهمان رو چطور چک کنیم. . یا حتی کاربر ایوندی که ایمیل و موبایلش رو داشته باشیم هم ممکنه با ایمیل یا موبایل دیگه ای روی مبحث ای مشترک شده باشن و آیا باید دوباره فرم مربوطه براشون ظاهر شه یا چه اتفاق باید بیفته؟ به هر حال، برای فهمیدن از وضعیت اشتراک کاربری این چنین عمل می کنیم که یه درخواست SEARCH به ریسورس مربوطه، همراه به پارامتری های خاصی ارسال می کنیم: SEARCH https://api.evand.com/subscribers { "email": "an email", "mobile": "a mobile phone number" "subscription" :

Evand Advertising Campaign

سلام نمی دانم ز کجا شروع  کنم. پس شروع می کنم. خوب، هدف این تسک بر این بوده که مشترکین بدبخت رو هم بشه مورد هدف قرار داد. ولی از آنجایی که سیستم کمپین تبلیغاتی ایوند طوری طراحی و ساخته شده که نمی شه به راحتی توسعه اش داد، تصمیم گرفتیم از صفر همان ایده های قبلی رو با ساختاری دوست داشتی و قابل توسعه، بنویسیم و کنارشان اشاره ای هم به مشترکین بدبختر از همیشه داشته باشیم. تصمیم بر این شد که ریسورس هایی برای این منظور، مدیریت کمپین های تبلیغاتی ایجاد بشه و فرانتش هم توسط همکار گرامی اینجانب، خانم دشتی، نوشته بشه و با ریسورس های نوشته شده تعامل بشه تا به هدف شوم خویش برسیم. این صفحه به مرور زمان آپدیت می شه تا اینکه تسکه تمام شه و مواردی که اضافه می شه امکان تغییر رو هم دارند. علاوه بر مواردی که قرار بر اضافه شدنان هست. ایجاد کمپین جدید اولین ریسوس نوشته شده، جهت ایجاد کمپین جدید می باشد. برای این منظور یه سری دیتا نیازه به ریسورس مربوطه اش ارسال شود. توجه کنید که برخی فیلدها وابسته به مقدار دیگر فیلدها خواهد بود و برخی فیلدها نسبت به شرایط دیگر فیلدها می تونه اجبا

رویدادهای برگزار کننده با نظم و ترتیب

سلام بر دوستداران علم و ادب روزی روزگاری، دخترکی، همراه با تسک پر ملاتی، دوان دوان به میدان آمد و درخواست اجرایی شدنش را داشت. داستان از این قراره که در صفحه برگزار کننده، رویدادهایی بدون نظم و ترتیب و یکی پس از دیگر در کنار هم چیده شدن و ممکنه رویداد قابل فروش ای در صفحات دیگه ای باشه در حالی که در صفحه اصلی دیده نشه و در صفحه اصلی رویداد غیرقابل فروش ای نشان بده که خوب از ایام قدیم گفته شده درسته نیست و دستور به درست شدنش صادر گردید، توسط دخترکی که دوان دوان به میدان آمده بود. ترتیب فعلی رویداد ها به شرح زیر خواهد بود: رویدادهای فعال رویدادهای بلیت تمام کرده رویدادهایی که مهلت خرید بلیت شان تمام شده است. رویدادهای تاریخ پایان گذشته رویدادهای لغو شده موارد فوق الان در ریسورسی که قراره ازش پرده برداری بشه، اعمال شده و قابل دسترسی است. برای گرفتن رویدادهای برگزار کننده به اسلاق (slug) سازمان نیاز است که در uri زیر قرار داده شود و درخواست برای گرفتن رویدادها ارسال شود: GET https://api.evand.com/organizations/{organizationSlug}/events {     "

رویدادهای مشابه - با طعمی متفاوت

سلام نسخه جدیدی از رویداد های مشابه ساخته و افتتاح گشت. دلیل این امر هم این بود به همزمان نیاز نباشه با فرانت جلو بریم و نسخه قبلی هم که فعلا استفاده می شه دست نخورده باقی مانده است. ساختار رویدادهای نسخه جدید هم فرق کرده و property هر رویداد به شکل وحشت ناکی کمتر شده. دلایلی هم این امر داشته که فعلا داخلش نمی شویم. برای دریافت رویدادهای مشابه، هر رویدادی به شکل زیر درخواستی می فرستیم: GET https://api.evand.com/v2/events/{eventSlug}/similar که در لینک فوق یکی eventSlug رو با اسلاگ رویداد جایگزین می کنید و هم اینکه v2 به لینک اضافه شده که با حذف اون، رویدادهای مشابه قبلی لود می شه دیتای برگشتی برای ریسورس فوق هم به این شکل خواهد بود: {     "data": [         {             "name": "دوره دفاع از شبکه-CND",             "slug": "cnd1-summer-clickpro",             "city_name": "تهران",             "online": false,             "organization_name": "کلیک پرو&