プロジェクト

全般

プロフィール

Vote #73170

未完了

Persian Solar Calendar is needed

Admin Redmine さんがほぼ2年前に追加. ほぼ2年前に更新.

ステータス:
New
優先度:
通常
担当者:
-
カテゴリ:
Calendar_36
対象バージョン:
-
開始日:
2022/05/09
期日:
進捗率:

0%

予定工数:
category_id:
36
version_id:
0
issue_org_id:
12889
author_id:
70611
assigned_to_id:
0
comments:
22
status_id:
1
tracker_id:
2
plus1:
0
affected_version:
closed_on:
affected_version_id:
ステータス-->[New]

説明

Hi,
There is a lack of Persian Solar Calendar (Hejri Shamsi or هجری شمسی).
This calendar as the most accurate calendar in the world (http://en.wikipedia.org/wiki/Iranian_calendars) is used by more than 100 milion people and is really lacked here in this greate bug tracking software i.e. Redmine.
Thanks


journals

Fixed wrong link syntax.
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
Jean-Philippe Lang wrote:
> Fixed wrong link syntax.

Is there any way to hook all the the Redmine calendar refrences and provide a Persian Calendar in reply?
I am not familiar with ruby but can program in Delphi. I also have some programs which can translate any Gregorian Calendar into the Persian equivalent. Can you guide me how to insert such a code into Redmine?
I also can create Apache SO files with Delphi.
--------------------------------------------------------------------------------
Redmine uses JQuery and this JQuery plugin provides Persian calendars: http://keith-wood.name/calendars.html. I didn't test it and don't know if we can easily replace the default JQuery Datepicker used in Redmine by this one.

--------------------------------------------------------------------------------
I checked the files but could not correctly find the actual connection between the JQuery Calendar CDate and DatePickers with Redmine ruby files! I thought it is somewhere in the "D:\BitNami\redmine-2.2.0-0\apps\redmine\htdocs\app\helpers\application_helper.rb" but it seems to be wrong! (I changed the "i18n/jquery.ui.datepicker-#{jquery_locale}.js" but nothing changed in the date pickers) Should ruby files be compiled? I am running Redmine on Win Server 2003.
--------------------------------------------------------------------------------
This issue is a duplicate of #7711

Supporting calendar systems other than Gregorian in Redmine takes much more than just replacing the date picker. I had developed a work-aroundish patch for version 1.2 of Redmine, but haven't updated it to newers versions.

If Redmine could provide a single pluggable point for:

# Rendering date and time from timestamp to a human-readable string
# Parsing date and time from human-readable string into timestamp

one could add a new calendar system fairly easily. The problem is currently there are many many points in the code that do these two task, and sometimes it is done implicitly under the hoods.

jplang, do you think Redmine would provide the facility to support alternative calendar systems?
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
Ebrahim Mohammadi wrote:
> This issue is a duplicate of #7711
>
> Supporting calendar systems other than Gregorian in Redmine takes much more than just replacing the date picker. I had developed a work-aroundish patch for version 1.2 of Redmine, but haven't updated it to newers versions.
>
> If Redmine could provide a single pluggable point for:
>
> # Rendering date and time from timestamp to a human-readable string
> # Parsing date and time from human-readable string into timestamp
>
> one could add a new calendar system fairly easily. The problem is currently there are many many points in the code that do these two task, and sometimes it is done implicitly under the hoods.
>
> jplang, do you think Redmine would provide the facility to support alternative calendar systems?

سلام
البته من موفق شدم با نوشتن یک برنامه کوچک بخش مهمی از نمایش تاریخ ها را درست کنم (یعنی مورد اول از درخواست شما) برای اینکار یک برنامه دلفی با نام "shamsi_date.exe" نوشتم که از stdin تاریخ میلادی گرفته و تاریخ شمسی را به stdout ارسال می کند. سپس در یک نقطه خاص از فایل: i18n.rb یک کلاس (؟) نوشتم و برنامه دلفی را در بین دو علامت ` قرار دادم. سپس در کلاس (format_date(date تغییر کوچکی دادم. به این ترتیب هربار خواندن تاریخ و ساعت در سرور منجر به اجرای برنامه دلفی شده و تاریخ شمسی و ساعت برای آن ارسال می شود. کلاس مزبور به این شکل است:

<pre>

def shamsi_date(date)
shamsi=`bin/shamsi_date #{date}`
end

</pre>

ضمنا لازم است این خط را به اول فایل اضافه کنید:

<pre>

require 'cgi'

</pre>

محل و موقعیت کلاس و نحوه استفاده از آن در پایین آمده (دقت کنید که همه کد را من در اینجا کپی نکرده ام چون لازم نبود):

<pre>

# Redmine - project management software
# Copyright (C) 2006-2012 Jean-Philippe Lang
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
require 'cgi'

module Redmine
module I18n
def self.included(base)
base.extend Redmine::I18n
end

def l(*args)
case args.size
when 1
::I18n.t(*args)
when 2
if args.last.is_a?(Hash)
::I18n.t(*args)
elsif args.last.is_a?(String)
::I18n.t(args.first, :value => args.last)
else
::I18n.t(args.first, :count => args.last)
end
else
raise "Translation string with multiple values: #{args.first}"
end
end

def l_or_humanize(s, options={})
k = "#{options[:prefix]}#{s}".to_sym
::I18n.t(k, :default => s.to_s.humanize)
end

def l_hours(hours)
hours = hours.to_f
l((hours < 2.0 ? :label_f_hour : :label_f_hour_plural), :value => ("%.2f" % hours.to_f))
end

def ll(lang, str, value=nil)
::I18n.t(str.to_s, :value => value, :locale => lang.to_s.gsub(%r{(.+)\-(.+)$}) { "#{$1}-#{$2.upcase}" })
end

def shamsi_date(date)
shamsi=`bin/shamsi_date #{date}`
end

def format_date(date)
return nil unless date
options = {}
options[:format] = Setting.date_format unless Setting.date_format.blank?
options[:locale] = User.current.language unless User.current.language.blank?
::I18n.l(date.to_date, options)
shamsi_date(date)
end

</pre>

h2. اما اینکار فقط طرف نمایش تاریخ را تقریبا درست می کند ولی ورود تاریخ همچنان میلادی است. ضمنا نمایش تاریخ گانت و تقویم هنوز میلادی است!
--------------------------------------------------------------------------------
Actually I've started providing a Persian localization of Redmine as both SaaS (hosted) and on-premises solution named "Peygir":https://peygir.com. It support Persian calendar almost everywhere, including Gantt and calendar views and date input fields.

It also features a usable Persian translation, despite the official translation provided by Redmine. I guess you've seen the discussion at #7418! ;-)

I'm very excited to have your feedback. I can setup a trial service for you for free if you'd like to try it. Just contact me. :)

