gitorious:grantrs-mainline.git
8 years agounvendor rails master deploy-0.2
grantr [Wed, 20 Jan 2010 23:44:18 +0000 (15:44 -0800)]
unvendor rails

more issues with FileUtils.cp_r

8 years agodelete test dir since it causes problems on deploying deploy-0.1
grantr [Mon, 18 Jan 2010 04:15:49 +0000 (20:15 -0800)]
delete test dir since it causes problems on deploying

8 years agoremove self-referential .hooks deploy-0.0
grantr [Mon, 18 Jan 2010 03:27:22 +0000 (19:27 -0800)]
remove self-referential .hooks

8 years agoAtom feed for the watchlist feed on the user dashboard deploy-upstream
Johan Sørensen [Tue, 12 Jan 2010 12:58:00 +0000 (13:58 +0100)]
Atom feed for the watchlist feed on the user dashboard

8 years agoslight tweaks to the dashboard pull-boxes
Johan Sørensen [Tue, 12 Jan 2010 11:44:29 +0000 (12:44 +0100)]
slight tweaks to the dashboard pull-boxes

8 years agoShow a notice when viewing ones own profile page
Johan Sørensen [Tue, 12 Jan 2010 10:07:00 +0000 (11:07 +0100)]
Show a notice when viewing ones own profile page

8 years agoAdd a dashboard breadcrumb
Johan Sørensen [Tue, 12 Jan 2010 10:01:36 +0000 (11:01 +0100)]
Add a dashboard breadcrumb

8 years agoGreet user on their dashboard, link to it in the top menu
Johan Sørensen [Tue, 12 Jan 2010 09:31:09 +0000 (10:31 +0100)]
Greet user on their dashboard, link to it in the top menu

8 years agoRenamed /activity route to /activities
Johan Sørensen [Tue, 12 Jan 2010 09:24:31 +0000 (10:24 +0100)]
Renamed /activity route to /activities

8 years agoAdding a link to the public activity stream when logged in
Marius Mathiesen [Tue, 5 Jan 2010 09:05:22 +0000 (10:05 +0100)]
Adding a link to the public activity stream when logged in

8 years agoCleaned up dashboard and profile pages, use same data when viewing ones own profile
Marius Mathiesen [Thu, 17 Dec 2009 13:56:58 +0000 (14:56 +0100)]
Cleaned up dashboard and profile pages, use same data when viewing ones own profile

8 years agoIntroducing Site#public_timeline as /activity
Marius Mathiesen [Thu, 17 Dec 2009 13:25:41 +0000 (14:25 +0100)]
Introducing Site#public_timeline as /activity

The global activity stream is now available for logged in users too

8 years agoChanged it to logged in users will be displayed their dashboard on /
Marius Mathiesen [Thu, 17 Dec 2009 12:47:09 +0000 (13:47 +0100)]
Changed it to logged in users will be displayed their dashboard on /

- Anonymous users will be served one of the two public start pages, depending on gitorious_dot_org being true or false

8 years agoWording tweak on the favorite email subscription link
Johan Sørensen [Tue, 12 Jan 2010 09:08:22 +0000 (10:08 +0100)]
Wording tweak on the favorite email subscription link

8 years agoAdd caching to the Repository::most_active_clones* methods
Johan Sørensen [Mon, 11 Jan 2010 12:31:42 +0000 (13:31 +0100)]
Add caching to the Repository::most_active_clones* methods

8 years agoRemove the !important flag for the li.favorite>a css rule
Johan Sørensen [Mon, 11 Jan 2010 11:37:08 +0000 (12:37 +0100)]
Remove the !important flag for the li.favorite>a css rule

We only need it on the breadcrumbs

8 years agoAdd breadcrumbs to /favorites and a link from the favorite-list box on ~user
Johan Sørensen [Mon, 11 Jan 2010 11:22:55 +0000 (12:22 +0100)]
Add breadcrumbs to /favorites and a link from the favorite-list box on ~user

8 years agoDeliver an email for each watchable event, if it's turned on for the given favorite
Johan Sørensen [Mon, 11 Jan 2010 09:57:22 +0000 (10:57 +0100)]
Deliver an email for each watchable event, if it's turned on for the given favorite

