{"id":18018913,"url":"https://github.com/ateliee/jquery.schedule","last_synced_at":"2025-04-07T12:05:09.634Z","repository":{"id":41344772,"uuid":"20849145","full_name":"ateliee/jquery.schedule","owner":"ateliee","description":"jquery and html schedule calendar","archived":false,"fork":false,"pushed_at":"2023-01-07T04:33:04.000Z","size":3744,"stargazers_count":143,"open_issues_count":24,"forks_count":50,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-03-05T01:35:52.203Z","etag":null,"topics":["ajax","html-schedule-calendar","javascript","jquery","schedule"],"latest_commit_sha":null,"homepage":"https://ateliee.github.io/jquery.schedule/demo/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ateliee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-06-15T05:53:37.000Z","updated_at":"2025-02-20T11:37:06.000Z","dependencies_parsed_at":"2023-02-06T12:00:49.946Z","dependency_job_id":null,"html_url":"https://github.com/ateliee/jquery.schedule","commit_stats":null,"previous_names":[],"tags_count":32,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ateliee%2Fjquery.schedule","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ateliee%2Fjquery.schedule/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ateliee%2Fjquery.schedule/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ateliee%2Fjquery.schedule/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ateliee","download_url":"https://codeload.github.com/ateliee/jquery.schedule/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246457968,"owners_count":20780676,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ajax","html-schedule-calendar","javascript","jquery","schedule"],"created_at":"2024-10-30T05:06:48.894Z","updated_at":"2025-03-31T11:02:50.193Z","avatar_url":"https://github.com/ateliee.png","language":"JavaScript","readme":"jq.Schedule\n===============\n\n[![npm version](https://badge.fury.io/js/jq.schedule.svg)](https://badge.fury.io/js/jq.schedule)\n[![Build Status](https://travis-ci.com/ateliee/jquery.schedule.svg?branch=master)](https://travis-ci.com/ateliee/jquery.schedule)\n![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)\n\n![](docs/img/preview.png)\n\njquery and html schedule calendar\n\n* Drag and Drop Support\n* Resize Schedule\n* Ajax Get Data\n\n## install\n\n### package\n```\nnpm i jq.schedule --save\n```\n\n## Demo\n\n[Try Demo](https://ateliee.github.io/jquery.schedule/demo/)\n\n## How to use\n\nappend head css\n```\n\u003clink rel=\"stylesheet\" type=\"text/css\" href=\"./jquery.schedule/dist/css/style.min.css\" /\u003e\n```\n\ninsert body\n```\n\u003cdiv id=\"schedule\"\u003e\u003c/div\u003e\n\u003cscript type=\"text/javascript\" src=\"./jquery.schedule/dist/js/jq.schedule.min.js\"\u003e\u003c/script\u003e\n\u003cscript type=\"text/javascript\"\u003e\n    $(function(){\n        var $sc = $(\"#schedule\").timeSchedule({\n            startTime: \"07:00\", // schedule start time(HH:ii)\n            endTime: \"21:00\",   // schedule end time(HH:ii)\n            widthTime:60 * 10,  // cell timestamp example 10 minutes\n            timeLineY:60,       // height(px)\n            verticalScrollbar:20,   // scrollbar (px)\n            timeLineBorder:2,   // border(top and bottom)\n            bundleMoveWidth:6,  // width to move all schedules to the right of the clicked time line cell\n            rows : {\n                '0' : {\n                    title : 'Title Area',\n                    subtitle : 'Description',\n                    schedule:[\n                        {\n                            start:'09:00',\n                            end:'12:00',\n                            text:'Text Area',\n                            data:{\n                            }\n                        },\n                        {\n                            start:'11:00',\n                            end:'14:00',\n                            text:'Text Area',\n                            data:{\n                            }\n                        }\n                    ]\n                },\n                '1' : {\n                    title : 'Title Area',\n                    schedule:[\n                        {\n                            start:'16:00',\n                            end:'17:00',\n                            text:'Text Area',\n                            data:{\n                            }\n                        }\n                    ]\n                }\n            },\n            onChange: function(node, data){\n                addLog('onChange', data);\n            },\n            onInitRow: function(node, data){\n                addLog('onInitRow', data);\n            },\n            onClick: function(node, data){\n                addLog('onClick', data);\n            },\n            onAppendRow: function(node, data){\n                addLog('onAppendRow', data);\n            },\n            onAppendSchedule: function(node, data){\n                addLog('onAppendSchedule', data);\n            },\n            onScheduleClick: function(node, time, timeline){\n                addLog('onScheduleClick', time + ' ' + timeline);\n            }\n        });\n    });\n\u003c/script\u003e\n```\n\n## Options\n\n### Paramaters\n\n|Key|Value|Description|\n|---|------|----------|\n|className|jq-schedule|add elemnt class(default jq.schedule)|\n|startTime|07:00|schedule start time(HH:ii)|\n|endTime|21:00|schedule end time(HH:ii)|\n|widthTime|600|cell timestamp example 10 minutes|\n|timeLineY|60|height(px)|\n|verticalScrollbar|20|scrollbar (px)|\n|timeLineBorder|2|border(top and bottom)|\n|bundleMoveWidth|6|width to move all schedules to the right of the clicked time line cell|\n|rows|{object}|schedule data|\n|draggable|{boolean}|enable draggable(default true)|\n|resizable|{boolean}|enable resizable(default true)|\n|resizableLeft|{boolean}|enable left handle resizable(default false)|\n\n### Schedule Data\n\n|Key|Type|Description|\n|---|----|-----|\n|title|string|Schedule Row Title|\n|subtitle|string|Schedule Row Description|\n|schedule|object[]|schedule row of array|\n\n### Schedule Data in Object\n\n|Key|Type|Description|\n|---|----|-----|\n|start|string|HH:ii|\n|end|string|HH:ii|\n|text|string|Bar Title|\n|data|object|bind data|\n\n### Callback Methods\n\n#### onChange(node: Element, data: Object)\non change schedule bar callback\n\n#### onInitRow(node: Element, data: Object)\ninitialize data\n\n#### onClick(node: Element, data: Object)\non click bar callback\n\n#### onAppendRow(node: Element, data: Object)\non add schedule row callback\n\n#### onSppendSchedule(node: Element, data: Object)\non add schedule bar callback\n\n#### onScheduleClick(node: Element, time: string, data: Object)\non click schedule row callback\n\n### Methods\n\n#### get row data\n```\nvar data = $(\"#schedule\").timeSchedule('timelineData');\n```\n\n#### get schedule data\n```\nvar data = $(\"#schedule\").timeSchedule('scheduleData');\n```\n\n#### clear all data\n```\n$(\"#schedule\").timeSchedule('resetData');\n```\n\n#### clear all data and row\n```\n$(\"#schedule\").timeSchedule('resetRowData');\n```\n\n#### add row\n```\n$(\"#schedule\").timeSchedule('addRow', timeline, {\n    title : 'Title Area',\n    schedule:[\n        {\n            start:'09:00',\n            end:'12:00',\n            text:'Text Area',\n            data:{\n            }\n        }\n    ]\n});\n```\n\n#### add data\n```\n$(\"#schedule\").timeSchedule('addSchedule', timeline, {\n    start: start,\n    end: end,\n    text:'Insert Schedule',\n    data:{}\n});\n```\n\n#### switch setting\n```\n$(\"#schedule\").timeSchedule('setDraggable', true or false);\n```\n```\n$(\"#schedule\").timeSchedule('setResizable', true or false);\n```\n\n## For Development\n\nrun server browser-sync\n```\nnpm run serve\n```\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fateliee%2Fjquery.schedule","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fateliee%2Fjquery.schedule","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fateliee%2Fjquery.schedule/lists"}