padidar
پنج شنبه 10 خرداد 1386, 10:15 صبح
با عرض سلام خدمت دوستان عزیز
من دنبال تقویم شمسی (solar Calendar) برای پرتال dotnetnuke میگردم. لطفا اگه کسی قبلا این کار رو انجام داده منو راهنمایی کنه و یا در صورت انجام پروژه پیشنهاد قیمت بده . البته من تو تاپیک های قبلی از کاربر "سار" یک چیزهایی دیدم اما مطلبشونو کامل به اتمام نرسونده بودن و هیچ تلفن تماسی با ایشان وجود ندارد.
bashiry
جمعه 29 تیر 1386, 09:39 صبح
نمی دونم با کامپوننت های آماده مثل
persia
می تونی این کار رو انجام بدی
delphi77
سه شنبه 13 آذر 1386, 12:23 عصر
آقای padidar شما توانستید شمسی را راه بندازید
isarjanfaza
پنج شنبه 23 اردیبهشت 1389, 13:44 عصر
سلام اگه برنامه نويسي با دات نت نيوك رو بلدي يك سري تو سايت 123dnn.com برو و نحوه جذب برنامه نويس رو ازشون سوال كن اگه هم سورس براي كار ازشون بخوايي برات هم رايگان دارن هم پولي بستگي به خودت داره من جاي تو باشم هم عضو سايتشون مي شم هم باهاشون كار مي كننم.
isarjanfaza
پنج شنبه 23 اردیبهشت 1389, 13:46 عصر
قبل از هرکاری باید بدانید که شرکت Microsoft در Net Framework 2.0. و بالاتر بحث تقویم شمسی را پیاده سازی نموده و ما برای شمسی سازی Application های خود تنها کافی است تا طرز بکار گیری آن را فرا بگیریم. بنابراین لازم به یادآوری است که آموزشی که در این قسمت ارائه می شود نه تنها پرتال Dotnetnuke بلکه قابلیت شمسی سازی تمام Application های تحت وب و ویندوز شما را دارا می باشد.
بطور کلی برای شمسی سازی پرتال Dotnetnuke دو فایل Default.aspx.vb و js/Popupcalendar.js می بایست ویرایش گردند. برای انجام این کار ابتدا فایل Default.aspx.vb را باز نموده و تغییرات زیر را اعمال می نماییم (نکته: کدهای زیر جهت آموزش می بایست، شما می توانید کدهای زیر را داخل فایل پیوستی این آموزش مشاهده و استفاده نمایید):
در ابتدای فایل Default.aspx.vb پنج خط کد که جهت ایمپورت کردن فضاهای نامی به صفحه بکار رفته اند را می تواند مشاهده نمایید:
Imports System.IO
Imports DotNetNuke.Entities.Tabs
Imports DotNetNuke.Security.Permissions
Imports DotNetNuke.UI.Skins
Imports DotNetNuke.UI.Utilities
شما می بایست خطوط بالا را حذف نموده و کدهای زیر را جایگزین نمایید (3 خط کد به خطوط بالا افزوده می شود).
Imports System.IO
Imports System.Reflection
Imports System.Globalization
Imports System.Threading
Imports DotNetNuke.Entities.Tabs
Imports DotNetNuke.Security.Permissions
Imports DotNetNuke.UI.Skins
Imports DotNetNuke.UI.Utilities
سپس می بایست رویه Page_Load را ویرایش نمایید. برای انجام این کار می توانید کلید های Ctrl + F را فشار داده تا کادر جستجو باز شده سپس عبارت Page_Load را درون آن تایپ نموده و دکمه Search
را فشار دهید. این رویه به صورت زیر خواهد بود:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Scrolltop As HtmlControls.HtmlInputHidden = CType(Page.FindControl("ScrollTop"), HtmlControls.HtmlInputHidden)
If Scrolltop.Value <> "" Then
DotNetNuke.UI.Utilities.DNNClientAPI.AddBodyOnload EventHandler(Page, "__dnn_setScrollTop();")
Scrolltop.Value = Scrolltop.Value
End If
End Sub
سپس شما مجدداً کل کد بالا را حذف نموده و کد زیر را که شامل دو رویه می باشد با آن جایگزین می نمایید:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Scrolltop As HtmlControls.HtmlInputHidden = CType(Page.FindControl("ScrollTop"), HtmlControls.HtmlInputHidden)
If Scrolltop.Value <> "" Then
DotNetNuke.UI.Utilities.DNNClientAPI.AddBodyOnload EventHandler(Page, "__dnn_setScrollTop();")
Scrolltop.Value = Scrolltop.Value
End If
Dim strLang As String = System.Globalization.CultureInfo.CurrentCulture.To String()
If strLang = "fa-IR" Then
ChangeCultureToPersian()
End If
End Sub
Public Shared Sub ChangeCultureToPersian()
Dim calture As New CultureInfo("fa-IR")
Dim info As DateTimeFormatInfo = calture.DateTimeFormat
info.AbbreviatedDayNames = New String() {"ى", "د", "س", "چ", "پ", "ج", "ش"}
info.DayNames = New String() {"يکشنبه", "دوشنبه", "سه شنبه", "چهارشنبه", "پنجشنبه", "جمعه", "شنبه"}
info.AbbreviatedMonthNames = New String() {"فروردين", "ارديبهشت", "خرداد", "تير", "مرداد", "شهريور", "مهر", "آبان", "آذر", "دي", "بهمن", "اسفند", ""}
info.MonthNames = New String() {"فروردين", "ارديبهشت", "خرداد", "تير", "مرداد", "شهريور", "مهر", "آبان", "آذر", "دي", "بهمن", "اسفند", ""}
info.AMDesignator = "ق.ظ"
info.PMDesignator = "ب.ظ"
info.ShortDatePattern = "yyyy/MM/dd"
info.FirstDayOfWeek = DayOfWeek.Saturday
Dim PersianCal As New PersianCalendar
GetType(DateTimeFormatInfo).GetField("calendar", (BindingFlags.NonPublic Or (BindingFlags.Public Or BindingFlags.Instance))).SetValue(info, PersianCal)
Dim obj As Object = GetType(DateTimeFormatInfo).GetField("m_cultureTableRecord", (BindingFlags.NonPublic Or (BindingFlags.Public Or BindingFlags.Instance))).GetValue(info)
obj.GetType.GetMethod("UseCurrentCalendar", (BindingFlags.NonPublic Or BindingFlags.Instance)).Invoke(obj, New Object() {PersianCal.GetType.GetProperty("ID", (BindingFlags.NonPublic Or BindingFlags.Instance)).GetValue(PersianCal, Nothing)})
GetType(CultureInfo).GetField("calendar", (BindingFlags.NonPublic Or (BindingFlags.Public Or BindingFlags.Instance))).SetValue(calture, PersianCal)
Thread.CurrentThread.CurrentCulture = calture
Thread.CurrentThread.CurrentUICulture = calture
CultureInfo.CurrentCulture.DateTimeFormat = info
CultureInfo.CurrentUICulture.DateTimeFormat = info
End Sub
خوب با انجام اینکار پرتال بطور کامل شمسی می شود. حال اگر بخواهیم تقویم باز شونده پرتال (PopupCalendar) نیز شمسی شود، می بایست فایل PopupCalendar.js پیوست این آموزش را در پوشه JS پرتال Paste نمایید.
isarjanfaza
پنج شنبه 23 اردیبهشت 1389, 13:49 عصر
اينم فايل ضميمش
prfsma
چهارشنبه 02 تیر 1389, 13:57 عصر
shoma mitooni az site www.irandnn.ir (http://www.irandnn.ir) downlod koni
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.