8 years agoFixed a couple of FavoritesControllerTest pending tests
Johan Sørensen [Thu, 7 Jan 2010 14:05:08 +0000 (15:05 +0100)]
Fixed a couple of FavoritesControllerTest pending tests

8 years agoUse a dimmed email icon for favorites where email notification is disabled
Johan Sørensen [Thu, 7 Jan 2010 13:04:01 +0000 (14:04 +0100)]
Use a dimmed email icon for favorites where email notification is disabled

8 years agoSupport for plaintext rendering of events
Johan Sørensen [Thu, 17 Dec 2009 15:12:48 +0000 (16:12 +0100)]
Support for plaintext rendering of events

The EventRendering::Text class is responsible for rendering plaintext
versions of events, this makes it easier to test and maintain
than. Hopefully we can one day move the html rendering of events into
a EventRendering::HTML module.

8 years agoAdded a UI for managing whether to receive email when a feed item appears or not
Johan Sørensen [Thu, 17 Dec 2009 12:52:54 +0000 (13:52 +0100)]
Added a UI for managing whether to receive email when a feed item appears or not

Flagging this is a per favorite setting and is opt-in

8 years agoskip pagination links if items < per_page
Johan Sørensen [Tue, 15 Dec 2009 14:11:21 +0000 (15:11 +0100)]
skip pagination links if items < per_page

8 years agoMake the fancy front page render properly in IE8
Marius Mathiesen [Mon, 4 Jan 2010 13:48:19 +0000 (14:48 +0100)]
Make the fancy front page render properly in IE8

8 years agoAdd a checkbox for inline comments for merge requests for watching it directly
Marius Mathiesen [Tue, 15 Dec 2009 13:34:06 +0000 (14:34 +0100)]
Add a checkbox for inline comments for merge requests for watching it directly

8 years agoSupport for watching a merge request version through commenting.
Marius Mathiesen [Tue, 15 Dec 2009 13:00:13 +0000 (14:00 +0100)]
Support for watching a merge request version through commenting.

Also (finally) added support for login_as(<User>)

8 years agoAllow users to filter the favorite watchlist
Johan Sørensen [Tue, 15 Dec 2009 12:46:05 +0000 (13:46 +0100)]
Allow users to filter the favorite watchlist

8 years agoMake it possible to start watching a merge request when submitting a comment on it.
Marius Mathiesen [Tue, 15 Dec 2009 11:39:23 +0000 (12:39 +0100)]
Make it possible to start watching a merge request when submitting a comment on it.

Currently only for non-inline comments, this is up next

8 years agoCheat with the FeedItem pagination on the ~user page
Johan Sørensen [Tue, 15 Dec 2009 09:30:26 +0000 (10:30 +0100)]
Cheat with the FeedItem pagination on the ~user page

If we just assume there's always one more page we have to waste time
querying for the total feeditems

8 years agoSkip the most_active_overall on projects#index and move the recently into the sidebar
Johan Sørensen [Mon, 14 Dec 2009 14:31:58 +0000 (15:31 +0100)]
Skip the most_active_overall on projects#index and move the recently into the sidebar

8 years agoProject#search_repositories now uses the same logic as Repository#search_clones
Marius Mathiesen [Mon, 14 Dec 2009 14:15:22 +0000 (15:15 +0100)]
Project#search_repositories now uses the same logic as Repository#search_clones

8 years agoPerform Repository#search_clones in SQL instead of Ruby
Marius Mathiesen [Mon, 14 Dec 2009 13:12:01 +0000 (14:12 +0100)]
Perform Repository#search_clones in SQL instead of Ruby

8 years agoRe-order the ~user page a bit
Johan Sørensen [Mon, 14 Dec 2009 13:51:08 +0000 (14:51 +0100)]
Re-order the ~user page a bit

* only show the repository list if we're viewing another user (since
  it's include in his own favorites)
* Show projects first, since there's bound to be less of those for most users

8 years agoChange the AddObjectOwnersAsWatchers to only include repositories and merge requests
Johan Sørensen [Mon, 14 Dec 2009 13:46:00 +0000 (14:46 +0100)]
Change the AddObjectOwnersAsWatchers to only include repositories and merge requests

Since those are the only current objects users can unwatch/watch in the UI

8 years agoSpeed up User#watched_objects by including the watchable association
Johan Sørensen [Mon, 14 Dec 2009 13:20:10 +0000 (14:20 +0100)]
Speed up User#watched_objects by including the watchable association

