Jump to content

  •         

Photo

تاریخ میلادی در دیتالایف انجین 9.0


#1 kurdp30

kurdp30

    عضو سایت

  • عضو سایت
  • PipPip
  • 129 posts

1389/06/17 ساعت 20:02

با سلام
دوستان چطوری میتونم تاریخ دیتالایف انجین 9.0 رو توی آرشیو،تقویم و سایر بخش های سایت به میلادی تبدیل کنم؟
دوستان کمک کنید خیلی نیاز دارم؟
  • 0

#2 SalaR

SalaR

    مدیر بازنشسته

  • عضو سایت
  • PipPipPip
  • 463 posts

1389/06/18 ساعت 11:26

دیتالایف انجین انگلیسی نصب کن . اگرم که میخوای زبان سایتت فارسی باشه که فایل زبان فارسی رو بزار جای انگلیسی فقط فایل website.lng آخرش جای روزها و ماهای شمسی باید میلادی رو جایگزین کنی
$langdate = array (
'January'            =>    "January",
'February'            =>    "February",
'March'            =>    "March",
'April'            =>    "April",
'May'            =>    "May",
'June'            =>    "June",
'July'            =>    "July",
'August'            =>    "August",
'September'        =>    "September",
'October'            =>    "October",
'November'        =>    "November",
'December'        =>    "December",

'Jan'            =>    "Jan",
'Feb'            =>    "Feb",
'Mar'            =>    "Mar",
'Apr'            =>    "Apr",
'May'            =>    "May",
'Jun'            =>    "Jun",
'Jul'            =>    "Jul",
'Aug'            =>    "Aug",
'Sep'            =>    "Sep",
'Oct'            =>    "Oct",
'Nov'            =>    "Nov",
'Dec'            =>    "Dec",

'Sunday'            =>    "Sunday",
'Monday'            =>    "Monday",
'Tuesday'            =>    "Tuesday",
'Wednesday'        =>    "Wednesday'",
'Thursday'            =>    "Thursday",
'Friday'            =>    "Friday",
'Saturday'            =>    "Saturday",

'Sun'            =>    "Sun",
'Mon'            =>    "Mon",
'Tue'            =>    "Tue",
'Wed'            =>    "Wed",
'Thu'            =>    "Thu",
'Fri'            =>    "Fri",
'Sat'            =>    "Sat",

);


