السلام عليكــم ورحمـة الله وبركاتــه ،،
كما هو واضح من العنوان الهدف من السكريبت هو انشاء مصفوفه واحده لاستخدامها في (القائمة -القائمة الفرعيه - المسار - خارطه الموقع)
مهما اختلفه صلاحيات المستخدم سواء كان ( زائر او عضو او غير ذلك ).
مثال حي على السكريبت
قم باختيار المستخدم في الجهه اليسر من الصفحة الرئيسيه ثم اضغط على زر "ارسال"
علما بان العلامه "*" تعني للمستخدم عديم الصلاحيات(الزائر)
http://aaleyaf.net/othman/myScript/scriptM...ample/index.php
عفوا لم اهتم بالشكل العام للصفحة فالمهم هو عرض السكريبت فقط.
استخدمت السكريبت التالي للقائمة http://www.smartmenus.org/
استخدمت السكريبت التالي للقائمة الفرعيه http://www.dynamicdrive.com/style/
يمكنك تغيير هذه السكريبتات ولن تضطر الى التغيير في كود PHP
لانشاء رابط يجب انشاء كائن من الصنف NodeItem
مثال (رابط لصفحة "اضافة مستخدم")
$addUser=new NodeItem("addUser.php", "اضافة مستخدم", true, Array("admin"), null);في الكائن السابق يعتبر
addUser.php = رابط
اضافة مستخدم = نص الرابط
true = لعرض الرابط (قد تحتاج الى وجود صفحة في الموقع ولا ترغب في عرضها في القائمه ولكن وجودها في المصفوفها سيفيدنا في عرض القائمة الفرعيه الخاص لهذا الصفحة) مثال للاستخدام [عندما يكون هنا خطوتين لاضافة مستخدم. الخطوه الاولى صفحة ادخال البيانات والخطوه الثانيه صفحة لعرض البيانات المدخله وتحتوي على زر الاضافة. فهنا تكون صفحة عرض البيانات صفحه متفرعه من صفحة ادخال البيانات. و من غير الممكن عرضها في القائمه. لهذا تأخذ القيمه false ]
Array("admin") = نوع المستخدم المسموح له رؤية هذا الرابط
null = تعني بانه لا توجد قائمة فرعيه لهذا العنصر.
مثال آخر لرابط يحتوي على قائمة فرعيه
(ادارة حسابي و تحتوي على [تحديث كلمة المرور ، تحديت البريد الالكتروني])
$updatePassword=new NodeItem("updatePassword.php", "تحديث كلمة المرور", true, Array("user"), null);
$updateEmain=new NodeItem("updateEmain.php", "تحديث البريد الالكتروني", true, Array("user"), null);
$accountUser=new NodeItem("#", "اداره حسابي", true, Array("user"), array($updatePassword,$updateEmain));بعد انشاء روابط الموقع نقوم باضافنها في الكائن MenuControl
ويحتوي على
$userType = نوع المستخدم الحالي $id = HTML id للقائمة $classStyle = اسم كلاس الستايل شيت للقائمة $style = كود الستايل للقائمة $submenuId = HTML id للقائمة الفرعيه $submenuClassStyle = اسم كلاس الستايل شيت للقائمة الفرعيه $submenuStyle = كود الستايل للقائمة الفرعيه $sitemapClassStyle = اسم كلاس الستايل شيت لخارطة الموقع $menu = مصفوفه من الكائن NodeItem تمثل روابط الموقع
مثال
$menuControl=new MenuControl($userType,"Menu1","MM","padding-top: 0px;",null,"markermenu",null,"sitemap", $nodeItem);
للطباعة القائمه
$menuControl->getMenuHTML()
لطباعه القائمة الفرعيه
$menuControl->getSubmenuHTML(Utils::getNameFile())
لطباعه المسار
$menuControl->getPathHTML(Utils::getNameFile())
لطباعه خارطة الموقع
$menuControl->getSiteMapHTML()
لا يزال السكريبت تحت التطوير ....
عند وجود اي ملاحظة ارجوا ذكرها
السكريبت مرفق مع مثال ...