Update: All changes are done as plugins, hence no GPL violation. Hereby I'd like to appreciate great work of Redmine developers, specially JPL. Thanks! :)
--------------------------------------------------------------------------------
Ebrahim Mohammadi wrote:
> Actually I've started providing a Persian localization of Redmine as both SaaS (hosted) and on-premises solution named "Peygir":https://peygir.net. It support Persian calendar almost everywhere, including Gantt and calendar views and date input fields.
>
> It also features a usable Persian translation, despite the official translation provided by Redmine. I guess you've seen the discussion at #7418! ;-)
>
> I'm very excited to have your feedback. I can setup a trial service for you for free if you'd like to try it. Just contact me. :)
>
> Update: All changes are done as plugins, hence no GPL violation. Hereby I'd like to appreciate great work of Redmine developers, specially JPL. Thanks! :)

سلام
من هم بسیار خوشحال می شوم با شما و سایر دوستان در این زمینه فعالیت کنم.
متن "پیگیر" را دیدم. بنظر ایده و کار خیلی خوبی است. اما نمی دانم که تا چه حد می توان روی بازگشت سرمایه و فروش آن حساب کرد. آیا شما برآوردی دارید یا نه. اما آنچه ظاهرا عیان است این است که در ایران برنامه نویس متن باز واقعی بسیار کم داریم و یا افراد با فرهنگ برنامه نویسی متن باز بسیار بیگانه هستند. همچنین فرهنگ مدیریت پروژه استاندارد برای پروژه های نرم افزاری بسیار ضعیف است.
لذا این حقیر معتقدم باید بنحوی در جهت رشد این فرهنگ و تشویق برنامه نویسان ایرانی به سوی حرکتی بسیجی در زمینه تولید نرم افزار تلاش نمود. حتی این ایده که یک سایت مشابه سایت HostedRedmine.com ولی با سرور های داخلی ایجاد کنیم به ذهنم رسیده و در این جهت بسیار علاقه مندم با افراد مستعد و توانمندی چون شما همکاری نمایم. مشتاقانه منتظر نظر شما هستم.