8 years agoFix live search test in IE
Johan Sørensen [Mon, 14 Dec 2009 12:14:43 +0000 (13:14 +0100)]
Fix live search test in IE

The fixture HTML was nested improperly, causing IE to fail in its
usual fashion

8 years agoMake the merge-requests work proper in IE7+
Johan Sørensen [Mon, 14 Dec 2009 11:59:51 +0000 (12:59 +0100)]
Make the merge-requests work proper in IE7+

8 years agoFixed some invalid CSS rules
Johan Sørensen [Mon, 14 Dec 2009 11:07:46 +0000 (12:07 +0100)]
Fixed some invalid CSS rules

8 years agoGrit: more robust Actor parsing
Johan Sørensen [Fri, 11 Dec 2009 14:11:19 +0000 (15:11 +0100)]
Grit: more robust Actor parsing

8 years agoAdded another field - last_activity_at - to messages, used in sorting messages for...
Marius Mathiesen [Thu, 10 Dec 2009 14:21:40 +0000 (15:21 +0100)]
Added another field - last_activity_at - to messages, used in sorting messages for a user.

This field is updated independently of other actions on a thread. On new records it is the current time,
when a reply is created, this is set to current time.

8 years agoRemove a bit of line noise from the recent msgs in inbox on the ~user page
Johan Sørensen [Thu, 10 Dec 2009 13:20:58 +0000 (14:20 +0100)]
Remove a bit of line noise from the recent msgs in inbox on the ~user page

8 years agoDo not create favorites for new repositories if it's an internal kind of repo
Johan Sørensen [Thu, 10 Dec 2009 13:05:23 +0000 (14:05 +0100)]
Do not create favorites for new repositories if it's an internal kind of repo

8 years agoCreating a project adds the creator as a watcher of events
Johan Sørensen [Thu, 10 Dec 2009 12:58:51 +0000 (13:58 +0100)]
Creating a project adds the creator as a watcher of events

8 years agoAdd repository user as a watcher when creating a new repository
Johan Sørensen [Thu, 10 Dec 2009 11:49:50 +0000 (12:49 +0100)]
Add repository user as a watcher when creating a new repository

8 years agoNo bang in creation of favorites
Marius Mathiesen [Thu, 10 Dec 2009 12:37:34 +0000 (13:37 +0100)]
No bang in creation of favorites

8 years agoMove creation of favorites into controller. Also adding merge request to owner's...
Marius Mathiesen [Thu, 10 Dec 2009 12:26:32 +0000 (13:26 +0100)]
Move creation of favorites into controller.  Also adding merge request to owner's favorites upon creation

8 years agoDon't attempt to create a committership delete event when deleting a user
Johan Sørensen [Thu, 10 Dec 2009 11:36:35 +0000 (12:36 +0100)]
Don't attempt to create a committership delete event when deleting a user

8 years agoAdded #watched_by!(user) to the Watchable module, as the api for creating favorites
Johan Sørensen [Thu, 10 Dec 2009 11:30:19 +0000 (12:30 +0100)]
Added #watched_by!(user) to the Watchable module, as the api for creating favorites

8 years agoMigration that adds objects owner as having favorited the object
Johan Sørensen [Thu, 10 Dec 2009 10:30:40 +0000 (11:30 +0100)]
Migration that adds objects owner as having favorited the object

So that they'll receive feed items when there's new events for their
own objects

8 years agoChange the way reviewers are notified about new merge requests
Marius Mathiesen [Thu, 10 Dec 2009 10:10:48 +0000 (11:10 +0100)]
Change the way reviewers are notified about new merge requests

