HomeJournal › Home

Home

The tenant journal's public landing page — index.php (journal docroot, default view, no _action) composing the header/banner image, primary menu, an "about journal" blurb, current-issue / in-press / top-articles / editor's-choice article tabs, an archived-index summary, facts & figures, publication info (owner, editorial board, ISSN, frequency), indexing-database logos, ads, a keyword cloud, a related-journals strip, and a shared footer (recent news, newsletter signup, social links, RSS).

Page Status E2E Enhanced Legacy Ref Route Roles
Home Full Yes scroll-spy index.php / Public
Cross-Journal Directory (mainm/mainn default view) Full Yes filters mainm/index.php; mainn/index.php / Public

Features

FeatureStatusE2EDescription
Visitor sees the journal hero/banner with cover image, title and key journal metadata Full Yes Replaces the legacy head_image overlay and journal coversheet block; fed by the layout's TenantProvider.
Visitor reads the admin-configured 'about journal' blurb on the home page Full Yes Legacy home_page_notes setting rendered as the intro section; hidden when empty.
Visitor browses current-issue articles directly on the home page (settings-gated) Full Yes Legacy 'current issue' tab of the composite article tab block.
Visitor browses articles-in-press on the home page Full Yes Legacy only rendered in-press on non-old/base themes; new home always offers it when data exists.
Visitor sees top / most-visited articles on the home page Full Legacy show_top_articles setting-driven 'Top Articles' tab reimagined as an inline 'most visited' section.
Visitor sees editor's-choice articles on the home page (show_editor_choice setting) Pending Legacy getEditorChoiceArticles() tab (index.php:398-403); no apps/web counterpart found (grep for editor-choice on home is empty).
Visitor sees the journal's facts & figures panel (submission/acceptance stats etc.) Full Yes Legacy rendered two settings-driven HTML blobs in sidebar boxes; now a dedicated full-width section.
Visitor sees publication info: owner, editorial-board preview, frequency, print/online ISSN with issn.org links Full Yes Legacy sidebar linked each ISSN to portal.issn.org and listed editorial-board members by role; new home shows an editorial-board preview section linking to the full board page.
Visitor sees which indexing databases cover the journal Full Legacy home sidebar showed a truncated indexing list with a 'more' link to journal/indexing; the new app keeps only the dedicated page.
Visitor sees admin-managed ads on the journal home, and ad clicks are counted then redirected to the target URL Pending Legacy ju_ads block (themes index.php:160-179) plus ?adsc click-count-and-redirect handler (index.php:36-68); no journal-home counterpart in apps/web (portal landing ads are a separate portal-module capability).
Visitor explores a keyword cloud of the journal's top 200 keywords (cached, settings-gated) Pending Legacy show_keyword_cloud with CacheManager-backed getTopKeywords(200) (index.php:405-416); no apps/web counterpart.
Visitor sees a related-journals strip on the journal home Pending Legacy getRelatedJournals + related_journal theme template; no apps/web counterpart found.
Visitor sees an archived volume/issue index summary and can jump into the archive Full Yes Legacy archive_index sidebar template driven by browseVolumeIssue, honoring the hide_vol_year setting.
Visitor sees recent journal news in the shared footer and can navigate to the news pages Full Yes Legacy footer listed recent news items directly; new footer links to the news section.
Visitor subscribes to the journal newsletter from the footer Full Yes Newsletter signup with client-side validation replacing the legacy footer form.
Visitor reaches the journal's social profiles and RSS feed from the footer Full Yes Admin-entered social links are filtered to non-empty entries; RSS always points at the app's own feed route.
Visitor gets a cookie-consent banner and a scroll-to-top button on the journal home New Yes No legacy predecessor; added for compliance and long-page ergonomics.
Visitor navigates home-page sections via a sticky scroll-spy navigation bar New Yes Replaces legacy tab switching with in-page anchor navigation; entries appear only when the section has data.
Visitor is prompted to publish research via a register/submit call-to-action on the home page (settings-gated) New Yes New conversion CTA with no legacy home equivalent; hidden when registration/submission is disabled for the journal.
Visitor browses the cross-journal directory grid with journal covers/logos linking to each journal site Full Yes Legacy fell back cover -> logo -> default coversheet per journal; primary claim of the Portal journals module.
Visitor live-searches the directory by journal title and publisher Full Yes Legacy AND-ed each whitespace-separated term as ILIKE filters; new search is server-driven with results summary.
Visitor filters the directory by subject, frequency, language and indexing database with live facet counts and URL-synced state Full Yes Frequency/language/index facets and live counts are enhancements over the legacy subject-only browse.
Visitor sorts and paginates the directory Full Yes Pagination is new; sort options (relevancy/lastIssueTime/title/createdAt) extend the legacy binary sort.
Visitor switches the portal language (legacy juLang fa/en cookie toggle) Full Yes Locale is now part of the URL with en/ar and RTL support instead of a fa/en cookie.
Visitor reads portal-level news highlights (top-5 list) and opens a news item's detail Full Yes Legacy journal_code=0 news; primarily claimed by the Portal landing module.
Visitor reads settings-driven static 'menu' pages on the portal (menuN_title/menuN_cnt) Pending Legacy ?menu=N rendered admin-configured static content (mainm/index.php:254-285); inventory says 'redistributed' but no verified apps/web counterpart per menu page.
Visitor browses a cross-journal year archive (?years list and year_YYYY.html pages) Pending Legacy grouped all articles' publish dates into year links (mainm/index.php:339-362); no apps/web counterpart found.
Visitor reads the portal's embedded contact blurb (?contact) Pending Legacy contact_us setting rendered inline (mainm/index.php:308-327); the new portal likely covers this via its own contact page (Portal module) — unverified here.
Visitor subscribes to a cross-journal RSS feed of new articles (?rss, sep_by_lang aware) Pending Legacy getJournalsRSS across all journals (mainm/index.php:328-335); per-journal RSS exists in apps/web but no verified portal-wide feed.
Visitor sees news / top-articles / recent-articles tabs on the portal directory (no_top=100 setting) Pending Legacy tabbed block on the directory default view (mainm/index.php:432-476); portal landing offers different content (trending keywords, top authors) owned by Portal modules.
Visitor searches articles across all journals (keyword box, author-name search, advanced search) from the directory screen Pending Legacy embedded cross-journal article search on the mainm default view (mainm/index.php:363-429); cross-journal search in the new app belongs to the Portal/Search modules — module boundary flagged.
Visitor lands on a portal home presenting featured journals, browse-by-category, news and live statistics New Yes Serves the discovery/branding need the bare legacy grid never addressed; primary claim of the Portal landing module.
All widgets on this page (current-issue/in-press/top/editor's-choice article tabs, facts & figures, publication info, indexing, ads, keyword cloud, related journals, footer news/newsletter/social) are settings-driven sections of one composite screen rendered by themes/<theme>/front/pages/index.php — none is reachable at its own distinct _action/route, so they are documented as one "Home" row rather than split into per-section rows. Other _action values handled by the same index.php dispatcher (advSearch, article/press, articleInfo, linkout, current) render materially different screens and belong to the Search and Issues & Articles modules, not Home.
Correction: _action=cite is not a screen and is not one of the above.
case "cite": in index.php only delegates to ArticleCitation::manageActions()getScoupsCitation() (class/article.citation.class.php), which does echo json_encode($ret) — a live Scopus citation-count JSON lookup with no page-template load, running after the switch has already started emitting the page shell, so it can't render a standalone screen either. Grepping the whole legacy tree (excluding vendor/tinymce) for this action turns up zero callers anywhere; it looks unreachable in practice. Per this segment's own "pure handler, no rendered screen" rule (see journal/issues-articles.html's identical treatment of XML export), it is correctly excluded from row consideration in every module, not folded into Search/Issues & Articles as the previous version of this note implied.
Judgement call, now resolved with a claimed row above (previously only flagged).
The design brief's suggested anchors apps/legacy/js/mainm/index.php and apps/legacy/js/mainn/index.php were traced and found to not be per-journal Home implementations — both hardcode journal_code = 0 and reproduce the cross-journal directory-listing pattern of the Portal segment's main/index.php (journal search/filter grid, "journals list" browsing, static "menu" pages, embedded contact blurb, RSS, year archive), rather than a single journal's themed home page. Per the design doc's segment table, mainm/mainn public dispatch is explicitly sourced under the Journal segment (not Portal); portal/journals.html and portal/landing.html both decline to claim it for that reason. Since it renders a materially different, still-live screen (see below) with no row anywhere in the inventory, leaving it as an inline flag rather than a claimed row was a Definition-of-Done gap — it is now captured above as its own "Cross-Journal Directory" row, bundling the settings-driven menu/highlights/contact/rss/years sub-views the same way the Home row bundles its own widgets, since none of them is reachable at its own distinct _action either.
Confirmed still-live, not dead code — with a wrinkle worth flagging for Phase C.
apps/legacy/spec/auth/public-private-files.md discusses mainm/jufile.php's payment-receipt access-control gap, confirming the mainm tree is still served in production. apps/legacy/apache-httpd/httpd-vhosts.conf maps mainm as the DocumentRoot for the journals.ekb.eg/journal.ekb.eg vhost (plus its bare-IP alias) — i.e. the root portal domain, not any per-journal tenant subdomain (per-journal subdomains are ServerAlias entries on the separate j.ekb.eg vhost whose DocumentRoot is the top-level journals/ dir housing the real per-journal index.php claimed as "Home" above); mainn has no vhost entry of its own and is only reachable as a public subdirectory under that same top-level docroot. That vhost mapping — mainm serving the portal domain — is in tension with the design doc's segment table filing "mainm/mainn public dispatch" under Journal rather than Portal; this row follows the design doc's documented assignment, but the tension is a genuine open question for Phase C triage, not resolved here.
apps/legacy/js/view/index.view.php (also named as a likely anchor) is unrelated to the public Home page — it renders the admin CRUD screens (list/add/edit) for indexing-database entries via class/index.class.php, i.e. the back-office source for the public "Indexing" widget shown here, not a Home page itself.