--------------------------------------------------------------------------------
سلام
دوستان همچنان هیچ چیزی جهت فارسی کردن تاریخ پیدا نشده که ما هم بتوانیم استفاده کنیم
من تیکه کد بالارو تست کردم جواب نداد؟
لطفا راهنمایی بفرماید
با تشکر
--------------------------------------------------------------------------------
Please, post in english.
--------------------------------------------------------------------------------
hi
i need persian calendar for redmine , i tested above code but not worked .

please guide me

best regards
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
since https://github.com/ImenDabaParsian/fullcalendar is fully support jalali day,week,month and ... can anyone replace it with current calendar ?

--------------------------------------------------------------------------------
سلام
من مشکل را حل کرده ام اگه خواستید با من از طریق ایمیل تماس بگیرید

--------------------------------------------------------------------------------
shakib a wrote:
> سلام
> من مشکل را حل کرده ام اگه خواستید با من از طریق ایمیل تماس بگیرید

hi, how can I contact you by email?
--------------------------------------------------------------------------------
a m wrote:
> shakib a wrote:
> > سلام
> > من مشکل را حل کرده ام اگه خواستید با من از طریق ایمیل تماس بگیرید
>
> hi, how can I contact you by email?

yes: shakifa@chmail.ir
--------------------------------------------------------------------------------
shakib a wrote:
> a m wrote:
> > shakib a wrote:
> > > سلام
> > > من مشکل را حل کرده ام اگه خواستید با من از طریق ایمیل تماس بگیرید
> >
> > hi, how can I contact you by email?
>
> yes: shakifa@chmail.ir

I have created a full ready redmine with persian calendar and many working plugins for farsi language as a vmware machine. Anyone can contact me. email: shakifa@chmail.ir
(I am so busy and have little time to customize or deliver, so priority is for rich mans!)

--------------------------------------------------------------------------------
Hi dears
I have been following the solar calendar for Redmine for a long time, but I didn't find any results,
People who have done this before are from older versions of Redmine.
Is it possible to create a plugin in this regard?
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
Gentlemen hope you enjoy the show.
I needed it so i made it.
I'm not a developer by nature btw.

Redmine version 4.1.1 fully Persian localized for F* Free. Things that localized:
- The actual Calendar.
- Every date input has Jalali date picker (thnx to Reza Babakhani <babakhani.reza@gmail.com> for free JS date picker).
- Roadmap has Jalali dates.
- Versions has Jalali dates.
- Activies are displayed in Jalali dates.
- Wikis are in Jalali dates.
- Every dates that are used in Issues are now in Jalili format (things like: "created_on", "updated_on", ...)
- Repositories are fully in Jalali format.
- Gantt is in jalali format (i dont like it though).
- Documents dates are in Jalali format.
- Files dates are in Jalali format.
- Time entries are in Jalali format. You can add time entry in Jalali format, you can also report everything in Jalali dates.
- Dates tooltips are in Jalali format.
- Many icons, tables and context menus tweaked to fully support RTL schema.

Plugins that localized:
- Agile board plugin fully persian localized (God dammit he even did that too! LoL LoL LoL). even it's chart dates now diplay Jalali dates.
- "More previews" plugin localized (it's just dates table you know :D )
- CK Editor ADDED :)) .

Things not included (I haven't really looked into these yet, cause i had no interest)
- News
- Forums

Notes:
- When you use date filters to filter something the most stable way is to use "From To" model which gives you two date inputs. I tweaked "Current date" and "Current month" to display right dates but "previous week", "previous months" and stuff like that may don't give you expected results :D !
- Dont mess around with "Date format" in settings, Its hard coded in some places :)) Use default one.

May i proudly present you:
https://github.com/dearssickness/redmine-fa

Ow it has a fully several times tested Persian installation document which added to the main code "Redmine-Deplyment.docx". Just connect machine to Internet and copy paste stuffs LoL.

Thnx to Redmine guys.

--------------------------------------------------------------------------------


related_issues

duplicates,Closed,7711,Jalali Calendar
duplicates,Closed,21935,Fullcalendar in Redmine
duplicates,Closed,35122,solar calendar

Admin Redmine さんがほぼ2年前に更新

  • カテゴリCalendar_36 にセット

他の形式にエクスポート: Atom PDF

いいね!0
いいね!0