$f = array ('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
$r = array ('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
$f2 = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');
$f3 = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
$langdateshortweekdays = array("Su","Mo","Tu","We","Th","
Fr","Sa");



تو adminpanel.lng هم
$langdate = array (
'January'        => &nb
sp;  "January",
'February'        => &n
bsp;  "February",
'March'           
; =>    "March",
'April'           
; =>    "April",
'May'           &
nbsp;=>    "May",
'June'           
 =>    "June",
'July'           
 =>    "July",
'August'        => &nbs
p;  "August",
'September'        => &
nbsp;  "September",
'October'        => &nb
sp;  "October",
'November'        => &n
bsp;  "November",
'December'        => &n
bsp;  "December",
'Jan'        =>  &
nbsp; "Jan",
'Feb'        =>  &
nbsp; "Feb",
'Mar'        =>  &
nbsp; "Mar",
'Apr'        =>  &
nbsp; "Apr",
'Jun'        =>  &
nbsp; "Jun",
'Jul'        =>  &
nbsp; "Jul",
'Aug'        =>  &
nbsp; "Aug",
'Sep'        =>  &
nbsp; "Sep",
'Oct'        =>  &
nbsp; "Oct",
'Nov'        =>  &
nbsp; "Nov",
'Dec'        =>  &
nbsp; "Dec",

'Sunday'    =>    "Sunda
y",
'Monday'    =>    "Monda
y",
'Tuesday'    =>    "Tues
day",
'Wednesday'    =>    "We
dnesday",
'Thursday'    =>    "Thu
rsday",
'Friday'    =>    "Frida
y",
'Saturday'    =>    "Sat
urday",

'Sun'    =>    "Sun"
,
'Mon'    =>    "Mon"
,
'Tue'    =>    "Tue"
,
'Wed'    =>    "Wed"
,
'Thu'    =>    "Thu"
,
'Fri'    =>    "Fri"
,
'Sat'    =>    "Sat"
,

  • 0

#3 jotyar

jotyar

    عضو جدید

  • عضو سایت
  • Pip
  • 2 posts

1389/06/18 ساعت 13:56

خیلی ممنون~SalaR~گل کاشتی flower
  • 0

#4 kurdp30

kurdp30

    عضو سایت

  • عضو سایت
  • PipPip
  • 129 posts

1389/06/18 ساعت 15:42

salar جون ممنون از پاسخت
این کار رو کردم ولی آرشیو هنوز شمسیه و میلادی نشده !!! لطفا کمک کنید pray

هیشکی نیست یه جواب بده !! question
  • 0

#5 SalaR

SalaR

    مدیر بازنشسته

  • عضو سایت
  • PipPipPip
  • 463 posts

1389/06/18 ساعت 16:29

اینکاره نیستی پس smile
غیر از این چیز دیگه ای نیست
  • 0

#6 Raain

Raain

    عضو سایت

  • عضو سایت
  • PipPip
  • 35 posts

1390/03/14 ساعت 20:28

من هم نتونستم
  • 0

#7 Raain

Raain

    عضو سایت

  • عضو سایت
  • PipPip
  • 35 posts

1390/03/14 ساعت 20:51

من هم نتونستم
  • 0

#8 redo

redo

    عضو سایت

  • عضو سایت
  • PipPip
  • 68 posts

1390/03/14 ساعت 22:04

من که‌ تونستم خیلی آسون
در همه‌ بخش ها و همه‌ جا تاریخ میلادی شد
ولی اولین باریه‌ که‌ من این تاپیک ببینم
تقریبا 3 ماه‌ قبل تونستم تاریخ رو به‌ میلادی تبدیل کنم
fellow
  • 0

#9 Raain

Raain

    عضو سایت

  • عضو سایت
  • PipPip
  • 35 posts

1390/03/15 ساعت 00:18

redo,

خوب دوست عزیز ما اماتور ها را راهنمایی کن.

تشکر

  • 0

#10 redo

redo

    عضو سایت

  • عضو سایت
  • PipPip
  • 68 posts

1390/03/15 ساعت 02:38

Raain,
دوست عزیز میخوای برای زبان دیگری آمادش کنی ؟ مثلا کردی ؟
  • 0

#11 Raain

Raain

    عضو سایت

  • عضو سایت
  • PipPip
  • 35 posts

1390/03/15 ساعت 03:40

redo,

نه دوست عزیز زبان فارسی است . یعنی میخوام که زبان سایت فارسی باشه بعد آرشیو و تاریخ ارسال مطالب رو به میلادی نشون بده.

ممنون
  • 0

#12 fatemeh2

fatemeh2

    عضو سایت

  • عضو سایت
  • PipPip
  • 42 posts

1390/03/15 ساعت 03:47

فکر کنم بدون اینکه از انجین انگلیسی استفاده کنی راهی باشده.

ببینیم دوستان چه نظری دارند.
  • 0

#13 redo

redo

    عضو سایت

  • عضو سایت
  • PipPip
  • 68 posts

1390/03/15 ساعت 16:53

فاطمه,
نه‌ باید از دیتالایف انجین نسخه‌ انگلیسی استفاده‌ کنید

اول شما دیتالایف انجین فارسی و انگلیسی رو دانلود کنید هر دوتا
و یک فولدر بسازید برای دیتالایف انجین فارسی با تاریخ میلادی
بعدش دیتالایف انجین انگلیسی رو کوپی کرد و داخل فولدری که‌ ساختید برای دیتالایف انجین فارسی با تاریخ میلادی
کوپی کنید

فایلهای داخل فولدر engine/skins/ رو از دیتالایف انجین فارسی کوپی کرده‌ و داخل فولدر دیتالایف انجین فارسی با تاریخ میلادی کوپی کنید
و همچنین فایل install.php رو از دیتالایف انجین فارسی کوپی کنید و بجای فایل install.php دیتالایف انجین فارسی با تاریخ میلادی قرار بدید
سپس فایل های addnews.php و editnews.php رو از دیتالایف انجین فارسی کوپی کنید و در همان مکان در دیتالایف انجین فارسی با تاریخ میلادی قرار بدید
سپس فایل ها addnews.php و editnews.php رو که‌ کوپی کردید با یک ویرایشگر باز کرده‌ و هرچی
jdate رو به‌ date تغییر بدید
این کار برای اینه‌ که‌ ادرس مطالب فارسی رو ساپورت کنه‌ مثال :http//dle.com/game/دانود-بازی.html
و اگه‌ فایل های بالا رو ادیت نکنید ادرس مطالب بدین شکل خواهند بود
http//dle.com/game/ddds-dddedd.html

دوستان تست کنید و اگر مشکلی داشتید من در خدمتم
  • 0

#14 fatemeh2

fatemeh2

    عضو سایت

  • عضو سایت
  • PipPip
  • 42 posts

1390/03/15 ساعت 22:38

redo,

من نمی دونم Raain می خواهد کل سایتش میلادی شود؟ اما من می خواهم که تاریخ آرشیو و تاریخ ارسال مطالب به ماه های کردی نمایش داده شود. اینجوری:

جیژنان (فروردین)، گولان (اردیبهشت)، زه‌ردان (خرداد)، په‌رپه‌ر (تیر)، گه‌لاویژ (مرداد)، نوخشان (شهریور)، به‌ران (مهر)، خه‌زان (آبان)، ساران (آذر)، بفران (دی)، به‌ندان (بهمن)، رمشان (اسفند)

مثلا به عوض فروردین = چیژنان ، بیاد.

کمک شوید لطف می کنید.
98
  • 0

#15 FedoraCore

FedoraCore

    مدیر بازنشسته

  • عضو سایت
  • PipPipPipPip
  • 913 posts

1390/03/16 ساعت 01:02

فاطمه,
فکر میکنم شما برای انجام اینکار فقط کافیه فایل زبان رو ویرایش کنید، فایل :

language/farsi/website.lng
  • 0

#16 fatemeh2

fatemeh2

    عضو سایت

  • عضو سایت
  • PipPip
  • 42 posts

1390/03/16 ساعت 05:29

FedoraCore,
این کارو کردم. بازم نشد.
  • 0

#17 FedoraCore

FedoraCore

    مدیر بازنشسته

  • عضو سایت
  • PipPipPipPip
  • 913 posts

1390/03/16 ساعت 07:46

این رو ادیت کنید ممکنه درست شه :

engine/classes/jdf.php
  • 0

#18 fatemeh2

fatemeh2

    عضو سایت

  • عضو سایت
  • PipPip
  • 42 posts

1390/03/16 ساعت 15:56

FedoraCore,

سلام

موقعی که می خواهم ادیت کنم با این پیام که اخطار می دهد مواجه می شوم و وقتی هم که وارد می شوم کلمات فارسی رو با کرکتر ها لاتین مخلوطی از اعداد و حروف لاتین می باشد. این هم پیامی که می دهد.

If encodings are not important to you because you will only be working with English or other Western languages, you can disable this dialog by clicking here:

  • 0

#19 tehranblog

tehranblog

    عضو سایت

  • عضو سایت
  • PipPip
  • 115 posts

1390/03/16 ساعت 16:11

فاطمه,
فاطمه من کردی رو نمیدونم اما برای تاریخ میلادی باید این کدی رو که پایین می زارم تو آدرس engine\classes تو فایل jdf.php جایگزین کنی .



<?php

function jdate($type,$maket='now')
{
if ($maket=='now'){
    return date($type);
    }else{
    return date($type,$maket);
    }
}



function jmaketime($hour,$minute,$second,$jmonth,$jday,$jyear)
{
    list( $year, $month, $day ) = jalali_to_gregorian($jyear, $jmonth, $jday);
    $i=mktime($hour,$minute,$second,$month,$day,$year);    
    return $i;
}


///Find Day Begining Of Month
function mstart($month,$day,$year)
{
    list( $jyear, $jmonth, $jday ) = gregorian_to_jalali($year, $month, $day);
    list( $year, $month, $day ) = jalali_to_gregorian($jyear, $jmonth, "1");
    $timestamp=mktime(0,0,0,$month,$day,$year);
    return date("w",$timestamp);
}

//Find Number Of Days In This Month
function lastday ($month,$day,$year)
{
    $lastdayen=date("d",mktime(0,0,0,$month+1,0,$year));
    list( $jyear, $jmonth, $jday ) = gregorian_to_jalali($year, $month, $day);
    $lastdatep=$jday;
    $jday=$jday2;
    while($jday2!="1")
    {
        if($day<$lastdayen)
        {
            $day++;
            list( $jyear, $jmonth, $jday2 ) = gregorian_to_jalali($year, $month, $day);
            if($jdate2=="1") break;
            if($jdate2!="1") $lastdatep++;
        }
        else
        {
            $day=0;
            $month++;
            if($month==13)
            {
                    $month="1";
                    $year++;
            }
        }

    }
    return $lastdatep-1;
}

//translate number of month to name of month
function monthname($month)
{

    if($month=="01") return "فروردين";

    if($month=="02") return "ارديبهشت";

    if($month=="03") return "خرداد";

    if($month=="04") return  "تير";

    if($month=="05") return "مرداد";

    if($month=="06") return "شهريور";

    if($month=="07") return "مهر";

    if($month=="08") return "آبان";

    if($month=="09") return "آذر";

    if($month=="10") return "دي";

    if($month=="11") return "بهمن";

    if($month=="12") return "اسفند";
}

////here convert to  number in persian
function Convertnumber2farsi($srting)
{
    $num0="۰";
    $num1="۱";
    $num2="۲";
    $num3="۳";
    $num4="۴";
    $num5="۵";
    $num6="۶";
    $num7="۷";
    $num8="۸";
    $num9="۹";
    
    $stringtemp="";
    $len=strlen($srting);
    for($sub=0;$sub<$len;$sub++)
    {
     if(substr($srting,$sub,1)=="0")$stringtemp.=$num0;
     elseif(substr($srting,$sub,1)=="1")$stringtemp.=$num1;
     elseif(substr($srting,$sub,1)=="2")$stringtemp.=$num2;
     elseif(substr($srting,$sub,1)=="3")$stringtemp.=$num3;
     elseif(substr($srting,$sub,1)=="4")$stringtemp.=$num4;
     elseif(substr($srting,$sub,1)=="5")$stringtemp.=$num5;
     elseif(substr($srting,$sub,1)=="6")$stringtemp.=$num6;
     elseif(substr($srting,$sub,1)=="7")$stringtemp.=$num7;
     elseif(substr($srting,$sub,1)=="8")$stringtemp.=$num8;
     elseif(substr($srting,$sub,1)=="9")$stringtemp.=$num9;
     else $stringtemp.=substr($srting,$sub,1);

    }
return   $stringtemp;

}
function div($a,$b) {
    return (int) ($a / $b);
}

function gregorian_to_jalali ($g_y, $g_m, $g_d)
{
    $g_days_in_month = array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
    $j_days_in_month = array(31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29);    
    

   $gy = $g_y-1600;
   $gm = $g_m-1;
   $gd = $g_d-1;

   $g_day_no = 365*$gy+div($gy+3,4)-div($gy+99,100)+div($gy+399,400);

   for ($i=0; $i < $gm; ++$i)
      $g_day_no += $g_days_in_month[$i];
   if ($gm>1 && (($gy%4==0 && $gy0!=0) || ($gy@0==0)))
      /* leap and after Feb */
      $g_day_no++;
   $g_day_no += $gd;

   $j_day_no = $g_day_no-79;

   $j_np = div($j_day_no, 12053); /* 12053 = 365*33 + 32/4 */
   $j_day_no = $j_day_no % 12053;

   $jy = 979+33*$j_np+4*div($j_day_no,1461); /* 1461 = 365*4 + 4/4 */

   $j_day_no %= 1461;

   if ($j_day_no >= 366) {
      $jy += div($j_day_no-1, 365);
      $j_day_no = ($j_day_no-1)65;
   }

   for ($i = 0; $i < 11 && $j_day_no >= $j_days_in_month[$i]; ++$i)
      $j_day_no -= $j_days_in_month[$i];
   $jm = $i+1;
   $jd = $j_day_no+1;

   return array($jy, $jm, $jd);
}

function jalali_to_gregorian($j_y, $j_m, $j_d)
{
    $g_days_in_month = array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
    $j_days_in_month = array(31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29);
    
  

   $jy = $j_y-979;
   $jm = $j_m-1;
   $jd = $j_d-1;

   $j_day_no = 365*$jy + div($jy, 33)*8 + div($jy3+3, 4);
   for ($i=0; $i < $jm; ++$i)
      $j_day_no += $j_days_in_month[$i];

   $j_day_no += $jd;

   $g_day_no = $j_day_no+79;

   $gy = 1600 + 400*div($g_day_no, 146097); /* 146097 = 365*400 + 400/4 - 400/100 + 400/400 */
   $g_day_no = $g_day_no % 146097;

   $leap = true;
   if ($g_day_no >= 36525) /* 36525 = 365*100 + 100/4 */
   {
      $g_day_no--;
      $gy += 100*div($g_day_no,  36524); /* 36524 = 365*100 + 100/4 - 100/100 */
      $g_day_no = $g_day_no % 36524;

      if ($g_day_no >= 365)
         $g_day_no++;
      else
         $leap = false;
   }

   $gy += 4*div($g_day_no, 1461); /* 1461 = 365*4 + 4/4 */
   $g_day_no %= 1461;

   if ($g_day_no >= 366) {
      $leap = false;

      $g_day_no--;
      $gy += div($g_day_no, 365);
      $g_day_no = $g_day_no % 365;
   }

   for ($i = 0; $g_day_no >= $g_days_in_month[$i] + ($i == 1 && $leap); $i++)
      $g_day_no -= $g_days_in_month[$i] + ($i == 1 && $leap);
   $gm = $i+1;
   $gd = $g_day_no+1;

   return array($gy, $gm, $gd);
}

?>

  • 0

#20 Raain

Raain

    عضو سایت

  • عضو سایت
  • PipPip
  • 35 posts

1390/03/16 ساعت 16:23

فاطمه,

ببین فرقی نمی کنه که کارکتر های لاتین است. صرف نام ماه را با هم جاگزین کن. البته طوری که گفتید که بشکل لاتین نشون میده باید متوجه باشی که نام ماه را مرتب بگذاری . این کار 100 در صد کارایی دارد.

مشکلی پیش آمدم. پوست کن.

پیشنهاد می کنم که اول فایل رو backup بگیری بهتر است.

  • 0


0 members, 1 guests, 0 anonymous users