When a merge request is created, each reviewer has this added as a favorite. In the same process, a FeedItem is created
for the event associated (now created in the model and accessible as #creation_event). Messages are no longer sent to the
reviewers, as this gave a lot of email to the reviewers. Instead, they will now be able to track the creation (and updates) of merge
requests through their newsfeed.

Since notifications are no longer sent to reviewers, the checkbox on Repositories#edit is no longer displayed (it has no effect). It
is still in the database, though.

8 years agoopen merge-requests and messages on top for the user viewing his own profile
Johan Sørensen [Thu, 10 Dec 2009 09:51:28 +0000 (10:51 +0100)]
open merge-requests and messages on top for the user viewing his own profile

8 years agoFormatting cleanup
Johan Sørensen [Thu, 10 Dec 2009 09:28:40 +0000 (10:28 +0100)]
Formatting cleanup

8 years agoMake sure the user newsfeed atom feed uses the .atom extension and name the feeds
Johan Sørensen [Thu, 10 Dec 2009 09:10:26 +0000 (10:10 +0100)]
Make sure the user newsfeed atom feed uses the .atom extension and name the feeds

8 years agoDon't create feed items for users who are the creator of an event
Johan Sørensen [Thu, 10 Dec 2009 08:45:57 +0000 (09:45 +0100)]
Don't create feed items for users who are the creator of an event

Users wouldn't be too interested in getting notified about what they
just did

8 years agoMove the bulk creation of feed items into the FeedItem class
Johan Sørensen [Wed, 9 Dec 2009 16:11:23 +0000 (17:11 +0100)]
Move the bulk creation of feed items into the FeedItem class

8 years agoDon't create FeedItems for commit events and fetch 30 events for the newsfeed atom...
Johan Sørensen [Wed, 9 Dec 2009 16:01:10 +0000 (17:01 +0100)]
Don't create FeedItems for commit events and fetch 30 events for the newsfeed atom feed

8 years agoCreate a FeedItem model for the User which is responsible for populating his newsfeed
Johan Sørensen [Wed, 9 Dec 2009 15:29:50 +0000 (16:29 +0100)]
Create a FeedItem model for the User which is responsible for populating his newsfeed

The FeedItem is a simple pseudo-join model between a User and the
Events he needs to see in his newsfeed. By having it in a seperate
table we can use it as an index of sorts to figure out which events he
needs to see.

The FeedItems are populated in a bulk manner after an Event is created
by figuring out who watches (through Favorite) the object the Event
belong to. The FeedItem not only makes the finding of watched events
faster, it also allows us to insert things into the event that we
cannot do through a straight join between favorites and events.

8 years agoWhen a merge request is created (confirmed_by_user), each reviewer will have a favori...
Marius Mathiesen [Wed, 9 Dec 2009 15:06:57 +0000 (16:06 +0100)]
When a merge request is created (confirmed_by_user), each reviewer will have a favorite created.

- Support creation of favorites without creating an event.

8 years agoSet a max-width on comment bodies
Johan Sørensen [Wed, 9 Dec 2009 12:34:11 +0000 (13:34 +0100)]
Set a max-width on comment bodies

8 years agoLower the number for MAX_TREE_ENTRIES_FOR_LAST_COMMIT_LOG
Johan Sørensen [Wed, 9 Dec 2009 12:30:47 +0000 (13:30 +0100)]
Lower the number for MAX_TREE_ENTRIES_FOR_LAST_COMMIT_LOG

8 years agoLimit the number of messages displayed on ~login
Marius Mathiesen [Wed, 9 Dec 2009 10:36:54 +0000 (11:36 +0100)]
Limit the number of messages displayed on ~login

- User#messages_in_inbox now takes a limit argument
- Also added link to all messages in pull box

8 years agoDisplay a summary of the user's messages on ~username
Marius Mathiesen [Tue, 8 Dec 2009 14:35:27 +0000 (15:35 +0100)]
Display a summary of the user's messages on ~username

Only when the current user is accessing the page, of course

8 years agoUse a faster two query stategy for finding the latest events
Johan Sørensen [Tue, 8 Dec 2009 17:49:48 +0000 (18:49 +0100)]
Use a faster two query stategy for finding the latest events

8 years agoDon't do a heavy count() query when paginating the ~user newsfeed, instead cheat.
Johan Sørensen [Tue, 8 Dec 2009 13:44:08 +0000 (14:44 +0100)]
Don't do a heavy count() query when paginating the ~user newsfeed, instead cheat.

.. by always assuming there's one more record than what's displayed on the page

8 years agoUpdated will_paginate
Johan Sørensen [Tue, 8 Dec 2009 13:20:20 +0000 (14:20 +0100)]
Updated will_paginate

8 years agoTouch the root message when a reply is created, sort user#messages_in_inbox by updated_at
Marius Mathiesen [Tue, 8 Dec 2009 13:07:48 +0000 (14:07 +0100)]
Touch the root message when a reply is created, sort user#messages_in_inbox by updated_at

8 years agoPaginate newsfeed events better on the ~user page
Johan Sørensen [Tue, 8 Dec 2009 10:35:50 +0000 (11:35 +0100)]
Paginate newsfeed events better on the ~user page

8 years agoOnly create an event the first time a user starts watching something
Marius Mathiesen [Tue, 8 Dec 2009 10:33:24 +0000 (11:33 +0100)]
Only create an event the first time a user starts watching something

8 years agoHide the favorite button for projects, rename atom feed link on ~user
Marius Mathiesen [Tue, 8 Dec 2009 09:30:44 +0000 (10:30 +0100)]
Hide the favorite button for projects, rename atom feed link on ~user

Watching a project may not be a very useful feature

8 years agoMake the javascripts powering favorite_button work with several elements on the page
Marius Mathiesen [Tue, 8 Dec 2009 09:27:25 +0000 (10:27 +0100)]
Make the javascripts powering favorite_button work with several elements on the page

The jQuery extension now calls a function on each element matched by the selector

8 years agoMake sure that we can remove a repository's description
Johan Sørensen [Tue, 8 Dec 2009 09:00:01 +0000 (10:00 +0100)]
Make sure that we can remove a repository's description

Make Repository#replace_value accept an allow_blank parameter to
control whether blank values are ok or not.

8 years agoAdding an Atom feed for user's watchlist
Marius Mathiesen [Mon, 7 Dec 2009 14:53:10 +0000 (15:53 +0100)]
Adding an Atom feed for user's watchlist

- An additional link... tag in Users#show

8 years agoAdded link to follow project, moved link to follow merge request
Marius Mathiesen [Mon, 7 Dec 2009 13:50:45 +0000 (14:50 +0100)]
Added link to follow project, moved link to follow merge request

8 years agoChange the semantics of when to show the user newsfeed
Johan Sørensen [Mon, 7 Dec 2009 14:30:19 +0000 (15:30 +0100)]
Change the semantics of when to show the user newsfeed

If a user is viewing his own profile, show his newsfeed with a link to
see the events everyone else would see. If user views another profile,
show that users events without any newsfeed switching link

8 years agoAdd index to the favorites table
Johan Sørensen [Mon, 7 Dec 2009 13:41:20 +0000 (14:41 +0100)]
Add index to the favorites table

8 years agoUse the new favorite_button helper for merge requests
Marius Mathiesen [Mon, 7 Dec 2009 13:21:57 +0000 (14:21 +0100)]
Use the new favorite_button helper for merge requests

8 years agoProjects can be favorited too (no link in the GUI yet, but still)
Marius Mathiesen [Mon, 7 Dec 2009 13:14:45 +0000 (14:14 +0100)]
Projects can be favorited too (no link in the GUI yet, but still)

8 years agoMake merge requests watchable
Marius Mathiesen [Mon, 7 Dec 2009 12:26:26 +0000 (13:26 +0100)]
Make merge requests watchable

- Moved linking logic into FavoritesHelper
- Favorites know of their project

8 years agoLighten up the repository overview box background a bit
Johan Sørensen [Mon, 7 Dec 2009 13:06:12 +0000 (14:06 +0100)]
Lighten up the repository overview box background a bit

8 years agoCleanup, prettify and unify the repositories overview boxes
Johan Sørensen [Mon, 7 Dec 2009 12:57:35 +0000 (13:57 +0100)]
Cleanup, prettify and unify the repositories overview boxes

 - Get rid of the duplication in _statistics partial (use the _overview instead)
 - Don't use a table when it's not needed
 - Spice up the styling a but
 - Use a button for watch/unwatch link
 - Clean up wording on the clone urls

8 years agoDo not use Ajax for loading events, deleting now obsolete code
Marius Mathiesen [Mon, 7 Dec 2009 10:09:52 +0000 (11:09 +0100)]
Do not use Ajax for loading events, deleting now obsolete code

8 years agoRender the correct events on the AJAX action too
Marius Mathiesen [Mon, 7 Dec 2009 09:40:00 +0000 (10:40 +0100)]
Render the correct events on the AJAX action too

8 years agoMove the watch/unwatch links into the repository box
Johan Sørensen [Mon, 7 Dec 2009 10:14:54 +0000 (11:14 +0100)]
Move the watch/unwatch links into the repository box

8 years agoFix copyright header on FavoritesController to list correct copyright holders of...
Johan Sørensen [Mon, 7 Dec 2009 09:47:32 +0000 (10:47 +0100)]
Fix copyright header on FavoritesController to list correct copyright holders of the content

8 years agoSort watched by recency in the ~user lists
Johan Sørensen [Mon, 7 Dec 2009 09:40:03 +0000 (10:40 +0100)]
Sort watched by recency in the ~user lists

8 years agoThe default events are @user#events, owner can view watched events too
Marius Mathiesen [Mon, 7 Dec 2009 09:18:40 +0000 (10:18 +0100)]
The default events are @user#events, owner can view watched events too

8 years agoPassing parameters to pagination of events saves a few conditionals in UsersController
Marius Mathiesen [Mon, 7 Dec 2009 09:09:44 +0000 (10:09 +0100)]
Passing parameters to pagination of events saves a few conditionals in UsersController

- Will_paginate discards empty :params, letting us specify custom URL parameters where applicable (for pagination)

8 years agoShow a message when user haven't favorited anything
Johan Sørensen [Mon, 7 Dec 2009 09:09:26 +0000 (10:09 +0100)]
Show a message when user haven't favorited anything

8 years agoFixed 1.8 syntax error in UserTest
Johan Sørensen [Mon, 7 Dec 2009 08:53:50 +0000 (09:53 +0100)]
Fixed 1.8 syntax error in UserTest

8 years agoLink to the user from a message and cut some long lines
Johan Sørensen [Fri, 4 Dec 2009 14:00:33 +0000 (15:00 +0100)]
Link to the user from a message and cut some long lines

8 years agoHandle pagination clicks from ajax rendered events by redirecting to Users#show
Marius Mathiesen [Thu, 3 Dec 2009 13:58:31 +0000 (14:58 +0100)]
Handle pagination clicks from ajax rendered events by redirecting to Users#show

- Users#show now accepts ?events=watched for current user, which will render with these activitites

8 years agoCaching the current activity selection
Marius Mathiesen [Thu, 3 Dec 2009 13:18:25 +0000 (14:18 +0100)]
Caching the current activity selection

8 years agoInclude user favorites in Users#show
Marius Mathiesen [Thu, 3 Dec 2009 12:01:17 +0000 (13:01 +0100)]
Include user favorites in Users#show

- Let the user toggle between his own activities and what he's watching on his own page

8 years agoMoved the favorite linking to a separate module
Marius Mathiesen [Tue, 1 Dec 2009 14:41:20 +0000 (15:41 +0100)]
Moved the favorite linking to a separate module

8 years agoAdd an event when someone starts watching a repository.
Marius Mathiesen [Tue, 1 Dec 2009 13:16:46 +0000 (14:16 +0100)]
Add an event when someone starts watching a repository.

- Added rendering of favorite related events

8 years agoFavorites: GUI improvements, rename user accessor to events
Marius Mathiesen [Tue, 1 Dec 2009 09:52:21 +0000 (10:52 +0100)]
Favorites: GUI improvements, rename user accessor to events

- Added waiting indicator when favoriting, added CSS classes
- Renamed User#favorite_events -> User#events_in_watchlist

8 years agoAccess to a user's favorite events
Marius Mathiesen [Mon, 30 Nov 2009 14:55:16 +0000 (15:55 +0100)]
Access to a user's favorite events

Removed old copyrights.

8 years agoGiving test coverage to link helper
Marius Mathiesen [Mon, 30 Nov 2009 11:09:56 +0000 (12:09 +0100)]
Giving test coverage to link helper

8 years agoMoving the form replacer into a testable jQuery plugin
Marius Mathiesen [Mon, 30 Nov 2009 09:37:33 +0000 (10:37 +0100)]
Moving the form replacer into a testable jQuery plugin

8 years agoHook into the create/delete actions for watching with some Ajax goodness
Marius Mathiesen [Thu, 26 Nov 2009 14:42:24 +0000 (15:42 +0100)]
Hook into the create/delete actions for watching with some Ajax goodness

- Add a custom attr to the a tags
- Replace the obtrusive Rails actions with some homebrew
- Favorites#{create,destroy} now supplies a Location header intercepted by javascript