diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/ApplicationConfigurationService.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/ApplicationConfigurationService.java new file mode 100644 index 000000000..c5ba2c462 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/ApplicationConfigurationService.java @@ -0,0 +1,9 @@ +package org.mifosng.configuration; + +public interface ApplicationConfigurationService { + + OAuthProviderDetails retrieveOAuthProviderDetails(); + + void update(OAuthProviderDetails newDetails); + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/InMemoryApplicationConfigurationService.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/InMemoryApplicationConfigurationService.java new file mode 100644 index 000000000..afa4ddfd6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/InMemoryApplicationConfigurationService.java @@ -0,0 +1,51 @@ +package org.mifosng.configuration; + +import org.springframework.stereotype.Service; + +/** + * When application goes down or rebooted, configuration values return to defaults provided here. + */ +@Service +public class InMemoryApplicationConfigurationService implements + ApplicationConfigurationService { + + private String oauthProviderUrl = "http://localhost:8085/mifosng-provider/"; + private String requestTokenURL = "oauth/request_token"; + private String userAuthorizationURL = "oauth/confirm_access"; + private String accessTokenURL = "oauth/access_token"; + + private String individualLendingResourceConsumerkey = "mifosng-ui-consumer-key"; + private String individualLendingConsumerSharedSecret = "testmifosng"; + + public InMemoryApplicationConfigurationService() { + // + } + + @Override + public OAuthProviderDetails retrieveOAuthProviderDetails() { + + String requestTokenFullUrl = this.oauthProviderUrl + .concat(this.requestTokenURL); + String userAuthorizationFullURL = this.oauthProviderUrl + .concat(this.userAuthorizationURL); + String accessTokenFullURL = this.oauthProviderUrl + .concat(this.accessTokenURL); + + return new OAuthProviderDetails(this.oauthProviderUrl, requestTokenFullUrl, + userAuthorizationFullURL, accessTokenFullURL, + this.individualLendingResourceConsumerkey, + this.individualLendingConsumerSharedSecret); + } + + @Override + public void update(OAuthProviderDetails newDetails) { + this.oauthProviderUrl = newDetails.getProviderBaseUrl(); + if (!this.oauthProviderUrl.endsWith("/")) { + this.oauthProviderUrl = this.oauthProviderUrl.concat("/"); + } + + this.individualLendingResourceConsumerkey = newDetails.getConsumerkey(); + this.individualLendingConsumerSharedSecret = newDetails.getSharedSecret(); + } + +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/OAuthProviderDetails.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/OAuthProviderDetails.java new file mode 100644 index 000000000..9363a324d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/configuration/OAuthProviderDetails.java @@ -0,0 +1,56 @@ +package org.mifosng.configuration; + +public class OAuthProviderDetails { + + private final String requestTokenUrl; + private final String userAuthorizationUrl; + private final String accessTokenUrl; + private final String sharedSecret; + private final String consumerkey; + private final String providerBaseUrl; + + public OAuthProviderDetails(String providerBaseUrl, String requestTokenUrl, + String userAuthorizationUrl, String accessTokenUrl, + String consumerkey, String sharedSecret) { + this.providerBaseUrl = providerBaseUrl; + this.requestTokenUrl = requestTokenUrl; + this.userAuthorizationUrl = userAuthorizationUrl; + this.accessTokenUrl = accessTokenUrl; + this.consumerkey = consumerkey; + this.sharedSecret = sharedSecret; + } + + public OAuthProviderDetails(String oauthProviderUrl, String consumerkey, + String sharedSecret) { + this.providerBaseUrl = oauthProviderUrl; + this.consumerkey = consumerkey; + this.sharedSecret = sharedSecret; + this.accessTokenUrl = ""; + this.userAuthorizationUrl = ""; + this.requestTokenUrl = ""; + } + + public String getRequestTokenUrl() { + return requestTokenUrl; + } + + public String getUserAuthorizationUrl() { + return userAuthorizationUrl; + } + + public String getAccessTokenUrl() { + return accessTokenUrl; + } + + public String getSharedSecret() { + return sharedSecret; + } + + public String getConsumerkey() { + return consumerkey; + } + + public String getProviderBaseUrl() { + return providerBaseUrl; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/ConsumerUserDetails.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/ConsumerUserDetails.java new file mode 100644 index 000000000..272518409 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/ConsumerUserDetails.java @@ -0,0 +1,93 @@ +package org.mifosng.oauth; + +import java.util.Collection; + +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; + +public class ConsumerUserDetails implements UserDetails { + + private final String username; + private final Collection authorities; + + public ConsumerUserDetails(String username, Collection authorities) { + this.username = username; + this.authorities = authorities; + } + + @Override + public Collection getAuthorities() { + return authorities; + } + + @Override + public String getPassword() { + return ""; + } + + @Override + public String getUsername() { + return username; + } + + @Override + public boolean isAccountNonExpired() { + return true; + } + + @Override + public boolean isAccountNonLocked() { + return true; + } + + @Override + public boolean isCredentialsNonExpired() { + return true; + } + + @Override + public boolean isEnabled() { + return true; + } + + public boolean hasNoReportingAuthority() { + return !hasReportingAuthority(); + } + + private boolean hasReportingAuthority() { + SimpleGrantedAuthority reportingAuthority = new SimpleGrantedAuthority("REPORTING_SUPER_USER_ROLE"); + return this.authorities.contains(reportingAuthority); + } + + public boolean hasNoAuthorityToSumitLoanApplication() { + return !hasAuthorityToSumitLoanApplication(); + } + + private boolean hasAuthorityToSumitLoanApplication() { + return containsAnyOf(portfolioAllAuthority(), sumbitLoanApplicationAuthority(), sumbitHistoricLoanApplicationAuthority()); + } + + private boolean containsAnyOf(SimpleGrantedAuthority... authorities) { + boolean match = false; + for (SimpleGrantedAuthority authority : authorities) { + match = this.authorities.contains(authority); + if (match) { + break; + } + } + return match; + } + + private SimpleGrantedAuthority portfolioAllAuthority() { + return new SimpleGrantedAuthority("PORTFOLIO_MANAGEMENT_SUPER_USER_ROLE"); + } + + private SimpleGrantedAuthority sumbitLoanApplicationAuthority() { + return new SimpleGrantedAuthority("CAN_SUBMIT_NEW_LOAN_APPLICATION_ROLE"); + } + + private SimpleGrantedAuthority sumbitHistoricLoanApplicationAuthority() { + return new SimpleGrantedAuthority("CAN_SUBMIT_HISTORIC_LOAN_APPLICATION_ROLE"); + } +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/CustomOAuthConsumerContextFilter.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/CustomOAuthConsumerContextFilter.java new file mode 100644 index 000000000..49b49083d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/CustomOAuthConsumerContextFilter.java @@ -0,0 +1,270 @@ +package org.mifosng.oauth; + +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URI; +import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.Map; +import java.util.TreeMap; + +import javax.servlet.FilterChain; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +import org.mifosng.configuration.ApplicationConfigurationService; +import org.mifosng.data.AuthenticatedUserData; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +import org.springframework.http.ResponseEntity; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.context.SecurityContext; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.security.core.context.SecurityContextImpl; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.oauth.common.OAuthProviderParameter; +import org.springframework.security.oauth.consumer.OAuthConsumerToken; +import org.springframework.security.oauth.consumer.OAuthRequestFailedException; +import org.springframework.security.oauth.consumer.OAuthSecurityContextHolder; +import org.springframework.security.oauth.consumer.OAuthSecurityContextImpl; +import org.springframework.security.oauth.consumer.ProtectedResourceDetails; +import org.springframework.security.oauth.consumer.client.CoreOAuthConsumerSupport; +import org.springframework.security.oauth.consumer.filter.OAuthConsumerContextFilter; +import org.springframework.security.web.DefaultRedirectStrategy; +import org.springframework.security.web.RedirectStrategy; +import org.springframework.web.client.HttpStatusCodeException; + +public class CustomOAuthConsumerContextFilter extends OAuthConsumerContextFilter { + + private RedirectStrategy redirectStrategy = new DefaultRedirectStrategy(); + private final ApplicationConfigurationService applicationConfigurationService; + + @Autowired + public CustomOAuthConsumerContextFilter(final ApplicationConfigurationService applicationConfigurationService) { + this.applicationConfigurationService = applicationConfigurationService; + + } + + public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain chain) throws IOException, ServletException { + HttpServletRequest request = (HttpServletRequest) servletRequest; + HttpServletResponse response = (HttpServletResponse) servletResponse; + + OAuthSecurityContextImpl context = new OAuthSecurityContextImpl(); + context.setDetails(request); + + Map rememberedTokens = getRememberMeServices().loadRememberedTokens(request, response); + Map accessTokens = new TreeMap(); + Map requestTokens = new TreeMap(); + if (rememberedTokens != null) { + for (Map.Entry tokenEntry : rememberedTokens.entrySet()) { + OAuthConsumerToken token = tokenEntry.getValue(); + if (token != null) { + if (token.isAccessToken()) { + accessTokens.put(tokenEntry.getKey(), token); + } + else { + requestTokens.put(tokenEntry.getKey(), token); + } + } + } + } + + context.setAccessTokens(accessTokens); + OAuthSecurityContextHolder.setContext(context); +// if (LOG.isDebugEnabled()) { +// LOG.debug("Storing access tokens in request attribute '" + getAccessTokensRequestAttribute() + "'."); +// } + + try { + try { + request.setAttribute(getAccessTokensRequestAttribute(), new ArrayList(accessTokens.values())); + chain.doFilter(request, response); + } + catch (Exception e) { + try { + ProtectedResourceDetails resourceThatNeedsAuthorization = checkForResourceThatNeedsAuthorization(e); + String neededResourceId = resourceThatNeedsAuthorization.getId(); + while (!accessTokens.containsKey(neededResourceId)) { + OAuthConsumerToken token = requestTokens.remove(neededResourceId); + if (token == null) { + token = getTokenServices().getToken(neededResourceId); + } + + String verifier = request.getParameter(OAuthProviderParameter.oauth_verifier.toString()); + // if the token is null OR + // if there is NO access token and (we're not using 1.0a or the verifier is not null) + if (token == null || (!token.isAccessToken() && (!resourceThatNeedsAuthorization.isUse10a() || verifier == null))) { + //no token associated with the resource, start the oauth flow. + //if there's a request token, but no verifier, we'll assume that a previous oauth request failed and we need to get a new request token. +// if (LOG.isDebugEnabled()) { +// LOG.debug("Obtaining request token for resource: " + neededResourceId); +// } + + //obtain authorization. + String callbackURL = response.encodeRedirectURL(getCallbackURL(request)); + token = getConsumerSupport().getUnauthorizedRequestToken(neededResourceId, callbackURL); +// if (LOG.isDebugEnabled()) { +// LOG.debug("Request token obtained for resource " + neededResourceId + ": " + token); +// } + + //okay, we've got a request token, now we need to authorize it. + requestTokens.put(neededResourceId, token); + getTokenServices().storeToken(neededResourceId, token); + + + try { + String baseURL = this.applicationConfigurationService.retrieveOAuthProviderDetails().getUserAuthorizationUrl(); + StringBuilder builder = new StringBuilder(baseURL); + char appendChar = baseURL.indexOf('?') < 0 ? '?' : '&'; + builder.append(appendChar).append("oauth_token="); + builder.append(URLEncoder.encode(token.getValue(), "UTF-8")); + builder.append('&').append("oauth_callback="); + builder.append(URLEncoder.encode(callbackURL, "UTF-8")); + + String redirect = builder.toString(); + + request.setAttribute("org.springframework.security.oauth.consumer.AccessTokenRequiredException", e); + this.redirectStrategy.sendRedirect(request, response, redirect); + return; + } + catch (UnsupportedEncodingException use) { + throw new IllegalStateException(use); + } + } + else if (!token.isAccessToken()) { + //we have a presumably authorized request token, let's try to get an access token with it. +// if (LOG.isDebugEnabled()) { +// LOG.debug("Obtaining access token for resource: " + neededResourceId); +// } + + //authorize the request token and store it. + try { + token = getConsumerSupport().getAccessToken(token, verifier); + } + finally { + getTokenServices().removeToken(neededResourceId); + } + +// if (LOG.isDebugEnabled()) { +// LOG.debug("Access token " + token + " obtained for resource " + neededResourceId + ". Now storing and using."); +// } + + getTokenServices().storeToken(neededResourceId, token); + } + + accessTokens.put(neededResourceId, token); + + // hack here to detect this situation which happens once user is authenticated successfully on provider + // and redirected back to this client application + String oauthAccessToken = request.getParameter("oauth_token"); + String oauthVerifier = request.getParameter("oauth_verifier"); + + if (StringUtils.isNotBlank(oauthAccessToken) && StringUtils.isNotBlank(oauthVerifier)) { + CoreOAuthConsumerSupport support = (CoreOAuthConsumerSupport)getConsumerSupport(); + + MifosNgOauthRestTemplate oauthRestTemplate = new MifosNgOauthRestTemplate(support.getProtectedResourceDetailsService()); + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/user/" + + oauthAccessToken)); + + ResponseEntity s = oauthRestTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), AuthenticatedUserData.class); + + AuthenticatedUserData userData = s.getBody(); + + SecurityContextHolder.clearContext(); + SecurityContext springSecurityContext = new SecurityContextImpl(); + + Collection authorities = new ArrayList(); + authorities.add(new SimpleGrantedAuthority("ROLE_USER")); + for (String permissionCode : userData.getPermissions()) { + authorities.add(new SimpleGrantedAuthority(permissionCode)); + } + + UserDetails principal = new ConsumerUserDetails(userData.getUsername(), authorities); + Authentication auth = new UsernamePasswordAuthenticationToken(principal, principal, principal.getAuthorities()); + springSecurityContext.setAuthentication(auth); + + SecurityContextHolder.setContext(springSecurityContext); + + } catch (HttpStatusCodeException ex) { + System.err.println(ex.getResponseBodyAsString()); + throw ex; + } + } + + try { + //try again + if (!response.isCommitted()) { + request.setAttribute(getAccessTokensRequestAttribute(), new ArrayList(accessTokens.values())); + chain.doFilter(request, response); + } + else { + //dang. what do we do now? + throw new IllegalStateException("Unable to reprocess filter chain with needed OAuth2 resources because the response is already committed."); + } + } + catch (Exception e1) { + resourceThatNeedsAuthorization = checkForResourceThatNeedsAuthorization(e1); + neededResourceId = resourceThatNeedsAuthorization.getId(); + } + } + } + catch (OAuthRequestFailedException eo) { + fail(request, response, eo); + } + catch (Exception ex) { + Throwable[] causeChain = getThrowableAnalyzer().determineCauseChain(ex); + OAuthRequestFailedException rfe = (OAuthRequestFailedException) getThrowableAnalyzer().getFirstThrowableOfType(OAuthRequestFailedException.class, causeChain); + if (rfe != null) { + fail(request, response, rfe); + } + else { + // Rethrow ServletExceptions and RuntimeExceptions as-is + if (ex instanceof ServletException) { + throw (ServletException) ex; + } + else if (ex instanceof RuntimeException) { + throw (RuntimeException) ex; + } + + // Wrap other Exceptions. These are not expected to happen + throw new RuntimeException(ex); + } + } + } + } + finally { + OAuthSecurityContextHolder.setContext(null); + HashMap tokensToRemember = new HashMap(); + tokensToRemember.putAll(requestTokens); + tokensToRemember.putAll(accessTokens); + getRememberMeServices().rememberTokens(tokensToRemember, request, response); + } + } + + private HttpEntity emptyRequest() { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + requestHeaders); + return requestEntity; + } + + private String getBaseServerUrl() { + return this.applicationConfigurationService.retrieveOAuthProviderDetails().getProviderBaseUrl(); + } +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/CustomOAuthConsumerProcessingFilter.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/CustomOAuthConsumerProcessingFilter.java new file mode 100644 index 000000000..139766ec4 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/CustomOAuthConsumerProcessingFilter.java @@ -0,0 +1,67 @@ +package org.mifosng.oauth; + +import java.io.IOException; +import java.util.Map; +import java.util.Set; + +import javax.servlet.FilterChain; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.security.authentication.InsufficientAuthenticationException; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.security.oauth.consumer.AccessTokenRequiredException; +import org.springframework.security.oauth.consumer.OAuthConsumerToken; +import org.springframework.security.oauth.consumer.OAuthSecurityContext; +import org.springframework.security.oauth.consumer.OAuthSecurityContextHolder; +import org.springframework.security.oauth.consumer.filter.OAuthConsumerProcessingFilter; + +public class CustomOAuthConsumerProcessingFilter extends + OAuthConsumerProcessingFilter { + + @Override + public void doFilter(ServletRequest servletRequest, + ServletResponse servletResponse, FilterChain chain) + throws IOException, ServletException { + HttpServletRequest request = (HttpServletRequest) servletRequest; + HttpServletResponse response = (HttpServletResponse) servletResponse; + + Set accessTokenDeps = getAccessTokenDependencies(request, + response, chain); + if (!accessTokenDeps.isEmpty()) { + Authentication authentication = SecurityContextHolder.getContext() + .getAuthentication(); + if (isRequireAuthenticated() && !authentication.isAuthenticated()) { + throw new InsufficientAuthenticationException( + "An authenticated principal must be present."); + } + + OAuthSecurityContext context = OAuthSecurityContextHolder + .getContext(); + if (context == null) { + throw new IllegalStateException( + "No OAuth security context has been established. Unable to access resources."); + } + + Map accessTokens = context + .getAccessTokens(); + + for (String dependency : accessTokenDeps) { + if (!accessTokens.containsKey(dependency)) { + throw new AccessTokenRequiredException( + getProtectedResourceDetailsService() + .loadProtectedResourceDetailsById( + dependency)); + } + } + + chain.doFilter(request, response); + } else { + chain.doFilter(servletRequest, servletResponse); + } + } +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgOauthConsumerContextFilter.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgOauthConsumerContextFilter.java new file mode 100644 index 000000000..4bff76770 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgOauthConsumerContextFilter.java @@ -0,0 +1,233 @@ +package org.mifosng.oauth; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.TreeMap; + +import javax.servlet.FilterChain; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.mifosng.ui.JaxRs311ErrorResponseHandler; +import org.springframework.security.oauth.common.OAuthProviderParameter; +import org.springframework.security.oauth.consumer.OAuthConsumerToken; +import org.springframework.security.oauth.consumer.OAuthRequestFailedException; +import org.springframework.security.oauth.consumer.OAuthSecurityContextHolder; +import org.springframework.security.oauth.consumer.OAuthSecurityContextImpl; +import org.springframework.security.oauth.consumer.ProtectedResourceDetails; +import org.springframework.security.oauth.consumer.filter.OAuthConsumerContextFilter; +import org.springframework.web.client.DefaultResponseErrorHandler; +import org.springframework.web.client.ResponseErrorHandler; +import org.springframework.web.client.RestTemplate; + +public class MifosNgOauthConsumerContextFilter extends + OAuthConsumerContextFilter { + + private static final Log LOG = LogFactory + .getLog(MifosNgOauthConsumerContextFilter.class); + + private RestTemplate noAuthRestTemplate; + + @Override + public void doFilter(final ServletRequest servletRequest, + final ServletResponse servletResponse, final FilterChain chain) + throws IOException, ServletException { + + ResponseErrorHandler defaultResponseErrorHandler = new DefaultResponseErrorHandler(); + ResponseErrorHandler jaxrs311ErrorResponseHandler = new JaxRs311ErrorResponseHandler( + defaultResponseErrorHandler); + this.noAuthRestTemplate = new RestTemplate(); + this.noAuthRestTemplate.setErrorHandler(jaxrs311ErrorResponseHandler); + + HttpServletRequest request = (HttpServletRequest) servletRequest; + HttpServletResponse response = (HttpServletResponse) servletResponse; + OAuthSecurityContextImpl context = new OAuthSecurityContextImpl(); + context.setDetails(request); + + Map rememberedTokens = getRememberMeServices() + .loadRememberedTokens(request, response); + Map accessTokens = new TreeMap(); + Map requestTokens = new TreeMap(); + if (rememberedTokens != null) { + for (Map.Entry tokenEntry : rememberedTokens + .entrySet()) { + OAuthConsumerToken token = tokenEntry.getValue(); + if (token != null) { + if (token.isAccessToken()) { + accessTokens.put(tokenEntry.getKey(), token); + } else { + requestTokens.put(tokenEntry.getKey(), token); + } + } + } + } + + context.setAccessTokens(accessTokens); + OAuthSecurityContextHolder.setContext(context); + if (LOG.isDebugEnabled()) { + LOG.debug("Storing access tokens in request attribute '" + + getAccessTokensRequestAttribute() + "'."); + } + + try { + try { + request.setAttribute( + getAccessTokensRequestAttribute(), + new ArrayList(accessTokens.values())); + chain.doFilter(request, response); + } catch (Exception e) { + try { + ProtectedResourceDetails resourceThatNeedsAuthorization = checkForResourceThatNeedsAuthorization(e); + String neededResourceId = resourceThatNeedsAuthorization + .getId(); + while (!accessTokens.containsKey(neededResourceId)) { + OAuthConsumerToken token = requestTokens + .remove(neededResourceId); + if (token == null) { + token = getTokenServices().getToken( + neededResourceId); + } + + String verifier = request + .getParameter(OAuthProviderParameter.oauth_verifier + .toString()); + // if the token is null OR + // if there is NO access token and (we're not using 1.0a + // or the verifier is not null) + if (token == null + || !token.isAccessToken() + && (!resourceThatNeedsAuthorization.isUse10a() || verifier == null)) { + // no token associated with the resource, start the + // oauth flow. + // if there's a request token, but no verifier, + // we'll assume that a previous oauth request failed + // and we need to get a new request token. + if (LOG.isDebugEnabled()) { + LOG.debug("Obtaining request token for resource: " + + neededResourceId); + } + + // obtain authorization. + String callbackURL = response + .encodeRedirectURL(getCallbackURL(request)); + token = getConsumerSupport() + .getUnauthorizedRequestToken( + neededResourceId, callbackURL); + if (LOG.isDebugEnabled()) { + LOG.debug("Request token obtained for resource " + + neededResourceId + ": " + token); + } + + // okay, we've got a request token, now we need to + // authorize it. + requestTokens.put(neededResourceId, token); + getTokenServices().storeToken(neededResourceId, + token); + String redirect = getUserAuthorizationRedirectURL( + resourceThatNeedsAuthorization, token, + callbackURL); + + if (LOG.isDebugEnabled()) { + LOG.debug("Redirecting request to " + + redirect + + " for user authorization of the request token for resource " + + neededResourceId + "."); + } + + request.setAttribute( + "org.springframework.security.oauth.consumer.AccessTokenRequiredException", + e); + getRedirectStrategy().sendRedirect(request, + response, redirect); + return; + } else if (!token.isAccessToken()) { + // we have a presumably authorized request token, + // let's try to get an access token with it. + if (LOG.isDebugEnabled()) { + LOG.debug("Obtaining access token for resource: " + + neededResourceId); + } + + // authorize the request token and store it. + try { + token = getConsumerSupport().getAccessToken( + token, verifier); + } finally { + getTokenServices() + .removeToken(neededResourceId); + } + + if (LOG.isDebugEnabled()) { + LOG.debug("Access token " + token + + " obtained for resource " + + neededResourceId + + ". Now storing and using."); + } + + getTokenServices().storeToken(neededResourceId, + token); + } + + accessTokens.put(neededResourceId, token); + + try { + // try again + if (!response.isCommitted()) { + request.setAttribute( + getAccessTokensRequestAttribute(), + new ArrayList( + accessTokens.values())); + chain.doFilter(request, response); + } else { + // dang. what do we do now? + throw new IllegalStateException( + "Unable to reprocess filter chain with needed OAuth2 resources because the response is already committed."); + } + } catch (Exception e1) { + resourceThatNeedsAuthorization = checkForResourceThatNeedsAuthorization(e1); + neededResourceId = resourceThatNeedsAuthorization + .getId(); + } + } + } catch (OAuthRequestFailedException eo) { + fail(request, response, eo); + } catch (Exception ex) { + Throwable[] causeChain = getThrowableAnalyzer() + .determineCauseChain(ex); + OAuthRequestFailedException rfe = (OAuthRequestFailedException) getThrowableAnalyzer() + .getFirstThrowableOfType( + OAuthRequestFailedException.class, + causeChain); + if (rfe != null) { + fail(request, response, rfe); + } else { + // Rethrow ServletExceptions and RuntimeExceptions as-is + if (ex instanceof ServletException) { + throw (ServletException) ex; + } else if (ex instanceof RuntimeException) { + throw (RuntimeException) ex; + } + + // Wrap other Exceptions. These are not expected to + // happen + throw new RuntimeException(ex); + } + } + } + } finally { + OAuthSecurityContextHolder.setContext(null); + HashMap tokensToRemember = new HashMap(); + tokensToRemember.putAll(requestTokens); + tokensToRemember.putAll(accessTokens); + getRememberMeServices().rememberTokens(tokensToRemember, request, + response); + } + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgOauthRestTemplate.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgOauthRestTemplate.java new file mode 100644 index 000000000..c7a865592 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgOauthRestTemplate.java @@ -0,0 +1,16 @@ +package org.mifosng.oauth; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.oauth.consumer.ProtectedResourceDetailsService; +import org.springframework.security.oauth.consumer.client.OAuthRestTemplate; +import org.springframework.stereotype.Service; + +@Service(value="oauthRestServiceTemplate") +public class MifosNgOauthRestTemplate extends OAuthRestTemplate { + + @Autowired + public MifosNgOauthRestTemplate(ProtectedResourceDetailsService protectedResourceDetailsService) { + super(protectedResourceDetailsService.loadProtectedResourceDetailsById("protectedMifosNgServices")); + } + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgProtectedResourceDetailsService.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgProtectedResourceDetailsService.java new file mode 100644 index 000000000..9e0ee1561 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/MifosNgProtectedResourceDetailsService.java @@ -0,0 +1,69 @@ +package org.mifosng.oauth; + +import java.util.HashMap; +import java.util.Map; + +import org.mifosng.configuration.ApplicationConfigurationService; +import org.mifosng.configuration.OAuthProviderDetails; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.oauth.common.signature.SharedConsumerSecret; +import org.springframework.security.oauth.consumer.BaseProtectedResourceDetails; +import org.springframework.security.oauth.consumer.ProtectedResourceDetails; +import org.springframework.security.oauth.consumer.ProtectedResourceDetailsService; +import org.springframework.stereotype.Service; + +@Service(value="mifosNgInMemoryResourceDetailsService") +public class MifosNgProtectedResourceDetailsService implements + ProtectedResourceDetailsService, RefreshableProtectedResourceDetailsService { + + private Map resourceDetailsStore = new HashMap(); + private final ApplicationConfigurationService applicationConfigurationService; + + @Autowired + public MifosNgProtectedResourceDetailsService(ApplicationConfigurationService applicationConfigurationService) { + this.applicationConfigurationService = applicationConfigurationService; + addHardcodedMifosNgResourceIdToStore(); + } + + private void addHardcodedMifosNgResourceIdToStore() { + BaseProtectedResourceDetails individualLendingResourceDetails = new BaseProtectedResourceDetails(); + individualLendingResourceDetails.setId("protectedMifosNgServices"); + + OAuthProviderDetails oauthProviderDetails = applicationConfigurationService + .retrieveOAuthProviderDetails(); + + individualLendingResourceDetails + .setRequestTokenURL(oauthProviderDetails.getRequestTokenUrl()); + individualLendingResourceDetails + .setUserAuthorizationURL(oauthProviderDetails + .getUserAuthorizationUrl()); + individualLendingResourceDetails.setAccessTokenURL(oauthProviderDetails + .getAccessTokenUrl()); + + individualLendingResourceDetails.setConsumerKey(oauthProviderDetails + .getConsumerkey()); + individualLendingResourceDetails + .setSharedSecret(new SharedConsumerSecret(oauthProviderDetails + .getSharedSecret())); + + resourceDetailsStore.put( + individualLendingResourceDetails.getId(), + individualLendingResourceDetails); + } + + @Override + public ProtectedResourceDetails loadProtectedResourceDetailsById( + final String id) throws IllegalArgumentException { + return resourceDetailsStore.get(id); + } + + @Override + public void refresh() { + resourceDetailsStore.clear(); + addHardcodedMifosNgResourceIdToStore(); + } + + public ApplicationConfigurationService getApplicationConfigurationService() { + return applicationConfigurationService; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/OAuthConsumerFilterFilterInvocationSecurityMetadataSource.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/OAuthConsumerFilterFilterInvocationSecurityMetadataSource.java new file mode 100644 index 000000000..e6b6cba67 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/OAuthConsumerFilterFilterInvocationSecurityMetadataSource.java @@ -0,0 +1,45 @@ +package org.mifosng.oauth; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.LinkedHashMap; + +import org.springframework.security.access.ConfigAttribute; +import org.springframework.security.access.SecurityConfig; +import org.springframework.security.web.access.intercept.DefaultFilterInvocationSecurityMetadataSource; +import org.springframework.security.web.access.intercept.FilterInvocationSecurityMetadataSource; +import org.springframework.security.web.util.AntPathRequestMatcher; +import org.springframework.security.web.util.RequestMatcher; + +public class OAuthConsumerFilterFilterInvocationSecurityMetadataSource + implements FilterInvocationSecurityMetadataSource { + + private final FilterInvocationSecurityMetadataSource metadataSource; + + public OAuthConsumerFilterFilterInvocationSecurityMetadataSource() { + LinkedHashMap> requestMap = new LinkedHashMap>(); + RequestMatcher key = new AntPathRequestMatcher("/sparklr/**"); + Collection value = new ArrayList(); + value.add(new SecurityConfig("sparklrPhotos")); + requestMap.put(key, value); + + this.metadataSource = new DefaultFilterInvocationSecurityMetadataSource( + requestMap); + } + + @Override + public Collection getAttributes(final Object object) + throws IllegalArgumentException { + return this.metadataSource.getAttributes(object); + } + + @Override + public Collection getAllConfigAttributes() { + return this.metadataSource.getAllConfigAttributes(); + } + + @Override + public boolean supports(final Class clazz) { + return this.metadataSource.supports(clazz); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/OAuthLogoutHandler.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/OAuthLogoutHandler.java new file mode 100644 index 000000000..1ff23f178 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/OAuthLogoutHandler.java @@ -0,0 +1,91 @@ +package org.mifosng.oauth; + +import java.net.URI; +import java.util.Map; +import java.util.TreeMap; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.mifosng.configuration.OAuthProviderDetails; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +import org.springframework.security.core.Authentication; +import org.springframework.security.oauth.consumer.OAuthConsumerToken; +import org.springframework.security.oauth.consumer.OAuthSecurityContextHolder; +import org.springframework.security.oauth.consumer.OAuthSecurityContextImpl; +import org.springframework.security.oauth.consumer.rememberme.OAuthRememberMeServices; +import org.springframework.security.web.authentication.logout.LogoutHandler; +import org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler; + +/** + * Logout Filter process before oauth filters are applied so need create OAuthSercurityContext and populate with 'remembered tokens' first. + */ +public class OAuthLogoutHandler implements LogoutHandler { + + private final SecurityContextLogoutHandler delegate; + private final MifosNgProtectedResourceDetailsService protectedResourceDetailsService; + private final OAuthRememberMeServices oAuthRememberMeServices; + + public OAuthLogoutHandler(final SecurityContextLogoutHandler delegate, final MifosNgProtectedResourceDetailsService protectedResourceDetailsService, + final OAuthRememberMeServices oAuthRememberMeServices) { + this.delegate = delegate; + this.protectedResourceDetailsService = protectedResourceDetailsService; + this.oAuthRememberMeServices = oAuthRememberMeServices; + } + + @Override + public void logout(HttpServletRequest request, + HttpServletResponse response, Authentication authentication) { + + this.delegate.logout(request, response, authentication); + + OAuthSecurityContextImpl context = new OAuthSecurityContextImpl(); + context.setDetails(request); + + Map rememberedTokens = this.oAuthRememberMeServices.loadRememberedTokens(request, response); + Map accessTokens = new TreeMap(); + if (rememberedTokens != null) { + for (Map.Entry tokenEntry : rememberedTokens.entrySet()) { + OAuthConsumerToken token = tokenEntry.getValue(); + if (token != null) { + if (token.isAccessToken()) { + accessTokens.put(tokenEntry.getKey(), token); + } + } + } + } + + context.setAccessTokens(accessTokens); + OAuthSecurityContextHolder.setContext(context); + + if (!accessTokens.isEmpty()) { + MifosNgOauthRestTemplate oauthRestTemplate = new MifosNgOauthRestTemplate( + protectedResourceDetailsService); + + OAuthProviderDetails providerDetails = this.protectedResourceDetailsService + .getApplicationConfigurationService() + .retrieveOAuthProviderDetails(); + + URI restUri = URI.create(providerDetails.getProviderBaseUrl() + .concat("api/protected/user/signout")); + + oauthRestTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), + null); + } + + OAuthSecurityContextHolder.setContext(null); + } + + + private HttpEntity emptyRequest() { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + requestHeaders); + return requestEntity; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/RefreshableProtectedResourceDetailsService.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/RefreshableProtectedResourceDetailsService.java new file mode 100644 index 000000000..eddd5eaaa --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/oauth/RefreshableProtectedResourceDetailsService.java @@ -0,0 +1,7 @@ +package org.mifosng.oauth; + +public interface RefreshableProtectedResourceDetailsService { + + void refresh(); + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/CommonRestOperations.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/CommonRestOperations.java new file mode 100644 index 000000000..24d42919c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/CommonRestOperations.java @@ -0,0 +1,177 @@ +package org.mifosng.ui; + +import java.util.Collection; +import java.util.Map; + +import org.mifosng.data.AppUserData; +import org.mifosng.data.ClientData; +import org.mifosng.data.ClientDataWithAccountsData; +import org.mifosng.data.CurrencyData; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.EnumOptionReadModel; +import org.mifosng.data.ExtraDatasets; +import org.mifosng.data.LoanAccountData; +import org.mifosng.data.LoanProductData; +import org.mifosng.data.LoanRepaymentData; +import org.mifosng.data.LoanSchedule; +import org.mifosng.data.NewLoanWorkflowStepOneData; +import org.mifosng.data.NoteData; +import org.mifosng.data.OfficeData; +import org.mifosng.data.PermissionData; +import org.mifosng.data.RoleData; +import org.mifosng.data.command.AdjustLoanTransactionCommand; +import org.mifosng.data.command.CalculateLoanScheduleCommand; +import org.mifosng.data.command.ChangePasswordCommand; +import org.mifosng.data.command.CreateLoanProductCommand; +import org.mifosng.data.command.EnrollClientCommand; +import org.mifosng.data.command.LoanStateTransitionCommand; +import org.mifosng.data.command.LoanTransactionCommand; +import org.mifosng.data.command.NoteCommand; +import org.mifosng.data.command.OfficeCommand; +import org.mifosng.data.command.RoleCommand; +import org.mifosng.data.command.SubmitLoanApplicationCommand; +import org.mifosng.data.command.UndoLoanApprovalCommand; +import org.mifosng.data.command.UndoLoanDisbursalCommand; +import org.mifosng.data.command.UpdateLoanProductCommand; +import org.mifosng.data.command.UpdateOrganisationCurrencyCommand; +import org.mifosng.data.command.UserCommand; +import org.mifosng.data.reports.GenericResultset; +import org.springframework.security.oauth.consumer.ProtectedResourceDetails; + +public interface CommonRestOperations { + + void logout(String accessToken); + + void updateProtectedResource( + ProtectedResourceDetails loadProtectedResourceDetailsById); + + void updateOrganisationCurrencies(UpdateOrganisationCurrencyCommand command); + + Collection retrieveAllOffices(); + + OfficeData retrieveOffice(Long officeId); + + Collection retrieveAllUsers(); + + AppUserData retrieveNewUserDetails(); + + AppUserData retrieveUser(Long userId); + + AppUserData retrieveCurrentUser(); + + EntityIdentifier createUser(UserCommand command); + + EntityIdentifier updateUser(UserCommand command); + + EntityIdentifier updateCurrentUserPassword(ChangePasswordCommand command); + + void deleteUser(Long userId); + + Collection retrieveAllRoles(); + + RoleData retrieveRole(Long roleId); + + RoleData retrieveNewRoleDetails(); + + EntityIdentifier updateRole(RoleCommand command); + + Collection retrieveAllPermissions(); + + Collection retrieveAllPermissionGroups(); + + EntityIdentifier createRole(RoleCommand command); + + EntityIdentifier createOffice(OfficeCommand command); + + EntityIdentifier updateOffice(OfficeCommand command); + + Collection retrieveAllIndividualClients(); + + Collection retrieveAllLoanProducts(); + + Collection retrieveAllowedCurrencies(); + + Collection retrieveAllPlatformCurrencies(); + + Collection retrieveAllowedLoanAmortizationMethodOptions(); + + Collection retrieveAllowedLoanInterestMethodOptions(); + + Collection retrieveAllowedRepaymentFrequencyOptions(); + + Collection retrieveAllowedNominalInterestFrequencyOptions(); + + EntityIdentifier createLoanProduct(CreateLoanProductCommand command); + + EntityIdentifier updateLoanProduct(UpdateLoanProductCommand command); + + LoanProductData retrieveLoanProductDetails(Long selectedLoanProductOption); + + LoanProductData retrieveNewLoanProductDetails(); + + LoanSchedule calculateLoanSchedule(CalculateLoanScheduleCommand command); + + NewLoanWorkflowStepOneData retrieveNewLoanApplicationStepOneDetails( + Long clientId); + + Long submitLoanApplication(SubmitLoanApplicationCommand command); + + EntityIdentifier deleteLoan(Long loanId); + + EntityIdentifier approveLoan(LoanStateTransitionCommand command); + + EntityIdentifier undoLoanApproval(UndoLoanApprovalCommand command); + + EntityIdentifier rejectLoan(LoanStateTransitionCommand command); + + EntityIdentifier withdrawLoan(LoanStateTransitionCommand command); + + EntityIdentifier disburseLoan(LoanStateTransitionCommand command); + + EntityIdentifier undloLoanDisbursal(UndoLoanDisbursalCommand command); + + LoanRepaymentData retrieveNewLoanRepaymentDetails(Long loanId); + + LoanRepaymentData retrieveLoanRepaymentDetails(Long loanId, Long repaymentId); + + EntityIdentifier makeLoanRepayment(LoanTransactionCommand command); + + EntityIdentifier adjustLoanRepayment(AdjustLoanTransactionCommand command); + + LoanRepaymentData retrieveNewLoanWaiverDetails(Long loanId); + + EntityIdentifier waiveLoanAmount(LoanTransactionCommand command); + + EntityIdentifier updateCurrentUserDetails(UserCommand command); + + ClientData retrieveNewIndividualClient(); + + ClientData retrieveClientDetails(Long clientId); + + EntityIdentifier enrollClient(EnrollClientCommand command); + + EntityIdentifier addNote(NoteCommand command); + + EntityIdentifier updateNote(NoteCommand command); + + NoteData retrieveClientNote(Long clientId, Long noteId); + + Collection retrieveClientNotes(Long clientId); + + ClientDataWithAccountsData retrieveClientAccount(Long clientId); + + LoanAccountData retrieveLoanAccount(Long loanId); + + ExtraDatasets retrieveExtraDatasets(String datasetType); + + GenericResultset retrieveExtraData(String datasetType, String datasetName, + String datasetPKValue); + + @SuppressWarnings("rawtypes") + EntityIdentifier saveExtraData(String datasetType, String datasetName, + String datasetPKValue, Map map); + + GenericResultset retrieveReportingData(String rptDB, String name, String type, Map extractedQueryParams); + + NewLoanWorkflowStepOneData retrieveNewLoanApplicationDetails(Long clientId, Long productId); +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/CommonRestOperationsImpl.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/CommonRestOperationsImpl.java new file mode 100644 index 000000000..cd24c5cc6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/CommonRestOperationsImpl.java @@ -0,0 +1,1353 @@ +package org.mifosng.ui; + +import java.io.UnsupportedEncodingException; +import java.net.URI; +import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Map; + +import org.mifosng.configuration.ApplicationConfigurationService; +import org.mifosng.data.AppUserData; +import org.mifosng.data.ClientData; +import org.mifosng.data.ClientDataWithAccountsData; +import org.mifosng.data.ClientList; +import org.mifosng.data.CurrencyData; +import org.mifosng.data.CurrencyList; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.EnumOptionList; +import org.mifosng.data.EnumOptionReadModel; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.ErrorResponseList; +import org.mifosng.data.ExtraDatasets; +import org.mifosng.data.LoanAccountData; +import org.mifosng.data.LoanProductData; +import org.mifosng.data.LoanProductList; +import org.mifosng.data.LoanRepaymentData; +import org.mifosng.data.LoanSchedule; +import org.mifosng.data.NewLoanWorkflowStepOneData; +import org.mifosng.data.NoteData; +import org.mifosng.data.NoteDataList; +import org.mifosng.data.OfficeData; +import org.mifosng.data.OfficeList; +import org.mifosng.data.PermissionData; +import org.mifosng.data.PermissionList; +import org.mifosng.data.RoleData; +import org.mifosng.data.RoleList; +import org.mifosng.data.UserList; +import org.mifosng.data.command.AdjustLoanTransactionCommand; +import org.mifosng.data.command.CalculateLoanScheduleCommand; +import org.mifosng.data.command.ChangePasswordCommand; +import org.mifosng.data.command.CreateLoanProductCommand; +import org.mifosng.data.command.EnrollClientCommand; +import org.mifosng.data.command.LoanStateTransitionCommand; +import org.mifosng.data.command.LoanTransactionCommand; +import org.mifosng.data.command.NoteCommand; +import org.mifosng.data.command.OfficeCommand; +import org.mifosng.data.command.RoleCommand; +import org.mifosng.data.command.SubmitLoanApplicationCommand; +import org.mifosng.data.command.UndoLoanApprovalCommand; +import org.mifosng.data.command.UndoLoanDisbursalCommand; +import org.mifosng.data.command.UpdateLoanProductCommand; +import org.mifosng.data.command.UpdateOrganisationCurrencyCommand; +import org.mifosng.data.command.UserCommand; +import org.mifosng.data.reports.GenericResultset; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.oauth.consumer.ProtectedResourceDetails; +import org.springframework.security.oauth.consumer.client.OAuthRestTemplate; +import org.springframework.stereotype.Service; +import org.springframework.web.client.HttpStatusCodeException; + +import com.thoughtworks.xstream.XStream; + +@Service(value="commonRestOperations") +public class CommonRestOperationsImpl implements CommonRestOperations { + + private final static Logger logger = LoggerFactory + .getLogger(CommonRestOperationsImpl.class); + + private OAuthRestTemplate oauthRestServiceTemplate; + private final ApplicationConfigurationService applicationConfigurationService; + + @Autowired + public CommonRestOperationsImpl( + final OAuthRestTemplate oauthRestServiceTemplate, final ApplicationConfigurationService applicationConfigurationService) { + this.oauthRestServiceTemplate = oauthRestServiceTemplate; + this.applicationConfigurationService = applicationConfigurationService; + } + + private String getBaseServerUrl() { + return this.applicationConfigurationService.retrieveOAuthProviderDetails().getProviderBaseUrl(); + } + + @Override + public void logout(String accessToken) { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/user/").concat(accessToken).concat("/signout")); + + oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), null); + } + + @Override + public void updateProtectedResource(ProtectedResourceDetails resource) { + + this.oauthRestServiceTemplate = new OAuthRestTemplate(resource); + } + + private HttpEntity emptyRequest() { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + requestHeaders); + return requestEntity; + } + + @Override + public Collection retrieveAllIndividualClients() { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/client/all")); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange( + restUri, HttpMethod.GET, emptyRequest(), ClientList.class); + + return s.getBody().getClients(); + } + + @Override + public Collection retrieveAllLoanProducts() { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/product/loan/all")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + LoanProductList.class); + + return s.getBody().getProducts(); + } + + @Override + public EntityIdentifier createLoanProduct(final CreateLoanProductCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/product/loan/new")); + + ResponseEntity s = this.oauthRestServiceTemplate.postForEntity(restUri, + createLoanProductRequest(command), EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier updateLoanProduct(UpdateLoanProductCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/product/loan/update")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, updateLoanProductRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + private ErrorResponseList parseErrors(HttpStatusCodeException e) { + + XStream xstream = new XStream(); + xstream.alias("errorResponseList", ErrorResponseList.class); + xstream.alias("errorResponse", ErrorResponse.class); + + ErrorResponseList errorList = new ErrorResponseList(); + if (HttpStatus.BAD_REQUEST.equals(e.getStatusCode())) { + errorList = (ErrorResponseList)xstream.fromXML(e.getResponseBodyAsString()); + } else if (HttpStatus.NOT_FOUND.equals(e.getStatusCode())){ + + List errors = new ArrayList(); + errors.add(new ErrorResponse(e.getMessage(), "error", e.getMessage())); + + errorList = new ErrorResponseList(errors); + } else if (HttpStatus.UNAUTHORIZED.equals(e.getStatusCode())) { + throw new AccessDeniedException(e.getMessage()); + } else { + throw e; + } + return errorList; + } + + private HttpEntity updateLoanProductRequest( + final UpdateLoanProductCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + command, requestHeaders); + return requestEntity; + } + + private HttpEntity createLoanProductRequest( + final CreateLoanProductCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + command, requestHeaders); + return requestEntity; + } + + @Override + public LoanProductData retrieveLoanProductDetails( + final Long selectedLoanProductOption) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/product/loan/" + + selectedLoanProductOption)); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + LoanProductData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public LoanProductData retrieveNewLoanProductDetails() { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/product/loan/empty")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + LoanProductData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public LoanSchedule calculateLoanSchedule( + final CalculateLoanScheduleCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/calculate")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.POST, + calculateLoanRepaymentScheduleRequest(command), + LoanSchedule.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public NewLoanWorkflowStepOneData retrieveNewLoanApplicationStepOneDetails(final Long clientId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/loan/new/" + clientId.toString() + "/workflow/one")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), NewLoanWorkflowStepOneData.class); + + // for now ensure user must select product on step one (even if there is only one product!) + NewLoanWorkflowStepOneData data = s.getBody(); + data.setProductId(null); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + + @Override + public NewLoanWorkflowStepOneData retrieveNewLoanApplicationDetails(Long clientId, Long productId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/loan/new/" + clientId.toString() + "/product/" + productId.toString())); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), NewLoanWorkflowStepOneData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public Long submitLoanApplication(final SubmitLoanApplicationCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/new")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, + submitLoanApplicationRequest(command), + EntityIdentifier.class); + + return s.getBody().getEntityId(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier deleteLoan(Long loanId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/loan/").concat(loanId.toString())); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.DELETE, null, EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier approveLoan(final LoanStateTransitionCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/approve")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, + loanStateTransitionApplicationRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier undoLoanApproval( + final UndoLoanApprovalCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/undoapproval")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, undoLoanApprovalRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier rejectLoan(final LoanStateTransitionCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/reject")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, + loanStateTransitionApplicationRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier withdrawLoan(final LoanStateTransitionCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/withdraw")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, + loanStateTransitionApplicationRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier disburseLoan(final LoanStateTransitionCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/disburse")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, + loanStateTransitionApplicationRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier undloLoanDisbursal( + final UndoLoanDisbursalCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/undodisbursal")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, undoLoanDisbursalRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public LoanRepaymentData retrieveNewLoanRepaymentDetails(Long loanId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/loan/").concat(loanId.toString()).concat("/repayment/")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + LoanRepaymentData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public LoanRepaymentData retrieveLoanRepaymentDetails(Long loanId, Long repaymentId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/loan/").concat(loanId.toString()).concat("/repayment/").concat(repaymentId.toString())); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + LoanRepaymentData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier makeLoanRepayment(final LoanTransactionCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/repayment")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, loanTransactionRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier adjustLoanRepayment(AdjustLoanTransactionCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/repayment/adjust")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, adjustLoanRepaymentRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public LoanRepaymentData retrieveNewLoanWaiverDetails(Long loanId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/loan/").concat(loanId.toString()).concat("/waive/")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + LoanRepaymentData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier waiveLoanAmount(LoanTransactionCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/waive")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, loanTransactionRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + private HttpEntity loanTransactionRequest(final LoanTransactionCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, requestHeaders); + } + + private HttpEntity adjustLoanRepaymentRequest( + final AdjustLoanTransactionCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, requestHeaders); + } + + private HttpEntity undoLoanDisbursalRequest( + final UndoLoanDisbursalCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, requestHeaders); + } + + private HttpEntity undoLoanApprovalRequest( + final UndoLoanApprovalCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, requestHeaders); + } + + private HttpEntity loanStateTransitionApplicationRequest( + final LoanStateTransitionCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, requestHeaders); + } + + private HttpEntity submitLoanApplicationRequest( + final SubmitLoanApplicationCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, + requestHeaders); + } + + private HttpEntity calculateLoanRepaymentScheduleRequest( + final CalculateLoanScheduleCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, + requestHeaders); + } + + @Override + public Collection retrieveAllowedCurrencies() { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/config/currency/allowed")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + CurrencyList.class); + + return s.getBody().getCurrencies(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public Collection retrieveAllowedLoanAmortizationMethodOptions() { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/config/loan/amortization/allowed")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + EnumOptionList.class); + + return s.getBody().getOptions(); + } + + @Override + public Collection retrieveAllowedLoanInterestMethodOptions() { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/config/loan/interestcalculation/allowed")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + EnumOptionList.class); + + return s.getBody().getOptions(); + } + + @Override + public Collection retrieveAllowedRepaymentFrequencyOptions() { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/config/loan/repaymentfrequency/allowed")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + EnumOptionList.class); + + return s.getBody().getOptions(); + } + + + @Override + public Collection retrieveAllowedNominalInterestFrequencyOptions() { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/config/loan/interestfrequency/allowed")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + EnumOptionList.class); + + return s.getBody().getOptions(); + } + + @Override + public Collection retrieveAllPlatformCurrencies() { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/config/currency/all")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + CurrencyList.class); + + return s.getBody().getCurrencies(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public void updateOrganisationCurrencies(UpdateOrganisationCurrencyCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/config/currency/update")); + + this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.PUT, + updateCurrencyRequest(command), + UpdateOrganisationCurrencyCommand.class); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + private HttpEntity updateCurrencyRequest( + final UpdateOrganisationCurrencyCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + command, requestHeaders); + return requestEntity; + } + + @Override + public EntityIdentifier createUser(final UserCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/user/new")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, createUserRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier updateUser(UserCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/user/").concat(command.getId().toString())); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, createUserRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier updateCurrentUserDetails(UserCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/user/current")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, createUserRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier updateCurrentUserPassword(ChangePasswordCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/user/current/password")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, createUpdateCurrentUserPasswordRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public void deleteUser(Long userId) { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/admin/user/").concat(userId.toString())); + + this.oauthRestServiceTemplate.delete(restUri); + } + + private HttpEntity createUserRequest( + final UserCommand command) { + + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + command, requestHeaders); + return requestEntity; + } + + private HttpEntity createUpdateCurrentUserPasswordRequest(final ChangePasswordCommand command) { + + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity(command, requestHeaders); + return requestEntity; + } + + private HttpEntity roleRequest( + final RoleCommand command) { + + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + command, requestHeaders); + return requestEntity; + } + + @Override + public Collection retrieveAllUsers() { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/user/all")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + UserList.class); + + return s.getBody().getUsers(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public AppUserData retrieveNewUserDetails() { + + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/admin/user/new")); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), AppUserData.class); + + return s.getBody(); + } + + @Override + public AppUserData retrieveUser(Long userId) { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/admin/user/").concat(userId.toString())); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), AppUserData.class); + + return s.getBody(); + } + + @Override + public AppUserData retrieveCurrentUser() { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/admin/user/current")); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), AppUserData.class); + + return s.getBody(); + } + + @Override + public Collection retrieveAllRoles() { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/role/all")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + RoleList.class); + + return s.getBody().getRoles(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public RoleData retrieveRole(final Long roleId) { + + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/admin/role/").concat(roleId.toString())); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), RoleData.class); + + return s.getBody(); + } + + @Override + public RoleData retrieveNewRoleDetails() { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/admin/role/new")); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), RoleData.class); + + return s.getBody(); + } + + @Override + public EntityIdentifier createRole(final RoleCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/role/new")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, roleRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier updateRole(RoleCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/role/").concat(command.getId().toString())); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, roleRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public Collection retrieveAllPermissions() { + + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/admin/permissions/all")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + PermissionList.class); + + return s.getBody().getPermissions(); + } + + @Override + public Collection retrieveAllPermissionGroups() { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/admin/permissiongroup/all")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + EnumOptionList.class); + + return s.getBody().getOptions(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public Collection retrieveAllOffices() { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/office/all")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + OfficeList.class); + + return s.getBody().getOffices(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public OfficeData retrieveOffice(final Long officeId) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/office/" + + officeId)); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + OfficeData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier createOffice(final OfficeCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/office/new")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, createOfficeRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier updateOffice(final OfficeCommand command) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/office/update")); + + ResponseEntity s = this.oauthRestServiceTemplate + .postForEntity(restUri, updateOfficeRequest(command), + EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + private HttpEntity createOfficeRequest( + final OfficeCommand command) { + + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + command, requestHeaders); + return requestEntity; + } + + private HttpEntity updateOfficeRequest( + final OfficeCommand command) { + + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + command, requestHeaders); + return requestEntity; + } + + @Override + public ClientData retrieveNewIndividualClient() { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/client/new")); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), ClientData.class); + + return s.getBody(); + } + + + @Override + public ClientData retrieveClientDetails(Long clientId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat( + "api/protected/client/").concat(clientId.toString())); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + ClientData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public EntityIdentifier enrollClient(EnrollClientCommand command) { + try { + + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/client/new")); + + ResponseEntity s = this.oauthRestServiceTemplate.postForEntity(restUri, enrollClientRequest(command), EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + private HttpEntity enrollClientRequest( + final EnrollClientCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, requestHeaders); + } + + @Override + public EntityIdentifier addNote(NoteCommand command) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/client/").concat(command.getClientId().toString()).concat("/note/new")); + + ResponseEntity s = this.oauthRestServiceTemplate.postForEntity(restUri, noteRequest(command), EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + + @Override + public EntityIdentifier updateNote(NoteCommand command) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/note/").concat(command.getId().toString())); + + ResponseEntity s = this.oauthRestServiceTemplate.postForEntity(restUri, noteRequest(command), EntityIdentifier.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public NoteData retrieveClientNote(Long clientId, Long noteId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/client/").concat(clientId.toString()).concat("/note/").concat(noteId.toString())); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange( + restUri, HttpMethod.GET, emptyRequest(), NoteData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public Collection retrieveClientNotes(Long clientId) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/client/").concat(clientId.toString()).concat("/note/all")); + + ResponseEntity s = this.oauthRestServiceTemplate.exchange( + restUri, HttpMethod.GET, emptyRequest(), NoteDataList.class); + + return s.getBody().getNotes(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + private HttpEntity noteRequest(final NoteCommand command) { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + return new HttpEntity(command, requestHeaders); + } + + @Override + public ClientDataWithAccountsData retrieveClientAccount(Long clientId) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/client/").concat(clientId.toString()).concat("/withaccounts")); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + ClientDataWithAccountsData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @Override + public LoanAccountData retrieveLoanAccount(Long loanId) { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/loan/" + + loanId)); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + LoanAccountData.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + + @Override + public GenericResultset retrieveReportingData(String rptDB, String name, String type, Map extractedQueryParams) { + try { + + StringBuilder uriAsString = new StringBuilder(getBaseServerUrl()) + .append("api/protected/reporting/exportcsv/") + .append(encodeURIComponent(rptDB)) + .append('/') + .append(encodeURIComponent(name)) + .append('/') + .append(encodeURIComponent(type)) + .append('/'); + + String officeIdValue = "0"; + String currencyIdValue = "-1"; // represents all currencies + + if (extractedQueryParams.size() > 3) { + for (String key : extractedQueryParams.keySet()) { + if (key.equalsIgnoreCase("${officeId}")) { + officeIdValue = extractedQueryParams.get(key); + } + + if (key.equalsIgnoreCase("${currencyId}")) { + currencyIdValue = extractedQueryParams.get(key); + } + } + } + + uriAsString.append("office/").append(encodeURIComponent(officeIdValue)).append('/'); + uriAsString.append("currency/").append(encodeURIComponent(currencyIdValue)).append('/'); + + URI restUri = URI.create(uriAsString.toString()); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), GenericResultset.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + + @Override + public ExtraDatasets retrieveExtraDatasets(String datasetType) { + logger.info("In CommonRestOperationsImpl - retrieveExtraDatasets"); + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/extradata/datasets/").concat(encodeURIComponent(datasetType))); + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), ExtraDatasets.class); + return s.getBody(); + } catch (HttpStatusCodeException e) { + logger.info(e.toString()); + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + + @Override + public GenericResultset retrieveExtraData(String datasetType, String datasetName, + String datasetPKValue) { + try { + URI restUri = URI.create(getBaseServerUrl().concat("api/protected/extradata/").concat(encodeURIComponent(datasetType)).concat("/").concat(encodeURIComponent(datasetName)) + .concat("/").concat(encodeURIComponent(datasetPKValue)) + ); + + + ResponseEntity s = this.oauthRestServiceTemplate + .exchange(restUri, HttpMethod.GET, emptyRequest(), + GenericResultset.class); + + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + @SuppressWarnings("rawtypes") + @Override + public EntityIdentifier saveExtraData(String datasetType, String datasetName, String datasetPKValue, Map requestMap) { + + String UrlString = getBaseServerUrl().concat("api/protected/extradata/").concat(encodeURIComponent(datasetType)).concat("/").concat(encodeURIComponent(datasetName)) + .concat("/").concat(encodeURIComponent(datasetPKValue)); + + String value; + boolean firstParameter = true; + for (Object key : requestMap.keySet()) { + if (firstParameter) { + UrlString += "?"; + firstParameter = false; + } + else { + UrlString += "&"; + } + + String[] valueArray = (String[]) requestMap.get(key); + value = valueArray[0]; + if (value == null || value.equals("")) { + value = ""; + } + UrlString += encodeURIComponent(key.toString()) + "=" + encodeURIComponent(value); + } + logger.info("Url: " + UrlString); + + try { + URI restUri = URI.create(UrlString); + ResponseEntity s = this.oauthRestServiceTemplate.postForEntity(restUri, emptyRequest(), EntityIdentifier.class); + return s.getBody(); + } catch (HttpStatusCodeException e) { + ErrorResponseList errorList = parseErrors(e); + throw new ClientValidationException(errorList.getErrors()); + } + } + + private static String encodeURIComponent(String component) { + String result = null; + + try { + result = URLEncoder.encode(component, "UTF-8") + .replaceAll("\\%28", "(") + .replaceAll("\\%29", ")") + .replaceAll("\\+", "%20") + .replaceAll("\\%27", "'") + .replaceAll("\\%21", "!") + .replaceAll("\\%7E", "~"); + } catch (UnsupportedEncodingException e) { + result = component; + } + + return result; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/Jax2bRestClientException.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/Jax2bRestClientException.java new file mode 100644 index 000000000..5c5e5f0a0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/Jax2bRestClientException.java @@ -0,0 +1,34 @@ +package org.mifosng.ui; + +import org.mifosng.data.ErrorResponse; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.web.client.RestClientException; + +public class Jax2bRestClientException extends RestClientException { + + private final HttpStatus statusCode; + private final MediaType contentType; + private final ErrorResponse errorResponse; + + public Jax2bRestClientException(final HttpStatus statusCode, + final MediaType contentType, final ErrorResponse errorResponse) { + super(statusCode.name() + ": on client http rest request."); + this.statusCode = statusCode; + this.contentType = contentType; + this.errorResponse = errorResponse; + } + + public HttpStatus getStatusCode() { + return this.statusCode; + } + + public MediaType getContentType() { + return this.contentType; + } + + public ErrorResponse getErrorResponse() { + return this.errorResponse; + } + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/Jax2bRestServerException.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/Jax2bRestServerException.java new file mode 100644 index 000000000..82b33377b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/Jax2bRestServerException.java @@ -0,0 +1,34 @@ +package org.mifosng.ui; + +import org.mifosng.data.ErrorResponse; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.web.client.RestClientException; + +public class Jax2bRestServerException extends RestClientException { + + private final HttpStatus statusCode; + private final MediaType contentType; + private final ErrorResponse errorResponse; + + public Jax2bRestServerException(final HttpStatus statusCode, + final MediaType contentType, final ErrorResponse errorResponse) { + super(statusCode.name() + ": on client http rest request."); + this.statusCode = statusCode; + this.contentType = contentType; + this.errorResponse = errorResponse; + } + + public HttpStatus getStatusCode() { + return this.statusCode; + } + + public MediaType getContentType() { + return this.contentType; + } + + public ErrorResponse getErrorResponse() { + return this.errorResponse; + } + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/JaxRs311ErrorResponseHandler.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/JaxRs311ErrorResponseHandler.java new file mode 100644 index 000000000..03380d781 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/JaxRs311ErrorResponseHandler.java @@ -0,0 +1,49 @@ +package org.mifosng.ui; + +import java.io.IOException; + +import org.mifosng.data.ErrorResponse; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.http.client.ClientHttpResponse; +import org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter; +import org.springframework.web.client.ResponseErrorHandler; +import org.springframework.web.client.RestClientException; + +public class JaxRs311ErrorResponseHandler implements ResponseErrorHandler { + + private final ResponseErrorHandler delegateResponseErrorHandler; + + public JaxRs311ErrorResponseHandler( + final ResponseErrorHandler delegateResponseErrorHandler) { + this.delegateResponseErrorHandler = delegateResponseErrorHandler; + } + + @Override + public boolean hasError(final ClientHttpResponse response) throws IOException { + return this.delegateResponseErrorHandler.hasError(response); + } + + @Override + public void handleError(final ClientHttpResponse response) throws IOException { + + HttpStatus statusCode = response.getStatusCode(); + MediaType contentType = response.getHeaders().getContentType(); + + Jaxb2RootElementHttpMessageConverter converter = new Jaxb2RootElementHttpMessageConverter(); + ErrorResponse errorResponse = (ErrorResponse) converter.read( + ErrorResponse.class, response); + + switch (statusCode.series()) { + case CLIENT_ERROR: + throw new Jax2bRestClientException(statusCode, contentType, errorResponse); + case SERVER_ERROR: + throw new Jax2bRestServerException(statusCode, contentType, + errorResponse); + default: + throw new RestClientException("Unknown status code [" + statusCode + + "]"); + } + } + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/admin/AdministrationController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/admin/AdministrationController.java new file mode 100644 index 000000000..0e776e81b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/admin/AdministrationController.java @@ -0,0 +1,106 @@ +package org.mifosng.ui.admin; + +import java.util.Collection; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.mifosng.data.AppUserData; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.command.ChangePasswordCommand; +import org.mifosng.data.command.UserCommand; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; + +/** + * Controller for user and organisation administration functions. + */ +@Controller +public class AdministrationController { + + private final CommonRestOperations commonRestOperations; + + @Autowired + public AdministrationController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody Collection validationException(ClientValidationException ex, HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + @RequestMapping(value = "/org/admin", method = RequestMethod.GET) + public String organisationAdminScreen() { + return "admin/orghome"; + } + + @RequestMapping(value = "/org/admin/user", method = RequestMethod.GET) + public String userAdminScreen() { + return "admin/userhome"; + } + + @RequestMapping(value = "/org/admin/settings", method = RequestMethod.GET) + public String userSettingsScreen(Model model) { + return "admin/accountsettings"; + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "org/admin/settings/details", method = RequestMethod.GET) + public @ResponseBody AppUserData viewUserDetails() { + + return this.commonRestOperations.retrieveCurrentUser(); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "org/admin/settings/details", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier updateUserDetails(HttpServletRequest request, + @RequestParam(value="username", required=false) String username, + @RequestParam(value="firstname", required=false) String firstname, + @RequestParam(value="lastname", required=false) String lastname, + @RequestParam(value="email", required=false) String email) { + + UserCommand command = new UserCommand(username, firstname, lastname, email); + + return this.commonRestOperations.updateCurrentUserDetails(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "org/admin/settings/password", method = RequestMethod.GET) + public @ResponseBody ChangePasswordCommand viewChangePasswordDetails() { + + return new ChangePasswordCommand(); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "org/admin/settings/password", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier updateUserDetails(HttpServletRequest request, + @RequestParam(value="password", required=false) String password, + @RequestParam(value="passwordrepeat", required=false) String passwordrepeat) { + + ChangePasswordCommand command = new ChangePasswordCommand(); + command.setPassword(password); + command.setPasswordrepeat(passwordrepeat); + + return this.commonRestOperations.updateCurrentUserPassword(command); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/ClientController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/ClientController.java new file mode 100644 index 000000000..6ba43282c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/ClientController.java @@ -0,0 +1,180 @@ +package org.mifosng.ui.client; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Locale; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +import org.joda.time.LocalDate; +import org.joda.time.format.DateTimeFormat; +import org.mifosng.data.ClientData; +import org.mifosng.data.ClientDataWithAccountsData; +import org.mifosng.data.ClientList; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.LoanAccountData; +import org.mifosng.data.NoteData; +import org.mifosng.data.command.EnrollClientCommand; +import org.mifosng.data.command.NoteCommand; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; + +@Controller +public class ClientController { + + private final CommonRestOperations commonRestOperations; + + @Autowired + public ClientController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody Collection validationException(ClientValidationException ex, HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + private LocalDate parseStringToLocalDate(String eventDate, String dateFieldIdentifier) { + LocalDate eventLocalDate = null; + if (StringUtils.isNotBlank(eventDate)) { + try { + Locale locale = LocaleContextHolder.getLocale(); + eventLocalDate = DateTimeFormat.forPattern("dd MMMM yyyy").withLocale(locale).parseLocalDate(eventDate.toLowerCase(locale)); + } catch (IllegalArgumentException e) { + List validationErrors = new ArrayList(); + validationErrors.add(new ErrorResponse("validation.msg.invalid.date.format", dateFieldIdentifier, eventDate)); + throw new ClientValidationException(validationErrors); + } + } + + return eventLocalDate; + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/client/{clientId}/note/all", method = RequestMethod.GET) + public @ResponseBody List retrieveClientNotes(@PathVariable("clientId") Long clientId) { + + Collection clientNotes = this.commonRestOperations.retrieveClientNotes(clientId); + + return new ArrayList(clientNotes); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/client/{clientId}/note/new", method = RequestMethod.GET) + public @ResponseBody NoteData retrieveNewNoteDetails(@PathVariable("clientId") Long clientId) { + + NoteData noteData = new NoteData(); + noteData.setClientId(clientId); + + return noteData; + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/client/{clientId}/note/new", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier addClientNote(@PathVariable("clientId") Long clientId, + @RequestParam(value="note", required=false) String note) { + + NoteCommand command = new NoteCommand(); + command.setClientId(clientId); + command.setNote(note); + + return this.commonRestOperations.addNote(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/client/{clientId}/note/{noteId}", method = RequestMethod.GET) + public @ResponseBody NoteData retrieveExistingNoteDetails(@PathVariable("clientId") Long clientId, @PathVariable("noteId") Long noteId) { + + return this.commonRestOperations.retrieveClientNote(clientId, noteId); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/client/{clientId}/note/{noteId}", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier updateClientNote(@PathVariable("clientId") Long clientId, @PathVariable("noteId") Long noteId, + @RequestParam(value="note", required=false) String note) { + + NoteCommand command = new NoteCommand(); + command.setId(noteId); + command.setClientId(clientId); + command.setNote(note); + + return this.commonRestOperations.updateNote(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/client/all", method = RequestMethod.GET) + public @ResponseBody ClientList viewAllClients() { + + return new ClientList(this.commonRestOperations.retrieveAllIndividualClients()); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/client/new", method = RequestMethod.GET) + public @ResponseBody ClientData newIndividualClientDetails() { + + ClientData clientData = this.commonRestOperations.retrieveNewIndividualClient(); + return clientData; + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/client/new", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier createClient(HttpServletRequest request, + @RequestParam(value="office", required=false) Long officeId, + @RequestParam(value="firstname", required=false) String firstname, + @RequestParam(value="lastname", required=false) String lastname, + @RequestParam(value="fullname", required=false) String fullname, + @RequestParam(value="joiningDate", required=false) String joiningDate, + @RequestParam(value="externalId", required=false) String externalId) { + + + LocalDate joiningLocalDate = parseStringToLocalDate(joiningDate, "joiningDate"); + + EnrollClientCommand command = new EnrollClientCommand(firstname, lastname, fullname, officeId, joiningLocalDate); + return this.commonRestOperations.enrollClient(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/client/{clientId}", method = RequestMethod.GET) + public @ResponseBody ClientDataWithAccountsData viewClientAccountData(@PathVariable("clientId") Long clientId) { + + return this.commonRestOperations.retrieveClientAccount(clientId); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/loan/{loanId}", method = RequestMethod.GET) + public @ResponseBody LoanAccountData viewLoanAccountData(@PathVariable("loanId") Long loanId) { + + return this.commonRestOperations.retrieveLoanAccount(loanId); + } + + @RequestMapping(value = "/portfolio/client/{clientId}", method = RequestMethod.GET) + public String viewClientAccount(final Model model, @PathVariable("clientId") final Long clientId) { + + ClientData clientData = this.commonRestOperations.retrieveClientDetails(clientId); + + model.addAttribute("clientId", clientId); + model.addAttribute("clientDisplayName", clientData.getDisplayName()); + + return "client/viewClientAccount"; + } + +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/DropdownOption.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/DropdownOption.java new file mode 100644 index 000000000..fa82f8485 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/DropdownOption.java @@ -0,0 +1,30 @@ +package org.mifosng.ui.client; + +public class DropdownOption { + + private String label; + private String value; + + public static DropdownOption of(String label, String value) { + DropdownOption option = new DropdownOption(); + option.setLabel(label); + option.setValue(value); + return option; + } + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/PayoffFormBean.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/PayoffFormBean.java new file mode 100644 index 000000000..d7f8533cc --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/client/PayoffFormBean.java @@ -0,0 +1,18 @@ +package org.mifosng.ui.client; + +import org.joda.time.DateTime; +import org.springframework.format.annotation.DateTimeFormat; + +public class PayoffFormBean { + + @DateTimeFormat(pattern = "yyyy-MM-dd") + private DateTime payoffDate = new DateTime(); + + public DateTime getPayoffDate() { + return this.payoffDate; + } + + public void setPayoffDate(final DateTime payoffDate) { + this.payoffDate = payoffDate; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/configuration/ConfigurationController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/configuration/ConfigurationController.java new file mode 100644 index 000000000..9c383c443 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/configuration/ConfigurationController.java @@ -0,0 +1,133 @@ +package org.mifosng.ui.configuration; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.List; + +import javax.servlet.http.HttpServletResponse; + +import org.mifosng.configuration.ApplicationConfigurationService; +import org.mifosng.configuration.OAuthProviderDetails; +import org.mifosng.data.ConfigurationData; +import org.mifosng.data.CurrencyData; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.command.UpdateOrganisationCurrencyCommand; +import org.mifosng.oauth.RefreshableProtectedResourceDetailsService; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.oauth.consumer.ProtectedResourceDetailsService; +import org.springframework.stereotype.Controller; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; +import org.springframework.web.bind.annotation.SessionAttributes; +import org.springframework.web.servlet.ModelAndView; + +@SessionAttributes({"oauthSettingsFormBean"}) +@Controller +public class ConfigurationController { + + private final ApplicationConfigurationService applicationConfigurationService; + private final RefreshableProtectedResourceDetailsService refreshableProtectedResourceDetailsService; + private final CommonRestOperations commonRestOperations; + + @Autowired + public ConfigurationController( + final CommonRestOperations commonRestOperations, final ApplicationConfigurationService applicationConfigurationService, + final RefreshableProtectedResourceDetailsService refreshableProtectedResourceDetailsService) { + this.commonRestOperations = commonRestOperations; + this.applicationConfigurationService = applicationConfigurationService; + this.refreshableProtectedResourceDetailsService = refreshableProtectedResourceDetailsService; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody + Collection validationException(ClientValidationException ex, + HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "org/configuration/edit", method = RequestMethod.GET) + public @ResponseBody ConfigurationData viewConfigurationDetails() { + + List selectedCurrencyOptions = new ArrayList(this.commonRestOperations.retrieveAllowedCurrencies()); + List currencyOptions = new ArrayList(this.commonRestOperations.retrieveAllPlatformCurrencies()); + + // remove selected currency options + currencyOptions.removeAll(selectedCurrencyOptions); + + ConfigurationData configurationData = new ConfigurationData(); + configurationData.setCurrencyOptions(currencyOptions); + configurationData.setSelectedCurrencyOptions(selectedCurrencyOptions); + + return configurationData; + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "org/configuration/edit", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier updateOrganisationCurrencies(@RequestParam(value="selectedItems", required=false) String[] selectedCurrencies) { + + List codes = new ArrayList(); + if (selectedCurrencies != null) { + codes = Arrays.asList(selectedCurrencies); + } + + UpdateOrganisationCurrencyCommand command = new UpdateOrganisationCurrencyCommand(codes); + + this.commonRestOperations.updateOrganisationCurrencies(command); + + return new EntityIdentifier(Long.valueOf(1)); + } + + @ModelAttribute("oauthSettingsFormBean") + @RequestMapping(value = "oauth/configuration/edit", method = RequestMethod.GET) + public ModelAndView showOAuthConfiguration() { + + OAuthProviderDetails details = this.applicationConfigurationService.retrieveOAuthProviderDetails(); + + OauthSettingsFormBean oauthSettingsFormBean = new OauthSettingsFormBean(); + oauthSettingsFormBean.setConsumerkey(details.getConsumerkey()); + oauthSettingsFormBean.setSharedSecret(details.getSharedSecret()); + oauthSettingsFormBean.setOauthProviderUrl(details.getProviderBaseUrl()); + + return new ModelAndView("configuration/oauthconfig", + "oauthSettingsFormBean", oauthSettingsFormBean); + } + + @RequestMapping(value = "oauth/configuration/edit", method = RequestMethod.POST) + public ModelAndView updateOAuthConfiguration( + @ModelAttribute final OauthSettingsFormBean oauthSettingsFormBean, + final BindingResult result) { + + ModelAndView mav = new ModelAndView("redirect:/"); + + OAuthProviderDetails newDetails = new OAuthProviderDetails(oauthSettingsFormBean.getOauthProviderUrl(), oauthSettingsFormBean.getConsumerkey(), oauthSettingsFormBean.getSharedSecret()); + + this.applicationConfigurationService.update(newDetails); + + this.refreshableProtectedResourceDetailsService.refresh(); + + this.commonRestOperations.updateProtectedResource(((ProtectedResourceDetailsService)refreshableProtectedResourceDetailsService).loadProtectedResourceDetailsById("protectedMifosNgServices")); + + return mav; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/configuration/OauthSettingsFormBean.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/configuration/OauthSettingsFormBean.java new file mode 100644 index 000000000..fda79dca5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/configuration/OauthSettingsFormBean.java @@ -0,0 +1,32 @@ +package org.mifosng.ui.configuration; + +public class OauthSettingsFormBean { + + private String oauthProviderUrl; + private String sharedSecret; + private String consumerkey; + + public String getOauthProviderUrl() { + return oauthProviderUrl; + } + + public void setOauthProviderUrl(String oauthProviderUrl) { + this.oauthProviderUrl = oauthProviderUrl; + } + + public String getSharedSecret() { + return sharedSecret; + } + + public void setSharedSecret(String sharedSecret) { + this.sharedSecret = sharedSecret; + } + + public String getConsumerkey() { + return consumerkey; + } + + public void setConsumerkey(String consumerkey) { + this.consumerkey = consumerkey; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/extradata/ExtraDataController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/extradata/ExtraDataController.java new file mode 100644 index 000000000..13e831ba5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/extradata/ExtraDataController.java @@ -0,0 +1,67 @@ +package org.mifosng.ui.extradata; + +import java.util.Collection; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.ExtraDatasets; +import org.mifosng.data.reports.GenericResultset; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; + +@Controller +public class ExtraDataController { + + private final CommonRestOperations commonRestOperations; + + @Autowired + public ExtraDataController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody Collection validationException(ClientValidationException ex, HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + + @RequestMapping(consumes="application/json", produces="application/json", value = "/extradata/datasets/{datasetType}", method = RequestMethod.GET) + public @ResponseBody ExtraDatasets retrieveExtraDatasets(@PathVariable("datasetType") String datasetType) { + + return this.commonRestOperations.retrieveExtraDatasets(datasetType); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/extradata/{datasetType}/{datasetName}/{datasetPKValue}", method = RequestMethod.GET) + public @ResponseBody GenericResultset viewExtraData(@PathVariable("datasetType") String datasetType, @PathVariable("datasetName") String datasetName, @PathVariable("datasetPKValue") String datasetPKValue) { + + return this.commonRestOperations.retrieveExtraData(datasetType, datasetName, datasetPKValue); + } + + @RequestMapping(produces="application/json", value = "/extradata/{datasetType}/{datasetName}/{datasetPKValue}", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier saveExtraData(HttpServletRequest request, @PathVariable("datasetType") String datasetType,@PathVariable("datasetName") String datasetName, @PathVariable("datasetPKValue") String datasetPKValue) { + return this.commonRestOperations.saveExtraData(datasetType, datasetName, datasetPKValue, request.getParameterMap()); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/home/HomeController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/home/HomeController.java new file mode 100644 index 000000000..24cc69b50 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/home/HomeController.java @@ -0,0 +1,43 @@ +package org.mifosng.ui.home; + +import org.mifosng.ui.reporting.ReportingRestOperations; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.servlet.ModelAndView; + +@Controller +public class HomeController { + + private final ReportingRestOperations reportingRestOperations; + + @Autowired + public HomeController(final ReportingRestOperations reportingRestOperations) { + this.reportingRestOperations = reportingRestOperations; + } + + @RequestMapping(value="/forceOAuth", method = RequestMethod.GET) + public String forceOAuth() { + + this.reportingRestOperations.hackToForceAuthentication(); + + return "redirect:/home"; + } + + @RequestMapping(value="/", method = RequestMethod.GET) + public String redirectToIndexPage() { + return "redirect:/home"; + } + + @RequestMapping(value = "/home", method = RequestMethod.GET) + public ModelAndView showIndividualClientsOnHomePage() { + return new ModelAndView("/home"); + } + + @RequestMapping(value="/switchToClient", method = RequestMethod.POST) + public String switchToClientView(@RequestParam("client") final Long client) { + return "redirect:/portfolio/client/" + client; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/home/LogoutController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/home/LogoutController.java new file mode 100644 index 000000000..9b5ddcc5c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/home/LogoutController.java @@ -0,0 +1,64 @@ +package org.mifosng.ui.home; + +import java.util.Map; + +import org.mifosng.configuration.ApplicationConfigurationService; +import org.mifosng.ui.CommonRestOperations; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.oauth.consumer.OAuthConsumerToken; +import org.springframework.security.oauth.consumer.OAuthSecurityContext; +import org.springframework.security.oauth.consumer.OAuthSecurityContextHolder; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +@Controller +public class LogoutController { + + private final CommonRestOperations commonRestOperations; +// private final ApplicationConfigurationService applicationConfigurationService; + + @Autowired + public LogoutController(final CommonRestOperations commonRestOperations, + ApplicationConfigurationService applicationConfigurationService) { + this.commonRestOperations = commonRestOperations; +// this.applicationConfigurationService = applicationConfigurationService; + } + + @RequestMapping(value="/logoutcontroller", method = RequestMethod.GET) + public String forceOAuth() { + +// OAuthProviderDetails oauthDetails = this.applicationConfigurationService +// .retrieveOAuthProviderDetails(); + + String resourceId = "protectedMifosNgServices"; + OAuthSecurityContext context = OAuthSecurityContextHolder.getContext(); + if (context == null) { + throw new IllegalStateException( + "No OAuth security context has been established. Unable to access resource '" + + resourceId + "'."); + } + + Map accessTokens = context + .getAccessTokens(); + OAuthConsumerToken accessToken = accessTokens == null ? null + : accessTokens.get(resourceId); + +// model.addAttribute("baseUrl", oauthDetails.getProviderBaseUrl()); +// model.addAttribute("consumerKey", oauthDetails.getConsumerkey()); +// model.addAttribute("consumerSecret", oauthDetails.getSharedSecret()); +// if (accessToken != null) { +// model.addAttribute("accessToken", accessToken.getValue()); +// model.addAttribute("tokenSecret", accessToken.getSecret()); +// } + + String oauthToken = ""; + if (accessToken != null) { + oauthToken = accessToken.getValue(); + } + + this.commonRestOperations.logout(oauthToken); + + return "redirect:/j_spring_security_logout"; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/CashflowController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/CashflowController.java new file mode 100644 index 000000000..f613e882e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/CashflowController.java @@ -0,0 +1,78 @@ +package org.mifosng.ui.loan; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + +import org.mifosng.data.CurrencyData; +import org.mifosng.data.MoneyData; +import org.mifosng.ui.CommonRestOperations; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +@Controller +public class CashflowController { + +// private final CommonRestOperations commonRestOperations; + + @Autowired + public CashflowController(final CommonRestOperations commonRestOperations) { +// this.commonRestOperations = commonRestOperations; + } + + @RequestMapping(value = "/portfolio/client/{clientId}/cashflow/new", method = RequestMethod.GET) + public String submitNewCashflowAnalysis(@PathVariable("clientId") final Long clientId) { + return "redirect:/createCashflowAnalysis?loanId=0&clientId={clientId}"; + } + + // called from webflow + public void populateLoanDetailsForCashflow(final CashflowFormBean formBean, Long loanId, Long clientId) { + + formBean.setBusinessName("Fixed Example Business (Sole Trader)"); + formBean.setClientName("Fixed Example Client"); + + CurrencyData currency = new CurrencyData("XOF", "", 0, "CFA", "currency.XOF"); + MoneyData amount = MoneyData.of(currency, BigDecimal.valueOf(0)); + + formBean.setExpectedLoanTerm(12); + + List investments = new ArrayList(); + investments.add(new MultiTermExpense("equipment purchase", Integer.valueOf(0), amount.getAmount(), formBean.getExpectedLoanTerm())); + investments.add(new MultiTermExpense("Option two", Integer.valueOf(0), amount.getAmount(), formBean.getExpectedLoanTerm())); + investments.add(new MultiTermExpense("Option three", Integer.valueOf(0), amount.getAmount(), formBean.getExpectedLoanTerm())); + + formBean.setInvestments(investments); + + List fixedExpenses = new ArrayList(); + fixedExpenses.add(new OneOffExpense("Fixed one", amount.getAmount())); + fixedExpenses.add(new OneOffExpense("Fixed two", amount.getAmount())); + fixedExpenses.add(new OneOffExpense("Fixed three", amount.getAmount())); + + formBean.setFixedExpenses(fixedExpenses); + + List products = new ArrayList(); + products.add(new UnitInformationOfProduct("First Product", Integer.valueOf(10), BigDecimal.valueOf(Double.valueOf("12.00")), BigDecimal.valueOf(Double.valueOf("23.00")))); + products.add(new UnitInformationOfProduct("Second Product", Integer.valueOf(500), BigDecimal.valueOf(Double.valueOf("10.00")), BigDecimal.valueOf(Double.valueOf("15.00")))); + + formBean.setProducts(products); +// List individualClients = new ArrayList(this.commonRestOperations.retrieveLoan); + +// List loanProducts = new ArrayList( +// this.commonRestOperations.retrieveAllLoanProducts()); +// +// loanFormBean.setApplicantOptions(individualClients); +// if (individualClients.size() == 1) { +// loanFormBean.setSelectedApplicantOption(individualClients.get(0) +// .getId()); +// } +// +// loanFormBean.setLoanProductOptions(loanProducts); +// if (loanProducts.size() == 1) { +// loanFormBean.setSelectedLoanProductOption(loanProducts.get(0) +// .getId()); +// } + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/CashflowFormBean.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/CashflowFormBean.java new file mode 100644 index 000000000..9eeaa1928 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/CashflowFormBean.java @@ -0,0 +1,76 @@ +package org.mifosng.ui.loan; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +public class CashflowFormBean implements Serializable { + + private String clientName; + private String businessName; + + private Integer expectedLoanTerm = Integer.valueOf(12); + + private List investments = new ArrayList(); + private List fixedExpenses = new ArrayList(); + + private List products = new ArrayList(); + + private Number entrepreneurInput = Double.valueOf("0"); + + public String getClientName() { + return clientName; + } + + public void setClientName(String clientName) { + this.clientName = clientName; + } + + public String getBusinessName() { + return businessName; + } + + public void setBusinessName(String businessName) { + this.businessName = businessName; + } + + public List getFixedExpenses() { + return fixedExpenses; + } + + public void setFixedExpenses(List fixedExpenses) { + this.fixedExpenses = fixedExpenses; + } + + public List getProducts() { + return products; + } + + public void setProducts(List products) { + this.products = products; + } + + public Integer getExpectedLoanTerm() { + return expectedLoanTerm; + } + + public void setExpectedLoanTerm(Integer expectedLoanTerm) { + this.expectedLoanTerm = expectedLoanTerm; + } + + public List getInvestments() { + return investments; + } + + public void setInvestments(List investments) { + this.investments = investments; + } + + public Number getEntrepreneurInput() { + return entrepreneurInput; + } + + public void setEntrepreneurInput(Number entrepreneurInput) { + this.entrepreneurInput = entrepreneurInput; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/LoanController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/LoanController.java new file mode 100644 index 000000000..1c01064a7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/LoanController.java @@ -0,0 +1,209 @@ +package org.mifosng.ui.loan; + +import java.math.BigDecimal; +import java.security.Principal; +import java.text.NumberFormat; +import java.text.ParseException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Locale; + +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +import org.joda.time.LocalDate; +import org.joda.time.format.DateTimeFormat; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.LoanSchedule; +import org.mifosng.data.NewLoanWorkflowStepOneData; +import org.mifosng.data.command.CalculateLoanScheduleCommand; +import org.mifosng.data.command.SubmitLoanApplicationCommand; +import org.mifosng.oauth.ConsumerUserDetails; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +@Controller +public class LoanController { + + private final CommonRestOperations commonRestOperations; + + @Autowired + public LoanController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody Collection validationException(ClientValidationException ex, HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + private LocalDate parseStringToLocalDate(String eventDate, String dateFieldIdentifier) { + LocalDate eventLocalDate = null; + if (StringUtils.isNotBlank(eventDate)) { + try { + Locale locale = LocaleContextHolder.getLocale(); + eventLocalDate = DateTimeFormat.forPattern("dd MMMM yyyy").withLocale(locale).parseLocalDate(eventDate.toLowerCase(locale)); + } catch (IllegalArgumentException e) { + List validationErrors = new ArrayList(); + validationErrors.add(new ErrorResponse("validation.msg.invalid.date.format", dateFieldIdentifier, eventDate)); + throw new ClientValidationException(validationErrors); + } + } + + return eventLocalDate; + } + + private BigDecimal parseStringToBigDecimal(String source) { + try { + BigDecimal number = null; + + if (StringUtils.isNotBlank(source)) { + String sourceWithoutSpaces = source.replaceAll(" ", ""); + Locale locale = LocaleContextHolder.getLocale(); + NumberFormat format = NumberFormat.getNumberInstance(locale); + Number parsedNumber = format.parse(sourceWithoutSpaces); + number = BigDecimal.valueOf(Double.valueOf(parsedNumber + .doubleValue())); + } + + return number; + } catch (ParseException e) { + List validationErrors = new ArrayList(); + validationErrors.add(new ErrorResponse("validation.msg.invalid.number.format", "amount", source)); + throw new ClientValidationException(validationErrors); + } + } + + @RequestMapping(value = "/portfolio/client/{clientId}/loan/new", method = RequestMethod.GET) + public String loadLoanCreationWorkflow(final Model model, @PathVariable("clientId") final Long clientId, final Principal principal) { + + UsernamePasswordAuthenticationToken authenticationToken = (UsernamePasswordAuthenticationToken) principal; + ConsumerUserDetails user = (ConsumerUserDetails) authenticationToken.getPrincipal(); + if (user.hasNoAuthorityToSumitLoanApplication()) { + throw new AccessDeniedException(""); + } + + model.addAttribute("clientId", clientId); + + return "newloanapplication"; + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/client/{clientId}/loan/new", method = RequestMethod.POST) + public @ResponseBody EntityIdentifier submitNewLoanApplication( + @RequestParam(value="clientId", required=false) Long applicantId, + @RequestParam(value="productId", required=false) Long productId, + @RequestParam(value="submittedOnDate", required=false) String submittedOnDateStr, + @RequestParam(value="submittedOnNote", required=false) String submittedOnNote, + @RequestParam(value="currencyCode", required=false) String currencyCode, + @RequestParam(value="digitsAfterDecimal", required=false) Integer digitsAfterDecimal, + @RequestParam(value="principalMoney", required=false) String principalMoney, + @RequestParam(value="repaidEvery", required=false) Integer repaymentEvery, + @RequestParam(value="selectedRepaymentFrequencyOption", required=false) Integer repaymentFrequency, + @RequestParam(value="numberOfRepayments", required=false) Integer numberOfRepayments, + @RequestParam(value="selectedAmortizationMethodOption", required=false) Integer amortizationMethod, + @RequestParam(value="inArrearsTolerance", required=false) String inArrearsTolerance, + @RequestParam(value="nominalInterestRate", required=false) String nominalInterestRate, + @RequestParam(value="selectedInterestFrequencyOption", required=false) Integer interestRateFrequencyMethod, + @RequestParam(value="selectedInterestMethodOption", required=false) Integer interestMethod, + @RequestParam(value="expectedDisbursementDate", required=false) String expectedDisbursementDateStr, + @RequestParam(value="repaymentsStartingFromDate", required=false) String repaymentsStartingFromDateStr, + @RequestParam(value="interestCalculatedFromDate", required=false) String interestCalculatedFromDateStr + ) { + + final LocalDate submittedOnDate = parseStringToLocalDate(submittedOnDateStr, "submittedOnDate"); + final Number toleranceAmount = parseStringToBigDecimal(inArrearsTolerance); + + final Number principal = parseStringToBigDecimal(principalMoney); + final Number interestRatePerPeriod = parseStringToBigDecimal(nominalInterestRate); + final boolean flexibleRepaymentSchedule = false; + final boolean interestRebateAllowed = false; + + final LocalDate expectedDisbursementDate = parseStringToLocalDate(expectedDisbursementDateStr, "expectedDisbursementDate"); + final LocalDate repaymentsStartingFromDate = parseStringToLocalDate(repaymentsStartingFromDateStr, "repaymentsStartingFromDate"); + final LocalDate interestCalculatedFromDate = parseStringToLocalDate(interestCalculatedFromDateStr, "interestCalculatedFromDate"); + + CalculateLoanScheduleCommand calculateLoanScheduleCommand = new CalculateLoanScheduleCommand(currencyCode, digitsAfterDecimal, principal, interestRatePerPeriod, + interestRateFrequencyMethod, interestMethod, repaymentEvery, repaymentFrequency, numberOfRepayments, amortizationMethod, + flexibleRepaymentSchedule, interestRebateAllowed, expectedDisbursementDate, repaymentsStartingFromDate, interestCalculatedFromDate); + + LoanSchedule loanSchedule = this.commonRestOperations.calculateLoanSchedule(calculateLoanScheduleCommand); + + SubmitLoanApplicationCommand command = new SubmitLoanApplicationCommand(applicantId, productId, + submittedOnDate, submittedOnNote, expectedDisbursementDate, repaymentsStartingFromDate, interestCalculatedFromDate, + loanSchedule, currencyCode, digitsAfterDecimal, principal, + interestRatePerPeriod, interestRateFrequencyMethod, interestMethod, + repaymentEvery, repaymentFrequency, numberOfRepayments, amortizationMethod, + toleranceAmount, flexibleRepaymentSchedule, interestRebateAllowed); + + Long identifier = this.commonRestOperations.submitLoanApplication(command); + + return new EntityIdentifier(identifier); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/loanschedule/calculate", method = RequestMethod.POST) + public @ResponseBody LoanSchedule calculateLoanSchedule( + @RequestParam(value="currencyCode", required=false) String currencyCode, + @RequestParam(value="digitsAfterDecimal", required=false) Integer digitsAfterDecimal, + @RequestParam(value="principalMoney", required=false) String principalMoney, + @RequestParam(value="repaidEvery", required=false) Integer repaymentEvery, + @RequestParam(value="selectedRepaymentFrequencyOption", required=false) Integer repaymentFrequency, + @RequestParam(value="numberOfRepayments", required=false) Integer numberOfRepayments, + @RequestParam(value="selectedAmortizationMethodOption", required=false) Integer amortizationMethod, + @RequestParam(value="nominalInterestRate", required=false) String nominalInterestRate, + @RequestParam(value="selectedInterestFrequencyOption", required=false) Integer interestRateFrequencyMethod, + @RequestParam(value="selectedInterestMethodOption", required=false) Integer interestMethod, + @RequestParam(value="expectedDisbursementDate", required=false) String expectedDisbursementDateStr, + @RequestParam(value="repaymentsStartingFromDate", required=false) String repaymentsStartingFromDateStr, + @RequestParam(value="interestCalculatedFromDate", required=false) String interestCalculatedFromDateStr + ) { + + final Number principal = parseStringToBigDecimal(principalMoney); + final Number interestRatePerPeriod = parseStringToBigDecimal(nominalInterestRate); + final boolean flexibleRepaymentSchedule = false; + final boolean interestRebateAllowed = false; + final LocalDate expectedDisbursementDate = parseStringToLocalDate(expectedDisbursementDateStr, "expectedDisbursementDate"); + final LocalDate repaymentsStartingFromDate = parseStringToLocalDate(repaymentsStartingFromDateStr, "repaymentsStartingFromDate"); + final LocalDate interestCalculatedFromDate = parseStringToLocalDate(interestCalculatedFromDateStr, "interestCalculatedFromDate"); + + CalculateLoanScheduleCommand command = new CalculateLoanScheduleCommand(currencyCode, digitsAfterDecimal, principal, interestRatePerPeriod, + interestRateFrequencyMethod, interestMethod, repaymentEvery, repaymentFrequency, numberOfRepayments, amortizationMethod, + flexibleRepaymentSchedule, interestRebateAllowed, expectedDisbursementDate, repaymentsStartingFromDate, interestCalculatedFromDate); + + return this.commonRestOperations.calculateLoanSchedule(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/client/{clientId}/product/{productId}/new", method = RequestMethod.GET) + public @ResponseBody NewLoanWorkflowStepOneData retrieveNewLoan(@PathVariable("clientId") Long clientId, @PathVariable("productId") Long productId) { + + return this.commonRestOperations.retrieveNewLoanApplicationDetails(clientId, productId); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/client/{clientId}/loan/new/workflow/one", method = RequestMethod.GET) + public @ResponseBody NewLoanWorkflowStepOneData retrieveNewLoan(@PathVariable("clientId") Long clientId) { + + return this.commonRestOperations.retrieveNewLoanApplicationStepOneDetails(clientId); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/LoanTransactionController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/LoanTransactionController.java new file mode 100644 index 000000000..11ef3ed71 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/LoanTransactionController.java @@ -0,0 +1,251 @@ +package org.mifosng.ui.loan; + +import java.math.BigDecimal; +import java.text.NumberFormat; +import java.text.ParseException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Locale; + +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +import org.joda.time.LocalDate; +import org.joda.time.format.DateTimeFormat; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.LoanRepaymentData; +import org.mifosng.data.command.AdjustLoanTransactionCommand; +import org.mifosng.data.command.LoanStateTransitionCommand; +import org.mifosng.data.command.LoanTransactionCommand; +import org.mifosng.data.command.UndoLoanApprovalCommand; +import org.mifosng.data.command.UndoLoanDisbursalCommand; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; + +@Controller +public class LoanTransactionController { + + private final CommonRestOperations commonRestOperations; + + @Autowired + public LoanTransactionController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody Collection validationException(ClientValidationException ex, HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + private LocalDate parseStringToLocalDate(String eventDate, String dateFieldIdentifier) { + LocalDate eventLocalDate = null; + if (StringUtils.isNotBlank(eventDate)) { + try { + Locale locale = LocaleContextHolder.getLocale(); + eventLocalDate = DateTimeFormat.forPattern("dd MMMM yyyy").withLocale(locale).parseLocalDate(eventDate.toLowerCase(locale)); + } catch (IllegalArgumentException e) { + List validationErrors = new ArrayList(); + validationErrors.add(new ErrorResponse("validation.msg.invalid.date.format", dateFieldIdentifier, eventDate)); + throw new ClientValidationException(validationErrors); + } + } + + return eventLocalDate; + } + + private BigDecimal parseStringToBigDecimal(String source) { + try { + BigDecimal number = null; + + if (StringUtils.isNotBlank(source)) { + String sourceWithoutSpaces = source.replaceAll(" ", ""); + Locale locale = LocaleContextHolder.getLocale(); + NumberFormat format = NumberFormat.getNumberInstance(locale); + Number parsedNumber = format.parse(sourceWithoutSpaces); + number = BigDecimal.valueOf(Double.valueOf(parsedNumber + .doubleValue())); + } + + return number; + } catch (ParseException e) { + List validationErrors = new ArrayList(); + validationErrors.add(new ErrorResponse("validation.msg.invalid.number.format", "amount", source)); + throw new ClientValidationException(validationErrors); + } + } + + @RequestMapping(value = "/portfolio/loan/{loanId}/delete", method = RequestMethod.POST) + public @ResponseBody EntityIdentifier deleteLoan(@PathVariable("loanId") final Long loanId) { + + return this.commonRestOperations.deleteLoan(loanId); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/loan/{loanId}/approve", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier approveLoan( + @PathVariable("loanId") final Long loanId, + @RequestParam(value="eventDate", required=false) String eventDate, + @RequestParam(value="comment", required=false) String comment) { + + LocalDate approvalDate = parseStringToLocalDate(eventDate, "eventDate"); + + LoanStateTransitionCommand command = new LoanStateTransitionCommand(loanId, approvalDate, comment); + + return this.commonRestOperations.approveLoan(command); + } + + @RequestMapping(value = "/portfolio/loan/{loanId}/undoapproval", method = RequestMethod.POST) + public String undoLoanApproval(@PathVariable("loanId") final Long loanId) { + + UndoLoanApprovalCommand command = new UndoLoanApprovalCommand(loanId); + + EntityIdentifier clientAccountId = this.commonRestOperations + .undoLoanApproval(command); + + return "redirect:/portfolio/client/" + clientAccountId.getEntityId(); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/loan/{loanId}/reject", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier rejectLoan( + @PathVariable("loanId") final Long loanId, + @RequestParam(value="eventDate", required=false) String eventDate, + @RequestParam(value="comment", required=false) String comment) { + + LocalDate rejectionDate = parseStringToLocalDate(eventDate, "eventDate"); + + LoanStateTransitionCommand command = new LoanStateTransitionCommand(loanId, rejectionDate, comment); + + return this.commonRestOperations.rejectLoan(command); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/loan/{loanId}/withdraw", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier loanWithdrawnByClient( + @PathVariable("loanId") final Long loanId, + @RequestParam(value="eventDate", required=false) String eventDate, + @RequestParam(value="comment", required=false) String comment) { + + LocalDate withdrawnOnDate = parseStringToLocalDate(eventDate, "eventDate"); + + LoanStateTransitionCommand command = new LoanStateTransitionCommand(loanId, withdrawnOnDate, comment); + + return this.commonRestOperations.withdrawLoan(command); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/loan/{loanId}/disburse", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier disburseLoan( + @PathVariable("loanId") final Long loanId, + @RequestParam(value="eventDate", required=false) String eventDate, + @RequestParam(value="comment", required=false) String comment) { + + LocalDate disbursalDate = parseStringToLocalDate(eventDate, "eventDate"); + + LoanStateTransitionCommand command = new LoanStateTransitionCommand(loanId, disbursalDate, comment); + + return this.commonRestOperations.disburseLoan(command); + } + + @RequestMapping(value = "/portfolio/loan/{loanId}/undodisbursal", method = RequestMethod.POST) + public String undoLoanDisbursal(@PathVariable final Long loanId) { + + UndoLoanDisbursalCommand command = new UndoLoanDisbursalCommand(loanId); + + EntityIdentifier clientAccountId = this.commonRestOperations + .undloLoanDisbursal(command); + + return "redirect:/portfolio/client/" + clientAccountId.getEntityId(); + } + + @RequestMapping(consumes="application/json", produces="application/json", value ="/portfolio/loan/{loanId}/repayment", method = RequestMethod.GET) + public @ResponseBody LoanRepaymentData retrieveNewLoanRepaymentDetail(@PathVariable("loanId") final Long loanId) { + + return this.commonRestOperations.retrieveNewLoanRepaymentDetails(loanId); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/loan/{loanId}/repayment", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier enterRepaymentOnLoan( + @PathVariable("loanId") final Long loanId, + @RequestParam(value="transactionDate", required=false) String transactionDate, + @RequestParam(value="transactionComment", required=false) String transactionComment, + @RequestParam(value="transactionAmount", required=false) String transactionAmount) { + + LocalDate repaymentDate = parseStringToLocalDate(transactionDate, "transactionDate"); + BigDecimal repaymentAmount = parseStringToBigDecimal(transactionAmount); + + LoanTransactionCommand command = new LoanTransactionCommand(loanId, + repaymentDate, transactionComment, repaymentAmount); + + return this.commonRestOperations.makeLoanRepayment(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/loan/{loanId}/repayment/{repaymentId}/adjust", method = RequestMethod.GET) + public @ResponseBody LoanRepaymentData retrieveLoanRepayment(@PathVariable("loanId") final Long loanId, @PathVariable("repaymentId") final Long repaymentId) { + return this.commonRestOperations.retrieveLoanRepaymentDetails(loanId, repaymentId); + } + + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/loan/{loanId}/repayment/{repaymentId}/adjust", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier adjustPreviousRepaymentOnLoan( + @PathVariable("loanId") final Long loanId, @PathVariable("repaymentId") final Long repaymentId, + @RequestParam(value="transactionDate", required=false) String transactionDate, + @RequestParam(value="transactionComment", required=false) String transactionComment, + @RequestParam(value="transactionAmount", required=false) String transactionAmount) { + + LocalDate repaymentDate = parseStringToLocalDate(transactionDate, "transactionDate"); + BigDecimal repaymentAmount = parseStringToBigDecimal(transactionAmount); + + AdjustLoanTransactionCommand command = new AdjustLoanTransactionCommand(loanId, repaymentId, repaymentDate, transactionComment, repaymentAmount); + + return this.commonRestOperations.adjustLoanRepayment(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/loan/{loanId}/waive", method = RequestMethod.GET) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody LoanRepaymentData retrievePossibleWaiveDetails(@PathVariable("loanId") final Long loanId) { + return this.commonRestOperations.retrieveNewLoanWaiverDetails(loanId); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/loan/{loanId}/waive", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier waiveLoanAmount( + @PathVariable("loanId") final Long loanId, + @RequestParam(value="transactionDate", required=false) String transactionDate, + @RequestParam(value="transactionComment", required=false) String transactionComment, + @RequestParam(value="transactionAmount", required=false) String transactionAmount) { + + LocalDate waiveDate = parseStringToLocalDate(transactionDate, "transactionDate"); + BigDecimal waiveAmount = parseStringToBigDecimal(transactionAmount); + + LoanTransactionCommand command = new LoanTransactionCommand(loanId, + waiveDate, transactionComment, waiveAmount); + + return this.commonRestOperations.waiveLoanAmount(command); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/MultiTermExpense.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/MultiTermExpense.java new file mode 100644 index 000000000..5df2c81f7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/MultiTermExpense.java @@ -0,0 +1,79 @@ +package org.mifosng.ui.loan; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.math.RoundingMode; + +public class MultiTermExpense implements Serializable { + + private String name; + private String description; + private Integer fullTermInMonths; + private Number fullAmount; + private Integer applicableTermInMonths; + private Number applicableAmount; + + public MultiTermExpense() { + // + } + + public MultiTermExpense(String name, Integer fullTermInMonths, BigDecimal fullAmount, Integer applicableTermInMonths) { + this.name = name; + this.fullTermInMonths = fullTermInMonths; + this.fullAmount = fullAmount; + this.applicableTermInMonths = applicableTermInMonths; + this.applicableAmount = fullAmount; + BigDecimal fullAmountAsDecimal = BigDecimal.valueOf(this.fullAmount.longValue()); + if (!fullAmountAsDecimal.equals(BigDecimal.ZERO)) { + this.applicableAmount = fullAmountAsDecimal.divide(BigDecimal.valueOf(applicableTermInMonths.longValue()), RoundingMode.HALF_EVEN); + } + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public Integer getFullTermInMonths() { + return fullTermInMonths; + } + + public void setFullTermInMonths(Integer fullTermInMonths) { + this.fullTermInMonths = fullTermInMonths; + } + + public Number getFullAmount() { + return fullAmount; + } + + public void setFullAmount(Number fullAmount) { + this.fullAmount = fullAmount; + } + + public Integer getApplicableTermInMonths() { + return applicableTermInMonths; + } + + public void setApplicableTermInMonths(Integer applicableTermInMonths) { + this.applicableTermInMonths = applicableTermInMonths; + } + + public Number getApplicableAmount() { + return applicableAmount; + } + + public void setApplicableAmount(Number applicableAmount) { + this.applicableAmount = applicableAmount; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/OneOffExpense.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/OneOffExpense.java new file mode 100644 index 000000000..997fba0d9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/OneOffExpense.java @@ -0,0 +1,45 @@ +package org.mifosng.ui.loan; + +import java.io.Serializable; +import java.math.BigDecimal; + +public class OneOffExpense implements Serializable { + + private String name; + private String description; + private Number amount; + + public OneOffExpense() { + // + } + + public OneOffExpense(String name, BigDecimal amount) { + this.name = name; + this.amount = amount; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public Number getAmount() { + return amount; + } + + public void setAmount(Number amount) { + this.amount = amount; + } + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/UnitInformationOfProduct.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/UnitInformationOfProduct.java new file mode 100644 index 000000000..5a0796caa --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loan/UnitInformationOfProduct.java @@ -0,0 +1,57 @@ +package org.mifosng.ui.loan; + +import java.io.Serializable; +import java.math.BigDecimal; + +public class UnitInformationOfProduct implements Serializable { + + private String name; + private Number unitsSold = Integer.valueOf(0); + private Number costPerUnit = BigDecimal.ZERO; + private Number pricePerUnit = BigDecimal.ZERO; + + public UnitInformationOfProduct() { + // + } + + public UnitInformationOfProduct(String name, Integer unitsSold, + BigDecimal costPerUnit, BigDecimal pricePerUnit) { + this.name = name; + this.unitsSold = unitsSold; + this.costPerUnit = costPerUnit; + this.pricePerUnit = pricePerUnit; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Number getUnitsSold() { + return unitsSold; + } + + public void setUnitsSold(Number unitsSold) { + this.unitsSold = unitsSold; + } + + public Number getCostPerUnit() { + return costPerUnit; + } + + public void setCostPerUnit(Number costPerUnit) { + this.costPerUnit = costPerUnit; + } + + public Number getPricePerUnit() { + return pricePerUnit; + } + + public void setPricePerUnit(Number pricePerUnit) { + this.pricePerUnit = pricePerUnit; + } + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loanproduct/ClientValidationException.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loanproduct/ClientValidationException.java new file mode 100644 index 000000000..1cc4485fa --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loanproduct/ClientValidationException.java @@ -0,0 +1,19 @@ +package org.mifosng.ui.loanproduct; + +import java.util.List; + +import org.mifosng.data.ErrorResponse; + +public class ClientValidationException extends RuntimeException { + + private final List validationErrors; + + public ClientValidationException(List validationErrors) { + super("Validation errors exist"); + this.validationErrors = validationErrors; + } + + public List getValidationErrors() { + return validationErrors; + } +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loanproduct/LoanProductController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loanproduct/LoanProductController.java new file mode 100644 index 000000000..a1afe463a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/loanproduct/LoanProductController.java @@ -0,0 +1,193 @@ +package org.mifosng.ui.loanproduct; + +import java.math.BigDecimal; +import java.text.NumberFormat; +import java.text.ParseException; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Locale; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.LoanProductData; +import org.mifosng.data.command.CreateLoanProductCommand; +import org.mifosng.data.command.UpdateLoanProductCommand; +import org.mifosng.ui.CommonRestOperations; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; + +@Controller +public class LoanProductController { + + private final CommonRestOperations commonRestOperations; + + @Autowired + public LoanProductController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody Collection validationException(ClientValidationException ex, HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + private BigDecimal parseStringToBigDecimal(String source) { + try { + BigDecimal number = null; + + if (StringUtils.isNotBlank(source)) { + String sourceWithoutSpaces = source.replaceAll(" ", ""); + Locale locale = LocaleContextHolder.getLocale(); + NumberFormat format = NumberFormat.getNumberInstance(locale); + Number parsedNumber = format.parse(sourceWithoutSpaces); + number = BigDecimal.valueOf(Double.valueOf(parsedNumber + .doubleValue())); + } + + return number; + } catch (ParseException e) { + List validationErrors = new ArrayList(); + validationErrors.add(new ErrorResponse("validation.msg.invalid.number.format", "amount", source)); + throw new ClientValidationException(validationErrors); + } + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/product/loan/all", method = RequestMethod.GET) + public @ResponseBody Collection viewAllLoanProducts() { + + return this.commonRestOperations.retrieveAllLoanProducts(); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/product/loan/new", method = RequestMethod.GET) + public @ResponseBody LoanProductData viewNewLoanProductForm() { + + return this.commonRestOperations.retrieveNewLoanProductDetails(); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/product/loan/new", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier createLoanProduct(HttpServletRequest request, + @RequestParam("name") String name, + @RequestParam("description") String description, + @RequestParam("selectedCurrency") String currencyCode, @RequestParam("selectedDigitsAfterDecimal") Integer digitsAfterDecimal, + @RequestParam("amount") String principalAsNumber, + @RequestParam("repaidEvery") Integer repaymentEvery, + @RequestParam("selectedRepaymentFrequencyOption") Integer repaymentFrequency, + @RequestParam("numberOfRepayments") Integer numberOfRepayments, + @RequestParam("selectedAmortizationMethodOption") Integer amortizationMethod, + @RequestParam("inArrearsTolerance") String inArrearsToleranceAsNumber, + @RequestParam("nominalInterestRate") String nominalInterestRatePerPeriodAsNumber, + @RequestParam("selectedInterestFrequencyOption") Integer nominalInterestRatePerPeriodFrequency, + @RequestParam("selectedInterestMethodOption") Integer interestMethod + ) { + + CreateLoanProductCommand command = new CreateLoanProductCommand(); + command.setName(name); + command.setDescription(description); + command.setCurrencyCode(currencyCode); + command.setDigitsAfterDecimal(digitsAfterDecimal); + + if (StringUtils.isNotBlank(principalAsNumber)) { + BigDecimal principal = parseStringToBigDecimal(principalAsNumber); + command.setPrincipal(principal); + } + + command.setRepaymentEvery(repaymentEvery); + command.setRepaymentFrequency(repaymentFrequency); + command.setNumberOfRepayments(numberOfRepayments); + command.setAmortizationMethod(amortizationMethod); + + if (StringUtils.isNotBlank(inArrearsToleranceAsNumber)) { + BigDecimal inArrearsToleranceAmount = parseStringToBigDecimal(inArrearsToleranceAsNumber); + command.setInArrearsToleranceAmount(inArrearsToleranceAmount); + } + + if (StringUtils.isNotBlank(nominalInterestRatePerPeriodAsNumber)) { + BigDecimal interestRatePerPeriod = parseStringToBigDecimal(nominalInterestRatePerPeriodAsNumber); + command.setInterestRatePerPeriod(interestRatePerPeriod); + } + command.setInterestRateFrequencyMethod(nominalInterestRatePerPeriodFrequency); + command.setInterestMethod(interestMethod); + + return this.commonRestOperations.createLoanProduct(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/portfolio/product/loan/{productId}", method = RequestMethod.GET) + public @ResponseBody LoanProductData viewLoanProduct(@PathVariable("productId") final Long productId) { + + return this.commonRestOperations.retrieveLoanProductDetails(productId); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/portfolio/product/loan/{productId}", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier updateLoanProduct(@PathVariable("productId") final Long productId, HttpServletRequest request, + @RequestParam("name") String name, @RequestParam("description") String description, + @RequestParam("selectedCurrency") String currencyCode, @RequestParam("selectedDigitsAfterDecimal") Integer digitsAfterDecimal, + @RequestParam("amount") String principalAsNumber, + @RequestParam("repaidEvery") Integer repaymentEvery, + @RequestParam("selectedRepaymentFrequencyOption") Integer repaymentFrequency, + @RequestParam("numberOfRepayments") Integer numberOfRepayments, + @RequestParam("selectedAmortizationMethodOption") Integer amortizationMethod, + @RequestParam("inArrearsTolerance") String inArrearsToleranceAsNumber, + @RequestParam("nominalInterestRate") String nominalInterestRatePerPeriodAsNumber, + @RequestParam("selectedInterestFrequencyOption") Integer nominalInterestRatePerPeriodFrequency, + @RequestParam("selectedInterestMethodOption") Integer interestMethod + ) { + + UpdateLoanProductCommand command = new UpdateLoanProductCommand(); + command.setId(productId); + command.setName(name); + command.setDescription(description); + command.setExternalId(null); + command.setCurrencyCode(currencyCode); + command.setDigitsAfterDecimal(digitsAfterDecimal); + + if (StringUtils.isNotBlank(principalAsNumber)) { + BigDecimal principal = parseStringToBigDecimal(principalAsNumber); + command.setPrincipal(principal); + } + + command.setRepaymentEvery(repaymentEvery); + command.setRepaymentFrequency(repaymentFrequency); + command.setNumberOfRepayments(numberOfRepayments); + command.setAmortizationMethod(amortizationMethod); + + if (StringUtils.isNotBlank(inArrearsToleranceAsNumber)) { + BigDecimal inArrearsToleranceAmount = parseStringToBigDecimal(inArrearsToleranceAsNumber); + command.setInArrearsToleranceAmount(inArrearsToleranceAmount); + } + + if (StringUtils.isNotBlank(nominalInterestRatePerPeriodAsNumber)) { + BigDecimal interestRatePerPeriod = parseStringToBigDecimal(nominalInterestRatePerPeriodAsNumber); + command.setInterestRatePerPeriod(interestRatePerPeriod); + } + command.setInterestRateFrequencyMethod(nominalInterestRatePerPeriodFrequency); + command.setInterestMethod(interestMethod); + + return this.commonRestOperations.updateLoanProduct(command); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/migration/MigrationTriggerController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/migration/MigrationTriggerController.java new file mode 100644 index 000000000..08f171524 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/migration/MigrationTriggerController.java @@ -0,0 +1,57 @@ +package org.mifosng.ui.migration; + +import java.net.URI; + +import org.mifosng.configuration.ApplicationConfigurationService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.oauth.consumer.client.OAuthRestTemplate; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +@Controller +public class MigrationTriggerController { + + private final OAuthRestTemplate oauthRestServiceTemplate; + private final ApplicationConfigurationService applicationConfigurationService; + + @Autowired + public MigrationTriggerController(final OAuthRestTemplate oauthRestServiceTemplate, ApplicationConfigurationService applicationConfigurationService) { + this.oauthRestServiceTemplate = oauthRestServiceTemplate; + this.applicationConfigurationService = applicationConfigurationService; + } + + @RequestMapping(value = "/migration/trigger/clients/creocore", method = RequestMethod.GET) + public String migrateClientInformation() { + + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/import/trigger/clients/creocore")); + + this.oauthRestServiceTemplate.getForEntity(restUri, null); + return "redirect:/home"; + } + + @RequestMapping(value = "/migration/trigger/loans/creocore", method = RequestMethod.GET) + public String migrateLoanInformation() { + + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/import/trigger/loans/creocore")); + + this.oauthRestServiceTemplate.getForEntity(restUri, null); + return "redirect:/home"; + } + + @RequestMapping(value = "/migration/trigger/repayments/creocore", method = RequestMethod.GET) + public String migrateLoanRepaymentsInformation() { + + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/import/trigger/repayments/creocore")); + + this.oauthRestServiceTemplate.getForEntity(restUri, null); + return "redirect:/home"; + } + + private String getBaseServerUrl() { + return this.applicationConfigurationService.retrieveOAuthProviderDetails().getProviderBaseUrl(); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/office/OfficeController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/office/OfficeController.java new file mode 100644 index 000000000..f38f3965a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/office/OfficeController.java @@ -0,0 +1,128 @@ +package org.mifosng.ui.office; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Locale; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +import org.joda.time.LocalDate; +import org.joda.time.format.DateTimeFormat; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.OfficeData; +import org.mifosng.data.command.OfficeCommand; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; + +@Controller +public class OfficeController { + + private final CommonRestOperations commonRestOperations; + + @Autowired + public OfficeController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody + Collection validationException(ClientValidationException ex, + HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + private LocalDate parseStringToLocalDate(String eventDate, String dateFieldIdentifier) { + LocalDate eventLocalDate = null; + if (StringUtils.isNotBlank(eventDate)) { + try { + Locale locale = LocaleContextHolder.getLocale(); + eventLocalDate = DateTimeFormat.forPattern("dd MMMM yyyy").withLocale(locale).parseLocalDate(eventDate.toLowerCase(locale)); + } catch (IllegalArgumentException e) { + List validationErrors = new ArrayList(); + validationErrors.add(new ErrorResponse("validation.msg.invalid.date.format", dateFieldIdentifier, eventDate)); + throw new ClientValidationException(validationErrors); + } + } + + return eventLocalDate; + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/org/office/all", method = RequestMethod.GET) + public @ResponseBody Collection viewAllOffices() { + + return this.commonRestOperations.retrieveAllOffices(); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/org/office/new", method = RequestMethod.GET) + public @ResponseBody OfficeData viewNewOfficeForm() { + + OfficeData newOffice = new OfficeData(); + newOffice.setOpeningDate(new LocalDate()); + + Collection allOffices = this.commonRestOperations.retrieveAllOffices(); + List allowedParents = new ArrayList(allOffices); + + newOffice.setAllowedParents(allowedParents); + + return newOffice; + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/org/office/new", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier createOffice(HttpServletRequest request, + @RequestParam("name") String name, + @RequestParam(value="parentId", required=false) Long parentId, + @RequestParam("openingDate") String openingDate, + @RequestParam(value="externalId", required=false) String externalId) { + + LocalDate openingLocalDate = parseStringToLocalDate(openingDate, "openingDate"); + + OfficeCommand command = new OfficeCommand(name, externalId, parentId, openingLocalDate); + return this.commonRestOperations.createOffice(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/org/office/{officeId}", method = RequestMethod.GET) + public @ResponseBody OfficeData viewOffice(@PathVariable("officeId") final Long officeId) { + + return this.commonRestOperations.retrieveOffice(officeId); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/org/office/{officeId}", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier updateOffice(HttpServletRequest request, @PathVariable("officeId") final Long officeId, + @RequestParam("name") String name, + @RequestParam(value="parentId", required=false) Long parentId, + @RequestParam("openingDate") String openingDate, + @RequestParam(value="externalId", required=false) String externalId) { + + LocalDate openingLocalDate = parseStringToLocalDate(openingDate, "openingDate"); + + OfficeCommand command = new OfficeCommand(officeId, name, externalId, parentId, openingLocalDate); + return this.commonRestOperations.updateOffice(command); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingController.java new file mode 100644 index 000000000..502bdbe36 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingController.java @@ -0,0 +1,77 @@ +package org.mifosng.ui.reporting; + +import java.security.Principal; +import java.util.Map; + +import org.mifosng.configuration.ApplicationConfigurationService; +import org.mifosng.configuration.OAuthProviderDetails; +import org.mifosng.oauth.ConsumerUserDetails; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.oauth.consumer.OAuthConsumerToken; +import org.springframework.security.oauth.consumer.OAuthSecurityContext; +import org.springframework.security.oauth.consumer.OAuthSecurityContextHolder; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +@Controller +@RequestMapping("/reporting") +public class ReportingController { + + private final ReportingRestOperations reportingRestOperations; + private final ApplicationConfigurationService applicationConfigurationService; + + @Autowired + public ReportingController(final ReportingRestOperations reportingRestOperations, + ApplicationConfigurationService applicationConfigurationService) { + this.reportingRestOperations = reportingRestOperations; + this.applicationConfigurationService = applicationConfigurationService; + } + + @RequestMapping(value = "/flexireport", method = RequestMethod.GET) + public String viewFlexibleReportingPage(final Model model, final Principal principal) { + + UsernamePasswordAuthenticationToken authenticationToken = (UsernamePasswordAuthenticationToken) principal; + ConsumerUserDetails user = (ConsumerUserDetails) authenticationToken.getPrincipal(); + if (user.hasNoReportingAuthority()) { + throw new AccessDeniedException(""); + } + + this.reportingRestOperations.hackToForceAuthentication(); + + OAuthProviderDetails oauthDetails = this.applicationConfigurationService + .retrieveOAuthProviderDetails(); + + String resourceId = "protectedMifosNgServices"; + OAuthSecurityContext context = OAuthSecurityContextHolder.getContext(); + if (context == null) { + throw new IllegalStateException( + "No OAuth security context has been established. Unable to access resource '" + + resourceId + "'."); + } + + Map accessTokens = context + .getAccessTokens(); + OAuthConsumerToken accessToken = accessTokens == null ? null + : accessTokens.get(resourceId); + + model.addAttribute("baseUrl", oauthDetails.getProviderBaseUrl()); + model.addAttribute("consumerKey", oauthDetails.getConsumerkey()); + model.addAttribute("consumerSecret", oauthDetails.getSharedSecret()); + if (accessToken != null) { + model.addAttribute("accessToken", accessToken.getValue()); + model.addAttribute("tokenSecret", accessToken.getSecret()); + } + + return "reports/flexireport"; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingRestOperations.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingRestOperations.java new file mode 100644 index 000000000..d3b29a552 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingRestOperations.java @@ -0,0 +1,7 @@ +package org.mifosng.ui.reporting; + +public interface ReportingRestOperations { + + void hackToForceAuthentication(); + +} diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingRestOperationsImpl.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingRestOperationsImpl.java new file mode 100644 index 000000000..32f7aa129 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/reporting/ReportingRestOperationsImpl.java @@ -0,0 +1,53 @@ +package org.mifosng.ui.reporting; + +import java.net.URI; + +import org.mifosng.configuration.ApplicationConfigurationService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +import org.springframework.security.oauth.consumer.client.OAuthRestTemplate; +import org.springframework.stereotype.Service; +import org.springframework.web.client.HttpStatusCodeException; + +@Service +public class ReportingRestOperationsImpl implements ReportingRestOperations { + + private final OAuthRestTemplate oauthRestServiceTemplate; + private final ApplicationConfigurationService applicationConfigurationService; + + @Autowired + public ReportingRestOperationsImpl( + final OAuthRestTemplate oauthRestServiceTemplate, final ApplicationConfigurationService applicationConfigurationService) { + this.oauthRestServiceTemplate = oauthRestServiceTemplate; + this.applicationConfigurationService = applicationConfigurationService; + } + + private HttpEntity emptyRequest() { + HttpHeaders requestHeaders = new HttpHeaders(); + requestHeaders.set("Accept", "application/xml"); + requestHeaders.set("Content-Type", "application/xml"); + + HttpEntity requestEntity = new HttpEntity( + requestHeaders); + return requestEntity; + } + + private String getBaseServerUrl() { + return this.applicationConfigurationService.retrieveOAuthProviderDetails().getProviderBaseUrl(); + } + + @Override + public void hackToForceAuthentication() { + try { + URI restUri = URI + .create(getBaseServerUrl().concat("api/protected/reporting/forceauth")); + + this.oauthRestServiceTemplate.exchange(restUri, HttpMethod.GET, emptyRequest(), null); + } catch (HttpStatusCodeException e) { + System.err.println(e.getMessage()); + throw e; + } + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/user/AppUserController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/user/AppUserController.java new file mode 100644 index 000000000..d72959e23 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/user/AppUserController.java @@ -0,0 +1,151 @@ +package org.mifosng.ui.user; + +import java.util.Collection; + +import javax.servlet.http.HttpServletResponse; + +import org.mifosng.data.AppUserData; +import org.mifosng.data.EntityIdentifier; +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.PermissionData; +import org.mifosng.data.RoleData; +import org.mifosng.data.command.RoleCommand; +import org.mifosng.data.command.UserCommand; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; + +@Controller +public class AppUserController { + + private final CommonRestOperations commonRestOperations; + + @Autowired + public AppUserController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/admin/permission/all", method = RequestMethod.GET) + public @ResponseBody Collection viewAllPermission() { + + return this.commonRestOperations.retrieveAllPermissions(); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/admin/role/all", method = RequestMethod.GET) + public @ResponseBody Collection viewAllRoles() { + + return this.commonRestOperations.retrieveAllRoles(); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/admin/role/new", method = RequestMethod.GET) + public @ResponseBody RoleData newRoleDetails() { + + return this.commonRestOperations.retrieveNewRoleDetails(); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/admin/role/new", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier createNewRole(@RequestParam(value="selectedItems", required=false) String[] selectedRoles, + @RequestParam(value="name") String name, + @RequestParam(value="description") String description) { + + RoleCommand command = new RoleCommand(name, description, selectedRoles); + + return this.commonRestOperations.createRole(command); + } + + @RequestMapping(consumes = "application/json", produces = "application/json", value = "/admin/role/{roleId}", method = RequestMethod.GET) + public @ResponseBody + RoleData retrieveRoleDetails(@PathVariable("roleId") Long roleId) { + + return this.commonRestOperations.retrieveRole(roleId); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/admin/role/{roleId}", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier updateRole(@PathVariable("roleId") Long roleId, + @RequestParam(value="selectedItems", required=false) String[] selectedRoles, + @RequestParam(value="name") String name, + @RequestParam(value="description") String description) { + + RoleCommand command = new RoleCommand(name, description, selectedRoles); + command.setId(roleId); + + return this.commonRestOperations.updateRole(command); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/admin/user/all", method = RequestMethod.GET) + public @ResponseBody Collection viewAllUsers() { + + return this.commonRestOperations.retrieveAllUsers(); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/admin/user/new", method = RequestMethod.GET) + public @ResponseBody AppUserData viewUser() { + + return this.commonRestOperations.retrieveNewUserDetails(); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/admin/user/new", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier createNewUser(@RequestParam(value="selectedItems", required=false) String[] selectedRoles, + @RequestParam(value="username") String username, + @RequestParam(value="firstname") String firstname, + @RequestParam(value="lastname") String lastname, + @RequestParam(value="email") String email, + @RequestParam(value="officeId") Long officeId) { + + UserCommand command = new UserCommand(username, firstname, lastname, "", email, selectedRoles, officeId); + + return this.commonRestOperations.createUser(command); + } + + @RequestMapping(consumes = "application/json", produces = "application/json", value = "/admin/user/{userId}", method = RequestMethod.DELETE) + public @ResponseBody + EntityIdentifier attemptToDeleteUser(@PathVariable("userId") Long userId) { + + this.commonRestOperations.deleteUser(userId); + + return new EntityIdentifier(Long.valueOf(1)); + } + + @RequestMapping(consumes="application/json", produces="application/json", value = "/admin/user/{userId}", method = RequestMethod.GET) + public @ResponseBody AppUserData viewUser(@PathVariable("userId") Long userId) { + + return this.commonRestOperations.retrieveUser(userId); + } + + @RequestMapping(consumes="application/x-www-form-urlencoded", produces="application/json", value = "/admin/user/{userId}", method = RequestMethod.POST) + @ResponseStatus(HttpStatus.OK) + public @ResponseBody EntityIdentifier updateUser(@PathVariable("userId") Long userId, + @RequestParam(value="selectedItems", required=false) String[] selectedRoles, + @RequestParam(value="username") String username, + @RequestParam(value="firstname") String firstname, + @RequestParam(value="lastname") String lastname, + @RequestParam(value="email") String email, + @RequestParam(value="officeId") Long officeId) { + + UserCommand command = new UserCommand(username, firstname, lastname, "", email, selectedRoles, officeId); + command.setId(userId); + + return this.commonRestOperations.updateUser(command); + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody Collection validationException(ClientValidationException ex, HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/user/ExportCSVController.java b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/user/ExportCSVController.java new file mode 100644 index 000000000..94046000e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/java/org/mifosng/ui/user/ExportCSVController.java @@ -0,0 +1,159 @@ +package org.mifosng.ui.user; + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.Collection; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.mifosng.data.ErrorResponse; +import org.mifosng.data.reports.GenericResultset; +import org.mifosng.data.reports.ResultsetColumnHeader; +import org.mifosng.data.reports.ResultsetDataRow; +import org.mifosng.ui.CommonRestOperations; +import org.mifosng.ui.loanproduct.ClientValidationException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.ResponseBody; + +@Controller +public class ExportCSVController { + + private final static Logger logger = LoggerFactory.getLogger(ExportCSVController.class); + + private final CommonRestOperations commonRestOperations; + + @Autowired + public ExportCSVController(final CommonRestOperations commonRestOperations) { + this.commonRestOperations = commonRestOperations; + } + + @ExceptionHandler(AccessDeniedException.class) + public String accessDeniedException() { + return "unAuthorizedAction"; + } + + @ExceptionHandler(ClientValidationException.class) + public @ResponseBody Collection validationException(ClientValidationException ex, HttpServletResponse response) { + + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + response.setContentType("application/json"); + + return ex.getValidationErrors(); + } + + @RequestMapping(value = "/exportcsv*", method = RequestMethod.GET) + public void handleExportCSV(final HttpServletRequest request, HttpServletResponse response) throws IOException { + + @SuppressWarnings("unchecked") + Map queryParams = request.getParameterMap(); + + String rptDB = queryParams.get("MRP_rptDB")[0]; + String name = queryParams.get("MRP_Name")[0]; + String type = queryParams.get("MRP_Type")[0]; + + Set keys = queryParams.keySet(); + Map extractedQueryParams = new HashMap(); + String pKey; + String pValue; + for (String k : keys) { + + if (k.startsWith("MRP_")) { + pKey = "${" + k.substring(4) + "}"; + pValue = queryParams.get(k)[0]; + // logger.info(name + ": " + pKey + ": " + pValue); + extractedQueryParams.put(pKey, pValue); + } + } + +// if (extractedQueryParams.size() > 3) { +// throw new UnsupportedOperationException("Not able to support this report for export to CSV right now."); +// } + + GenericResultset result = this.commonRestOperations.retrieveReportingData(rptDB, name, type, extractedQueryParams); + + // response.setContentType("application/octet-stream"); + response.setContentType("application/x-msdownload"); + + response.setHeader("Content-Disposition", + "attachment;filename=" + name.replaceAll(" ", "") + ".csv"); + + ServletOutputStream out = response.getOutputStream(); + StringBuffer sb = generateCsvFileBuffer(result); + + InputStream in = new ByteArrayInputStream(sb.toString().getBytes( + "UTF-8")); + + byte[] outputByte = new byte[4096]; + Integer readLen = in.read(outputByte, 0, 4096); + + while (readLen != -1) { + out.write(outputByte, 0, readLen); + readLen = in.read(outputByte, 0, 4096); + } + in.close(); + out.flush(); + out.close(); + + } + + private static StringBuffer generateCsvFileBuffer(GenericResultset result) { + StringBuffer writer = new StringBuffer(); + + List columnHeaders = result.getColumnHeaders(); + logger.info("NO. of Columns: " + columnHeaders.size()); + Integer chSize = columnHeaders.size(); + for (int i = 0; i < chSize; i++) { + writer.append('"' + columnHeaders.get(i).getColumnName() + '"'); + if (i < (chSize - 1)) + writer.append(","); + } + writer.append('\n'); + + List data = result.getData(); + List row; + Integer rSize; +// String currCol; + String currColType; + String currVal; + logger.info("NO. of Rows: " + data.size()); + for (int i = 0; i < data.size(); i++) { + row = data.get(i).getRow(); + rSize = row.size(); + for (int j = 0; j < rSize; j++) { +// currCol = columnHeaders.get(j).getColumnName(); + currColType = columnHeaders.get(j).getColumnType(); + currVal = row.get(j); + if (currVal != null) { + if (currColType.equals("DECIMAL") + || currColType.equals("DOUBLE") + || currColType.equals("BIGINT") + || currColType.equals("SMALLINT") + || currColType.equals("INT")) + writer.append(currVal); + else + writer.append('"' + currVal + '"'); + } + if (j < (rSize - 1)) + writer.append(","); + } + writer.append('\n'); + } + + return writer; + } + +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/resources/META-INF/spring/appContext.xml b/mifosng-individual-lending-app/src/main/resources/META-INF/spring/appContext.xml new file mode 100644 index 000000000..eb3cf6912 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/resources/META-INF/spring/appContext.xml @@ -0,0 +1,20 @@ + + + + + + + + + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/resources/META-INF/spring/securityContext.xml b/mifosng-individual-lending-app/src/main/resources/META-INF/spring/securityContext.xml new file mode 100644 index 000000000..88298afb5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/resources/META-INF/spring/securityContext.xml @@ -0,0 +1,127 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/resources/logback.xml b/mifosng-individual-lending-app/src/main/resources/logback.xml new file mode 100644 index 000000000..dd4821f83 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/resources/logback.xml @@ -0,0 +1,26 @@ + + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + ${catalina.home}/logs/mifosng-consumer.log + true + + + %-4relative [%thread] %-5level %logger{35} - %msg%n + + + + + + + + + + + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/resources/theme-default.properties b/mifosng-individual-lending-app/src/main/resources/theme-default.properties new file mode 100644 index 000000000..308b94847 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/resources/theme-default.properties @@ -0,0 +1,6 @@ +tabletools=/stretchyreporting/DataTables-1.8.2/extras/TableTools/media/css/TableTools.css +datatable.demopage=/stretchyreporting/DataTables-1.8.2/media/css/demo_page.css +datatable.demotable=/stretchyreporting/DataTables-1.8.2/media/css/demo_table.css +jqueryui=/stretchyreporting/jquery-ui-1.8.16.custom/css/smoothness/jquery-ui-1.8.16.custom.css +excelcss=/excel/excel-2007.css +allinone=/allinone.css \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/resources/theme-redmond.properties b/mifosng-individual-lending-app/src/main/resources/theme-redmond.properties new file mode 100644 index 000000000..af4162e2a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/resources/theme-redmond.properties @@ -0,0 +1,6 @@ +tabletools=/stretchyreporting/DataTables-1.8.2/extras/TableTools/media/css/TableTools.css +datatable.demopage=/stretchyreporting/DataTables-1.8.2/media/css/demo_page.css +datatable.demotable=/stretchyreporting/DataTables-1.8.2/media/css/demo_table.css +jqueryui=/stretchyreporting/jquery-ui-1.8.16.custom/css/redmond/jquery-ui-1.8.16.custom.css +excelcss=/excel/excel-2007.css +allinone=/allinone.css \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/resources/theme-ui-lightness.properties b/mifosng-individual-lending-app/src/main/resources/theme-ui-lightness.properties new file mode 100644 index 000000000..ba6c11605 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/resources/theme-ui-lightness.properties @@ -0,0 +1,6 @@ +tabletools=/stretchyreporting/DataTables-1.8.2/extras/TableTools/media/css/TableTools.css +datatable.demopage=/stretchyreporting/DataTables-1.8.2/media/css/demo_page.css +datatable.demotable=/stretchyreporting/DataTables-1.8.2/media/css/demo_table.css +jqueryui=/stretchyreporting/jquery-ui-1.8.16.custom/css/ui-lightness/jquery-ui-1.8.16.custom.css +excelcss=/excel/excel-2007.css +allinone=/allinone.css \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/spring/webmvc-config.xml b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/spring/webmvc-config.xml new file mode 100644 index 000000000..fb30fa772 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/spring/webmvc-config.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/allinone.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/allinone.css new file mode 100644 index 000000000..01a585b81 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/allinone.css @@ -0,0 +1,74 @@ +/*reset*/ +html{color:#000;background:#FFF;}body{margin:0 auto;font-family:Arial, Helvetica, Sans-Serif; font-size:12px;},div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;} +strong{font-weight: bolder;} +/*General*/ +div#container {margin-top:0px;} +div#content {margin-left:5px; margin-right:5px;} +/*top navigation*/ +#nav, #nav ul {padding:0;margin:0;list-style:none;} +#nav a {display:block;padding:7px 7px 7px 7px;color:#ccc;text-decoration:none;} +#nav a.dmenu {} +#nav a.dmenu:hover {color:#3366CC !important;background-color: #fff !important;} +#navwrapper {background-color: #2D2D2D;height:30px;} +#nav {padding-top:0px;} +#nav li {float: left; } +#nav li {position: relative;} +#nav li {position: static; width: auto;}/* hide from IE, mac */ +#nav li ul {position: absolute;display: none;margin-left:-1px;padding-bottom:10px;background-color: #FFFFFF;border: 1px solid #bbb;border-top:none;-moz-box-shadow: 0 0 5px #ddd;-webkit-box-shadow: 0 0 5px #ddd;box-shadow: 0 0 5px #ddd;z-index:5000;} +#nav li:hover a, #nav a:focus, +#nav a:active {padding:7px 7px 7px 7px;color:#fff;background:#444;text-decoration:none;} +#nav li ul, #nav ul li {width: 10em;} +#nav ul li a {color: #3366CC !important;border-right: 0;} +#nav ul li a:hover {color:#3366CC !important;background-color: #eef3fb !important;border-right: 0;} +#nav a.current {color:#fff;font-weight:bold;background:#2D2D2D;text-decoration:none;border-top:2px solid #C33;padding-bottom:5px;} +#nav a.current:hover{padding-bottom:5px;} +#nav li:hover ul {display: block;} +#nav li:hover ul a{color: #000000;background-color: transparent;} +#nav ul a:hover {background-color: #606060!important;color: #FFFFFF !important;} +.menuseprator{border-bottom:1px solid #ddd; margin:10px 0 10px 0;} +.arrowdown{color#eee; font-size:0.5em;} +.floatleft{float:left;} +.floatright{float:right;} +.clear{clear:both;} +/*end of top navigation css*/ +/*simple vertical form*/ +label {display: block; font-size: 14px; padding-top: 3px;} +#formcontainer input {font-size:12px; padding:4px 2px; border:solid 1px #aacfe4; width: 402px;} +#formcontainer select {font-size:12px; padding:3px 2px; border:solid 1px #aacfe4; width: 402px;} +fieldset {border-top: 1px solid;} +legend {margin-left: 10px; font-size: 14px; font-weight: bold;} +#ignorefornow button {clear:both; margin-left:225px; width:125px; height:31px; + background:#666666 no-repeat; text-align:center; + line-height:31px; color:#FFFFFF; font-size:11px; font-weight:bold;} +#formcontainer {margin:0 auto; width: auto; border:solid 2px #b7ddf2; background:#ebf4fb; padding: 14px;} +a.multiselectwidget {display: block; border: 1px solid #aaa; text-decoration: none; + background-color: #fafafa; color: #123456; clear:both;} +div.multiselectwidget {float:left; text-align: center; margin-right: 10px;} +select.multiselectwidget {width: 450px; height: 80px;} + +/*display of information in label, attribute fashion*/ +.row .shortrowlabel {float: left; width: 6em; text-align: left; margin-right: 0.5em;} +.row .rowlabel {float: left; width: 8em; text-align: left; margin-right: 0.5em;} +.row .longrowlabel {float: left; width: 18em; text-align: left; margin-right: 0.5em;} +.row .rowvalue {text-align: left; display: inline-block;} +/**/ +#toolbar {padding: 9px 5px;} +/*datatables*/ +table.pretty {width:100%;} +table.pretty th, table.pretty td {border: 1px gainsboro solid;padding: 0.2em;} +table.pretty caption {margin-left: inherit;margin-right: inherit;font-style: italic;font-weight: bold;} +table.pretty thead tr th {text-align: center;font-weight: bold;border-bottom: 2px solid;} +table.pretty thead tr th.empty {border: 0px;} +table.pretty tfoot tr th {text-align: center;font-weight: bold;border-bottom: 2px solid;border-top: 2px solid;} +table.pretty tbody tr th {text-align: center;} +table.pretty tbody tr td {text-align: center; border-top: solid 1px;} +table.pretty tbody tr.odd td {background: #EBF4FB;} +table.pretty tbody tr.even td {background: #BCEEEE;} +table.pretty thead tr th.highlightcol {border-top: solid 2px #2E6E9E;border-left: solid 2px #2E6E9E;border-right: solid 2px #2E6E9E; border-bottom: 1px gainsboro solid;} +table.pretty tfoot tr th.highlightcol {border-left: solid 2px #2E6E9E;border-right: solid 2px #2E6E9E;} +table.pretty thead tr th.lefthighlightcol, table.pretty tbody tr td.lefthighlightcol, table.pretty tfoot tr th.lefthighlightcol{border-left: solid 2px #2E6E9E;} +table.pretty thead tr th.righthighlightcol, table.pretty tbody tr td.righthighlightcol, table.pretty tfoot tr th.righthighlightcol {border-right: solid 2px #2E6E9E;} +table.pretty thead tr th.lefthighlightcolheader, table.pretty tbody tr td.lefthighlightcolheader, table.pretty tfoot tr th.lefthighlightcolheader {border-left: solid 2px #2E6E9E;} +table.pretty thead tr th.righthighlightcolheader, table.pretty tbody tr td.righthighlightcolheader, table.pretty tfoot tr th.righthighlightcolheader {border-right: solid 2px #2E6E9E;} + +div.loantabs {margin-top: 5px;} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/appui.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/appui.js new file mode 100644 index 000000000..b6f947370 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/appui.js @@ -0,0 +1,180 @@ +(function($) { + + $.appui = {}; + + $.views.registerHelpers({ + decimal: function(number, digits) { + try { + return number.toFixed(digits); + } catch(e) { + return number +"(NaN)"; + } + }, + number: function(number) { + try { + return number.toFixed(0); + } catch(e) { + return number +"(NaN)"; + } + }, + json: function(obj) { + try { + return JSON.stringify(obj); + } catch(e) { + return "" + e; + } + }, + localDate: function(dateParts) { + try { + + var year = dateParts[0]; + var month = parseInt(dateParts[1]) - 1; // month is zero indexed + var day = dateParts[2]; + + var d = new Date(); + d.setFullYear(year,month,day); + + return d.toDateString(); + } catch(e) { + return "??"; + } + }, + toISODate: function(dateParts) { + try { + + var year = dateParts[0]; + var month = parseInt(dateParts[1]); + var day = parseInt(dateParts[2]); + + var monthStr = '' + month; + if (month < 10) { + monthStr = '0' + month; + } + var dayStr = '' + day; + if (day < 10) { + dayStr = '0' + day; + } + + return year + '-' + monthStr + '-' + dayStr; + } catch(e) { + return "??"; + } + } + }); + +function handleXhrError(jqXHR, textStatus, errorThrown, templateSelector, placeholderDiv) { + if (jqXHR.status === 0) { + alert('Not connect.\n Verify Network.'); + } else if (jqXHR.status == 404) { + alert('Requested page not found. [404]'); + } else if (jqXHR.status == 500) { + alert('Internal Server Error [500].'); + } else if (errorThrown === 'parsererror') { + alert('Requested JSON parse failed.'); + } else if (errorThrown === 'timeout') { + alert('Time out error.'); + } else if (errorThrown === 'abort') { + alert('Ajax request aborted.'); + } else { + // remove error class from all input fields + var $inputs = $('#entityform :input'); + + $inputs.each(function() { + $(this).removeClass("ui-state-error"); + }); + + $(placeholderDiv).html(""); + + var jsonErrors = JSON.parse(jqXHR.responseText); + + var errorArray = new Array(); + var arrayIndex = 0; + $.each(jsonErrors, function() { + var fieldId = '#' + this.field; + $(fieldId).addClass("ui-state-error"); + + var errorObj = new Object(); + errorObj.field = this.field; + errorObj.code = this.code; + errorObj.message = this.code; + errorObj.value = this.value; + + errorArray[arrayIndex] = errorObj; + arrayIndex++ + }); + + var templateArray = new Array(); + var templateErrorObj = new Object(); + templateErrorObj.title = "You have the following errors:"; + templateErrorObj.errors = errorArray; + + templateArray[0] = templateErrorObj; + + var formErrorsHtml = $(templateSelector).render(templateArray); + + $(placeholderDiv).append(formErrorsHtml); + } +} + +function popupDialogWithFormView(url, title, templateSelector, width, height, successFunction) { + var dialogDiv = $("
"); + var jqxhr = $.ajax({ + url: url, + type: 'GET', + contentType: 'application/json', + dataType: 'json', + success: function(data, textStatus, jqXHR) { + + var formHtml = $(templateSelector).render(data); + + dialogDiv.append(formHtml); + + dialogDiv.dialog({ + title: title, + width: width, + height: height, + modal: true, + buttons: { + "Save": function() { + $('.multiSelectedItems option').each(function(i) { + $(this).attr("selected", "selected"); + }); + + var form_data = $('#entityform').serialize(); + + var jqxhr = $.ajax({ + url: url, + type: 'POST', + data: form_data, + success: successFunction, + error: function(jqXHR, textStatus, errorThrown) { + handleXhrError(jqXHR, textStatus, errorThrown, "#formErrorsTemplate", "#formerrors"); + } + }); + }, + "Cancel": function() { + $(this).dialog( "close" ); + } + // end of buttons + }, + close: function() { + // if i dont do this, theres a problem with errors being appended to dialog view second time round + $(this).remove(); + }, + open: function (event, ui) { + $('.multiadd').click(function() { + return !$('.multiNotSelectedItems option:selected').remove().appendTo('#selectedItems'); + }); + + $('.multiremove').click(function() { + return !$('.multiSelectedItems option:selected').remove().appendTo('#notSelectedItems'); + }); + + $('.datepickerfield').datepicker({constrainInput: true, maxDate: '0', dateFormat: 'yy-mm-dd'}); + } + }).dialog('open'); + } + }); +} + +})(jQuery); \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007-header-bg.gif b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007-header-bg.gif new file mode 100644 index 000000000..cdecbe1eb Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007-header-bg.gif differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007-header-left.gif b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007-header-left.gif new file mode 100644 index 000000000..5e29ab7e6 Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007-header-left.gif differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007.css new file mode 100644 index 000000000..362069ed9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/excel/excel-2007.css @@ -0,0 +1,45 @@ +.ExcelTable2007 { + border: 1px solid #B0CBEF; + border-width: 1px 0px 0px 1px; + font-size: 11pt; + font-family: Calibri; + font-weight: 100; + border-spacing: 0px; + border-collapse: collapse; +} + +.ExcelTable2007 TH { + background-image: url(excel-2007-header-bg.gif); + background-repeat: repeat-x; + font-weight: normal; + font-size: 14px; + border: 1px solid #9EB6CE; + border-width: 0px 1px 1px 0px; + height: 17px; +} + +.ExcelTable2007 TD { + border: 0px; + background-color: white; + padding: 0px 4px 0px 2px; + border: 1px solid #D0D7E5; + border-width: 0px 1px 1px 0px; +} + +.ExcelTable2007 TD B { + border: 0px; + background-color: white; + font-weight: bold; +} + +.ExcelTable2007 TD.heading { + background-color: #E4ECF7; + text-align: center; + border: 1px solid #9EB6CE; + border-width: 0px 1px 1px 0px; +} + +.ExcelTable2007 TH.heading { + background-image: url(excel-2007-header-left.gif); + background-repeat: none; +} diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/favicon.ico b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/favicon.ico new file mode 100644 index 000000000..ec2bd72e6 Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/favicon.ico differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/global-translations/messages.properties b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/global-translations/messages.properties new file mode 100644 index 000000000..018668f21 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/global-translations/messages.properties @@ -0,0 +1,354 @@ +# jQuery.1ln8 plugin seems to give first line of properties file as error for some reason. +app.name=Mifos - Individual Lending: + +link.topnav.clients=Clients +link.topnav.users=User Administration +link.topnav.organisation=Organisation Administration +link.reports=Reports +link.signout=Sign out +link.topnav.account.settings=Account Settings +link.topnav.theme=Theme +link.topnav.culture=Culture + +page.home.title=Home +tab.search=Search +label.client.search=Choose client: +option.client.search.first.choice=--Select Client-- +link.add.new.client=Add a new client + +page.client.account.title=View Client Account Details +page.admin.home.title=Administration Home +page.admin.settings.title=Account Settings + +dialog.title.add.client=Add client +label.office=Office: +option.office.first.choice=--Select Office-- +label.lastname=Last name: +label.firstname=First name: +label.longname=Full name: +label.joiningdate=Joining date: + +error.msg.header=You have the following errors: +validation.msg.client.office.cannot.be.blank=A client must be associated with an office. +validation.msg.client.firstname.cannot.be.blank=First name cannot be blank. +validation.msg.client.lastname.cannot.be.blank=Last name cannot be blank. +validation.msg.client.joining.date.cannot.be.blank=Joining date cannot be blank. +validation.msg.client.fullname.must.be.provide.or.firstname.lastname=A fullname must be provided or else both firstname and lastname details. +validation.msg.client.fullname.cannot.entered.when.firstname.or.lastname.entered=You cannot provide both fullname and firstname or lastname details. A fullname must be provided or else both firstname and lastname details. + +error.msg.client.id.invalid=Client does not exist. +error.msg.office.id.invalid=Office does not exist. +error.msg.office.duplicate.externalId=An office with 'External Id' already exists. +error.msg.office.duplicate.name=An office with 'name' already exists. +error.msg.office.unknown.data.integretity.issue=An unknown data integrity issue occured. + +dialog.title.confirmation.required=Confirmation required +text.confirmation.required=Are you sure? +dialog.title.functionality.not.available=Functionality not yet available +dialog.messages.functionality.not.available=Functionality not yet available. + +dialog.button.submit=Submit +dialog.button.save=Save +dialog.button.cancel=Cancel +dialog.button.ok=Ok +dialog.button.confirm=Confirm +link.edit=Edit +widget.multiselect.button.add=Add +widget.multiselect.button.remove=Remove + +dialog.title.new.loan.application=New loan application +dialog.button.new.loan.application=New loan application +dialog.button.reject.loan=Reject +dialog.button.withdrawn.by.client.loan=Withdrawn by applicant +dialog.button.approve.loan=Approve +dialog.button.delete.loan=Delete +dialog.button.undo.loan.approval=Undo approval +dialog.button.undo.loan.disbursal=Undo disbursal +dialog.button.disburse.loan=Disburse +dialog.button.loan.repayment=Loan repayment +dialog.button.adjust.loan.repayment=Adjust +dialog.button.loan.waive=Waive + +dialog.button.add.note=Add note +label.client.account.name=Name: +label.client.account.branch=Branch: +label.client.account.joinedon=Joined on: +heading.client.account.account.overview=Account Overview +label.client.account.pending.approval.loans=Pending approval loans +label.client.account.pending.disbursal.loans=Awaiting disbursal loans +label.client.account.active.loans=Active loans +label.client.account.closed.loans=Closed loans +label.client.account.no.loans.exist=No accounts exist +heading.client.account.extra.information=Additional Information +dialog.title.edit.additional.client.information=Edit additional client information + +widget.notes.heading=You have the following notes: +widget.notes.label.client.note=Client note: +widget.notes.label.loan.note=Loan note: +widget.notes.label.loan.transaction.note=Loan transaction note: + +dialog.title.add.note=Add note +dialog.title.edit.note=Edit note +dialog.notes.form.label.note=Note: + +# error handling messages for loan event and transactions screens +error.msg.no.loan.with.identifier.exists=No loan with identifier {0} exists. +error.msg.no.permission=You do not have sufficient permissions to perform this action. +error.msg.no.permission.to.approve.loan.in.past=You do not have permission to approve a loan with a date in the past. +error.msg.no.permission.to.reject.loan.in.past=You do not have permission to reject a loan with a date in the past. +error.msg.no.permission.to.withdraw.loan.in.past=You do not have permission to withdraw a loan with a date in the past. +error.msg.no.permission.to.disburse.loan.in.past=You do not have permission to disburse a loan with a date in the past. +error.msg.no.permission.to.make.repayment.on.loan.in.past=You do not have permission to make a repayment on the loan with a date in the past. +error.msg.cannot.delete.loan.in.its.present.state=You cannot delete the loan in its current state. It must be pending approval. + +validation.msg.invalid.date.format=Invalid date format. +validation.msg.invalid.number.format=Invalid number format. +validation.msg.loan.id.is.invalid=Loan identifier is invalid. +validation.msg.loan.transaction.id.is.invalid=Loan transaction identifier is invalid. + +validation.msg.loan.state.transition.date.cannot.be.blank=A date must be provided when transitioning the loan into this state. +validation.msg.note.exceeds.max.length=The content of the note exceeds max length of 1000 characters. + +validation.msg.loan.repayment.date.cannot.be.blank=The repayment date cannot be blank. +validation.msg.loan.repayment.must.be.greater.than.zero=The repayment amount must be a number greater than zero. +validation.msg.loan.adjustment.must.be.zero.or.greater=The repayment amount must be a number greater than or equal to zero. + +# loan event and transactions screens +label.loan.action.note=Note: +dialog.title.reject.loan=Reject loan +label.loan.rejected.on=Rejected on: +dialog.title.loan.withdrawn.by.client=Withdrawn by client +label.loan.withdrawn.by.client.on=Withdrawn on: +dialog.title.approve.loan=Approve loan +label.loan.approved.on=Approved on: +dialog.title.undo.loan.approval=Undo loan approval: confirmation required +dialog.title.disburse.loan=Disburse loan +label.loan.disbursed.on=Disbursed on: +dialog.title.undo.loan.disbursal=Undo loan disbursal: confirmation required +dialog.title.loan.repayment=Loan repayment +dialog.title.adjust.loan.repayment=Adjust loan repayment +dialog.title.waive.loan=Waive outstanding amount +label.loan.transaction.on=Repayment on: +label.loan.transaction.amount=Amount: + + +tab.client.account.loan.details=Details +tab.client.account.loan.schedule=Schedule +tab.client.account.loan.repayments=Repayments + +tab.client.account.loan.schedule.table.summary.caption=Summary +tab.client.account.loan.schedule.table.repaymentschedule.caption=Repayment Schedule +tab.client.account.loan.schedule.table.repayments.caption=Repayment Activity + +tab.client.account.loan.schedule.table.summary.heading.original=Original Loan +tab.client.account.loan.schedule.table.summary.heading.paid=Paid +tab.client.account.loan.schedule.table.summary.heading.waived=Waived +tab.client.account.loan.schedule.table.heading.outstanding=Outstanding +tab.client.account.loan.schedule.table.column.heading.expected=Expected +tab.client.account.loan.schedule.table.column.heading.paid=Paid +tab.client.account.loan.schedule.table.column.heading.principal=Principal +tab.client.account.loan.schedule.table.column.heading.interest=Interest +tab.client.account.loan.schedule.table.column.heading.total=Total + +tab.client.account.loan.schedule.table.column.heading.date=Date +tab.client.account.loan.schedule.table.column.heading.paymentdate=Payment Date +tab.client.account.loan.schedule.table.column.heading.amountpaid=Amount Paid +tab.client.account.loan.schedule.table.column.heading.principal.portion=Principal Portion +tab.client.account.loan.schedule.table.column.heading.interest.portion=Interest Portion +tab.client.account.loan.schedule.table.column.heading.action=Action + +# client account screen +label.client.account.loan.status=Status: +label.client.account.loan.status.since=since +label.client.account.loan.status.arrears=In arrears by: +label.client.account.loan.submitted.on=Sumbitted on: +label.client.account.loan.approved.on=Approved on: +label.client.account.loan.expected.disbursement.on=Expected dibursement on: +label.client.account.loan.disbursed.on=Disbursed on: +label.client.account.loan.first.repayment.due.on=First repayment due on: +label.client.account.loan.interest.charged.from=Interest charged from: +label.client.account.loan.expected.maturity.on=Expected to mature on: +label.client.account.loan.closed.on=Closed on: +label.client.account.loan.term=Expected loan term: +label.client.account.loan.actual.term=Actual loan term: +label.months=Months +label.days=Days +label.client.account.loan.product=Product: +label.client.account.loan.externalid=External id: +label.client.account.loan.currency=Currency: +label.client.account.loan.principal=Principal: +label.client.account.loan.repayments=Repayments: +label.client.account.loan.amortization=Amortization: +label.client.account.loan.interest=Interest: + +# organisation administration screens +administration.link.view.products=View Products +administration.link.add.product=Add Product +administration.link.view.offices=View Offices +administration.link.add.office=Add Office +administration.link.currency.configuration=Currency Configuration + +administration.link.view.users=View Users +administration.link.add.user=Add User +administration.link.view.roles=View Roles +administration.link.add.role=Add Role +administration.link.view.permissions=View Permissions + +table.heading.product.name=Product Name +table.heading.product.created=Created +table.heading.product.modified=Last Modified +table.heading.product.active=Active + +link.action.product.deactivate=Deactivate +link.action.product.viewedit=View/Edit +link.action.product.delete=Delete + +dialog.title.add.loan.product=Add loan product +dialog.title.product.details=Loan product details + +form.label.loan.applicant=Applicant: +form.label.loan.submitted.on=Submitted on: +form.label.loan.submitted.on.note=Loan submittal note: +form.label.loan.annual.nominal.interestrate=Annual nominal rate %: +form.label.loan.interest.charged.from=Interest charged from: +form.label.loan.expected.disbursement.date.on=Expected disbursement on: +form.label.loan.first.repayment.on=First repayment on: + +validation.msg.loan.expectedDisbursementDate.method.cannot.be.blank=Expected disbursement on field cannot be blank. +validation.msg.loan.expectedDisbursementDate.cannot.be.after.first.repayment.date=Expected disbursement date cannot be after the first repayment date. +validation.msg.loan.interestCalculatedFromDate.must.be.entered.when.using.repayments.startfrom.field=The date interest is to be calculated from cannot be left blank when a date is provided for when repayments start from. +validation.msg.loan.submitted.on.date.cannot.be.blank=Submitted on date cannot be blank. +validation.msg.loan.submitted.on.date.cannot.be.after.expectedDisbursementDate=Submitted on date cannot be after the expected disbursement date. + +form.legend.loan.information=Loan Information +form.legend.loan.product.information=Loan Product Information +form.label.product.dropdown=Product: +form.option.product.dropdown.first.choice=--Select Product-- +form.label.loan.product.name=Name: +form.label.loan.product.description=Description: +form.legend.loan.product.currency=Currency +form.label.loan.product.currency=Currency: +form.label.loan.product.decimalplaces=Decimal places: +form.legend.loan.product.loan.terms=Loan Terms +form.label.loan.product.loan.amount=Loan amount: +form.label.loan.product.repaidevery=Repaid every: +form.label.loan.product.numberof.repayments=# of repayments: +form.label.loan.product.amortization=Amortization: +form.label.loan.product.arrears.tolerance=Arrears tolerance: +form.label.loan.product.nominal.interestrate=Nominal interest rate %: +form.label.loan.product.interest.method=Interest method: + +validation.msg.product.name.cannot.be.blank=Product name cannot be blank. +validation.msg.product.description.exceeds.max.length=The content of the description has exceeded max allowed length of 500 characters. +validation.msg.product.currency.digitsAfterDecimal.cannot.be.empty=You must enter a number to represent number of digits after decimal to be supported for product. +validation.msg.product.principal.amount.cannot.be.empty=Loan amount cannot be blank. +validation.msg.product.repayment.repaidEvery.cannot.be.empty=Repaid every cannot be blank. +validation.msg.product.number.of.repayments.cannot.be.empty=# of repayments cannot be blank. +validation.msg.product.arrears.tolerance.amount.cannot.be.empty=Arrears tolerance cannot be blank. +validation.msg.product.interest.rate.per.period.amount.cannot.be.empty=Nominal interest rate % cannot be blank. + +validation.msg.product.currency.digitsAfterDecimal.must.be.between.zero.and.six.inclusive=Decimal places must be a number between zero and six inclusive. +validation.msg.product.principal.amount.must.be.greater.than.zero=Loan amount must be greater than zero. +validation.msg.product.repayment.repaidEvery.outside.allowed.range=Repaid every is out of allowed range for selected repayment frequency type. +validation.msg.product.number.of.repayments.is.out.of.range=# of repayments is out of allowed range for selected repayment frequency type. +validation.msg.product.arrears.tolerance.amount.cannot.be.negative=Arrears tolerance cannot be negative. +validation.msg.product.interest.rate.per.period.amount.cannot.be.negative=Nominal interest rate % cannot be negative. + +table.heading.office.name=Office Name +table.heading.office.externalid=External Id +table.heading.office.openedon=Opened on +table.heading.office.parent=Parent Office + +dialog.title.add.office=Add office +dialog.title.office.details=Office details + +form.legend.office.details=Office details +form.label.office.name=Name: +form.label.office.parent=Parent office: +form.label.office.openedon=Opened on: +form.label.office.externalid=External id: + +validation.msg.office.name.cannot.be.blank=Office name cannot be blank. +validation.msg.office.parent.cannot.be.blank=You must select a parent office. +validation.msg.office.opening.date.cannot.be.blank=You must choose a date to represent when the office commenced services. + +dialog.title.configuration.currencies=Currency Configuration +form.label.configuration.available.currencies=Available currencies: +form.label.configuration.allowed.currencies=Allowed currencies: + +validation.msg.organisation.allowed.currencies.cannot.be.blank=You must select at least one currency that is 'allowed' for your organisation. + +# user account settings and admin screens +tab.settings=Settings +dialog.title.update.password=Update password +dialog.title.update.details=Update details + +form.label.new.password=New password: +form.label.repeat.new.password=Repeat new password: + +form.label.username=Username: +form.label.firstname=First name: +form.label.lastname=Last name: +form.label.email=Email: + +form.label.heading.office=Office: +form.label.office=Office: + +form.label.heading.details=Details: +form.label.name=Name: +form.label.username=Username: +form.label.email=Email: +form.link.changedetails=Change details + +form.label.heading.security=Security: +form.label.password=Password: +form.link.changepassword=Change password + +form.label.heading.roles=Roles: + +error.msg.username.already.exists.in.organisation=An account with that username already exists. + +validation.msg.user.username.cannot.be.blank=Username cannot be blank. +validation.msg.username.already.exists.in.organisation=An account with that username already exists. +validation.msg.user.firstname.cannot.be.blank=Firstname cannot be blank. +validation.msg.user.lastname.cannot.be.blank=Lastname cannot be blank. +validation.msg.user.email.cannot.be.blank=Email cannot be blank. +validation.msg.user.office.cannot.be.blank=You must select an office. +validation.msg.user.roles.cannot.be.blank=A user must have at least one role. +validation.msg.changepassword.password.cannot.be.blank=Password cannot be blank. +validation.msg.changepassword.passwordrepeat.cannot.be.blank=Repeated password cannot be blank. +validation.msg.changepassword.passwordrepeat.not.the.same=Password and Repeat password are not the same. + +dialog.title.add.user=Add user +dialog.title.add.role=Add role +dialog.title.edit.details=Edit details + +form.legend.role.details=Role Details +form.label.role.name=Name: +form.label.role.description=Description: +form.label.role.available.permissions=Available permissions: +form.label.role.selected.permissions=Selected permissions: + +form.legend.user.details=User Details +form.label.user.username=Username: +form.label.user.firstname=First name: +form.label.user.lastname=Last name: +form.label.user.email=Email: +form.label.user.office=Office: +form.label.user.available.roles=Available roles: +form.label.user.selected.roles=Selected roles: + +validation.msg.role.name.cannot.be.blank=Name cannot be blank. +validation.msg.role.description.cannot.be.blank=Description cannot be blank. +validation.msg.role.description.exceeds.max.length=The content of the description exceeds max allowed length of 500 characters. +validation.msg.role.permissions.cannot.be.empty=A role must have at least one permission associated with it. + +table.heading.officename=Office Name +table.heading.username=Username +table.heading.name=Name +table.heading.email=Email +table.heading.rolename=Role Name +table.heading.description=Description +table.heading.permission.type=Type +table.heading.permission.permission=Permission +table.heading.permission.description=Description \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/global-translations/messages_fr.properties b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/global-translations/messages_fr.properties new file mode 100644 index 000000000..17b7572d6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/global-translations/messages_fr.properties @@ -0,0 +1,352 @@ +app.name=Mifos - Individual Lending (fr): + +link.topnav.clients=Clients(fr) +link.topnav.users=User Administration(fr) +link.topnav.organisation=Organisation Administration(fr) +link.reports=Reports(fr) +link.signout=Sign out(fr) +link.topnav.account.settings=Account Settings(fr) +link.topnav.theme=Theme(fr) +link.topnav.culture=Culture(fr) + +page.home.title=Home(fr) +tab.search=Search(fr) +label.client.search=Choose client:(fr): +option.client.search.first.choice=--Select Client--(fr) +link.add.new.client=Add a new client(fr) + +page.client.account.title=View Client Account Details(fr) +page.admin.home.title=Administration Home(fr) +page.admin.settings.title=Account Settings(fr) + +dialog.title.add.client=Add client(fr) +label.office=Office(fr): +option.office.first.choice=--Select Office--(fr) +label.lastname=Last name(fr): +label.firstname=First name(fr): +label.longname=Full name:(fr) +label.joiningdate=Joining date(fr): + +error.msg.header=You have the following errors:(fr) +validation.msg.client.office.cannot.be.blank=A client must be associated with an office.(fr) +validation.msg.client.firstname.cannot.be.blank=First name cannot be blank.(fr) +validation.msg.client.lastname.cannot.be.blank=Last name cannot be blank.(fr) +validation.msg.client.joining.date.cannot.be.blank=Joining date cannot be blank.(fr) +validation.msg.client.fullname.must.be.provide.or.firstname.lastname=A fullname must be provided or else both firstname and lastname details.(fr) +validation.msg.client.fullname.cannot.entered.when.firstname.or.lastname.entered=You cannot provide both fullname and firstname or lastname details. A fullname must be provided or else both firstname and lastname details.(fr) + + +error.msg.client.id.invalid=Client does not exist.(fr) +error.msg.office.id.invalid=Office does not exist.(fr) +error.msg.office.duplicate.externalId=An office with 'External Id' already exists.(fr) +error.msg.office.duplicate.name=An office with 'name' already exists.(fr) +error.msg.office.unknown.data.integretity.issue=An unknown data integrity issue occured.(fr) + +dialog.title.confirmation.required=Confirmation required(fr) +text.confirmation.required=Are you sure?(fr) +dialog.title.functionality.not.available=Functionality not yet available(fr) +dialog.messages.functionality.not.available=Functionality not yet available.(fr) + +dialog.button.submit=Submit(fr) +dialog.button.save=Save(fr) +dialog.button.cancel=Cancel(fr) +dialog.button.ok=Ok(fr) +dialog.button.confirm=Confirm(fr) +link.edit=Edit(fr) +widget.multiselect.button.add=Add(fr) +widget.multiselect.button.remove=Remove(fr) + +dialog.title.new.loan.application=New loan application(fr) +dialog.button.new.loan.application=New loan application(fr) +dialog.button.reject.loan=Reject(fr) +dialog.button.withdrawn.by.client.loan=Withdrawn by applicant(fr) +dialog.button.approve.loan=Approve(fr) +dialog.button.delete.loan=Delete(fr) +dialog.button.undo.loan.approval=Undo approval(fr) +dialog.button.undo.loan.disbursal=Undo disbursal(fr) +dialog.button.disburse.loan=Disburse(fr) +dialog.button.loan.repayment=Loan repayment(fr) +dialog.button.adjust.loan.repayment=Adjust(fr) +dialog.button.loan.waive=Waive(fr) + +dialog.button.add.note=Add note(fr) +label.client.account.name=Name:(fr) +label.client.account.branch=Branch:(fr) +label.client.account.joinedon=Joined on:(fr) +heading.client.account.account.overview=Account Overview(fr) +label.client.account.pending.approval.loans=Pending approval loans(fr) +label.client.account.pending.disbursal.loans=Awaiting disbursal loans(fr) +label.client.account.active.loans=Active loans(fr) +label.client.account.closed.loans=Closed loans(fr) +label.client.account.no.loans.exist=No accounts exist(fr) +heading.client.account.extra.information=Additional Information(fr) +dialog.title.edit.additional.client.information=Edit additional client information(fr) + +widget.notes.heading=You have the following notes:(fr) +widget.notes.label.client.note=Client note:(fr) +widget.notes.label.loan.note=Loan note:(fr) +widget.notes.label.loan.transaction.note=Loan transaction note:(fr) + +dialog.title.add.note=Add note(fr) +dialog.title.edit.note=Edit note(fr) +dialog.notes.form.label.note=Note:(fr) + +# error handling messages for loan event and transactions screens +error.msg.no.loan.with.identifier.exists=No loan with identifier {0} exists.(fr) +error.msg.no.permission=You do not have sufficient permissions to perform this action.(fr) +error.msg.no.permission.to.approve.loan.in.past=You do not have permission to approve a loan with a date in the past.(fr) +error.msg.no.permission.to.reject.loan.in.past=You do not have permission to reject a loan with a date in the past.(fr) +error.msg.no.permission.to.withdraw.loan.in.past=You do not have permission to withdraw a loan with a date in the past.(fr) +error.msg.no.permission.to.disburse.loan.in.past=You do not have permission to disburse a loan with a date in the past.(fr) +error.msg.no.permission.to.make.repayment.on.loan.in.past=You do not have permission to make a repayment on the loan with a date in the past.(fr) +error.msg.cannot.delete.loan.in.its.present.state=You cannot delete the loan in its current state. It must be pending approval.(fr) + +validation.msg.invalid.date.format=Invalid date format.(fr) +validation.msg.invalid.number.format=Invalid number format.(fr) +validation.msg.loan.id.is.invalid=Loan identifier is invalid.(fr) +validation.msg.loan.transaction.id.is.invalid=Loan transaction identifier is invalid.(fr) + +validation.msg.loan.state.transition.date.cannot.be.blank=A date must be provided when transitioning the loan into this state.(fr) +validation.msg.note.exceeds.max.length=The content of the note exceeds max length of 1000 characters.(fr) + +validation.msg.loan.repayment.date.cannot.be.blank=The repayment date cannot be blank.(fr) +validation.msg.loan.repayment.must.be.greater.than.zero=The repayment amount must be a number greater than zero.(fr) +validation.msg.loan.adjustment.must.be.zero.or.greater=The repayment amount must be a number greater than or equal to zero.(fr) + +# loan event and transactions screens +label.loan.action.note=Note:(fr) +dialog.title.reject.loan=Reject loan(fr) +label.loan.rejected.on=Rejected on:(fr) +dialog.title.loan.withdrawn.by.client=Withdrawn by client(fr) +label.loan.withdrawn.by.client.on=Withdrawn on:(fr) +dialog.title.approve.loan=Approve loan(fr) +label.loan.approved.on=Approved on:(fr) +dialog.title.undo.loan.approval=Undo loan approval: confirmation required(fr) +dialog.title.disburse.loan=Disburse loan(fr) +label.loan.disbursed.on=Disbursed on:(fr) +dialog.title.undo.loan.disbursal=Undo loan disbursal: confirmation required(fr) +dialog.title.loan.repayment=Loan repayment(fr) +dialog.title.adjust.loan.repayment=Adjust loan repayment(fr) +dialog.title.waive.loan=Waive outstanding amount(fr) +label.loan.transaction.on=Repayment on:(fr) +label.loan.transaction.amount=Amount:(fr) + +tab.client.account.loan.details=Details(fr) +tab.client.account.loan.schedule=Schedule(fr) +tab.client.account.loan.repayments=Repayments(fr) + +tab.client.account.loan.schedule.table.summary.caption=Summary(fr) +tab.client.account.loan.schedule.table.repaymentschedule.caption=Repayment Schedule(fr) +tab.client.account.loan.schedule.table.repayments.caption=Repayment Activity(fr) + +tab.client.account.loan.schedule.table.summary.heading.original=Original Loan(fr) +tab.client.account.loan.schedule.table.summary.heading.paid=Paid(fr) +tab.client.account.loan.schedule.table.summary.heading.waived=Waived(fr) +tab.client.account.loan.schedule.table.heading.outstanding=Outstanding(fr) +tab.client.account.loan.schedule.table.column.heading.expected=Expected(fr) +tab.client.account.loan.schedule.table.column.heading.paid=Paid(fr) +tab.client.account.loan.schedule.table.column.heading.principal=Principal(fr) +tab.client.account.loan.schedule.table.column.heading.interest=Interest(fr) +tab.client.account.loan.schedule.table.column.heading.total=Total(fr) + +tab.client.account.loan.schedule.table.column.heading.date=Date(fr) +tab.client.account.loan.schedule.table.column.heading.paymentdate=Payment Date(fr) +tab.client.account.loan.schedule.table.column.heading.amountpaid=Amount Paid(fr) +tab.client.account.loan.schedule.table.column.heading.principal.portion=Principal Portion(fr) +tab.client.account.loan.schedule.table.column.heading.interest.portion=Interest Portion(fr) +tab.client.account.loan.schedule.table.column.heading.action=Action(fr) + +# client account screen +label.client.account.loan.status=Status:(fr) +label.client.account.loan.status.since=since(fr) +label.client.account.loan.status.arrears=In arrears by:(fr) +label.client.account.loan.submitted.on=Sumbitted on:(fr) +label.client.account.loan.approved.on=Approved on:(fr) +label.client.account.loan.expected.disbursement.on=Expected dibursement on:(fr) +label.client.account.loan.disbursed.on=Disbursed on:(fr) +label.client.account.loan.first.repayment.due.on=First repayment due on:(fr) +label.client.account.loan.interest.charged.from=Interest charged from:(fr) +label.client.account.loan.expected.maturity.on=Expected to mature on:(fr) +label.client.account.loan.closed.on=Closed on:(fr) +label.client.account.loan.term=Expected loan term:(fr) +label.client.account.loan.actual.term=Actual loan term:(fr) +label.months=Months(fr) +label.days=Days(fr) +label.client.account.loan.product=Product:(fr) +label.client.account.loan.externalid=External id:(fr) +label.client.account.loan.currency=Currency:(fr) +label.client.account.loan.principal=Principal:(fr) +label.client.account.loan.repayments=Repayments:(fr) +label.client.account.loan.amortization=Amortization:(fr) +label.client.account.loan.interest=Interest:(fr) + +# organisation administration screens +administration.link.view.products=View Products(fr) +administration.link.add.product=Add Product(fr) +administration.link.view.offices=View Offices(fr) +administration.link.add.office=Add Office(fr) +administration.link.currency.configuration=Currency Configuration(fr) + +administration.link.view.users=View Users(fr) +administration.link.add.user=Add User(fr) +administration.link.view.roles=View Roles(fr) +administration.link.add.role=Add Role(fr) +administration.link.view.permissions=View Permissions(fr) + +table.heading.product.name=Product Name(fr) +table.heading.product.created=Created(fr) +table.heading.product.modified=Last Modified(fr) +table.heading.product.active=Active(fr) + +link.action.product.deactivate=Deactivate(fr) +link.action.product.viewedit=View/Edit(fr) +link.action.product.delete=Delete(fr) + +dialog.title.add.loan.product=Add loan product(fr) +dialog.title.product.details=Loan product details(fr) + +form.label.loan.applicant=Applicant:(fr) +form.label.loan.submitted.on=Submitted on:(fr) +form.label.loan.submitted.on.note=Loan submittal note:(fr) +form.label.loan.annual.nominal.interestrate=Annual nominal rate %:(fr) +form.label.loan.interest.charged.from=Interest charged from:(fr) +form.label.loan.expected.disbursement.date.on=Expected disbursement on:(fr) +form.label.loan.first.repayment.on=First repayment on:(fr) + +validation.msg.loan.expectedDisbursementDate.method.cannot.be.blank=Expected disbursement on field cannot be blank.(fr) +validation.msg.loan.expectedDisbursementDate.cannot.be.after.first.repayment.date=Expected disbursement date cannot be after the first repayment date.(fr) +validation.msg.loan.interestCalculatedFromDate.must.be.entered.when.using.repayments.startfrom.field=The date interest is to be calculated from cannot be left blank when a date is provided for when repayments start from.(fr) +validation.msg.loan.submitted.on.date.cannot.be.blank=Submitted on date cannot be blank.(fr) +validation.msg.loan.submitted.on.date.cannot.be.after.expectedDisbursementDate=Submitted on date cannot be after the expected disbursement date.(fr) + +form.legend.loan.information=Loan Information(fr) +form.legend.loan.product.information=Loan Product Information(fr) +form.label.product.dropdown=Product:(fr) +form.option.product.dropdown.first.choice=--Select Product--(fr) +form.label.loan.product.name=Name:(fr) +form.label.loan.product.description=Description:(fr) +form.legend.loan.product.currency=Currency(fr) +form.label.loan.product.currency=Currency:(fr) +form.label.loan.product.decimalplaces=Decimal places:(fr) +form.legend.loan.product.loan.terms=Loan Terms(fr) +form.label.loan.product.loan.amount=Loan amount:(fr) +form.label.loan.product.repaidevery=Repaid every:(fr) +form.label.loan.product.numberof.repayments=# of repayments:(fr) +form.label.loan.product.amortization=Amortization:(fr) +form.label.loan.product.arrears.tolerance=Arrears tolerance:(fr) +form.label.loan.product.nominal.interestrate=Nominal interest rate %:(fr) +form.label.loan.product.interest.method=Interest method:(fr) + +validation.msg.product.name.cannot.be.blank=Product name cannot be blank.(fr) +validation.msg.product.description.exceeds.max.length=The content of the description has exceeded max allowed length of 500 characters.(fr) +validation.msg.product.currency.digitsAfterDecimal.cannot.be.empty=You must enter a number to represent number of digits after decimal to be supported for product.(fr) +validation.msg.product.principal.amount.cannot.be.empty=Loan amount cannot be blank.(fr) +validation.msg.product.repayment.repaidEvery.cannot.be.empty=Repaid every cannot be blank.(fr) +validation.msg.product.number.of.repayments.cannot.be.empty=# of repayments cannot be blank.(fr) +validation.msg.product.arrears.tolerance.amount.cannot.be.empty=Arrears tolerance cannot be blank.(fr) +validation.msg.product.interest.rate.per.period.amount.cannot.be.empty=Nominal interest rate % cannot be blank.(fr) + +validation.msg.product.currency.digitsAfterDecimal.must.be.between.zero.and.six.inclusive=Decimal places must be a number between zero and six inclusive.(fr) +validation.msg.product.principal.amount.must.be.greater.than.zero=Loan amount must be greater than zero.(fr) +validation.msg.product.repayment.repaidEvery.outside.allowed.range=Repaid every is out of allowed range for selected repayment frequency type.(fr) +validation.msg.product.number.of.repayments.is.out.of.range=# of repayments is out of allowed range for selected repayment frequency type.(fr) +validation.msg.product.arrears.tolerance.amount.cannot.be.negative=Arrears tolerance cannot be negative.(fr) +validation.msg.product.interest.rate.per.period.amount.cannot.be.negative=Nominal interest rate % cannot be negative.(fr) + +table.heading.office.name=Office Name(fr) +table.heading.office.externalid=External Id(fr) +table.heading.office.openedon=Opened on(fr) +table.heading.office.parent=Parent Office(fr) + +dialog.title.add.office=Add office(fr) +dialog.title.office.details=Office details(fr) + +form.legend.office.details=Office details(fr) +form.label.office.name=Name:(fr) +form.label.office.parent=Parent office:(fr) +form.label.office.openedon=Opened on:(fr) +form.label.office.externalid=External id:(fr) + +validation.msg.office.name.cannot.be.blank=Office name cannot be blank.(fr) +validation.msg.office.parent.cannot.be.blank=You must select a parent office.(fr) +validation.msg.office.opening.date.cannot.be.blank=You must choose a date to represent when the office commenced services.(fr) + +form.label.configuration.available.currencies=Available currencies:(fr) +form.label.configuration.allowed.currencies=Allowed currencies:(fr) + +validation.msg.organisation.allowed.currencies.cannot.be.blank=You must select at least one currency that is 'allowed' for your organisation.(fr) + +# user account settings and admin screens +tab.settings=Settings(fr) +dialog.title.update.password=Update password(fr) +dialog.title.update.details=Update details(fr) + +form.label.new.password=New password:(fr) +form.label.repeat.new.password=Repeat new password:(fr) + +form.label.username=Username:(fr) +form.label.firstname=First name:(fr) +form.label.lastname=Last name:(fr) +form.label.email=Email:(fr) + +form.label.heading.office=Office:(fr) +form.label.office=Office:(fr) + +form.label.heading.details=Details:(fr) +form.label.name=Name:(fr) +form.label.username=Username:(fr) +form.label.email=Email:(fr) +form.link.changedetails=Change details(fr) + +form.label.heading.security=Security:(fr) +form.label.password=Password:(fr) +form.link.changepassword=Change password(fr) + +form.label.heading.roles=Roles:(fr) + +error.msg.username.already.exists.in.organisation=An account with that username already exists.(fr) + +validation.msg.user.username.cannot.be.blank=Username cannot be blank.(fr) +validation.msg.username.already.exists.in.organisation=An account with that username already exists.(fr) +validation.msg.user.firstname.cannot.be.blank=Firstname cannot be blank.(fr) +validation.msg.user.lastname.cannot.be.blank=Lastname cannot be blank.(fr) +validation.msg.user.email.cannot.be.blank=Email cannot be blank.(fr) +validation.msg.user.office.cannot.be.blank=You must select an office.(fr) +validation.msg.user.roles.cannot.be.blank=A user must have at least one role.(fr) +validation.msg.changepassword.password.cannot.be.blank=Password cannot be blank.(fr) +validation.msg.changepassword.passwordrepeat.cannot.be.blank=Repeated password cannot be blank.(fr) +validation.msg.changepassword.passwordrepeat.not.the.same=Password and Repeat password are not the same.(fr) + +dialog.title.add.user=Add user(fr) +dialog.title.add.role=Add role(fr) +dialog.title.edit.details=Edit details(fr) + +form.legend.role.details=Role Details(fr) +form.label.role.name=Name:(fr) +form.label.role.description=Description:(fr) +form.label.role.available.permissions=Available permissions:(fr) +form.label.role.selected.permissions=Selected permissions:(fr) + +form.legend.user.details=User Details(fr) +form.label.user.username=Username:(fr) +form.label.user.firstname=First name:(fr) +form.label.user.lastname=Last name:(fr) +form.label.user.email=Email:(fr) +form.label.user.office=Office:(fr) +form.label.user.available.roles=Available roles:(fr) +form.label.user.selected.roles=Selected roles:(fr) + +validation.msg.role.name.cannot.be.blank=Name cannot be blank.(fr) +validation.msg.role.description.cannot.be.blank=Description cannot be blank.(fr) +validation.msg.role.description.exceeds.max.length=The content of the description exceeds max allowed length of 500 characters.(fr) +validation.msg.role.permissions.cannot.be.empty=A role must have at least one permission associated with it.(fr) + +table.heading.officename=Office Name(fr) +table.heading.username=Username(fr) +table.heading.name=Name(fr) +table.heading.email=Email(fr) +table.heading.rolename=Role Name(fr) +table.heading.description=Description(fr) +table.heading.permission.type=Type(fr) +table.heading.permission.permission=Permission(fr) +table.heading.permission.description=Description(fr) \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.af-ZA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.af-ZA.js new file mode 100644 index 000000000..094a81f4f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.af-ZA.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture af-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "af-ZA", "default", { + name: "af-ZA", + englishName: "Afrikaans (South Africa)", + nativeName: "Afrikaans (Suid Afrika)", + language: "af", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], + namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], + namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] + }, + months: { + names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.af.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.af.js new file mode 100644 index 000000000..9ac040797 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.af.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture af + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "af", "default", { + name: "af", + englishName: "Afrikaans", + nativeName: "Afrikaans", + language: "af", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], + namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], + namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] + }, + months: { + names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.am-ET.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.am-ET.js new file mode 100644 index 000000000..742c20901 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.am-ET.js @@ -0,0 +1,74 @@ +/* + * Globalize Culture am-ET + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "am-ET", "default", { + name: "am-ET", + englishName: "Amharic (Ethiopia)", + nativeName: "አማርኛ (ኢትዮጵያ)", + language: "am", + numberFormat: { + decimals: 1, + groupSizes: [3,0], + "NaN": "NAN", + percent: { + pattern: ["-n%","n%"], + decimals: 1, + groupSizes: [3,0] + }, + currency: { + pattern: ["-$n","$n"], + groupSizes: [3,0], + symbol: "ETB" + } + }, + calendars: { + standard: { + days: { + names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","áˆáˆ™áˆµ","ዓርብ","ቅዳሜ"], + namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","áˆáˆ™áˆµ","ዓርብ","ቅዳሜ"], + namesShort: ["እ","ሰ","ማ","ረ","áˆ","á‹“","ቅ"] + }, + months: { + names: ["ጃንዩወሪ","áŒá‰¥áˆ©á‹ˆáˆª","ማርች","ኤá•áˆ¨áˆ","ሜይ","áŒáŠ•","áŒáˆ‹á‹­","ኦገስት","ሴá•á‰´áˆá‰ áˆ­","ኦክተá‹á‰ áˆ­","ኖቬáˆá‰ áˆ­","ዲሴáˆá‰ áˆ­",""], + namesAbbr: ["ጃንዩ","áŒá‰¥áˆ©","ማርች","ኤá•áˆ¨","ሜይ","áŒáŠ•","áŒáˆ‹á‹­","ኦገስ","ሴá•á‰´","ኦክተ","ኖቬáˆ","ዲሴáˆ",""] + }, + AM: ["ጡዋት","ጡዋት","ጡዋት"], + PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], + eras: [{"name":"ዓመተ áˆáˆ•áˆ¨á‰µ","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd 'á£' MMMM d 'ቀን' yyyy", + f: "dddd 'á£' MMMM d 'ቀን' yyyy h:mm tt", + F: "dddd 'á£' MMMM d 'ቀን' yyyy h:mm:ss tt", + M: "MMMM d ቀን", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.am.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.am.js new file mode 100644 index 000000000..ad6f9d4f2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.am.js @@ -0,0 +1,74 @@ +/* + * Globalize Culture am + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "am", "default", { + name: "am", + englishName: "Amharic", + nativeName: "አማርኛ", + language: "am", + numberFormat: { + decimals: 1, + groupSizes: [3,0], + "NaN": "NAN", + percent: { + pattern: ["-n%","n%"], + decimals: 1, + groupSizes: [3,0] + }, + currency: { + pattern: ["-$n","$n"], + groupSizes: [3,0], + symbol: "ETB" + } + }, + calendars: { + standard: { + days: { + names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","áˆáˆ™áˆµ","ዓርብ","ቅዳሜ"], + namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","áˆáˆ™áˆµ","ዓርብ","ቅዳሜ"], + namesShort: ["እ","ሰ","ማ","ረ","áˆ","á‹“","ቅ"] + }, + months: { + names: ["ጃንዩወሪ","áŒá‰¥áˆ©á‹ˆáˆª","ማርች","ኤá•áˆ¨áˆ","ሜይ","áŒáŠ•","áŒáˆ‹á‹­","ኦገስት","ሴá•á‰´áˆá‰ áˆ­","ኦክተá‹á‰ áˆ­","ኖቬáˆá‰ áˆ­","ዲሴáˆá‰ áˆ­",""], + namesAbbr: ["ጃንዩ","áŒá‰¥áˆ©","ማርች","ኤá•áˆ¨","ሜይ","áŒáŠ•","áŒáˆ‹á‹­","ኦገስ","ሴá•á‰´","ኦክተ","ኖቬáˆ","ዲሴáˆ",""] + }, + AM: ["ጡዋት","ጡዋት","ጡዋት"], + PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], + eras: [{"name":"ዓመተ áˆáˆ•áˆ¨á‰µ","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd 'á£' MMMM d 'ቀን' yyyy", + f: "dddd 'á£' MMMM d 'ቀን' yyyy h:mm tt", + F: "dddd 'á£' MMMM d 'ቀን' yyyy h:mm:ss tt", + M: "MMMM d ቀን", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-AE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-AE.js new file mode 100644 index 000000000..d2a4bb149 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-AE.js @@ -0,0 +1,457 @@ +/* + * Globalize Culture ar-AE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-AE", "default", { + name: "ar-AE", + englishName: "Arabic (U.A.E.)", + nativeName: "العربية (الإمارات العربية المتحدة)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.Ø¥.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-BH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-BH.js new file mode 100644 index 000000000..62e60f28d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-BH.js @@ -0,0 +1,462 @@ +/* + * Globalize Culture ar-BH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-BH", "default", { + name: "ar-BH", + englishName: "Arabic (Bahrain)", + nativeName: "العربية (البحرين)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ب.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-DZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-DZ.js new file mode 100644 index 000000000..5e8225a1e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-DZ.js @@ -0,0 +1,458 @@ +/* + * Globalize Culture ar-DZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-DZ", "default", { + name: "ar-DZ", + englishName: "Arabic (Algeria)", + nativeName: "العربية (الجزائر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.ج.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-EG.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-EG.js new file mode 100644 index 000000000..35313e565 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-EG.js @@ -0,0 +1,484 @@ +/* + * Globalize Culture ar-EG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-EG", "default", { + name: "ar-EG", + englishName: "Arabic (Egypt)", + nativeName: "العربية (مصر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + symbol: "ج.Ù….\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-IQ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-IQ.js new file mode 100644 index 000000000..14658fb13 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-IQ.js @@ -0,0 +1,457 @@ +/* + * Globalize Culture ar-IQ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-IQ", "default", { + name: "ar-IQ", + englishName: "Arabic (Iraq)", + nativeName: "العربية (العراق)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.ع.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-JO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-JO.js new file mode 100644 index 000000000..9db0acd90 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-JO.js @@ -0,0 +1,462 @@ +/* + * Globalize Culture ar-JO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-JO", "default", { + name: "ar-JO", + englishName: "Arabic (Jordan)", + nativeName: "العربية (الأردن)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ا.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-KW.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-KW.js new file mode 100644 index 000000000..9cdf76f04 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-KW.js @@ -0,0 +1,462 @@ +/* + * Globalize Culture ar-KW + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-KW", "default", { + name: "ar-KW", + englishName: "Arabic (Kuwait)", + nativeName: "العربية (الكويت)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.Ùƒ.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-LB.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-LB.js new file mode 100644 index 000000000..6c621f85f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-LB.js @@ -0,0 +1,457 @@ +/* + * Globalize Culture ar-LB + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-LB", "default", { + name: "ar-LB", + englishName: "Arabic (Lebanon)", + nativeName: "العربية (لبنان)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "Ù„.Ù„.\u200f" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-LY.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-LY.js new file mode 100644 index 000000000..73a426632 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-LY.js @@ -0,0 +1,462 @@ +/* + * Globalize Culture ar-LY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-LY", "default", { + name: "ar-LY", + englishName: "Arabic (Libya)", + nativeName: "العربية (ليبيا)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$n"], + decimals: 3, + symbol: "د.Ù„.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-MA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-MA.js new file mode 100644 index 000000000..0b953c42e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-MA.js @@ -0,0 +1,458 @@ +/* + * Globalize Culture ar-MA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-MA", "default", { + name: "ar-MA", + englishName: "Arabic (Morocco)", + nativeName: "العربية (المملكة المغربية)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.Ù….\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-OM.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-OM.js new file mode 100644 index 000000000..6a9bca4e2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-OM.js @@ -0,0 +1,458 @@ +/* + * Globalize Culture ar-OM + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-OM", "default", { + name: "ar-OM", + englishName: "Arabic (Oman)", + nativeName: "العربية (عمان)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "ر.ع.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-QA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-QA.js new file mode 100644 index 000000000..dfa405e1b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-QA.js @@ -0,0 +1,457 @@ +/* + * Globalize Culture ar-QA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-QA", "default", { + name: "ar-QA", + englishName: "Arabic (Qatar)", + nativeName: "العربية (قطر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.Ù‚.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-SA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-SA.js new file mode 100644 index 000000000..cba34f69b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-SA.js @@ -0,0 +1,457 @@ +/* + * Globalize Culture ar-SA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-SA", "default", { + name: "ar-SA", + englishName: "Arabic (Saudi Arabia)", + nativeName: "العربية (المملكة العربية السعودية)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.س.\u200f" + } + }, + calendars: { + standard: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-SY.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-SY.js new file mode 100644 index 000000000..d75faa694 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-SY.js @@ -0,0 +1,457 @@ +/* + * Globalize Culture ar-SY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-SY", "default", { + name: "ar-SY", + englishName: "Arabic (Syria)", + nativeName: "العربية (سوريا)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "Ù„.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-TN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-TN.js new file mode 100644 index 000000000..d7614ada2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-TN.js @@ -0,0 +1,463 @@ +/* + * Globalize Culture ar-TN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-TN", "default", { + name: "ar-TN", + englishName: "Arabic (Tunisia)", + nativeName: "العربية (تونس)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ت.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-YE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-YE.js new file mode 100644 index 000000000..9076dce21 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar-YE.js @@ -0,0 +1,457 @@ +/* + * Globalize Culture ar-YE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar-YE", "default", { + name: "ar-YE", + englishName: "Arabic (Yemen)", + nativeName: "العربية (اليمن)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.ÙŠ.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar.js new file mode 100644 index 000000000..e7c1c0259 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ar.js @@ -0,0 +1,457 @@ +/* + * Globalize Culture ar + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar", "default", { + name: "ar", + englishName: "Arabic", + nativeName: "العربية", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.س.\u200f" + } + }, + calendars: { + standard: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.arn-CL.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.arn-CL.js new file mode 100644 index 000000000..b898ab344 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.arn-CL.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture arn-CL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "arn-CL", "default", { + name: "arn-CL", + englishName: "Mapudungun (Chile)", + nativeName: "Mapudungun (Chile)", + language: "arn", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.arn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.arn.js new file mode 100644 index 000000000..b27f5d554 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.arn.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture arn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "arn", "default", { + name: "arn", + englishName: "Mapudungun", + nativeName: "Mapudungun", + language: "arn", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.as-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.as-IN.js new file mode 100644 index 000000000..fe9744285 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.as-IN.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture as-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "as-IN", "default", { + name: "as-IN", + englishName: "Assamese (India)", + nativeName: "অসমীয়া (ভাৰত)", + language: "as", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","n$"], + groupSizes: [3,2], + symbol: "ট" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["সোমবাৰ","মঙà§à¦—লবাৰ","বà§à¦§à¦¬à¦¾à§°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à§°","শà§à¦•à§à¦°à¦¬à¦¾à§°","শনিবাৰ","ৰবিবাৰ"], + namesAbbr: ["সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহ.","শà§à¦•à§à¦°.","শনি.","ৰবি."], + namesShort: ["সো","ম","বà§","বৃ","শà§","শ","র"] + }, + months: { + names: ["জানà§à§±à¦¾à§°à§€","ফেবà§à¦°à§à§±à¦¾à§°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগষà§à¦Ÿ","চেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নবেমà§à¦¬à¦°","ডিচেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§","ফেবà§à¦°à§","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগষà§à¦Ÿ","চেপà§à¦Ÿà§‡","অকà§à¦Ÿà§‹","নবে","ডিচে",""] + }, + AM: ["ৰাতিপà§","ৰাতিপà§","ৰাতিপà§"], + PM: ["আবেলি","আবেলি","আবেলি"], + eras: [{"name":"খà§à¦°à§€à¦·à§à¦Ÿà¦¾à¦¬à§à¦¦","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "yyyy,MMMM dd, dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy,MMMM dd, dddd tt h:mm", + F: "yyyy,MMMM dd, dddd tt h:mm:ss", + M: "dd MMMM", + Y: "MMMM,yy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.as.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.as.js new file mode 100644 index 000000000..5577f8ba6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.as.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture as + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "as", "default", { + name: "as", + englishName: "Assamese", + nativeName: "অসমীয়া", + language: "as", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","n$"], + groupSizes: [3,2], + symbol: "ট" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["সোমবাৰ","মঙà§à¦—লবাৰ","বà§à¦§à¦¬à¦¾à§°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à§°","শà§à¦•à§à¦°à¦¬à¦¾à§°","শনিবাৰ","ৰবিবাৰ"], + namesAbbr: ["সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহ.","শà§à¦•à§à¦°.","শনি.","ৰবি."], + namesShort: ["সো","ম","বà§","বৃ","শà§","শ","র"] + }, + months: { + names: ["জানà§à§±à¦¾à§°à§€","ফেবà§à¦°à§à§±à¦¾à§°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগষà§à¦Ÿ","চেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নবেমà§à¦¬à¦°","ডিচেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§","ফেবà§à¦°à§","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগষà§à¦Ÿ","চেপà§à¦Ÿà§‡","অকà§à¦Ÿà§‹","নবে","ডিচে",""] + }, + AM: ["ৰাতিপà§","ৰাতিপà§","ৰাতিপà§"], + PM: ["আবেলি","আবেলি","আবেলি"], + eras: [{"name":"খà§à¦°à§€à¦·à§à¦Ÿà¦¾à¦¬à§à¦¦","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "yyyy,MMMM dd, dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy,MMMM dd, dddd tt h:mm", + F: "yyyy,MMMM dd, dddd tt h:mm:ss", + M: "dd MMMM", + Y: "MMMM,yy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Cyrl-AZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Cyrl-AZ.js new file mode 100644 index 000000000..71164b4dd --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Cyrl-AZ.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture az-Cyrl-AZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az-Cyrl-AZ", "default", { + name: "az-Cyrl-AZ", + englishName: "Azeri (Cyrillic, Azerbaijan)", + nativeName: "Ðзәрбајҹан (Ðзәрбајҹан)", + language: "az-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "ман." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Базар","Базар ертәÑи","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], + namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ò¸","Ш"], + namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ò¸","Ш"] + }, + months: { + names: ["Јанвар","Феврал","Март","Ðпрел","Мај","Ијун","Ијул","ÐвгуÑÑ‚","Сентјабр","Октјабр","Ðојабр","Декабр",""], + namesAbbr: ["Јан","Фев","Мар","Ðпр","Мај","Ијун","Ијул","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","авгуÑÑ‚","Ñентјабр","октјабр","нојабр","декабр",""], + namesAbbr: ["Јан","Фев","Мар","Ðпр","маÑ","ијун","ијул","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Cyrl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Cyrl.js new file mode 100644 index 000000000..592835629 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Cyrl.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture az-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az-Cyrl", "default", { + name: "az-Cyrl", + englishName: "Azeri (Cyrillic)", + nativeName: "Ðзәрбајҹан дили", + language: "az-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "ман." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Базар","Базар ертәÑи","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], + namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ò¸","Ш"], + namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ò¸","Ш"] + }, + months: { + names: ["Јанвар","Феврал","Март","Ðпрел","Мај","Ијун","Ијул","ÐвгуÑÑ‚","Сентјабр","Октјабр","Ðојабр","Декабр",""], + namesAbbr: ["Јан","Фев","Мар","Ðпр","Мај","Ијун","Ијул","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","авгуÑÑ‚","Ñентјабр","октјабр","нојабр","декабр",""], + namesAbbr: ["Јан","Фев","Мар","Ðпр","маÑ","ијун","ијул","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Latn-AZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Latn-AZ.js new file mode 100644 index 000000000..200848e47 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Latn-AZ.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture az-Latn-AZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az-Latn-AZ", "default", { + name: "az-Latn-AZ", + englishName: "Azeri (Latin, Azerbaijan)", + nativeName: "AzÉ™rbaycan\xadılı (AzÉ™rbaycan)", + language: "az-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertÉ™si","ÇərÅŸÉ™nbə axÅŸamı","ÇərÅŸÉ™nbÉ™","Cümə axÅŸamı","CümÉ™","ŞənbÉ™"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Åž"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Åž"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","Ä°yun","Ä°yul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Latn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Latn.js new file mode 100644 index 000000000..c4e80c72a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az-Latn.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture az-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az-Latn", "default", { + name: "az-Latn", + englishName: "Azeri (Latin)", + nativeName: "AzÉ™rbaycan\xadılı", + language: "az-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertÉ™si","ÇərÅŸÉ™nbə axÅŸamı","ÇərÅŸÉ™nbÉ™","Cümə axÅŸamı","CümÉ™","ŞənbÉ™"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Åž"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Åž"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","Ä°yun","Ä°yul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az.js new file mode 100644 index 000000000..7a5e5ec3b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.az.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture az + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "az", "default", { + name: "az", + englishName: "Azeri", + nativeName: "AzÉ™rbaycan\xadılı", + language: "az", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertÉ™si","ÇərÅŸÉ™nbə axÅŸamı","ÇərÅŸÉ™nbÉ™","Cümə axÅŸamı","CümÉ™","ŞənbÉ™"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Åž"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Åž"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","Ä°yun","Ä°yul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ba-RU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ba-RU.js new file mode 100644 index 000000000..4b81713aa --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ba-RU.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture ba-RU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ba-RU", "default", { + name: "ba-RU", + englishName: "Bashkir (Russia)", + nativeName: "Башҡорт (РоÑÑиÑ)", + language: "ba", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ",", + symbol: "Ò»." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","КеÑаҙна","Йома","Шәмбе"], + namesAbbr: ["Йш","Дш","Шш","Шр","КÑ","Йм","Шб"], + namesShort: ["Йш","Дш","Шш","Шр","КÑ","Йм","Шб"] + }, + months: { + names: ["ғинуар","февраль","март","апрель","май","июнь","июль","авгуÑÑ‚","ÑентÑбрь","октÑбрь","ноÑбрь","декабрь",""], + namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy 'й'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'й' H:mm", + F: "d MMMM yyyy 'й' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ba.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ba.js new file mode 100644 index 000000000..a665f66c8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ba.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture ba + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ba", "default", { + name: "ba", + englishName: "Bashkir", + nativeName: "Башҡорт", + language: "ba", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ",", + symbol: "Ò»." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","КеÑаҙна","Йома","Шәмбе"], + namesAbbr: ["Йш","Дш","Шш","Шр","КÑ","Йм","Шб"], + namesShort: ["Йш","Дш","Шш","Шр","КÑ","Йм","Шб"] + }, + months: { + names: ["ғинуар","февраль","март","апрель","май","июнь","июль","авгуÑÑ‚","ÑентÑбрь","октÑбрь","ноÑбрь","декабрь",""], + namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy 'й'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'й' H:mm", + F: "d MMMM yyyy 'й' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.be-BY.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.be-BY.js new file mode 100644 index 000000000..855695aa1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.be-BY.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture be-BY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "be-BY", "default", { + name: "be-BY", + englishName: "Belarusian (Belarus)", + nativeName: "БеларуÑкі (БеларуÑÑŒ)", + language: "be", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["нÑдзелÑ","панÑдзелак","аўторак","Ñерада","чацвер","пÑтніца","Ñубота"], + namesAbbr: ["нд","пн","аў","ÑÑ€","чц","пт","Ñб"], + namesShort: ["нд","пн","аў","ÑÑ€","чц","пт","Ñб"] + }, + months: { + names: ["Студзень","Люты","Сакавік","КраÑавік","Май","ЧÑрвень","Ліпень","Жнівень","ВераÑень","КаÑтрычнік","ЛіÑтапад","Снежань",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","ЧÑÑ€","Ліп","Жні","Вер","КаÑ","ЛіÑ","Сне",""] + }, + monthsGenitive: { + names: ["ÑтудзенÑ","лютага","Ñакавіка","краÑавіка","маÑ","чÑрвенÑ","ліпенÑ","жніўнÑ","вераÑнÑ","каÑтрычніка","ліÑтапада","ÑнежнÑ",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","ЧÑÑ€","Ліп","Жні","Вер","КаÑ","ЛіÑ","Сне",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.be.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.be.js new file mode 100644 index 000000000..3db61d9fb --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.be.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture be + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "be", "default", { + name: "be", + englishName: "Belarusian", + nativeName: "БеларуÑкі", + language: "be", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["нÑдзелÑ","панÑдзелак","аўторак","Ñерада","чацвер","пÑтніца","Ñубота"], + namesAbbr: ["нд","пн","аў","ÑÑ€","чц","пт","Ñб"], + namesShort: ["нд","пн","аў","ÑÑ€","чц","пт","Ñб"] + }, + months: { + names: ["Студзень","Люты","Сакавік","КраÑавік","Май","ЧÑрвень","Ліпень","Жнівень","ВераÑень","КаÑтрычнік","ЛіÑтапад","Снежань",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","ЧÑÑ€","Ліп","Жні","Вер","КаÑ","ЛіÑ","Сне",""] + }, + monthsGenitive: { + names: ["ÑтудзенÑ","лютага","Ñакавіка","краÑавіка","маÑ","чÑрвенÑ","ліпенÑ","жніўнÑ","вераÑнÑ","каÑтрычніка","ліÑтапада","ÑнежнÑ",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","ЧÑÑ€","Ліп","Жні","Вер","КаÑ","ЛіÑ","Сне",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bg-BG.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bg-BG.js new file mode 100644 index 000000000..0de7452f6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bg-BG.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture bg-BG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bg-BG", "default", { + name: "bg-BG", + englishName: "Bulgarian (Bulgaria)", + nativeName: "българÑки (БългариÑ)", + language: "bg", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "- безкрайноÑÑ‚", + positiveInfinity: "+ безкрайноÑÑ‚", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "лв." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неделÑ","понеделник","вторник","ÑÑ€Ñда","четвъртък","петък","Ñъбота"], + namesAbbr: ["нед","пон","вт","ÑÑ€","четв","пет","Ñъб"], + namesShort: ["н","п","в","Ñ","ч","п","Ñ"] + }, + months: { + names: ["Ñнуари","февруари","март","април","май","юни","юли","авгуÑÑ‚","Ñептември","октомври","ноември","декември",""], + namesAbbr: ["Ñн","февр","март","апр","май","юни","юли","авг","Ñепт","окт","ноември","дек",""] + }, + AM: null, + PM: null, + eras: [{"name":"Ñлед новата ера","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy 'г.'", + D: "dd MMMM yyyy 'г.'", + t: "HH:mm 'ч.'", + T: "HH:mm:ss 'ч.'", + f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", + F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", + M: "dd MMMM", + Y: "MMMM yyyy 'г.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bg.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bg.js new file mode 100644 index 000000000..b87a9e580 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bg.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture bg + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bg", "default", { + name: "bg", + englishName: "Bulgarian", + nativeName: "българÑки", + language: "bg", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "- безкрайноÑÑ‚", + positiveInfinity: "+ безкрайноÑÑ‚", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "лв." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неделÑ","понеделник","вторник","ÑÑ€Ñда","четвъртък","петък","Ñъбота"], + namesAbbr: ["нед","пон","вт","ÑÑ€","четв","пет","Ñъб"], + namesShort: ["н","п","в","Ñ","ч","п","Ñ"] + }, + months: { + names: ["Ñнуари","февруари","март","април","май","юни","юли","авгуÑÑ‚","Ñептември","октомври","ноември","декември",""], + namesAbbr: ["Ñн","февр","март","апр","май","юни","юли","авг","Ñепт","окт","ноември","дек",""] + }, + AM: null, + PM: null, + eras: [{"name":"Ñлед новата ера","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy 'г.'", + D: "dd MMMM yyyy 'г.'", + t: "HH:mm 'ч.'", + T: "HH:mm:ss 'ч.'", + f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", + F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", + M: "dd MMMM", + Y: "MMMM yyyy 'г.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn-BD.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn-BD.js new file mode 100644 index 000000000..cc627097f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn-BD.js @@ -0,0 +1,74 @@ +/* + * Globalize Culture bn-BD + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bn-BD", "default", { + name: "bn-BD", + englishName: "Bengali (Bangladesh)", + nativeName: "বাংলা (বাংলাদেশ)", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "৳" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহসà§à¦ªà¦¤à¦¿.","শà§à¦•à§à¦°.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নভেমà§à¦¬à¦°","ডিসেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§.","ফেবà§à¦°à§.","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগ.","সেপà§à¦Ÿà§‡.","অকà§à¦Ÿà§‹.","নভে.","ডিসে.",""] + }, + AM: ["পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨"], + PM: ["অপরাহà§à¦¨","অপরাহà§à¦¨","অপরাহà§à¦¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn-IN.js new file mode 100644 index 000000000..260129162 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn-IN.js @@ -0,0 +1,74 @@ +/* + * Globalize Culture bn-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bn-IN", "default", { + name: "bn-IN", + englishName: "Bengali (India)", + nativeName: "বাংলা (ভারত)", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "টা" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহসà§à¦ªà¦¤à¦¿.","শà§à¦•à§à¦°.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নভেমà§à¦¬à¦°","ডিসেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§.","ফেবà§à¦°à§.","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগ.","সেপà§à¦Ÿà§‡.","অকà§à¦Ÿà§‹.","নভে.","ডিসে.",""] + }, + AM: ["পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨"], + PM: ["অপরাহà§à¦¨","অপরাহà§à¦¨","অপরাহà§à¦¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn.js new file mode 100644 index 000000000..82ce2703a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bn.js @@ -0,0 +1,74 @@ +/* + * Globalize Culture bn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bn", "default", { + name: "bn", + englishName: "Bengali", + nativeName: "বাংলা", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "টা" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহসà§à¦ªà¦¤à¦¿.","শà§à¦•à§à¦°.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নভেমà§à¦¬à¦°","ডিসেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§.","ফেবà§à¦°à§.","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগ.","সেপà§à¦Ÿà§‡.","অকà§à¦Ÿà§‹.","নভে.","ডিসে.",""] + }, + AM: ["পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨"], + PM: ["অপরাহà§à¦¨","অপরাহà§à¦¨","অপরাহà§à¦¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bo-CN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bo-CN.js new file mode 100644 index 000000000..b173a2493 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bo-CN.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture bo-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bo-CN", "default", { + name: "bo-CN", + englishName: "Tibetan (PRC)", + nativeName: "བོད་ཡིག (ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མà½à½´à½“་རྒྱལ་à½à½–à¼)", + language: "bo", + numberFormat: { + groupSizes: [3,0], + "NaN": "ཨང་ཀི་མིན་པà¼", + negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བà¼", + positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བà¼", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["གཟའ་ཉི་མà¼","གཟའ་ཟླ་བà¼","གཟའ་མིག་དམརà¼","གཟའ་ལྷག་པà¼","གཟའ་ཕུར་བུà¼","གཟའ་པ་སངསà¼","གཟའ་སྤེན་པà¼"], + namesAbbr: ["ཉི་མà¼","ཟླ་བà¼","མིག་དམརà¼","ལྷག་པà¼","ཕུར་བུà¼","པ་སངསà¼","སྤེན་པà¼"], + namesShort: ["༧","༡","༢","༣","༤","༥","༦"] + }, + months: { + names: ["སྤྱི་ཟླ་དང་པོà¼","སྤྱི་ཟླ་གཉིས་པà¼","སྤྱི་ཟླ་གསུམ་པà¼","སྤྱི་ཟླ་བཞི་པà¼","སྤྱི་ཟླ་ལྔ་པà¼","སྤྱི་ཟླ་དྲུག་པà¼","སྤྱི་ཟླ་བདུན་པà¼","སྤྱི་ཟླ་བརྒྱད་པà¼","སྤྱི་ཟླ་དགུ་པà¼","སྤྱི་ཟླ་བཅུ་པོà¼","སྤྱི་ཟླ་བཅུ་གཅིག་པà¼","སྤྱི་ཟླ་བཅུ་གཉིས་པà¼",""], + namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] + }, + AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], + PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], + eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", + F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", + M: "'ཟླ་' M'ཚེས'd", + Y: "yyyy.M" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bo.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bo.js new file mode 100644 index 000000000..96f0caabf --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bo.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture bo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bo", "default", { + name: "bo", + englishName: "Tibetan", + nativeName: "བོད་ཡིག", + language: "bo", + numberFormat: { + groupSizes: [3,0], + "NaN": "ཨང་ཀི་མིན་པà¼", + negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བà¼", + positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བà¼", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["གཟའ་ཉི་མà¼","གཟའ་ཟླ་བà¼","གཟའ་མིག་དམརà¼","གཟའ་ལྷག་པà¼","གཟའ་ཕུར་བུà¼","གཟའ་པ་སངསà¼","གཟའ་སྤེན་པà¼"], + namesAbbr: ["ཉི་མà¼","ཟླ་བà¼","མིག་དམརà¼","ལྷག་པà¼","ཕུར་བུà¼","པ་སངསà¼","སྤེན་པà¼"], + namesShort: ["༧","༡","༢","༣","༤","༥","༦"] + }, + months: { + names: ["སྤྱི་ཟླ་དང་པོà¼","སྤྱི་ཟླ་གཉིས་པà¼","སྤྱི་ཟླ་གསུམ་པà¼","སྤྱི་ཟླ་བཞི་པà¼","སྤྱི་ཟླ་ལྔ་པà¼","སྤྱི་ཟླ་དྲུག་པà¼","སྤྱི་ཟླ་བདུན་པà¼","སྤྱི་ཟླ་བརྒྱད་པà¼","སྤྱི་ཟླ་དགུ་པà¼","སྤྱི་ཟླ་བཅུ་པོà¼","སྤྱི་ཟླ་བཅུ་གཅིག་པà¼","སྤྱི་ཟླ་བཅུ་གཉིས་པà¼",""], + namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] + }, + AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], + PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], + eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", + F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", + M: "'ཟླ་' M'ཚེས'd", + Y: "yyyy.M" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.br-FR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.br-FR.js new file mode 100644 index 000000000..37bf5056b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.br-FR.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture br-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "br-FR", "default", { + name: "br-FR", + englishName: "Breton (France)", + nativeName: "brezhoneg (Frañs)", + language: "br", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NkN", + negativeInfinity: "-Anfin", + positiveInfinity: "+Anfin", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], + namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], + namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] + }, + months: { + names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], + namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] + }, + AM: null, + PM: null, + eras: [{"name":"g. J.-K.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.br.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.br.js new file mode 100644 index 000000000..29dd17682 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.br.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture br + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "br", "default", { + name: "br", + englishName: "Breton", + nativeName: "brezhoneg", + language: "br", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NkN", + negativeInfinity: "-Anfin", + positiveInfinity: "+Anfin", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], + namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], + namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] + }, + months: { + names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], + namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] + }, + AM: null, + PM: null, + eras: [{"name":"g. J.-K.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Cyrl-BA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Cyrl-BA.js new file mode 100644 index 000000000..e52551089 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Cyrl-BA.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture bs-Cyrl-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs-Cyrl-BA", "default", { + name: "bs-Cyrl-BA", + englishName: "Bosnian (Cyrillic, Bosnia and Herzegovina)", + nativeName: "боÑанÑки (БоÑна и Херцеговина)", + language: "bs-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недјеља","понедјељак","уторак","Ñриједа","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["н","п","у","Ñ","ч","п","Ñ"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Cyrl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Cyrl.js new file mode 100644 index 000000000..8920d4008 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Cyrl.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture bs-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs-Cyrl", "default", { + name: "bs-Cyrl", + englishName: "Bosnian (Cyrillic)", + nativeName: "боÑанÑки", + language: "bs-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недјеља","понедјељак","уторак","Ñриједа","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["н","п","у","Ñ","ч","п","Ñ"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Latn-BA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Latn-BA.js new file mode 100644 index 000000000..e02bb9625 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Latn-BA.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture bs-Latn-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs-Latn-BA", "default", { + name: "bs-Latn-BA", + englishName: "Bosnian (Latin, Bosnia and Herzegovina)", + nativeName: "bosanski (Bosna i Hercegovina)", + language: "bs-Latn", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Latn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Latn.js new file mode 100644 index 000000000..3692487f9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs-Latn.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture bs-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs-Latn", "default", { + name: "bs-Latn", + englishName: "Bosnian (Latin)", + nativeName: "bosanski", + language: "bs-Latn", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs.js new file mode 100644 index 000000000..0deadc93c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.bs.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture bs + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "bs", "default", { + name: "bs", + englishName: "Bosnian", + nativeName: "bosanski", + language: "bs", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ca-ES.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ca-ES.js new file mode 100644 index 000000000..03e21f2ae --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ca-ES.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture ca-ES + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ca-ES", "default", { + name: "ca-ES", + englishName: "Catalan (Catalan)", + nativeName: "català (català)", + language: "ca", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinit", + positiveInfinity: "Infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], + namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], + namesShort: ["dg","dl","dt","dc","dj","dv","ds"] + }, + months: { + names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], + namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' / 'MMMM' / 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", + F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM' / 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ca.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ca.js new file mode 100644 index 000000000..06c31da2a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ca.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture ca + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ca", "default", { + name: "ca", + englishName: "Catalan", + nativeName: "català", + language: "ca", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinit", + positiveInfinity: "Infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], + namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], + namesShort: ["dg","dl","dt","dc","dj","dv","ds"] + }, + months: { + names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], + namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' / 'MMMM' / 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", + F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM' / 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.co-FR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.co-FR.js new file mode 100644 index 000000000..7d6ef3815 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.co-FR.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture co-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "co-FR", "default", { + name: "co-FR", + englishName: "Corsican (France)", + nativeName: "Corsu (France)", + language: "co", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Mica numericu", + negativeInfinity: "-Infinitu", + positiveInfinity: "+Infinitu", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], + namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], + namesShort: ["du","lu","ma","me","gh","ve","sa"] + }, + months: { + names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], + namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] + }, + AM: null, + PM: null, + eras: [{"name":"dopu J-C","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.co.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.co.js new file mode 100644 index 000000000..a4535aad8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.co.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture co + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "co", "default", { + name: "co", + englishName: "Corsican", + nativeName: "Corsu", + language: "co", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Mica numericu", + negativeInfinity: "-Infinitu", + positiveInfinity: "+Infinitu", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], + namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], + namesShort: ["du","lu","ma","me","gh","ve","sa"] + }, + months: { + names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], + namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] + }, + AM: null, + PM: null, + eras: [{"name":"dopu J-C","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cs-CZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cs-CZ.js new file mode 100644 index 000000000..6e6b2b15c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cs-CZ.js @@ -0,0 +1,85 @@ +/* + * Globalize Culture cs-CZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "cs-CZ", "default", { + name: "cs-CZ", + englishName: "Czech (Czech Republic)", + nativeName: "ÄeÅ¡tina (ÄŒeská republika)", + language: "cs", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Není Äíslo", + negativeInfinity: "-nekoneÄno", + positiveInfinity: "+nekoneÄno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "KÄ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedÄ›le","pondÄ›lí","úterý","stÅ™eda","Ätvrtek","pátek","sobota"], + namesAbbr: ["ne","po","út","st","Ät","pá","so"], + namesShort: ["ne","po","út","st","Ät","pá","so"] + }, + months: { + names: ["leden","únor","bÅ™ezen","duben","kvÄ›ten","Äerven","Äervenec","srpen","září","říjen","listopad","prosinec",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["ledna","února","bÅ™ezna","dubna","kvÄ›tna","Äervna","Äervence","srpna","září","října","listopadu","prosince",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["dop.","dop.","DOP."], + PM: ["odp.","odp.","ODP."], + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cs.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cs.js new file mode 100644 index 000000000..450327111 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cs.js @@ -0,0 +1,85 @@ +/* + * Globalize Culture cs + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "cs", "default", { + name: "cs", + englishName: "Czech", + nativeName: "ÄeÅ¡tina", + language: "cs", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Není Äíslo", + negativeInfinity: "-nekoneÄno", + positiveInfinity: "+nekoneÄno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "KÄ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedÄ›le","pondÄ›lí","úterý","stÅ™eda","Ätvrtek","pátek","sobota"], + namesAbbr: ["ne","po","út","st","Ät","pá","so"], + namesShort: ["ne","po","út","st","Ät","pá","so"] + }, + months: { + names: ["leden","únor","bÅ™ezen","duben","kvÄ›ten","Äerven","Äervenec","srpen","září","říjen","listopad","prosinec",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["ledna","února","bÅ™ezna","dubna","kvÄ›tna","Äervna","Äervence","srpna","září","října","listopadu","prosince",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["dop.","dop.","DOP."], + PM: ["odp.","odp.","ODP."], + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cy-GB.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cy-GB.js new file mode 100644 index 000000000..0b07a621f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cy-GB.js @@ -0,0 +1,70 @@ +/* + * Globalize Culture cy-GB + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "cy-GB", "default", { + name: "cy-GB", + englishName: "Welsh (United Kingdom)", + nativeName: "Cymraeg (y Deyrnas Unedig)", + language: "cy", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], + namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], + namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] + }, + months: { + names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], + namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cy.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cy.js new file mode 100644 index 000000000..20b93b273 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.cy.js @@ -0,0 +1,70 @@ +/* + * Globalize Culture cy + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "cy", "default", { + name: "cy", + englishName: "Welsh", + nativeName: "Cymraeg", + language: "cy", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], + namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], + namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] + }, + months: { + names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], + namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.da-DK.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.da-DK.js new file mode 100644 index 000000000..8d30e5a23 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.da-DK.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture da-DK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "da-DK", "default", { + name: "da-DK", + englishName: "Danish (Denmark)", + nativeName: "dansk (Danmark)", + language: "da", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.da.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.da.js new file mode 100644 index 000000000..8186cd5df --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.da.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture da + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "da", "default", { + name: "da", + englishName: "Danish", + nativeName: "dansk", + language: "da", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-AT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-AT.js new file mode 100644 index 000000000..04c5aa1ca --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-AT.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture de-AT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-AT", "default", { + name: "de-AT", + englishName: "German (Austria)", + nativeName: "Deutsch (Österreich)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd. MMMM yyyy HH:mm", + F: "dddd, dd. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-CH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-CH.js new file mode 100644 index 000000000..b19e6f71f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-CH.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture de-CH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-CH", "default", { + name: "de-CH", + englishName: "German (Switzerland)", + nativeName: "Deutsch (Schweiz)", + language: "de", + numberFormat: { + ",": "'", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "Fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-DE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-DE.js new file mode 100644 index 000000000..a104e764e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-DE.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture de-DE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-DE", "default", { + name: "de-DE", + englishName: "German (Germany)", + nativeName: "Deutsch (Deutschland)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-LI.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-LI.js new file mode 100644 index 000000000..142726db6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-LI.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture de-LI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-LI", "default", { + name: "de-LI", + englishName: "German (Liechtenstein)", + nativeName: "Deutsch (Liechtenstein)", + language: "de", + numberFormat: { + ",": "'", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "CHF" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-LU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-LU.js new file mode 100644 index 000000000..c79b18bd6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de-LU.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture de-LU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de-LU", "default", { + name: "de-LU", + englishName: "German (Luxembourg)", + nativeName: "Deutsch (Luxemburg)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de.js new file mode 100644 index 000000000..d0c718d7a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.de.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture de + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "de", "default", { + name: "de", + englishName: "German", + nativeName: "Deutsch", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dsb-DE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dsb-DE.js new file mode 100644 index 000000000..27a633ea8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dsb-DE.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture dsb-DE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "dsb-DE", "default", { + name: "dsb-DE", + englishName: "Lower Sorbian (Germany)", + nativeName: "dolnoserbšćina (Nimska)", + language: "dsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekoÅ„cne", + positiveInfinity: "+njekoÅ„cne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njeźela","ponjeźele","waÅ‚tora","srjoda","stwortk","pÄ›tk","sobota"], + namesAbbr: ["nje","pon","waÅ‚","srj","stw","pÄ›t","sob"], + namesShort: ["n","p","w","s","s","p","s"] + }, + months: { + names: ["januar","februar","mÄ›rc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","mÄ›r","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","mÄ›rca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","mÄ›r","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'goź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dsb.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dsb.js new file mode 100644 index 000000000..3098b071d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dsb.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture dsb + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "dsb", "default", { + name: "dsb", + englishName: "Lower Sorbian", + nativeName: "dolnoserbšćina", + language: "dsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekoÅ„cne", + positiveInfinity: "+njekoÅ„cne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njeźela","ponjeźele","waÅ‚tora","srjoda","stwortk","pÄ›tk","sobota"], + namesAbbr: ["nje","pon","waÅ‚","srj","stw","pÄ›t","sob"], + namesShort: ["n","p","w","s","s","p","s"] + }, + months: { + names: ["januar","februar","mÄ›rc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","mÄ›r","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","mÄ›rca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","mÄ›r","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'goź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dv-MV.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dv-MV.js new file mode 100644 index 000000000..26048c20f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dv-MV.js @@ -0,0 +1,164 @@ +/* + * Globalize Culture dv-MV + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "dv-MV", "default", { + name: "dv-MV", + englishName: "Divehi (Maldives)", + nativeName: "Þ‹Þ¨ÞˆÞ¬Þ€Þ¨Þ„Þ¦ÞÞ° (Þ‹Þ¨ÞˆÞ¬Þ€Þ¨ ÞƒÞ§Þ‡Þ°Þ–Þ¬)", + language: "dv", + isRTL: true, + numberFormat: { + currency: { + pattern: ["n $-","n $"], + symbol: "Þƒ." + } + }, + calendars: { + standard: { + name: "Hijri", + days: { + names: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesAbbr: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesShort: ["Þ‡Þ§","Þ€Þ¯","Þ‡Þ¦","Þ„Þª","Þ„Þª","Þ€Þª","Þ€Þ®"] + }, + months: { + names: ["Þ‰ÞªÞ™Þ¦Þ‡Þ°ÞƒÞ¦Þ‰Þ°","ÞžÞ¦ÞŠÞ¦ÞƒÞª","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ¦Þ‡Þ°ÞˆÞ¦ÞÞ°","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞª","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ«ÞÞ§","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞ§","ÞƒÞ¦Þ–Þ¦Þ„Þ°","ÞÞ¦Þ¢Þ°Þ„Þ§Þ‚Þ°","ÞƒÞ¦Þ‰Þ¦ÞŸÞ§Þ‚Þ°","ÞÞ¦Þ‡Þ°ÞˆÞ§ÞÞ°","Þ›ÞªÞÞ°Þ¤Þ¦Þ¢Þ¨Þ‹Þ§","Þ›ÞªÞÞ°Þ™Þ¨Þ‡Þ°Þ–Þ§",""], + namesAbbr: ["Þ‰ÞªÞ™Þ¦Þ‡Þ°ÞƒÞ¦Þ‰Þ°","ÞžÞ¦ÞŠÞ¦ÞƒÞª","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ¦Þ‡Þ°ÞˆÞ¦ÞÞ°","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞª","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ«ÞÞ§","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞ§","ÞƒÞ¦Þ–Þ¦Þ„Þ°","ÞÞ¦Þ¢Þ°Þ„Þ§Þ‚Þ°","ÞƒÞ¦Þ‰Þ¦ÞŸÞ§Þ‚Þ°","ÞÞ¦Þ‡Þ°ÞˆÞ§ÞÞ°","Þ›ÞªÞÞ°Þ¤Þ¦Þ¢Þ¨Þ‹Þ§","Þ›ÞªÞÞ°Þ™Þ¨Þ‡Þ°Þ–Þ§",""] + }, + AM: ["Þ‰Þ†","Þ‰Þ†","Þ‰Þ†"], + PM: ["Þ‰ÞŠ","Þ‰ÞŠ","Þ‰ÞŠ"], + eras: [{"name":"Þ€Þ¨Þ–Þ°ÞƒÞ©","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd/MM/yyyy HH:mm", + F: "dd/MM/yyyy HH:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + days: { + names: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesAbbr: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesShort: ["Þ‡Þ§","Þ€Þ¯","Þ‡Þ¦","Þ„Þª","Þ„Þª","Þ€Þª","Þ€Þ®"] + }, + months: { + names: ["Þ–Þ¦Þ‚Þ¦ÞˆÞ¦ÞƒÞ©","ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©","Þ‰Þ§Þ—Þ°","Þ‡Þ­Þ•Þ°ÞƒÞ¨ÞÞ°","Þ‰Þ¬Þ‡Þ¨","Þ–Þ«Þ‚Þ°","Þ–ÞªÞÞ¦Þ‡Þ¨","Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þ°","ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦Þƒ","Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦Þƒ",""], + namesAbbr: ["Þ–Þ¦Þ‚Þ¦ÞˆÞ¦ÞƒÞ©","ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©","Þ‰Þ§Þ—Þ°","Þ‡Þ­Þ•Þ°ÞƒÞ¨ÞÞ°","Þ‰Þ¬Þ‡Þ¨","Þ–Þ«Þ‚Þ°","Þ–ÞªÞÞ¦Þ‡Þ¨","Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þ°","ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦Þƒ","Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦Þƒ",""] + }, + AM: ["Þ‰Þ†","Þ‰Þ†","Þ‰Þ†"], + PM: ["Þ‰ÞŠ","Þ‰ÞŠ","Þ‰ÞŠ"], + eras: [{"name":"Þ‰Þ©ÞÞ§Þ‹Þ©","start":null,"offset":0}], + patterns: { + d: "dd/MM/yy", + D: "ddd, yyyy MMMM dd", + t: "HH:mm", + T: "HH:mm:ss", + f: "ddd, yyyy MMMM dd HH:mm", + F: "ddd, yyyy MMMM dd HH:mm:ss", + Y: "yyyy, MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dv.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dv.js new file mode 100644 index 000000000..9a95e0da6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.dv.js @@ -0,0 +1,164 @@ +/* + * Globalize Culture dv + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "dv", "default", { + name: "dv", + englishName: "Divehi", + nativeName: "Þ‹Þ¨ÞˆÞ¬Þ€Þ¨Þ„Þ¦ÞÞ°", + language: "dv", + isRTL: true, + numberFormat: { + currency: { + pattern: ["n $-","n $"], + symbol: "Þƒ." + } + }, + calendars: { + standard: { + name: "Hijri", + days: { + names: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesAbbr: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesShort: ["Þ‡Þ§","Þ€Þ¯","Þ‡Þ¦","Þ„Þª","Þ„Þª","Þ€Þª","Þ€Þ®"] + }, + months: { + names: ["Þ‰ÞªÞ™Þ¦Þ‡Þ°ÞƒÞ¦Þ‰Þ°","ÞžÞ¦ÞŠÞ¦ÞƒÞª","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ¦Þ‡Þ°ÞˆÞ¦ÞÞ°","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞª","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ«ÞÞ§","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞ§","ÞƒÞ¦Þ–Þ¦Þ„Þ°","ÞÞ¦Þ¢Þ°Þ„Þ§Þ‚Þ°","ÞƒÞ¦Þ‰Þ¦ÞŸÞ§Þ‚Þ°","ÞÞ¦Þ‡Þ°ÞˆÞ§ÞÞ°","Þ›ÞªÞÞ°Þ¤Þ¦Þ¢Þ¨Þ‹Þ§","Þ›ÞªÞÞ°Þ™Þ¨Þ‡Þ°Þ–Þ§",""], + namesAbbr: ["Þ‰ÞªÞ™Þ¦Þ‡Þ°ÞƒÞ¦Þ‰Þ°","ÞžÞ¦ÞŠÞ¦ÞƒÞª","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ¦Þ‡Þ°ÞˆÞ¦ÞÞ°","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞª","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ«ÞÞ§","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞ§","ÞƒÞ¦Þ–Þ¦Þ„Þ°","ÞÞ¦Þ¢Þ°Þ„Þ§Þ‚Þ°","ÞƒÞ¦Þ‰Þ¦ÞŸÞ§Þ‚Þ°","ÞÞ¦Þ‡Þ°ÞˆÞ§ÞÞ°","Þ›ÞªÞÞ°Þ¤Þ¦Þ¢Þ¨Þ‹Þ§","Þ›ÞªÞÞ°Þ™Þ¨Þ‡Þ°Þ–Þ§",""] + }, + AM: ["Þ‰Þ†","Þ‰Þ†","Þ‰Þ†"], + PM: ["Þ‰ÞŠ","Þ‰ÞŠ","Þ‰ÞŠ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd/MM/yyyy HH:mm", + F: "dd/MM/yyyy HH:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + days: { + names: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesAbbr: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesShort: ["Þ‡Þ§","Þ€Þ¯","Þ‡Þ¦","Þ„Þª","Þ„Þª","Þ€Þª","Þ€Þ®"] + }, + months: { + names: ["Þ–Þ¦Þ‚Þ¦ÞˆÞ¦ÞƒÞ©","ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©","Þ‰Þ§Þ—Þ°","Þ‡Þ­Þ•Þ°ÞƒÞ¨ÞÞ°","Þ‰Þ¬Þ‡Þ¨","Þ–Þ«Þ‚Þ°","Þ–ÞªÞÞ¦Þ‡Þ¨","Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þ°","ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦Þƒ","Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦Þƒ",""], + namesAbbr: ["Þ–Þ¦Þ‚Þ¦ÞˆÞ¦ÞƒÞ©","ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©","Þ‰Þ§Þ—Þ°","Þ‡Þ­Þ•Þ°ÞƒÞ¨ÞÞ°","Þ‰Þ¬Þ‡Þ¨","Þ–Þ«Þ‚Þ°","Þ–ÞªÞÞ¦Þ‡Þ¨","Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þ°","ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦Þƒ","Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦Þƒ",""] + }, + AM: ["Þ‰Þ†","Þ‰Þ†","Þ‰Þ†"], + PM: ["Þ‰ÞŠ","Þ‰ÞŠ","Þ‰ÞŠ"], + eras: [{"name":"Þ‰Þ©ÞÞ§Þ‹Þ©","start":null,"offset":0}], + patterns: { + d: "dd/MM/yy", + D: "ddd, yyyy MMMM dd", + t: "HH:mm", + T: "HH:mm:ss", + f: "ddd, yyyy MMMM dd HH:mm", + F: "ddd, yyyy MMMM dd HH:mm:ss", + Y: "yyyy, MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.el-GR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.el-GR.js new file mode 100644 index 000000000..1b01a9f08 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.el-GR.js @@ -0,0 +1,82 @@ +/* + * Globalize Culture el-GR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "el-GR", "default", { + name: "el-GR", + englishName: "Greek (Greece)", + nativeName: "Ελληνικά (Ελλάδα)", + language: "el", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "μη αÏιθμός", + negativeInfinity: "-ΆπειÏο", + positiveInfinity: "ΆπειÏο", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ΚυÏιακή","ΔευτέÏα","ΤÏίτη","ΤετάÏτη","Πέμπτη","ΠαÏασκευή","Σάββατο"], + namesAbbr: ["ΚυÏ","Δευ","ΤÏι","Τετ","Πεμ","ΠαÏ","Σαβ"], + namesShort: ["Κυ","Δε","ΤÏ","Τε","Πε","Πα","Σά"] + }, + months: { + names: ["ΙανουάÏιος","ΦεβÏουάÏιος","ΜάÏτιος","ΑπÏίλιος","Μάιος","ΙοÏνιος","ΙοÏλιος","ΑÏγουστος","ΣεπτέμβÏιος","ΟκτώβÏιος","ÎοέμβÏιος","ΔεκέμβÏιος",""], + namesAbbr: ["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ",""] + }, + monthsGenitive: { + names: ["ΙανουαÏίου","ΦεβÏουαÏίου","ΜαÏτίου","ΑπÏιλίου","ΜαÎου","Ιουνίου","Ιουλίου","ΑυγοÏστου","ΣεπτεμβÏίου","ΟκτωβÏίου","ÎοεμβÏίου","ΔεκεμβÏίου",""], + namesAbbr: ["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ",""] + }, + AM: ["πμ","πμ","ΠΜ"], + PM: ["μμ","μμ","ΜΜ"], + eras: [{"name":"μ.Χ.","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.el.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.el.js new file mode 100644 index 000000000..87ba4b51e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.el.js @@ -0,0 +1,82 @@ +/* + * Globalize Culture el + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "el", "default", { + name: "el", + englishName: "Greek", + nativeName: "Ελληνικά", + language: "el", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "μη αÏιθμός", + negativeInfinity: "-ΆπειÏο", + positiveInfinity: "ΆπειÏο", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ΚυÏιακή","ΔευτέÏα","ΤÏίτη","ΤετάÏτη","Πέμπτη","ΠαÏασκευή","Σάββατο"], + namesAbbr: ["ΚυÏ","Δευ","ΤÏι","Τετ","Πεμ","ΠαÏ","Σαβ"], + namesShort: ["Κυ","Δε","ΤÏ","Τε","Πε","Πα","Σά"] + }, + months: { + names: ["ΙανουάÏιος","ΦεβÏουάÏιος","ΜάÏτιος","ΑπÏίλιος","Μάιος","ΙοÏνιος","ΙοÏλιος","ΑÏγουστος","ΣεπτέμβÏιος","ΟκτώβÏιος","ÎοέμβÏιος","ΔεκέμβÏιος",""], + namesAbbr: ["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ",""] + }, + monthsGenitive: { + names: ["ΙανουαÏίου","ΦεβÏουαÏίου","ΜαÏτίου","ΑπÏιλίου","ΜαÎου","Ιουνίου","Ιουλίου","ΑυγοÏστου","ΣεπτεμβÏίου","ΟκτωβÏίου","ÎοεμβÏίου","ΔεκεμβÏίου",""], + namesAbbr: ["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ",""] + }, + AM: ["πμ","πμ","ΠΜ"], + PM: ["μμ","μμ","ΜΜ"], + eras: [{"name":"μ.Χ.","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-029.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-029.js new file mode 100644 index 000000000..0e5586446 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-029.js @@ -0,0 +1,47 @@ +/* + * Globalize Culture en-029 + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-029", "default", { + name: "en-029", + englishName: "English (Caribbean)", + nativeName: "English (Caribbean)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "MM/dd/yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-AU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-AU.js new file mode 100644 index 000000000..068722aa3 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-AU.js @@ -0,0 +1,52 @@ +/* + * Globalize Culture en-AU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-AU", "default", { + name: "en-AU", + englishName: "English (Australia)", + nativeName: "English (Australia)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "d/MM/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-BZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-BZ.js new file mode 100644 index 000000000..4a0692d2f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-BZ.js @@ -0,0 +1,54 @@ +/* + * Globalize Culture en-BZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-BZ", "default", { + name: "en-BZ", + englishName: "English (Belize)", + nativeName: "English (Belize)", + numberFormat: { + currency: { + groupSizes: [3,0], + symbol: "BZ$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd MMMM yyyy hh:mm tt", + F: "dddd, dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-CA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-CA.js new file mode 100644 index 000000000..1c8c1b577 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-CA.js @@ -0,0 +1,49 @@ +/* + * Globalize Culture en-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-CA", "default", { + name: "en-CA", + englishName: "English (Canada)", + nativeName: "English (Canada)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "MMMM-dd-yy", + f: "MMMM-dd-yy h:mm tt", + F: "MMMM-dd-yy h:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-GB.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-GB.js new file mode 100644 index 000000000..518cc1b9d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-GB.js @@ -0,0 +1,55 @@ +/* + * Globalize Culture en-GB + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-GB", "default", { + name: "en-GB", + englishName: "English (United Kingdom)", + nativeName: "English (United Kingdom)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-IE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-IE.js new file mode 100644 index 000000000..8475128b9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-IE.js @@ -0,0 +1,57 @@ +/* + * Globalize Culture en-IE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-IE", "default", { + name: "en-IE", + englishName: "English (Ireland)", + nativeName: "English (Ireland)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-IN.js new file mode 100644 index 000000000..a98dc7e4c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-IN.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture en-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-IN", "default", { + name: "en-IN", + englishName: "English (India)", + nativeName: "English (India)", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "Rs." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-JM.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-JM.js new file mode 100644 index 000000000..2110f010d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-JM.js @@ -0,0 +1,51 @@ +/* + * Globalize Culture en-JM + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-JM", "default", { + name: "en-JM", + englishName: "English (Jamaica)", + nativeName: "English (Jamaica)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "J$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-MY.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-MY.js new file mode 100644 index 000000000..909804d36 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-MY.js @@ -0,0 +1,56 @@ +/* + * Globalize Culture en-MY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-MY", "default", { + name: "en-MY", + englishName: "English (Malaysia)", + nativeName: "English (Malaysia)", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "RM" + } + }, + calendars: { + standard: { + days: { + namesShort: ["S","M","T","W","T","F","S"] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM, yyyy", + f: "dddd, d MMMM, yyyy h:mm tt", + F: "dddd, d MMMM, yyyy h:mm:ss tt", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-NZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-NZ.js new file mode 100644 index 000000000..60c54a50b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-NZ.js @@ -0,0 +1,54 @@ +/* + * Globalize Culture en-NZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-NZ", "default", { + name: "en-NZ", + englishName: "English (New Zealand)", + nativeName: "English (New Zealand)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "d/MM/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-PH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-PH.js new file mode 100644 index 000000000..4d06ea2e7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-PH.js @@ -0,0 +1,39 @@ +/* + * Globalize Culture en-PH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-PH", "default", { + name: "en-PH", + englishName: "English (Republic of the Philippines)", + nativeName: "English (Philippines)", + numberFormat: { + currency: { + symbol: "Php" + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-SG.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-SG.js new file mode 100644 index 000000000..34e0d3bef --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-SG.js @@ -0,0 +1,53 @@ +/* + * Globalize Culture en-SG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-SG", "default", { + name: "en-SG", + englishName: "English (Singapore)", + nativeName: "English (Singapore)", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + } + }, + calendars: { + standard: { + days: { + namesShort: ["S","M","T","W","T","F","S"] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM, yyyy", + f: "dddd, d MMMM, yyyy h:mm tt", + F: "dddd, d MMMM, yyyy h:mm:ss tt", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-TT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-TT.js new file mode 100644 index 000000000..4cc01482b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-TT.js @@ -0,0 +1,54 @@ +/* + * Globalize Culture en-TT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-TT", "default", { + name: "en-TT", + englishName: "English (Trinidad and Tobago)", + nativeName: "English (Trinidad y Tobago)", + numberFormat: { + currency: { + groupSizes: [3,0], + symbol: "TT$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd MMMM yyyy hh:mm tt", + F: "dddd, dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-US.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-US.js new file mode 100644 index 000000000..03b3ec372 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-US.js @@ -0,0 +1,33 @@ +/* + * Globalize Culture en-US + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-US", "default", { + name: "en-US", + englishName: "English (United States)" +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-ZA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-ZA.js new file mode 100644 index 000000000..22dbfd3a1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-ZA.js @@ -0,0 +1,61 @@ +/* + * Globalize Culture en-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-ZA", "default", { + name: "en-ZA", + englishName: "English (South Africa)", + nativeName: "English (South Africa)", + numberFormat: { + ",": " ", + percent: { + pattern: ["-n%","n%"], + ",": " " + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "R" + } + }, + calendars: { + standard: { + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-ZW.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-ZW.js new file mode 100644 index 000000000..e4f9beb7c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.en-ZW.js @@ -0,0 +1,39 @@ +/* + * Globalize Culture en-ZW + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "en-ZW", "default", { + name: "en-ZW", + englishName: "English (Zimbabwe)", + nativeName: "English (Zimbabwe)", + numberFormat: { + currency: { + symbol: "Z$" + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-AR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-AR.js new file mode 100644 index 000000000..f71f9e0fc --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-AR.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture es-AR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-AR", "default", { + name: "es-AR", + englishName: "Spanish (Argentina)", + nativeName: "Español (Argentina)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-BO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-BO.js new file mode 100644 index 000000000..09c20b98d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-BO.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture es-BO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-BO", "default", { + name: "es-BO", + englishName: "Spanish (Bolivia)", + nativeName: "Español (Bolivia)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CL.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CL.js new file mode 100644 index 000000000..7fd830382 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CL.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture es-CL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-CL", "default", { + name: "es-CL", + englishName: "Spanish (Chile)", + nativeName: "Español (Chile)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CO.js new file mode 100644 index 000000000..3fdef6b38 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CO.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture es-CO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-CO", "default", { + name: "es-CO", + englishName: "Spanish (Colombia)", + nativeName: "Español (Colombia)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CR.js new file mode 100644 index 000000000..7904cff2e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-CR.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture es-CR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-CR", "default", { + name: "es-CR", + englishName: "Spanish (Costa Rica)", + nativeName: "Español (Costa Rica)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + ",": ".", + ".": ",", + symbol: "â‚¡" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-DO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-DO.js new file mode 100644 index 000000000..955edc968 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-DO.js @@ -0,0 +1,69 @@ +/* + * Globalize Culture es-DO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-DO", "default", { + name: "es-DO", + englishName: "Spanish (Dominican Republic)", + nativeName: "Español (República Dominicana)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "RD$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-EC.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-EC.js new file mode 100644 index 000000000..7c80e935c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-EC.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture es-EC + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-EC", "default", { + name: "es-EC", + englishName: "Spanish (Ecuador)", + nativeName: "Español (Ecuador)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-ES.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-ES.js new file mode 100644 index 000000000..0d30eb455 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-ES.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture es-ES + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-ES", "default", { + name: "es-ES", + englishName: "Spanish (Spain, International Sort)", + nativeName: "Español (España, alfabetización internacional)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-GT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-GT.js new file mode 100644 index 000000000..9384ff9ac --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-GT.js @@ -0,0 +1,69 @@ +/* + * Globalize Culture es-GT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-GT", "default", { + name: "es-GT", + englishName: "Spanish (Guatemala)", + nativeName: "Español (Guatemala)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-HN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-HN.js new file mode 100644 index 000000000..896cb9eac --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-HN.js @@ -0,0 +1,71 @@ +/* + * Globalize Culture es-HN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-HN", "default", { + name: "es-HN", + englishName: "Spanish (Honduras)", + nativeName: "Español (Honduras)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + symbol: "L." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-MX.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-MX.js new file mode 100644 index 000000000..d28bea4c7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-MX.js @@ -0,0 +1,69 @@ +/* + * Globalize Culture es-MX + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-MX", "default", { + name: "es-MX", + englishName: "Spanish (Mexico)", + nativeName: "Español (México)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-NI.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-NI.js new file mode 100644 index 000000000..1c3e4a973 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-NI.js @@ -0,0 +1,71 @@ +/* + * Globalize Culture es-NI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-NI", "default", { + name: "es-NI", + englishName: "Spanish (Nicaragua)", + nativeName: "Español (Nicaragua)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + groupSizes: [3,0], + symbol: "C$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PA.js new file mode 100644 index 000000000..f26d7bba7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PA.js @@ -0,0 +1,70 @@ +/* + * Globalize Culture es-PA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-PA", "default", { + name: "es-PA", + englishName: "Spanish (Panama)", + nativeName: "Español (Panamá)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + symbol: "B/." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PE.js new file mode 100644 index 000000000..d51af4ba1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PE.js @@ -0,0 +1,70 @@ +/* + * Globalize Culture es-PE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-PE", "default", { + name: "es-PE", + englishName: "Spanish (Peru)", + nativeName: "Español (Perú)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["$ -n","$ n"], + symbol: "S/." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PR.js new file mode 100644 index 000000000..3d0ef318a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PR.js @@ -0,0 +1,70 @@ +/* + * Globalize Culture es-PR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-PR", "default", { + name: "es-PR", + englishName: "Spanish (Puerto Rico)", + nativeName: "Español (Puerto Rico)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PY.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PY.js new file mode 100644 index 000000000..15dbe620d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-PY.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture es-PY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-PY", "default", { + name: "es-PY", + englishName: "Spanish (Paraguay)", + nativeName: "Español (Paraguay)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "Gs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-SV.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-SV.js new file mode 100644 index 000000000..9d4433ef6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-SV.js @@ -0,0 +1,69 @@ +/* + * Globalize Culture es-SV + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-SV", "default", { + name: "es-SV", + englishName: "Spanish (El Salvador)", + nativeName: "Español (El Salvador)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-US.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-US.js new file mode 100644 index 000000000..b983e1fe3 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-US.js @@ -0,0 +1,62 @@ +/* + * Globalize Culture es-US + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-US", "default", { + name: "es-US", + englishName: "Spanish (United States)", + nativeName: "Español (Estados Unidos)", + language: "es", + numberFormat: { + groupSizes: [3,0], + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sa"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-UY.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-UY.js new file mode 100644 index 000000000..8eb79f341 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-UY.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture es-UY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-UY", "default", { + name: "es-UY", + englishName: "Spanish (Uruguay)", + nativeName: "Español (Uruguay)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$U" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-VE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-VE.js new file mode 100644 index 000000000..1bfc8ac80 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es-VE.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture es-VE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es-VE", "default", { + name: "es-VE", + englishName: "Spanish (Bolivarian Republic of Venezuela)", + nativeName: "Español (Republica Bolivariana de Venezuela)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "Bs. F." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es.js new file mode 100644 index 000000000..658054d98 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.es.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture es + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "es", "default", { + name: "es", + englishName: "Spanish", + nativeName: "español", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.et-EE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.et-EE.js new file mode 100644 index 000000000..5759bea40 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.et-EE.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture et-EE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "et-EE", "default", { + name: "et-EE", + englishName: "Estonian (Estonia)", + nativeName: "eesti (Eesti)", + language: "et", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "avaldamatu", + negativeInfinity: "miinuslõpmatus", + positiveInfinity: "plusslõpmatus", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], + namesAbbr: ["P","E","T","K","N","R","L"], + namesShort: ["P","E","T","K","N","R","L"] + }, + months: { + names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], + namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] + }, + AM: ["EL","el","EL"], + PM: ["PL","pl","PL"], + patterns: { + d: "d.MM.yyyy", + D: "d. MMMM yyyy'. a.'", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy'. a.' H:mm", + F: "d. MMMM yyyy'. a.' H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy'. a.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.et.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.et.js new file mode 100644 index 000000000..386c6a436 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.et.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture et + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "et", "default", { + name: "et", + englishName: "Estonian", + nativeName: "eesti", + language: "et", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "avaldamatu", + negativeInfinity: "miinuslõpmatus", + positiveInfinity: "plusslõpmatus", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], + namesAbbr: ["P","E","T","K","N","R","L"], + namesShort: ["P","E","T","K","N","R","L"] + }, + months: { + names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], + namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] + }, + AM: ["EL","el","EL"], + PM: ["PL","pl","PL"], + patterns: { + d: "d.MM.yyyy", + D: "d. MMMM yyyy'. a.'", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy'. a.' H:mm", + F: "d. MMMM yyyy'. a.' H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy'. a.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.eu-ES.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.eu-ES.js new file mode 100644 index 000000000..18044b4a9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.eu-ES.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture eu-ES + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "eu-ES", "default", { + name: "eu-ES", + englishName: "Basque (Basque)", + nativeName: "euskara (euskara)", + language: "eu", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "EdZ", + negativeInfinity: "-Infinitu", + positiveInfinity: "Infinitu", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], + namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], + namesShort: ["ig","al","as","az","og","or","lr"] + }, + months: { + names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], + namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "dddd, yyyy.'eko' MMMM'k 'd", + t: "HH:mm", + T: "H:mm:ss", + f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", + F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", + Y: "yyyy.'eko' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.eu.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.eu.js new file mode 100644 index 000000000..4a05b26b9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.eu.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture eu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "eu", "default", { + name: "eu", + englishName: "Basque", + nativeName: "euskara", + language: "eu", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "EdZ", + negativeInfinity: "-Infinitu", + positiveInfinity: "Infinitu", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], + namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], + namesShort: ["ig","al","as","az","og","or","lr"] + }, + months: { + names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], + namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "dddd, yyyy.'eko' MMMM'k 'd", + t: "HH:mm", + T: "H:mm:ss", + f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", + F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", + Y: "yyyy.'eko' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fa-IR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fa-IR.js new file mode 100644 index 000000000..551586cad --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fa-IR.js @@ -0,0 +1,213 @@ +/* + * Globalize Culture fa-IR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fa-IR", "default", { + name: "fa-IR", + englishName: "Persian", + nativeName: "Ùارسى (ایران)", + language: "fa", + isRTL: true, + numberFormat: { + pattern: ["n-"], + currency: { + pattern: ["$n-","$ n"], + ".": "/", + symbol: "ريال" + } + }, + calendars: { + standard: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["ژانويه","Ùوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اÙكتبر","نوامبر","دسامبر",""], + namesAbbr: ["ژانويه","Ùوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اÙكتبر","نوامبر","دسامبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy/MM/dd", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "yyyy/MM/dd hh:mm tt", + F: "yyyy/MM/dd hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fa.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fa.js new file mode 100644 index 000000000..2d5d036ae --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fa.js @@ -0,0 +1,213 @@ +/* + * Globalize Culture fa + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fa", "default", { + name: "fa", + englishName: "Persian", + nativeName: "Ùارسى", + language: "fa", + isRTL: true, + numberFormat: { + pattern: ["n-"], + currency: { + pattern: ["$n-","$ n"], + ".": "/", + symbol: "ريال" + } + }, + calendars: { + standard: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["ژانويه","Ùوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اÙكتبر","نوامبر","دسامبر",""], + namesAbbr: ["ژانويه","Ùوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اÙكتبر","نوامبر","دسامبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy/MM/dd", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "yyyy/MM/dd hh:mm tt", + F: "yyyy/MM/dd hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fi-FI.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fi-FI.js new file mode 100644 index 000000000..555d4cd06 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fi-FI.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture fi-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fi-FI", "default", { + name: "fi-FI", + englishName: "Finnish (Finland)", + nativeName: "suomi (Suomi)", + language: "fi", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], + namesAbbr: ["su","ma","ti","ke","to","pe","la"], + namesShort: ["su","ma","ti","ke","to","pe","la"] + }, + months: { + names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], + namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM'ta 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM'ta 'yyyy H:mm", + F: "d. MMMM'ta 'yyyy H:mm:ss", + M: "d. MMMM'ta'", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fi.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fi.js new file mode 100644 index 000000000..33c23056e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fi.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture fi + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fi", "default", { + name: "fi", + englishName: "Finnish", + nativeName: "suomi", + language: "fi", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], + namesAbbr: ["su","ma","ti","ke","to","pe","la"], + namesShort: ["su","ma","ti","ke","to","pe","la"] + }, + months: { + names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], + namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM'ta 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM'ta 'yyyy H:mm", + F: "d. MMMM'ta 'yyyy H:mm:ss", + M: "d. MMMM'ta'", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fil-PH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fil-PH.js new file mode 100644 index 000000000..78ac3d46e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fil-PH.js @@ -0,0 +1,54 @@ +/* + * Globalize Culture fil-PH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fil-PH", "default", { + name: "fil-PH", + englishName: "Filipino (Philippines)", + nativeName: "Filipino (Pilipinas)", + language: "fil", + numberFormat: { + currency: { + symbol: "PhP" + } + }, + calendars: { + standard: { + days: { + names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], + namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], + namesShort: ["L","L","M","M","H","B","S"] + }, + months: { + names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], + namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] + }, + eras: [{"name":"Anno Domini","start":null,"offset":0}] + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fil.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fil.js new file mode 100644 index 000000000..273c51646 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fil.js @@ -0,0 +1,54 @@ +/* + * Globalize Culture fil + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fil", "default", { + name: "fil", + englishName: "Filipino", + nativeName: "Filipino", + language: "fil", + numberFormat: { + currency: { + symbol: "PhP" + } + }, + calendars: { + standard: { + days: { + names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], + namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], + namesShort: ["L","L","M","M","H","B","S"] + }, + months: { + names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], + namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] + }, + eras: [{"name":"Anno Domini","start":null,"offset":0}] + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fo-FO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fo-FO.js new file mode 100644 index 000000000..8e11f81a5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fo-FO.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture fo-FO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fo-FO", "default", { + name: "fo-FO", + englishName: "Faroese (Faroe Islands)", + nativeName: "føroyskt (Føroyar)", + language: "fo", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], + namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], + namesShort: ["su","má","tý","mi","hó","fr","ley"] + }, + months: { + names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fo.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fo.js new file mode 100644 index 000000000..ca45b44a0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fo.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture fo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fo", "default", { + name: "fo", + englishName: "Faroese", + nativeName: "føroyskt", + language: "fo", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], + namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], + namesShort: ["su","má","tý","mi","hó","fr","ley"] + }, + months: { + names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-BE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-BE.js new file mode 100644 index 000000000..8f37feb65 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-BE.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture fr-BE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-BE", "default", { + name: "fr-BE", + englishName: "French (Belgium)", + nativeName: "français (Belgique)", + language: "fr", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "d/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-CA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-CA.js new file mode 100644 index 000000000..dc9c28328 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-CA.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture fr-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-CA", "default", { + name: "fr-CA", + englishName: "French (Canada)", + nativeName: "français (Canada)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["(n $)","n $"], + ",": " ", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-CH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-CH.js new file mode 100644 index 000000000..59028841b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-CH.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture fr-CH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-CH", "default", { + name: "fr-CH", + englishName: "French (Switzerland)", + nativeName: "français (Suisse)", + language: "fr", + numberFormat: { + ",": "'", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-FR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-FR.js new file mode 100644 index 000000000..89c9bd4e0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-FR.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture fr-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-FR", "default", { + name: "fr-FR", + englishName: "French (France)", + nativeName: "français (France)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-LU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-LU.js new file mode 100644 index 000000000..26f1a0acc --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-LU.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture fr-LU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-LU", "default", { + name: "fr-LU", + englishName: "French (Luxembourg)", + nativeName: "français (Luxembourg)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-MC.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-MC.js new file mode 100644 index 000000000..cc6737939 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr-MC.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture fr-MC + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr-MC", "default", { + name: "fr-MC", + englishName: "French (Monaco)", + nativeName: "français (Principauté de Monaco)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr.js new file mode 100644 index 000000000..e8c7b53a6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fr.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture fr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fr", "default", { + name: "fr", + englishName: "French", + nativeName: "français", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fy-NL.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fy-NL.js new file mode 100644 index 000000000..549504c23 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fy-NL.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture fy-NL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fy-NL", "default", { + name: "fy-NL", + englishName: "Frisian (Netherlands)", + nativeName: "Frysk (Nederlân)", + language: "fy", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], + namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], + namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fy.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fy.js new file mode 100644 index 000000000..4dfd47364 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.fy.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture fy + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "fy", "default", { + name: "fy", + englishName: "Frisian", + nativeName: "Frysk", + language: "fy", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], + namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], + namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ga-IE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ga-IE.js new file mode 100644 index 000000000..46bb1fb36 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ga-IE.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture ga-IE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ga-IE", "default", { + name: "ga-IE", + englishName: "Irish (Ireland)", + nativeName: "Gaeilge (Éire)", + language: "ga", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], + namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], + namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] + }, + months: { + names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], + namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] + }, + AM: ["r.n.","r.n.","R.N."], + PM: ["i.n.","i.n.","I.N."], + patterns: { + d: "dd/MM/yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ga.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ga.js new file mode 100644 index 000000000..282e43b46 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ga.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture ga + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ga", "default", { + name: "ga", + englishName: "Irish", + nativeName: "Gaeilge", + language: "ga", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], + namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], + namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] + }, + months: { + names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], + namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] + }, + AM: ["r.n.","r.n.","R.N."], + PM: ["i.n.","i.n.","I.N."], + patterns: { + d: "dd/MM/yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gd-GB.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gd-GB.js new file mode 100644 index 000000000..3abe4edda --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gd-GB.js @@ -0,0 +1,69 @@ +/* + * Globalize Culture gd-GB + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gd-GB", "default", { + name: "gd-GB", + englishName: "Scottish Gaelic (United Kingdom)", + nativeName: "Gàidhlig (An Rìoghachd Aonaichte)", + language: "gd", + numberFormat: { + negativeInfinity: "-Neo-chrìochnachd", + positiveInfinity: "Neo-chrìochnachd", + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], + namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], + namesShort: ["D","L","M","C","A","H","S"] + }, + months: { + names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ã’gmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], + namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ã’gm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] + }, + AM: ["m","m","M"], + PM: ["f","f","F"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gd.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gd.js new file mode 100644 index 000000000..e3f9c8fa7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gd.js @@ -0,0 +1,69 @@ +/* + * Globalize Culture gd + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gd", "default", { + name: "gd", + englishName: "Scottish Gaelic", + nativeName: "Gàidhlig", + language: "gd", + numberFormat: { + negativeInfinity: "-Neo-chrìochnachd", + positiveInfinity: "Neo-chrìochnachd", + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], + namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], + namesShort: ["D","L","M","C","A","H","S"] + }, + months: { + names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ã’gmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], + namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ã’gm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] + }, + AM: ["m","m","M"], + PM: ["f","f","F"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gl-ES.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gl-ES.js new file mode 100644 index 000000000..c750c0e2d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gl-ES.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture gl-ES + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gl-ES", "default", { + name: "gl-ES", + englishName: "Galician (Galician)", + nativeName: "galego (galego)", + language: "gl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], + namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], + namesShort: ["do","lu","ma","mé","xo","ve","sá"] + }, + months: { + names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], + namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gl.js new file mode 100644 index 000000000..1d4a2b626 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gl.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture gl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gl", "default", { + name: "gl", + englishName: "Galician", + nativeName: "galego", + language: "gl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], + namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], + namesShort: ["do","lu","ma","mé","xo","ve","sá"] + }, + months: { + names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], + namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gsw-FR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gsw-FR.js new file mode 100644 index 000000000..02c808556 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gsw-FR.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture gsw-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gsw-FR", "default", { + name: "gsw-FR", + englishName: "Alsatian (France)", + nativeName: "Elsässisch (Frànkrisch)", + language: "gsw", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Ohne Nummer", + negativeInfinity: "-Unendlich", + positiveInfinity: "+Unendlich", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], + namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], + namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] + }, + months: { + names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], + namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] + }, + AM: null, + PM: null, + eras: [{"name":"Vor J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gsw.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gsw.js new file mode 100644 index 000000000..e6c4a3250 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gsw.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture gsw + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gsw", "default", { + name: "gsw", + englishName: "Alsatian", + nativeName: "Elsässisch", + language: "gsw", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Ohne Nummer", + negativeInfinity: "-Unendlich", + positiveInfinity: "+Unendlich", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], + namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], + namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] + }, + months: { + names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], + namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] + }, + AM: null, + PM: null, + eras: [{"name":"Vor J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gu-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gu-IN.js new file mode 100644 index 000000000..2b7fa8d89 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gu-IN.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture gu-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gu-IN", "default", { + name: "gu-IN", + englishName: "Gujarati (India)", + nativeName: "ગà«àªœàª°àª¾àª¤à«€ (ભારત)", + language: "gu", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "રૂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["રવિવાર","સોમવાર","મંગળવાર","બà«àª§àªµàª¾àª°","ગà«àª°à«àªµàª¾àª°","શà«àª•à«àª°àªµàª¾àª°","શનિવાર"], + namesAbbr: ["રવિ","સોમ","મંગળ","બà«àª§","ગà«àª°à«","શà«àª•à«àª°","શનિ"], + namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] + }, + months: { + names: ["જાનà«àª¯à«àª†àª°à«€","ફેબà«àª°à«àª†àª°à«€","મારà«àªš","àªàªªà«àª°àª¿àª²","મે","જૂન","જà«àª²àª¾àªˆ","ઑગસà«àªŸ","સપà«àªŸà«‡àª®à«àª¬àª°","ઑકà«àªŸà«àª¬àª°","નવેમà«àª¬àª°","ડિસેમà«àª¬àª°",""], + namesAbbr: ["જાનà«àª¯à«","ફેબà«àª°à«","મારà«àªš","àªàªªà«àª°àª¿àª²","મે","જૂન","જà«àª²àª¾àªˆ","ઑગસà«àªŸ","સપà«àªŸà«‡","ઑકà«àªŸà«‹","નવે","ડિસે",""] + }, + AM: ["પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨","પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨","પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨"], + PM: ["ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨","ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨","ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gu.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gu.js new file mode 100644 index 000000000..42766c5d9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.gu.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture gu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "gu", "default", { + name: "gu", + englishName: "Gujarati", + nativeName: "ગà«àªœàª°àª¾àª¤à«€", + language: "gu", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "રૂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["રવિવાર","સોમવાર","મંગળવાર","બà«àª§àªµàª¾àª°","ગà«àª°à«àªµàª¾àª°","શà«àª•à«àª°àªµàª¾àª°","શનિવાર"], + namesAbbr: ["રવિ","સોમ","મંગળ","બà«àª§","ગà«àª°à«","શà«àª•à«àª°","શનિ"], + namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] + }, + months: { + names: ["જાનà«àª¯à«àª†àª°à«€","ફેબà«àª°à«àª†àª°à«€","મારà«àªš","àªàªªà«àª°àª¿àª²","મે","જૂન","જà«àª²àª¾àªˆ","ઑગસà«àªŸ","સપà«àªŸà«‡àª®à«àª¬àª°","ઑકà«àªŸà«àª¬àª°","નવેમà«àª¬àª°","ડિસેમà«àª¬àª°",""], + namesAbbr: ["જાનà«àª¯à«","ફેબà«àª°à«","મારà«àªš","àªàªªà«àª°àª¿àª²","મે","જૂન","જà«àª²àª¾àªˆ","ઑગસà«àªŸ","સપà«àªŸà«‡","ઑકà«àªŸà«‹","નવે","ડિસે",""] + }, + AM: ["પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨","પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨","પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨"], + PM: ["ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨","ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨","ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha-Latn-NG.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha-Latn-NG.js new file mode 100644 index 000000000..63fb776b4 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha-Latn-NG.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture ha-Latn-NG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ha-Latn-NG", "default", { + name: "ha-Latn-NG", + englishName: "Hausa (Latin, Nigeria)", + nativeName: "Hausa (Nigeria)", + language: "ha-Latn", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha-Latn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha-Latn.js new file mode 100644 index 000000000..d770c50bd --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha-Latn.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture ha-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ha-Latn", "default", { + name: "ha-Latn", + englishName: "Hausa (Latin)", + nativeName: "Hausa", + language: "ha-Latn", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha.js new file mode 100644 index 000000000..96b726fd3 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ha.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture ha + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ha", "default", { + name: "ha", + englishName: "Hausa", + nativeName: "Hausa", + language: "ha", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.he-IL.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.he-IL.js new file mode 100644 index 000000000..8cace109e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.he-IL.js @@ -0,0 +1,97 @@ +/* + * Globalize Culture he-IL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "he-IL", "default", { + name: "he-IL", + englishName: "Hebrew (Israel)", + nativeName: "עברית (ישר×ל)", + language: "he", + isRTL: true, + numberFormat: { + "NaN": "×œ× ×ž×¡×¤×¨", + negativeInfinity: "×ינסוף שלילי", + positiveInfinity: "×ינסוף חיובי", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "₪" + } + }, + calendars: { + standard: { + days: { + names: ["יו× ר×שון","יו× שני","יו× שלישי","יו× רביעי","יו× חמישי","יו× שישי","שבת"], + namesAbbr: ["יו× ×","יו× ב","יו× ג","יו× ד","יו× ה","יו× ו","שבת"], + namesShort: ["×","ב","×’","ד","×”","ו","ש"] + }, + months: { + names: ["ינו×ר","פברו×ר","מרץ","×פריל","מ××™","יוני","יולי","×וגוסט","ספטמבר","×וקטובר","נובמבר","דצמבר",""], + namesAbbr: ["ינו","פבר","מרץ","×פר","מ××™","יונ","יול","×וג","ספט","×וק","נוב","דצמ",""] + }, + eras: [{"name":"לספירה","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Hebrew: { + name: "Hebrew", + "/": " ", + days: { + names: ["יו× ר×שון","יו× שני","יו× שלישי","יו× רביעי","יו× חמישי","יו× שישי","שבת"], + namesAbbr: ["×","ב","×’","ד","×”","ו","ש"], + namesShort: ["×","ב","×’","ד","×”","ו","ש"] + }, + months: { + names: ["תשרי","חשון","כסלו","טבת","שבט","×דר","×דר ב","ניסן","×ייר","סיון","תמוז","×ב","×לול"], + namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","×דר","×דר ב","ניסן","×ייר","סיון","תמוז","×ב","×לול"] + }, + eras: [{"name":"C.E.","start":null,"offset":0}], + twoDigitYearMax: 5790, + patterns: { + d: "dd MMMM yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.he.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.he.js new file mode 100644 index 000000000..03f7ea4b4 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.he.js @@ -0,0 +1,97 @@ +/* + * Globalize Culture he + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "he", "default", { + name: "he", + englishName: "Hebrew", + nativeName: "עברית", + language: "he", + isRTL: true, + numberFormat: { + "NaN": "×œ× ×ž×¡×¤×¨", + negativeInfinity: "×ינסוף שלילי", + positiveInfinity: "×ינסוף חיובי", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "₪" + } + }, + calendars: { + standard: { + days: { + names: ["יו× ר×שון","יו× שני","יו× שלישי","יו× רביעי","יו× חמישי","יו× שישי","שבת"], + namesAbbr: ["יו× ×","יו× ב","יו× ג","יו× ד","יו× ה","יו× ו","שבת"], + namesShort: ["×","ב","×’","ד","×”","ו","ש"] + }, + months: { + names: ["ינו×ר","פברו×ר","מרץ","×פריל","מ××™","יוני","יולי","×וגוסט","ספטמבר","×וקטובר","נובמבר","דצמבר",""], + namesAbbr: ["ינו","פבר","מרץ","×פר","מ××™","יונ","יול","×וג","ספט","×וק","נוב","דצמ",""] + }, + eras: [{"name":"לספירה","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Hebrew: { + name: "Hebrew", + "/": " ", + days: { + names: ["יו× ר×שון","יו× שני","יו× שלישי","יו× רביעי","יו× חמישי","יו× שישי","שבת"], + namesAbbr: ["×","ב","×’","ד","×”","ו","ש"], + namesShort: ["×","ב","×’","ד","×”","ו","ש"] + }, + months: { + names: ["תשרי","חשון","כסלו","טבת","שבט","×דר","×דר ב","ניסן","×ייר","סיון","תמוז","×ב","×לול"], + namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","×דר","×דר ב","ניסן","×ייר","סיון","תמוז","×ב","×לול"] + }, + eras: [{"name":"C.E.","start":null,"offset":0}], + twoDigitYearMax: 5790, + patterns: { + d: "dd MMMM yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hi-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hi-IN.js new file mode 100644 index 000000000..d7989e503 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hi-IN.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture hi-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hi-IN", "default", { + name: "hi-IN", + englishName: "Hindi (India)", + nativeName: "हिंदी (भारत)", + language: "hi", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगलवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगल.","बà¥à¤§.","गà¥à¤°à¥.","शà¥à¤•à¥à¤°.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""], + namesAbbr: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""] + }, + AM: ["पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨"], + PM: ["अपराहà¥à¤¨","अपराहà¥à¤¨","अपराहà¥à¤¨"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hi.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hi.js new file mode 100644 index 000000000..4343d3a63 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hi.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture hi + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hi", "default", { + name: "hi", + englishName: "Hindi", + nativeName: "हिंदी", + language: "hi", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगलवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगल.","बà¥à¤§.","गà¥à¤°à¥.","शà¥à¤•à¥à¤°.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""], + namesAbbr: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""] + }, + AM: ["पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨"], + PM: ["अपराहà¥à¤¨","अपराहà¥à¤¨","अपराहà¥à¤¨"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr-BA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr-BA.js new file mode 100644 index 000000000..3e5e0641e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr-BA.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture hr-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hr-BA", "default", { + name: "hr-BA", + englishName: "Croatian (Latin, Bosnia and Herzegovina)", + nativeName: "hrvatski (Bosna i Hercegovina)", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["sijeÄanj","veljaÄa","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["sijeÄnja","veljaÄe","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr-HR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr-HR.js new file mode 100644 index 000000000..71a796e1b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr-HR.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture hr-HR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hr-HR", "default", { + name: "hr-HR", + englishName: "Croatian (Croatia)", + nativeName: "hrvatski (Hrvatska)", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kn" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["sijeÄanj","veljaÄa","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["sijeÄnja","veljaÄe","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr.js new file mode 100644 index 000000000..6c597a8a5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hr.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture hr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hr", "default", { + name: "hr", + englishName: "Croatian", + nativeName: "hrvatski", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kn" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["sijeÄanj","veljaÄa","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["sijeÄnja","veljaÄe","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hsb-DE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hsb-DE.js new file mode 100644 index 000000000..e30a4dac4 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hsb-DE.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture hsb-DE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hsb-DE", "default", { + name: "hsb-DE", + englishName: "Upper Sorbian (Germany)", + nativeName: "hornjoserbšćina (NÄ›mska)", + language: "hsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekónÄne", + positiveInfinity: "+njekónÄne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njedźela","póndźela","wutora","srjeda","Å¡twórtk","pjatk","sobota"], + namesAbbr: ["nje","pón","wut","srj","Å¡tw","pja","sob"], + namesShort: ["n","p","w","s","Å¡","p","s"] + }, + months: { + names: ["januar","februar","mÄ›rc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","mÄ›r","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","mÄ›rca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","mÄ›r","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'hodź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hsb.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hsb.js new file mode 100644 index 000000000..57a6b0612 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hsb.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture hsb + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hsb", "default", { + name: "hsb", + englishName: "Upper Sorbian", + nativeName: "hornjoserbšćina", + language: "hsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekónÄne", + positiveInfinity: "+njekónÄne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njedźela","póndźela","wutora","srjeda","Å¡twórtk","pjatk","sobota"], + namesAbbr: ["nje","pón","wut","srj","Å¡tw","pja","sob"], + namesShort: ["n","p","w","s","Å¡","p","s"] + }, + months: { + names: ["januar","februar","mÄ›rc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","mÄ›r","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","mÄ›rca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","mÄ›r","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'hodź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hu-HU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hu-HU.js new file mode 100644 index 000000000..015632881 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hu-HU.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture hu-HU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hu-HU", "default", { + name: "hu-HU", + englishName: "Hungarian (Hungary)", + nativeName: "magyar (Magyarország)", + language: "hu", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nem szám", + negativeInfinity: "negatív végtelen", + positiveInfinity: "végtelen", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ft" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["vasárnap","hétfÅ‘","kedd","szerda","csütörtök","péntek","szombat"], + namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], + namesShort: ["V","H","K","Sze","Cs","P","Szo"] + }, + months: { + names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], + namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] + }, + AM: ["de.","de.","DE."], + PM: ["du.","du.","DU."], + eras: [{"name":"i.sz.","start":null,"offset":0}], + patterns: { + d: "yyyy.MM.dd.", + D: "yyyy. MMMM d.", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy. MMMM d. H:mm", + F: "yyyy. MMMM d. H:mm:ss", + M: "MMMM d.", + Y: "yyyy. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hu.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hu.js new file mode 100644 index 000000000..a4ae56f30 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hu.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture hu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hu", "default", { + name: "hu", + englishName: "Hungarian", + nativeName: "magyar", + language: "hu", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nem szám", + negativeInfinity: "negatív végtelen", + positiveInfinity: "végtelen", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ft" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["vasárnap","hétfÅ‘","kedd","szerda","csütörtök","péntek","szombat"], + namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], + namesShort: ["V","H","K","Sze","Cs","P","Szo"] + }, + months: { + names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], + namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] + }, + AM: ["de.","de.","DE."], + PM: ["du.","du.","DU."], + eras: [{"name":"i.sz.","start":null,"offset":0}], + patterns: { + d: "yyyy.MM.dd.", + D: "yyyy. MMMM d.", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy. MMMM d. H:mm", + F: "yyyy. MMMM d. H:mm:ss", + M: "MMMM d.", + Y: "yyyy. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hy-AM.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hy-AM.js new file mode 100644 index 000000000..9fa83be9a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hy-AM.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture hy-AM + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hy-AM", "default", { + name: "hy-AM", + englishName: "Armenian (Armenia)", + nativeName: "Õ€Õ¡ÕµÕ¥Ö€Õ¥Õ¶ (Õ€Õ¡ÕµÕ¡Õ½Õ¿Õ¡Õ¶)", + language: "hy", + numberFormat: { + currency: { + pattern: ["-n $","n $"], + symbol: "Õ¤Ö€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ô¿Õ«Ö€Õ¡Õ¯Õ«","ÔµÖ€Õ¯Õ¸Ö‚Õ·Õ¡Õ¢Õ©Õ«","ÔµÖ€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ‰Õ¸Ö€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ€Õ«Õ¶Õ£Õ·Õ¡Õ¢Õ©Õ«","ÕˆÕ’Ö€Õ¢Õ¡Õ©","Õ‡Õ¡Õ¢Õ¡Õ©"], + namesAbbr: ["Ô¿Õ«Ö€","ÔµÖ€Õ¯","ÔµÖ€Ö„","Õ‰Ö€Ö„","Õ€Õ¶Õ£","ÕˆÕ’Ö€","Õ‡Õ¢Õ©"], + namesShort: ["Ô¿","Ôµ","Ôµ","Õ‰","Õ€","Õˆ","Õ‡"] + }, + months: { + names: ["Õ€Õ¸Ö‚Õ¶Õ¾Õ¡Ö€","Õ“Õ¥Õ¿Ö€Õ¾Õ¡Ö€","Õ„Õ¡Ö€Õ¿","Ô±ÕºÖ€Õ«Õ¬","Õ„Õ¡ÕµÕ«Õ½","Õ€Õ¸Ö‚Õ¶Õ«Õ½","Õ€Õ¸Ö‚Õ¬Õ«Õ½","Õ•Õ£Õ¸Õ½Õ¿Õ¸Õ½","ÕÕ¥ÕºÕ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ€Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ†Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€","Ô´Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€",""], + namesAbbr: ["Õ€Õ†ÕŽ","Õ“ÕÕŽ","Õ„ÕÕ","Ô±ÕŠÕ","Õ„Õ…Õ","Õ€Õ†Õ","Õ€Ô¼Õ","Õ•Ô³Õ","ÕÔµÕŠ","Õ€ÕˆÔ¿","Õ†ÕˆÕ…","Ô´ÔµÔ¿",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM, yyyy H:mm", + F: "d MMMM, yyyy H:mm:ss", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hy.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hy.js new file mode 100644 index 000000000..3e7878687 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.hy.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture hy + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "hy", "default", { + name: "hy", + englishName: "Armenian", + nativeName: "Õ€Õ¡ÕµÕ¥Ö€Õ¥Õ¶", + language: "hy", + numberFormat: { + currency: { + pattern: ["-n $","n $"], + symbol: "Õ¤Ö€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ô¿Õ«Ö€Õ¡Õ¯Õ«","ÔµÖ€Õ¯Õ¸Ö‚Õ·Õ¡Õ¢Õ©Õ«","ÔµÖ€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ‰Õ¸Ö€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ€Õ«Õ¶Õ£Õ·Õ¡Õ¢Õ©Õ«","ÕˆÕ’Ö€Õ¢Õ¡Õ©","Õ‡Õ¡Õ¢Õ¡Õ©"], + namesAbbr: ["Ô¿Õ«Ö€","ÔµÖ€Õ¯","ÔµÖ€Ö„","Õ‰Ö€Ö„","Õ€Õ¶Õ£","ÕˆÕ’Ö€","Õ‡Õ¢Õ©"], + namesShort: ["Ô¿","Ôµ","Ôµ","Õ‰","Õ€","Õˆ","Õ‡"] + }, + months: { + names: ["Õ€Õ¸Ö‚Õ¶Õ¾Õ¡Ö€","Õ“Õ¥Õ¿Ö€Õ¾Õ¡Ö€","Õ„Õ¡Ö€Õ¿","Ô±ÕºÖ€Õ«Õ¬","Õ„Õ¡ÕµÕ«Õ½","Õ€Õ¸Ö‚Õ¶Õ«Õ½","Õ€Õ¸Ö‚Õ¬Õ«Õ½","Õ•Õ£Õ¸Õ½Õ¿Õ¸Õ½","ÕÕ¥ÕºÕ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ€Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ†Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€","Ô´Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€",""], + namesAbbr: ["Õ€Õ†ÕŽ","Õ“ÕÕŽ","Õ„ÕÕ","Ô±ÕŠÕ","Õ„Õ…Õ","Õ€Õ†Õ","Õ€Ô¼Õ","Õ•Ô³Õ","ÕÔµÕŠ","Õ€ÕˆÔ¿","Õ†ÕˆÕ…","Ô´ÔµÔ¿",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM, yyyy H:mm", + F: "d MMMM, yyyy H:mm:ss", + M: "d MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.id-ID.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.id-ID.js new file mode 100644 index 000000000..283badcc2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.id-ID.js @@ -0,0 +1,75 @@ +/* + * Globalize Culture id-ID + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "id-ID", "default", { + name: "id-ID", + englishName: "Indonesian (Indonesia)", + nativeName: "Bahasa Indonesia (Indonesia)", + language: "id", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": ",", + symbol: "Rp" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], + namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], + namesShort: ["M","S","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.id.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.id.js new file mode 100644 index 000000000..9027e383c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.id.js @@ -0,0 +1,75 @@ +/* + * Globalize Culture id + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "id", "default", { + name: "id", + englishName: "Indonesian", + nativeName: "Bahasa Indonesia", + language: "id", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": ",", + symbol: "Rp" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], + namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], + namesShort: ["M","S","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ig-NG.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ig-NG.js new file mode 100644 index 000000000..04ad7a3c5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ig-NG.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture ig-NG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ig-NG", "default", { + name: "ig-NG", + englishName: "Igbo (Nigeria)", + nativeName: "Igbo (Nigeria)", + language: "ig", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], + namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] + }, + AM: ["Ututu","ututu","UTUTU"], + PM: ["Efifie","efifie","EFIFIE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ig.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ig.js new file mode 100644 index 000000000..96219bae5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ig.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture ig + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ig", "default", { + name: "ig", + englishName: "Igbo", + nativeName: "Igbo", + language: "ig", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], + namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] + }, + AM: ["Ututu","ututu","UTUTU"], + PM: ["Efifie","efifie","EFIFIE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ii-CN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ii-CN.js new file mode 100644 index 000000000..14906bfb0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ii-CN.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture ii-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ii-CN", "default", { + name: "ii-CN", + englishName: "Yi (PRC)", + nativeName: "ꆈꌠê±ê‚· (êꉸê“ꂱꇭꉼꇩ)", + language: "ii", + numberFormat: { + groupSizes: [3,0], + "NaN": "ꌗꂷꀋꉬ", + negativeInfinity: "ꀄꊭêŒê€‹ê‰†", + positiveInfinity: "ꈤê‡ê‘–ꀋꉬ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ê‘­ê†ê‘","ê†êŠ‚ê’”","ê†êŠ‚ê‘","ê†êŠ‚ꌕ","ê†êŠ‚ꇖ","ê†êŠ‚ꉬ","ê†êŠ‚ꃘ"], + namesAbbr: ["ê‘­ê†","ê†ê’”","ê†ê‘","ê†êŒ•","ê†ê‡–","ê†ê‰¬","ê†êƒ˜"], + namesShort: ["ê†","ê’”","ê‘","ꌕ","ꇖ","ꉬ","ꃘ"] + }, + months: { + names: ["ê‹ê†ª","ê‘ꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","êƒê†ª","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], + namesAbbr: ["ê‹ê†ª","ê‘ꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","êƒê†ª","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] + }, + AM: ["ꂵꆪꈌêˆ","ꂵꆪꈌêˆ","ꂵꆪꈌêˆ"], + PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], + eras: [{"name":"ꇬꑼ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ꈎ' M'ꆪ' d'ê‘'", + t: "tt h:mm", + T: "H:mm:ss", + f: "yyyy'ꈎ' M'ꆪ' d'ê‘' tt h:mm", + F: "yyyy'ꈎ' M'ꆪ' d'ê‘' H:mm:ss", + M: "M'ꆪ' d'ê‘'", + Y: "yyyy'ꈎ' M'ꆪ'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ii.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ii.js new file mode 100644 index 000000000..53d078ac2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ii.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture ii + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ii", "default", { + name: "ii", + englishName: "Yi", + nativeName: "ꆈꌠê±ê‚·", + language: "ii", + numberFormat: { + groupSizes: [3,0], + "NaN": "ꌗꂷꀋꉬ", + negativeInfinity: "ꀄꊭêŒê€‹ê‰†", + positiveInfinity: "ꈤê‡ê‘–ꀋꉬ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ê‘­ê†ê‘","ê†êŠ‚ê’”","ê†êŠ‚ê‘","ê†êŠ‚ꌕ","ê†êŠ‚ꇖ","ê†êŠ‚ꉬ","ê†êŠ‚ꃘ"], + namesAbbr: ["ê‘­ê†","ê†ê’”","ê†ê‘","ê†êŒ•","ê†ê‡–","ê†ê‰¬","ê†êƒ˜"], + namesShort: ["ê†","ê’”","ê‘","ꌕ","ꇖ","ꉬ","ꃘ"] + }, + months: { + names: ["ê‹ê†ª","ê‘ꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","êƒê†ª","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], + namesAbbr: ["ê‹ê†ª","ê‘ꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","êƒê†ª","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] + }, + AM: ["ꂵꆪꈌêˆ","ꂵꆪꈌêˆ","ꂵꆪꈌêˆ"], + PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], + eras: [{"name":"ꇬꑼ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ꈎ' M'ꆪ' d'ê‘'", + t: "tt h:mm", + T: "H:mm:ss", + f: "yyyy'ꈎ' M'ꆪ' d'ê‘' tt h:mm", + F: "yyyy'ꈎ' M'ꆪ' d'ê‘' H:mm:ss", + M: "M'ꆪ' d'ê‘'", + Y: "yyyy'ꈎ' M'ꆪ'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.is-IS.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.is-IS.js new file mode 100644 index 000000000..795f0f93d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.is-IS.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture is-IS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "is-IS", "default", { + name: "is-IS", + englishName: "Icelandic (Iceland)", + nativeName: "íslenska (Ãsland)", + language: "is", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], + namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], + namesShort: ["su","má","þr","mi","fi","fö","la"] + }, + months: { + names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], + namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.is.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.is.js new file mode 100644 index 000000000..f2746928c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.is.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture is + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "is", "default", { + name: "is", + englishName: "Icelandic", + nativeName: "íslenska", + language: "is", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], + namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], + namesShort: ["su","má","þr","mi","fi","fö","la"] + }, + months: { + names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], + namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it-CH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it-CH.js new file mode 100644 index 000000000..d91a2a560 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it-CH.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture it-CH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "it-CH", "default", { + name: "it-CH", + englishName: "Italian (Switzerland)", + nativeName: "italiano (Svizzera)", + language: "it", + numberFormat: { + ",": "'", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it-IT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it-IT.js new file mode 100644 index 000000000..df4fbd87c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it-IT.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture it-IT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "it-IT", "default", { + name: "it-IT", + englishName: "Italian (Italy)", + nativeName: "italiano (Italia)", + language: "it", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it.js new file mode 100644 index 000000000..de88495de --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.it.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture it + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "it", "default", { + name: "it", + englishName: "Italian", + nativeName: "italiano", + language: "it", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Cans-CA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Cans-CA.js new file mode 100644 index 000000000..ac00a6899 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Cans-CA.js @@ -0,0 +1,65 @@ +/* + * Globalize Culture iu-Cans-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu-Cans-CA", "default", { + name: "iu-Cans-CA", + englishName: "Inuktitut (Syllabics, Canada)", + nativeName: "áƒá“„ᒃᑎá‘ᑦ (ᑲᓇᑕᒥ)", + language: "iu-Cans", + numberFormat: { + groupSizes: [3,0], + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["ᓈᑦá‘á–‘á”­","ᓇᒡá’ᔾᔭá…","áŠáƒá‘‰á±á–…","á±á–“ᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕá•á’¥á–…","ᓯᕙᑖá•á••á’ƒ"], + namesAbbr: ["ᓈᑦá‘","ᓇᒡá’","áŠáƒá‘‰á±","á±á–“ᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖá•á••á’ƒ"], + namesShort: ["ᓈ","ᓇ","áŠ","á±","ᓯ","á‘•","ᓯ"] + }, + months: { + names: ["á”®á“á“„áŠá•†","á•–á•á•—áŠá•†","ᒫᑦᓯ","á„á³á•†","á’ªáƒ","ᔫᓂ","ᔪᓚáƒ","á‹á’¡á’Œá“¯","ᓯᑎá±á•†","á…á‘á±á•†","á“„á••á±á•†","ᑎᓯá±á•†",""], + namesAbbr: ["á”®á“á“„","á•–á•á•—","ᒫᑦᓯ","á„á³á•†","á’ªáƒ","ᔫᓂ","ᔪᓚáƒ","á‹á’¡á’Œ","ᓯᑎá±","á…á‘á±","á“„á••á±","ᑎᓯá±",""] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd,MMMM dd,yyyy", + f: "dddd,MMMM dd,yyyy h:mm tt", + F: "dddd,MMMM dd,yyyy h:mm:ss tt", + Y: "MMMM,yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Cans.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Cans.js new file mode 100644 index 000000000..e3942c5c1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Cans.js @@ -0,0 +1,65 @@ +/* + * Globalize Culture iu-Cans + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu-Cans", "default", { + name: "iu-Cans", + englishName: "Inuktitut (Syllabics)", + nativeName: "áƒá“„ᒃᑎá‘ᑦ", + language: "iu-Cans", + numberFormat: { + groupSizes: [3,0], + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["ᓈᑦá‘á–‘á”­","ᓇᒡá’ᔾᔭá…","áŠáƒá‘‰á±á–…","á±á–“ᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕá•á’¥á–…","ᓯᕙᑖá•á••á’ƒ"], + namesAbbr: ["ᓈᑦá‘","ᓇᒡá’","áŠáƒá‘‰á±","á±á–“ᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖá•á••á’ƒ"], + namesShort: ["ᓈ","ᓇ","áŠ","á±","ᓯ","á‘•","ᓯ"] + }, + months: { + names: ["á”®á“á“„áŠá•†","á•–á•á•—áŠá•†","ᒫᑦᓯ","á„á³á•†","á’ªáƒ","ᔫᓂ","ᔪᓚáƒ","á‹á’¡á’Œá“¯","ᓯᑎá±á•†","á…á‘á±á•†","á“„á••á±á•†","ᑎᓯá±á•†",""], + namesAbbr: ["á”®á“á“„","á•–á•á•—","ᒫᑦᓯ","á„á³á•†","á’ªáƒ","ᔫᓂ","ᔪᓚáƒ","á‹á’¡á’Œ","ᓯᑎá±","á…á‘á±","á“„á••á±","ᑎᓯá±",""] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd,MMMM dd,yyyy", + f: "dddd,MMMM dd,yyyy h:mm tt", + F: "dddd,MMMM dd,yyyy h:mm:ss tt", + Y: "MMMM,yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Latn-CA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Latn-CA.js new file mode 100644 index 000000000..689ba45ab --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Latn-CA.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture iu-Latn-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu-Latn-CA", "default", { + name: "iu-Latn-CA", + englishName: "Inuktitut (Latin, Canada)", + nativeName: "Inuktitut (Kanatami)", + language: "iu-Latn", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Latn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Latn.js new file mode 100644 index 000000000..d6776af95 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu-Latn.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture iu-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu-Latn", "default", { + name: "iu-Latn", + englishName: "Inuktitut (Latin)", + nativeName: "Inuktitut", + language: "iu-Latn", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu.js new file mode 100644 index 000000000..9ec58167b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.iu.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture iu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "iu", "default", { + name: "iu", + englishName: "Inuktitut", + nativeName: "Inuktitut", + language: "iu", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ja-JP.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ja-JP.js new file mode 100644 index 000000000..e4c1ff69e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ja-JP.js @@ -0,0 +1,100 @@ +/* + * Globalize Culture ja-JP + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ja-JP", "default", { + name: "ja-JP", + englishName: "Japanese (Japan)", + nativeName: "日本語 (日本)", + language: "ja", + numberFormat: { + "NaN": "NaN (éžæ•°å€¤)", + negativeInfinity: "-∞", + positiveInfinity: "+∞", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["日曜日","月曜日","ç«æ›œæ—¥","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["æ—¥","月","ç«","æ°´","木","金","土"], + namesShort: ["æ—¥","月","ç«","æ°´","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["åˆå‰","åˆå‰","åˆå‰"], + PM: ["åˆå¾Œ","åˆå¾Œ","åˆå¾Œ"], + eras: [{"name":"西暦","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + }, + Japanese: { + name: "Japanese", + days: { + names: ["日曜日","月曜日","ç«æ›œæ—¥","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["æ—¥","月","ç«","æ°´","木","金","土"], + namesShort: ["æ—¥","月","ç«","æ°´","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["åˆå‰","åˆå‰","åˆå‰"], + PM: ["åˆå¾Œ","åˆå¾Œ","åˆå¾Œ"], + eras: [{"name":"å¹³æˆ","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], + twoDigitYearMax: 99, + patterns: { + d: "gg y/M/d", + D: "gg y'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "gg y'å¹´'M'月'd'æ—¥' H:mm", + F: "gg y'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "gg y'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ja.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ja.js new file mode 100644 index 000000000..14fe8062a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ja.js @@ -0,0 +1,100 @@ +/* + * Globalize Culture ja + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ja", "default", { + name: "ja", + englishName: "Japanese", + nativeName: "日本語", + language: "ja", + numberFormat: { + "NaN": "NaN (éžæ•°å€¤)", + negativeInfinity: "-∞", + positiveInfinity: "+∞", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["日曜日","月曜日","ç«æ›œæ—¥","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["æ—¥","月","ç«","æ°´","木","金","土"], + namesShort: ["æ—¥","月","ç«","æ°´","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["åˆå‰","åˆå‰","åˆå‰"], + PM: ["åˆå¾Œ","åˆå¾Œ","åˆå¾Œ"], + eras: [{"name":"西暦","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + }, + Japanese: { + name: "Japanese", + days: { + names: ["日曜日","月曜日","ç«æ›œæ—¥","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["æ—¥","月","ç«","æ°´","木","金","土"], + namesShort: ["æ—¥","月","ç«","æ°´","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["åˆå‰","åˆå‰","åˆå‰"], + PM: ["åˆå¾Œ","åˆå¾Œ","åˆå¾Œ"], + eras: [{"name":"å¹³æˆ","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], + twoDigitYearMax: 99, + patterns: { + d: "gg y/M/d", + D: "gg y'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "gg y'å¹´'M'月'd'æ—¥' H:mm", + F: "gg y'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "gg y'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ka-GE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ka-GE.js new file mode 100644 index 000000000..d46d7772c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ka-GE.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture ka-GE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ka-GE", "default", { + name: "ka-GE", + englishName: "Georgian (Georgia)", + nativeName: "ქáƒáƒ áƒ—ული (სáƒáƒ¥áƒáƒ áƒ—ველáƒ)", + language: "ka", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Lari" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["კვირáƒ","áƒáƒ áƒ¨áƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"], + namesAbbr: ["კვირáƒ","áƒáƒ áƒ¨áƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"], + namesShort: ["კ","áƒ","ს","áƒ","ხ","პ","შ"] + }, + months: { + names: ["იáƒáƒœáƒ•áƒáƒ áƒ˜","თებერვáƒáƒšáƒ˜","მáƒáƒ áƒ¢áƒ˜","áƒáƒžáƒ áƒ˜áƒšáƒ˜","მáƒáƒ˜áƒ¡áƒ˜","ივნისი","ივლისი","áƒáƒ’ვისტáƒ","სექტემბერი","áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი","ნáƒáƒ”მბერი","დეკემბერი",""], + namesAbbr: ["იáƒáƒœ","თებ","მáƒáƒ ","áƒáƒžáƒ ","მáƒáƒ˜áƒ¡","ივნ","ივლ","áƒáƒ’ვ","სექ","áƒáƒ¥áƒ¢","ნáƒáƒ”მ","დეკ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'წლის' dd MM, dddd", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'წლის' dd MM, dddd H:mm", + F: "yyyy 'წლის' dd MM, dddd H:mm:ss", + M: "dd MM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ka.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ka.js new file mode 100644 index 000000000..4fb5a0c61 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ka.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture ka + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ka", "default", { + name: "ka", + englishName: "Georgian", + nativeName: "ქáƒáƒ áƒ—ული", + language: "ka", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Lari" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["კვირáƒ","áƒáƒ áƒ¨áƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"], + namesAbbr: ["კვირáƒ","áƒáƒ áƒ¨áƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"], + namesShort: ["კ","áƒ","ს","áƒ","ხ","პ","შ"] + }, + months: { + names: ["იáƒáƒœáƒ•áƒáƒ áƒ˜","თებერვáƒáƒšáƒ˜","მáƒáƒ áƒ¢áƒ˜","áƒáƒžáƒ áƒ˜áƒšáƒ˜","მáƒáƒ˜áƒ¡áƒ˜","ივნისი","ივლისი","áƒáƒ’ვისტáƒ","სექტემბერი","áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი","ნáƒáƒ”მბერი","დეკემბერი",""], + namesAbbr: ["იáƒáƒœ","თებ","მáƒáƒ ","áƒáƒžáƒ ","მáƒáƒ˜áƒ¡","ივნ","ივლ","áƒáƒ’ვ","სექ","áƒáƒ¥áƒ¢","ნáƒáƒ”მ","დეკ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'წლის' dd MM, dddd", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'წლის' dd MM, dddd H:mm", + F: "yyyy 'წლის' dd MM, dddd H:mm:ss", + M: "dd MM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kk-KZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kk-KZ.js new file mode 100644 index 000000000..98ce0518d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kk-KZ.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture kk-KZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kk-KZ", "default", { + name: "kk-KZ", + englishName: "Kazakh (Kazakhstan)", + nativeName: "Қазақ (ҚазақÑтан)", + language: "kk", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$n","$n"], + ",": " ", + ".": "-", + symbol: "Т" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ЖекÑенбі","ДүйÑенбі","СейÑенбі","СәрÑенбі","БейÑенбі","Жұма","Сенбі"], + namesAbbr: ["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"], + namesShort: ["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"] + }, + months: { + names: ["қаңтар","ақпан","наурыз","Ñәуір","мамыр","мауÑым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқÑан",""], + namesAbbr: ["Қаң","Ðқп","Ðау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'ж.' H:mm", + F: "d MMMM yyyy 'ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kk.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kk.js new file mode 100644 index 000000000..d1d487714 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kk.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture kk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kk", "default", { + name: "kk", + englishName: "Kazakh", + nativeName: "Қазақ", + language: "kk", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$n","$n"], + ",": " ", + ".": "-", + symbol: "Т" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ЖекÑенбі","ДүйÑенбі","СейÑенбі","СәрÑенбі","БейÑенбі","Жұма","Сенбі"], + namesAbbr: ["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"], + namesShort: ["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"] + }, + months: { + names: ["қаңтар","ақпан","наурыз","Ñәуір","мамыр","мауÑым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқÑан",""], + namesAbbr: ["Қаң","Ðқп","Ðау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'ж.' H:mm", + F: "d MMMM yyyy 'ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kl-GL.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kl-GL.js new file mode 100644 index 000000000..1ad7b001f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kl-GL.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture kl-GL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kl-GL", "default", { + name: "kl-GL", + englishName: "Greenlandic (Greenland)", + nativeName: "kalaallisut (Kalaallit Nunaat)", + language: "kl", + numberFormat: { + ",": ".", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + groupSizes: [3,0], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], + namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], + namesShort: ["sa","at","ma","pi","si","ta","ar"] + }, + months: { + names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kl.js new file mode 100644 index 000000000..55d544973 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kl.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture kl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kl", "default", { + name: "kl", + englishName: "Greenlandic", + nativeName: "kalaallisut", + language: "kl", + numberFormat: { + ",": ".", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + groupSizes: [3,0], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], + namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], + namesShort: ["sa","at","ma","pi","si","ta","ar"] + }, + months: { + names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.km-KH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.km-KH.js new file mode 100644 index 000000000..92e7aecf5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.km-KH.js @@ -0,0 +1,99 @@ +/* + * Globalize Culture km-KH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "km-KH", "default", { + name: "km-KH", + englishName: "Khmer (Cambodia)", + nativeName: "ážáŸ’មែរ (កម្ពុជា)", + language: "km", + numberFormat: { + pattern: ["- n"], + groupSizes: [3,0], + "NaN": "NAN", + negativeInfinity: "-- អនន្áž", + positiveInfinity: "អនន្áž", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["-n$","n$"], + symbol: "៛" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ážáŸ’ងៃអាទិážáŸ’áž™","ážáŸ’ងៃចáŸáž“្ទ","ážáŸ’ងៃអង្គារ","ážáŸ’ងៃពុធ","ážáŸ’ងៃព្រហស្បážáž·áŸ","ážáŸ’ងៃសុក្រ","ážáŸ’ងៃសៅរáŸ"], + namesAbbr: ["អាទិ.","áž….","អ.","áž–áž»","ព្រហ.","សុ.","ស."], + namesShort: ["អា","áž…","អ","áž–áž»","ព្","សុ","ស"] + }, + months: { + names: ["មករា","កុម្ភៈ","មិនា","មáŸážŸáž¶","ឧសភា","មិážáž»áž“ា","កក្កដា","សីហា","កញ្ញា","ážáž»áž›áž¶","វិច្ឆិកា","ធ្នូ",""], + namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "d MMMM yyyy H:mm tt", + F: "d MMMM yyyy HH:mm:ss", + M: "'ážáŸ’ងៃទី' dd 'ážáŸ‚' MM", + Y: "'ážáŸ‚' MM 'ឆ្នាំ' yyyy" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm tt", + F: "dddd, MMMM dd, yyyy HH:mm:ss" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.km.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.km.js new file mode 100644 index 000000000..4463b919f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.km.js @@ -0,0 +1,99 @@ +/* + * Globalize Culture km + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "km", "default", { + name: "km", + englishName: "Khmer", + nativeName: "ážáŸ’មែរ", + language: "km", + numberFormat: { + pattern: ["- n"], + groupSizes: [3,0], + "NaN": "NAN", + negativeInfinity: "-- អនន្áž", + positiveInfinity: "អនន្áž", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["-n$","n$"], + symbol: "៛" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ážáŸ’ងៃអាទិážáŸ’áž™","ážáŸ’ងៃចáŸáž“្ទ","ážáŸ’ងៃអង្គារ","ážáŸ’ងៃពុធ","ážáŸ’ងៃព្រហស្បážáž·áŸ","ážáŸ’ងៃសុក្រ","ážáŸ’ងៃសៅរáŸ"], + namesAbbr: ["អាទិ.","áž….","អ.","áž–áž»","ព្រហ.","សុ.","ស."], + namesShort: ["អា","áž…","អ","áž–áž»","ព្","សុ","ស"] + }, + months: { + names: ["មករា","កុម្ភៈ","មិនា","មáŸážŸáž¶","ឧសភា","មិážáž»áž“ា","កក្កដា","សីហា","កញ្ញា","ážáž»áž›áž¶","វិច្ឆិកា","ធ្នូ",""], + namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "d MMMM yyyy H:mm tt", + F: "d MMMM yyyy HH:mm:ss", + M: "'ážáŸ’ងៃទី' dd 'ážáŸ‚' MM", + Y: "'ážáŸ‚' MM 'ឆ្នាំ' yyyy" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm tt", + F: "dddd, MMMM dd, yyyy HH:mm:ss" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kn-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kn-IN.js new file mode 100644 index 000000000..aa6ff62be --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kn-IN.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture kn-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kn-IN", "default", { + name: "kn-IN", + englishName: "Kannada (India)", + nativeName: "ಕನà³à²¨à²¡ (ಭಾರತ)", + language: "kn", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ರೂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ಭಾನà³à²µà²¾à²°","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬà³à²§à²µà²¾à²°","ಗà³à²°à³à²µà²¾à²°","ಶà³à²•à³à²°à²µà²¾à²°","ಶನಿವಾರ"], + namesAbbr: ["ಭಾನà³.","ಸೋಮ.","ಮಂಗಳ.","ಬà³à²§.","ಗà³à²°à³.","ಶà³à²•à³à²°.","ಶನಿ."], + namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] + }, + months: { + names: ["ಜನವರಿ","ಫೆಬà³à²°à²µà²°à²¿","ಮಾರà³à²šà³","ಎಪà³à²°à²¿à²²à³","ಮೇ","ಜೂನà³","ಜà³à²²à³ˆ","ಆಗಸà³à²Ÿà³","ಸೆಪà³à²Ÿà²‚ಬರà³","ಅಕà³à²Ÿà³‹à²¬à²°à³","ನವೆಂಬರà³","ಡಿಸೆಂಬರà³",""], + namesAbbr: ["ಜನವರಿ","ಫೆಬà³à²°à²µà²°à²¿","ಮಾರà³à²šà³","ಎಪà³à²°à²¿à²²à³","ಮೇ","ಜೂನà³","ಜà³à²²à³ˆ","ಆಗಸà³à²Ÿà³","ಸೆಪà³à²Ÿà²‚ಬರà³","ಅಕà³à²Ÿà³‹à²¬à²°à³","ನವೆಂಬರà³","ಡಿಸೆಂಬರà³",""] + }, + AM: ["ಪೂರà³à²µà²¾à²¹à³à²¨","ಪೂರà³à²µà²¾à²¹à³à²¨","ಪೂರà³à²µà²¾à²¹à³à²¨"], + PM: ["ಅಪರಾಹà³à²¨","ಅಪರಾಹà³à²¨","ಅಪರಾಹà³à²¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kn.js new file mode 100644 index 000000000..65af8db50 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kn.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture kn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kn", "default", { + name: "kn", + englishName: "Kannada", + nativeName: "ಕನà³à²¨à²¡", + language: "kn", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ರೂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ಭಾನà³à²µà²¾à²°","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬà³à²§à²µà²¾à²°","ಗà³à²°à³à²µà²¾à²°","ಶà³à²•à³à²°à²µà²¾à²°","ಶನಿವಾರ"], + namesAbbr: ["ಭಾನà³.","ಸೋಮ.","ಮಂಗಳ.","ಬà³à²§.","ಗà³à²°à³.","ಶà³à²•à³à²°.","ಶನಿ."], + namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] + }, + months: { + names: ["ಜನವರಿ","ಫೆಬà³à²°à²µà²°à²¿","ಮಾರà³à²šà³","ಎಪà³à²°à²¿à²²à³","ಮೇ","ಜೂನà³","ಜà³à²²à³ˆ","ಆಗಸà³à²Ÿà³","ಸೆಪà³à²Ÿà²‚ಬರà³","ಅಕà³à²Ÿà³‹à²¬à²°à³","ನವೆಂಬರà³","ಡಿಸೆಂಬರà³",""], + namesAbbr: ["ಜನವರಿ","ಫೆಬà³à²°à²µà²°à²¿","ಮಾರà³à²šà³","ಎಪà³à²°à²¿à²²à³","ಮೇ","ಜೂನà³","ಜà³à²²à³ˆ","ಆಗಸà³à²Ÿà³","ಸೆಪà³à²Ÿà²‚ಬರà³","ಅಕà³à²Ÿà³‹à²¬à²°à³","ನವೆಂಬರà³","ಡಿಸೆಂಬರà³",""] + }, + AM: ["ಪೂರà³à²µà²¾à²¹à³à²¨","ಪೂರà³à²µà²¾à²¹à³à²¨","ಪೂರà³à²µà²¾à²¹à³à²¨"], + PM: ["ಅಪರಾಹà³à²¨","ಅಪರಾಹà³à²¨","ಅಪರಾಹà³à²¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ko-KR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ko-KR.js new file mode 100644 index 000000000..153f761d1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ko-KR.js @@ -0,0 +1,96 @@ +/* + * Globalize Culture ko-KR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ko-KR", "default", { + name: "ko-KR", + englishName: "Korean (Korea)", + nativeName: "한국어 (대한민국)", + language: "ko", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "â‚©" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","토요ì¼"], + namesAbbr: ["ì¼","ì›”","í™”","수","목","금","토"], + namesShort: ["ì¼","ì›”","í™”","수","목","금","토"] + }, + months: { + names: ["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"서기","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy'ë…„' M'ì›”' d'ì¼' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm", + F: "yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm:ss", + M: "M'ì›”' d'ì¼'", + Y: "yyyy'ë…„' M'ì›”'" + } + }, + Korean: { + name: "Korean", + "/": "-", + days: { + names: ["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","토요ì¼"], + namesAbbr: ["ì¼","ì›”","í™”","수","목","금","토"], + namesShort: ["ì¼","ì›”","í™”","수","목","금","토"] + }, + months: { + names: ["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"단기","start":null,"offset":-2333}], + twoDigitYearMax: 4362, + patterns: { + d: "gg yyyy-MM-dd", + D: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm", + F: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm:ss", + M: "M'ì›”' d'ì¼'", + Y: "gg yyyy'ë…„' M'ì›”'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ko.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ko.js new file mode 100644 index 000000000..7cd1c93d1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ko.js @@ -0,0 +1,96 @@ +/* + * Globalize Culture ko + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ko", "default", { + name: "ko", + englishName: "Korean", + nativeName: "한국어", + language: "ko", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "â‚©" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","토요ì¼"], + namesAbbr: ["ì¼","ì›”","í™”","수","목","금","토"], + namesShort: ["ì¼","ì›”","í™”","수","목","금","토"] + }, + months: { + names: ["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"서기","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy'ë…„' M'ì›”' d'ì¼' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm", + F: "yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm:ss", + M: "M'ì›”' d'ì¼'", + Y: "yyyy'ë…„' M'ì›”'" + } + }, + Korean: { + name: "Korean", + "/": "-", + days: { + names: ["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","토요ì¼"], + namesAbbr: ["ì¼","ì›”","í™”","수","목","금","토"], + namesShort: ["ì¼","ì›”","í™”","수","목","금","토"] + }, + months: { + names: ["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"단기","start":null,"offset":-2333}], + twoDigitYearMax: 4362, + patterns: { + d: "gg yyyy-MM-dd", + D: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm", + F: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm:ss", + M: "M'ì›”' d'ì¼'", + Y: "gg yyyy'ë…„' M'ì›”'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kok-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kok-IN.js new file mode 100644 index 000000000..1d9fca166 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kok-IN.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture kok-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kok-IN", "default", { + name: "kok-IN", + englishName: "Konkani (India)", + nativeName: "कोंकणी (भारत)", + language: "kok", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["आयतार","सोमार","मंगळार","बà¥à¤§à¤µà¤¾à¤°","बिरेसà¥à¤¤à¤¾à¤°","सà¥à¤•à¥à¤°à¤¾à¤°","शेनवार"], + namesAbbr: ["आय.","सोम.","मंगळ.","बà¥à¤§.","बिरे.","सà¥à¤•à¥à¤°.","शेन."], + namesShort: ["आ","स","म","ब","ब","स","श"] + }, + months: { + names: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवेमà¥à¤¬à¤°","डिसेंबर",""], + namesAbbr: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवेमà¥à¤¬à¤°","डिसेंबर",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kok.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kok.js new file mode 100644 index 000000000..f6b3b3ef8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.kok.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture kok + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "kok", "default", { + name: "kok", + englishName: "Konkani", + nativeName: "कोंकणी", + language: "kok", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["आयतार","सोमार","मंगळार","बà¥à¤§à¤µà¤¾à¤°","बिरेसà¥à¤¤à¤¾à¤°","सà¥à¤•à¥à¤°à¤¾à¤°","शेनवार"], + namesAbbr: ["आय.","सोम.","मंगळ.","बà¥à¤§.","बिरे.","सà¥à¤•à¥à¤°.","शेन."], + namesShort: ["आ","स","म","ब","ब","स","श"] + }, + months: { + names: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवेमà¥à¤¬à¤°","डिसेंबर",""], + namesAbbr: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवेमà¥à¤¬à¤°","डिसेंबर",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ky-KG.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ky-KG.js new file mode 100644 index 000000000..1b372f8c8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ky-KG.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture ky-KG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ky-KG", "default", { + name: "ky-KG", + englishName: "Kyrgyz (Kyrgyzstan)", + nativeName: "Кыргыз (КыргызÑтан)", + language: "ky", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": "-", + symbol: "Ñом" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], + namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], + namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] + }, + months: { + names: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d'-'MMMM yyyy'-ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d'-'MMMM yyyy'-ж.' H:mm", + F: "d'-'MMMM yyyy'-ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy'-ж.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ky.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ky.js new file mode 100644 index 000000000..b19156a9d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ky.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture ky + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ky", "default", { + name: "ky", + englishName: "Kyrgyz", + nativeName: "Кыргыз", + language: "ky", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": "-", + symbol: "Ñом" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], + namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], + namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] + }, + months: { + names: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d'-'MMMM yyyy'-ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d'-'MMMM yyyy'-ж.' H:mm", + F: "d'-'MMMM yyyy'-ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy'-ж.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lb-LU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lb-LU.js new file mode 100644 index 000000000..74d0f64f1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lb-LU.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture lb-LU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lb-LU", "default", { + name: "lb-LU", + englishName: "Luxembourgish (Luxembourg)", + nativeName: "Lëtzebuergesch (Luxembourg)", + language: "lb", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "n. num.", + negativeInfinity: "-onendlech", + positiveInfinity: "+onendlech", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], + namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], + namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lb.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lb.js new file mode 100644 index 000000000..51c616a57 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lb.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture lb + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lb", "default", { + name: "lb", + englishName: "Luxembourgish", + nativeName: "Lëtzebuergesch", + language: "lb", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "n. num.", + negativeInfinity: "-onendlech", + positiveInfinity: "+onendlech", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], + namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], + namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lo-LA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lo-LA.js new file mode 100644 index 000000000..a6f75e9e4 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lo-LA.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture lo-LA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lo-LA", "default", { + name: "lo-LA", + englishName: "Lao (Lao P.D.R.)", + nativeName: "ລາວ (ສ.ປ.ປ. ລາວ)", + language: "lo", + numberFormat: { + pattern: ["(n)"], + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + }, + currency: { + pattern: ["(n$)","n$"], + groupSizes: [3,0], + symbol: "â‚­" + } + }, + calendars: { + standard: { + days: { + names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸàº","ວັນເສົາ"], + namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸàº","ເສົາ"], + namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] + }, + months: { + names: ["ມັງàºàº­àº™","àºàº¸àº¡àºžàº²","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","àºà»àº¥àº°àºàº»àº”","ສິງຫາ","àºàº±àº™àºàº²","ຕຸລາ","ພະຈິàº","ທັນວາ",""], + namesAbbr: ["ມັງàºàº­àº™","àºàº¸àº¡àºžàº²","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","àºà»àº¥àº°àºàº»àº”","ສິງຫາ","àºàº±àº™àºàº²","ຕຸລາ","ພະຈິàº","ທັນວາ",""] + }, + AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], + PM: ["à»àº¥àº‡","à»àº¥àº‡","à»àº¥àº‡"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dd MMMM yyyy H:mm tt", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lo.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lo.js new file mode 100644 index 000000000..91a0734cf --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lo.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture lo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lo", "default", { + name: "lo", + englishName: "Lao", + nativeName: "ລາວ", + language: "lo", + numberFormat: { + pattern: ["(n)"], + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + }, + currency: { + pattern: ["(n$)","n$"], + groupSizes: [3,0], + symbol: "â‚­" + } + }, + calendars: { + standard: { + days: { + names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸàº","ວັນເສົາ"], + namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸàº","ເສົາ"], + namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] + }, + months: { + names: ["ມັງàºàº­àº™","àºàº¸àº¡àºžàº²","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","àºà»àº¥àº°àºàº»àº”","ສິງຫາ","àºàº±àº™àºàº²","ຕຸລາ","ພະຈິàº","ທັນວາ",""], + namesAbbr: ["ມັງàºàº­àº™","àºàº¸àº¡àºžàº²","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","àºà»àº¥àº°àºàº»àº”","ສິງຫາ","àºàº±àº™àºàº²","ຕຸລາ","ພະຈິàº","ທັນວາ",""] + }, + AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], + PM: ["à»àº¥àº‡","à»àº¥àº‡","à»àº¥àº‡"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dd MMMM yyyy H:mm tt", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lt-LT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lt-LT.js new file mode 100644 index 000000000..e61c1c646 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lt-LT.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture lt-LT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lt-LT", "default", { + name: "lt-LT", + englishName: "Lithuanian (Lithuania)", + nativeName: "lietuvių (Lietuva)", + language: "lt", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-begalybÄ—", + positiveInfinity: "begalybÄ—", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Lt" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sekmadienis","pirmadienis","antradienis","treÄiadienis","ketvirtadienis","penktadienis","Å¡eÅ¡tadienis"], + namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Å t"], + namesShort: ["S","P","A","T","K","Pn","Å "] + }, + months: { + names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjÅ«tis","rugsÄ—jis","spalis","lapkritis","gruodis",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + monthsGenitive: { + names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjÅ«Äio","rugsÄ—jo","spalio","lapkriÄio","gruodžio",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd", + D: "yyyy 'm.' MMMM d 'd.'", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'm.' MMMM d 'd.' HH:mm", + F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", + M: "MMMM d 'd.'", + Y: "yyyy 'm.' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lt.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lt.js new file mode 100644 index 000000000..56aeb3b34 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lt.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture lt + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lt", "default", { + name: "lt", + englishName: "Lithuanian", + nativeName: "lietuvių", + language: "lt", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-begalybÄ—", + positiveInfinity: "begalybÄ—", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Lt" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sekmadienis","pirmadienis","antradienis","treÄiadienis","ketvirtadienis","penktadienis","Å¡eÅ¡tadienis"], + namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Å t"], + namesShort: ["S","P","A","T","K","Pn","Å "] + }, + months: { + names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjÅ«tis","rugsÄ—jis","spalis","lapkritis","gruodis",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + monthsGenitive: { + names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjÅ«Äio","rugsÄ—jo","spalio","lapkriÄio","gruodžio",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd", + D: "yyyy 'm.' MMMM d 'd.'", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'm.' MMMM d 'd.' HH:mm", + F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", + M: "MMMM d 'd.'", + Y: "yyyy 'm.' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lv-LV.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lv-LV.js new file mode 100644 index 000000000..60319c442 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lv-LV.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture lv-LV + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lv-LV", "default", { + name: "lv-LV", + englishName: "Latvian (Latvia)", + nativeName: "latvieÅ¡u (Latvija)", + language: "lv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-bezgalÄ«ba", + positiveInfinity: "bezgalÄ«ba", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": " ", + ".": ",", + symbol: "Ls" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["svÄ“tdiena","pirmdiena","otrdiena","treÅ¡diena","ceturtdiena","piektdiena","sestdiena"], + namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], + namesShort: ["sv","pr","ot","tr","ce","pk","se"] + }, + months: { + names: ["janvÄris","februÄris","marts","aprÄ«lis","maijs","jÅ«nijs","jÅ«lijs","augusts","septembris","oktobris","novembris","decembris",""], + namesAbbr: ["jan","feb","mar","apr","mai","jÅ«n","jÅ«l","aug","sep","okt","nov","dec",""] + }, + monthsGenitive: { + names: ["janvÄrÄ«","februÄrÄ«","martÄ","aprÄ«lÄ«","maijÄ","jÅ«nijÄ","jÅ«lijÄ","augustÄ","septembrÄ«","oktobrÄ«","novembrÄ«","decembrÄ«",""], + namesAbbr: ["jan","feb","mar","apr","mai","jÅ«n","jÅ«l","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd.", + D: "dddd, yyyy'. gada 'd. MMMM", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, yyyy'. gada 'd. MMMM H:mm", + F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", + M: "d. MMMM", + Y: "yyyy. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lv.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lv.js new file mode 100644 index 000000000..132495911 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.lv.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture lv + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "lv", "default", { + name: "lv", + englishName: "Latvian", + nativeName: "latvieÅ¡u", + language: "lv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-bezgalÄ«ba", + positiveInfinity: "bezgalÄ«ba", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": " ", + ".": ",", + symbol: "Ls" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["svÄ“tdiena","pirmdiena","otrdiena","treÅ¡diena","ceturtdiena","piektdiena","sestdiena"], + namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], + namesShort: ["sv","pr","ot","tr","ce","pk","se"] + }, + months: { + names: ["janvÄris","februÄris","marts","aprÄ«lis","maijs","jÅ«nijs","jÅ«lijs","augusts","septembris","oktobris","novembris","decembris",""], + namesAbbr: ["jan","feb","mar","apr","mai","jÅ«n","jÅ«l","aug","sep","okt","nov","dec",""] + }, + monthsGenitive: { + names: ["janvÄrÄ«","februÄrÄ«","martÄ","aprÄ«lÄ«","maijÄ","jÅ«nijÄ","jÅ«lijÄ","augustÄ","septembrÄ«","oktobrÄ«","novembrÄ«","decembrÄ«",""], + namesAbbr: ["jan","feb","mar","apr","mai","jÅ«n","jÅ«l","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd.", + D: "dddd, yyyy'. gada 'd. MMMM", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, yyyy'. gada 'd. MMMM H:mm", + F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", + M: "d. MMMM", + Y: "yyyy. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mi-NZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mi-NZ.js new file mode 100644 index 000000000..e8498a2c9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mi-NZ.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture mi-NZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mi-NZ", "default", { + name: "mi-NZ", + englishName: "Maori (New Zealand)", + nativeName: "Reo MÄori (Aotearoa)", + language: "mi", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["RÄtapu","RÄhina","RÄtÅ«","RÄapa","RÄpare","RÄmere","RÄhoroi"], + namesAbbr: ["Ta","Hi","TÅ«","Apa","Pa","Me","Ho"], + namesShort: ["Ta","Hi","TÅ«","Aa","Pa","Me","Ho"] + }, + months: { + names: ["Kohi-tÄtea","Hui-tanguru","PoutÅ«-te-rangi","Paenga-whÄwhÄ","Haratua","Pipiri","HÅngongoi","Here-turi-kÅkÄ","Mahuru","Whiringa-Ä-nuku","Whiringa-Ä-rangi","Hakihea",""], + namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","HÅngo","Here","Mahu","Nuku","Rangi","Haki",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM, yyyy", + f: "dddd, dd MMMM, yyyy h:mm tt", + F: "dddd, dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM, yy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mi.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mi.js new file mode 100644 index 000000000..54e9bbb40 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mi.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture mi + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mi", "default", { + name: "mi", + englishName: "Maori", + nativeName: "Reo MÄori", + language: "mi", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["RÄtapu","RÄhina","RÄtÅ«","RÄapa","RÄpare","RÄmere","RÄhoroi"], + namesAbbr: ["Ta","Hi","TÅ«","Apa","Pa","Me","Ho"], + namesShort: ["Ta","Hi","TÅ«","Aa","Pa","Me","Ho"] + }, + months: { + names: ["Kohi-tÄtea","Hui-tanguru","PoutÅ«-te-rangi","Paenga-whÄwhÄ","Haratua","Pipiri","HÅngongoi","Here-turi-kÅkÄ","Mahuru","Whiringa-Ä-nuku","Whiringa-Ä-rangi","Hakihea",""], + namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","HÅngo","Here","Mahu","Nuku","Rangi","Haki",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM, yyyy", + f: "dddd, dd MMMM, yyyy h:mm tt", + F: "dddd, dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM, yy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mk-MK.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mk-MK.js new file mode 100644 index 000000000..d2f9c0471 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mk-MK.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture mk-MK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mk-MK", "default", { + name: "mk-MK", + englishName: "Macedonian (Former Yugoslav Republic of Macedonia)", + nativeName: "македонÑки јазик (Македонија)", + language: "mk", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "ден." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недела","понеделник","вторник","Ñреда","четврток","петок","Ñабота"], + namesAbbr: ["нед","пон","втр","Ñрд","чет","пет","Ñаб"], + namesShort: ["не","по","вт","ÑÑ€","че","пе","Ñа"] + }, + months: { + names: ["јануари","февруари","март","април","мај","јуни","јули","авгуÑÑ‚","Ñептември","октомври","ноември","декември",""], + namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","Ñеп","окт","ное","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd MMMM yyyy HH:mm", + F: "dddd, dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mk.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mk.js new file mode 100644 index 000000000..0fdc048f0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mk.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture mk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mk", "default", { + name: "mk", + englishName: "Macedonian (FYROM)", + nativeName: "македонÑки јазик", + language: "mk", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "ден." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недела","понеделник","вторник","Ñреда","четврток","петок","Ñабота"], + namesAbbr: ["нед","пон","втр","Ñрд","чет","пет","Ñаб"], + namesShort: ["не","по","вт","ÑÑ€","че","пе","Ñа"] + }, + months: { + names: ["јануари","февруари","март","април","мај","јуни","јули","авгуÑÑ‚","Ñептември","октомври","ноември","декември",""], + namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","Ñеп","окт","ное","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd MMMM yyyy HH:mm", + F: "dddd, dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ml-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ml-IN.js new file mode 100644 index 000000000..1c43494a8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ml-IN.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture ml-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ml-IN", "default", { + name: "ml-IN", + englishName: "Malayalam (India)", + nativeName: "മലയാളം (ഭാരതം)", + language: "ml", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "à´•" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["ഞായറാഴàµà´š","തിങàµà´•à´³à´¾à´´àµà´š","ചൊവàµà´µà´¾à´´àµà´š","à´¬àµà´§à´¨à´¾à´´àµà´š","à´µàµà´¯à´¾à´´à´¾à´´àµà´š","വെളàµà´³à´¿à´¯à´¾à´´àµà´š","ശനിയാഴàµà´š"], + namesAbbr: ["ഞായർ.","തിങàµà´•àµ¾.","ചൊവàµà´µ.","à´¬àµà´§àµ».","à´µàµà´¯à´¾à´´à´‚.","വെളàµà´³à´¿.","ശനി."], + namesShort: ["à´ž","à´¤","à´š","à´¬","à´µ","വെ","à´¶"] + }, + months: { + names: ["ജനàµà´µà´°à´¿","ഫെബàµà´±àµà´µà´°à´¿","മാറàµà´šàµà´šàµ","à´à´ªàµà´±à´¿à´²àµ","മെയàµ","ജൂണàµ","ജൂലൈ","à´“à´—à´¸àµà´±à´±àµ","സെപàµà´±à´±à´‚ബറàµ","à´’à´•àµà´Ÿàµ‹à´¬à´±àµ","നവംബറàµ","ഡിസംബറàµ",""], + namesAbbr: ["ജനàµà´µà´°à´¿","ഫെബàµà´±àµà´µà´°à´¿","മാറàµà´šàµà´šàµ","à´à´ªàµà´±à´¿à´²àµ","മെയàµ","ജൂണàµ","ജൂലൈ","à´“à´—à´¸àµà´±à´±àµ","സെപàµà´±à´±à´‚ബറàµ","à´’à´•àµà´Ÿàµ‹à´¬à´±àµ","നവംബറàµ","ഡിസംബറàµ",""] + }, + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ml.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ml.js new file mode 100644 index 000000000..b6b89e804 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ml.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture ml + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ml", "default", { + name: "ml", + englishName: "Malayalam", + nativeName: "മലയാളം", + language: "ml", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "à´•" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["ഞായറാഴàµà´š","തിങàµà´•à´³à´¾à´´àµà´š","ചൊവàµà´µà´¾à´´àµà´š","à´¬àµà´§à´¨à´¾à´´àµà´š","à´µàµà´¯à´¾à´´à´¾à´´àµà´š","വെളàµà´³à´¿à´¯à´¾à´´àµà´š","ശനിയാഴàµà´š"], + namesAbbr: ["ഞായർ.","തിങàµà´•àµ¾.","ചൊവàµà´µ.","à´¬àµà´§àµ».","à´µàµà´¯à´¾à´´à´‚.","വെളàµà´³à´¿.","ശനി."], + namesShort: ["à´ž","à´¤","à´š","à´¬","à´µ","വെ","à´¶"] + }, + months: { + names: ["ജനàµà´µà´°à´¿","ഫെബàµà´±àµà´µà´°à´¿","മാറàµà´šàµà´šàµ","à´à´ªàµà´±à´¿à´²àµ","മെയàµ","ജൂണàµ","ജൂലൈ","à´“à´—à´¸àµà´±à´±àµ","സെപàµà´±à´±à´‚ബറàµ","à´’à´•àµà´Ÿàµ‹à´¬à´±àµ","നവംബറàµ","ഡിസംബറàµ",""], + namesAbbr: ["ജനàµà´µà´°à´¿","ഫെബàµà´±àµà´µà´°à´¿","മാറàµà´šàµà´šàµ","à´à´ªàµà´±à´¿à´²àµ","മെയàµ","ജൂണàµ","ജൂലൈ","à´“à´—à´¸àµà´±à´±àµ","സെപàµà´±à´±à´‚ബറàµ","à´’à´•àµà´Ÿàµ‹à´¬à´±àµ","നവംബറàµ","ഡിസംബറàµ",""] + }, + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Cyrl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Cyrl.js new file mode 100644 index 000000000..dd07a2379 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Cyrl.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture mn-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn-Cyrl", "default", { + name: "mn-Cyrl", + englishName: "Mongolian (Cyrillic)", + nativeName: "Монгол хÑл", + language: "mn-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚®" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ÐÑм","Даваа","ÐœÑгмар","Лхагва","ПүрÑв","БааÑан","БÑмба"], + namesAbbr: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"], + namesShort: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"] + }, + months: { + names: ["1 дүгÑÑр Ñар","2 дугаар Ñар","3 дугаар Ñар","4 дүгÑÑр Ñар","5 дугаар Ñар","6 дугаар Ñар","7 дугаар Ñар","8 дугаар Ñар","9 дүгÑÑр Ñар","10 дугаар Ñар","11 дүгÑÑр Ñар","12 дугаар Ñар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгÑÑр Ñарын","2 дугаар Ñарын","3 дугаар Ñарын","4 дүгÑÑр Ñарын","5 дугаар Ñарын","6 дугаар Ñарын","7 дугаар Ñарын","8 дугаар Ñарын","9 дүгÑÑр Ñарын","10 дугаар Ñарын","11 дүгÑÑр Ñарын","12 дугаар Ñарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-MN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-MN.js new file mode 100644 index 000000000..0f0a8a3c5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-MN.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture mn-MN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn-MN", "default", { + name: "mn-MN", + englishName: "Mongolian (Cyrillic, Mongolia)", + nativeName: "Монгол хÑл (Монгол улÑ)", + language: "mn-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚®" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ÐÑм","Даваа","ÐœÑгмар","Лхагва","ПүрÑв","БааÑан","БÑмба"], + namesAbbr: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"], + namesShort: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"] + }, + months: { + names: ["1 дүгÑÑр Ñар","2 дугаар Ñар","3 дугаар Ñар","4 дүгÑÑр Ñар","5 дугаар Ñар","6 дугаар Ñар","7 дугаар Ñар","8 дугаар Ñар","9 дүгÑÑр Ñар","10 дугаар Ñар","11 дүгÑÑр Ñар","12 дугаар Ñар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгÑÑр Ñарын","2 дугаар Ñарын","3 дугаар Ñарын","4 дүгÑÑр Ñарын","5 дугаар Ñарын","6 дугаар Ñарын","7 дугаар Ñарын","8 дугаар Ñарын","9 дүгÑÑр Ñарын","10 дугаар Ñарын","11 дүгÑÑр Ñарын","12 дугаар Ñарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Mong-CN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Mong-CN.js new file mode 100644 index 000000000..02f2e0b2a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Mong-CN.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture mn-Mong-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn-Mong-CN", "default", { + name: "mn-Mong-CN", + englishName: "Mongolian (Traditional Mongolian, PRC)", + nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ (ᠪᠦᠭᠦᠳᠡ ᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤ ᠳᠤᠮᠳᠠᠳᠤ á  á ·á  á ³ ᠣᠯᠣᠰ)", + language: "mn-Mong", + numberFormat: { + groupSizes: [3,0], + "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", + negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", + positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["á ­á  á ·á  á ­\u202fᠤᠨ ᠡᠳᠦᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠨᠢᠭᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠬᠣᠶᠠᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠲᠠᠪᠤᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesAbbr: ["á ­á  á ·á  á ­\u202fᠤᠨ ᠡᠳᠦᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠨᠢᠭᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠬᠣᠶᠠᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠲᠠᠪᠤᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesShort: ["á ¡\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","á ­á ¤\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] + }, + months: { + names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ",""], + namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ",""] + }, + AM: null, + PM: null, + eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", + F: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", + M: "M'á °á  á ·á Žá  ' d'ᠡᠳᠦᠷ'", + Y: "yyyy'ᠣᠨ' M'á °á  á ·á Žá  '" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Mong.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Mong.js new file mode 100644 index 000000000..7f21608e2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn-Mong.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture mn-Mong + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn-Mong", "default", { + name: "mn-Mong", + englishName: "Mongolian (Traditional Mongolian)", + nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ", + language: "mn-Mong", + numberFormat: { + groupSizes: [3,0], + "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", + negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", + positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["á ­á  á ·á  á ­\u202fᠤᠨ ᠡᠳᠦᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠨᠢᠭᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠬᠣᠶᠠᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠲᠠᠪᠤᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesAbbr: ["á ­á  á ·á  á ­\u202fᠤᠨ ᠡᠳᠦᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠨᠢᠭᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠬᠣᠶᠠᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠲᠠᠪᠤᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesShort: ["á ¡\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","á ­á ¤\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] + }, + months: { + names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ",""], + namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ",""] + }, + AM: null, + PM: null, + eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", + F: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", + M: "M'á °á  á ·á Žá  ' d'ᠡᠳᠦᠷ'", + Y: "yyyy'ᠣᠨ' M'á °á  á ·á Žá  '" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn.js new file mode 100644 index 000000000..5d43c23b9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mn.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture mn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mn", "default", { + name: "mn", + englishName: "Mongolian", + nativeName: "Монгол хÑл", + language: "mn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚®" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ÐÑм","Даваа","ÐœÑгмар","Лхагва","ПүрÑв","БааÑан","БÑмба"], + namesAbbr: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"], + namesShort: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"] + }, + months: { + names: ["1 дүгÑÑр Ñар","2 дугаар Ñар","3 дугаар Ñар","4 дүгÑÑр Ñар","5 дугаар Ñар","6 дугаар Ñар","7 дугаар Ñар","8 дугаар Ñар","9 дүгÑÑр Ñар","10 дугаар Ñар","11 дүгÑÑр Ñар","12 дугаар Ñар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгÑÑр Ñарын","2 дугаар Ñарын","3 дугаар Ñарын","4 дүгÑÑр Ñарын","5 дугаар Ñарын","6 дугаар Ñарын","7 дугаар Ñарын","8 дугаар Ñарын","9 дүгÑÑр Ñарын","10 дугаар Ñарын","11 дүгÑÑр Ñарын","12 дугаар Ñарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.moh-CA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.moh-CA.js new file mode 100644 index 000000000..98a5a2e3b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.moh-CA.js @@ -0,0 +1,52 @@ +/* + * Globalize Culture moh-CA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "moh-CA", "default", { + name: "moh-CA", + englishName: "Mohawk (Mohawk)", + nativeName: "Kanien'kéha", + language: "moh", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.moh.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.moh.js new file mode 100644 index 000000000..2bd054c43 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.moh.js @@ -0,0 +1,52 @@ +/* + * Globalize Culture moh + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "moh", "default", { + name: "moh", + englishName: "Mohawk", + nativeName: "Kanien'kéha", + language: "moh", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mr-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mr-IN.js new file mode 100644 index 000000000..cc703a2f7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mr-IN.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture mr-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mr-IN", "default", { + name: "mr-IN", + englishName: "Marathi (India)", + nativeName: "मराठी (भारत)", + language: "mr", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगळवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगळ.","बà¥à¤§.","गà¥à¤°à¥.","शà¥à¤•à¥à¤°.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवà¥à¤¹à¥‡à¤‚बर","डिसेंबर",""], + namesAbbr: ["जाने.","फेबà¥à¤°à¥.","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚.","ऑकà¥à¤Ÿà¥‹.","नोवà¥à¤¹à¥‡à¤‚.","डिसें.",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mr.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mr.js new file mode 100644 index 000000000..2d275bef4 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mr.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture mr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mr", "default", { + name: "mr", + englishName: "Marathi", + nativeName: "मराठी", + language: "mr", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगळवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगळ.","बà¥à¤§.","गà¥à¤°à¥.","शà¥à¤•à¥à¤°.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवà¥à¤¹à¥‡à¤‚बर","डिसेंबर",""], + namesAbbr: ["जाने.","फेबà¥à¤°à¥.","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚.","ऑकà¥à¤Ÿà¥‹.","नोवà¥à¤¹à¥‡à¤‚.","डिसें.",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms-BN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms-BN.js new file mode 100644 index 000000000..f6b62299b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms-BN.js @@ -0,0 +1,74 @@ +/* + * Globalize Culture ms-BN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ms-BN", "default", { + name: "ms-BN", + englishName: "Malay (Brunei Darussalam)", + nativeName: "Bahasa Melayu (Brunei Darussalam)", + language: "ms", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms-MY.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms-MY.js new file mode 100644 index 000000000..7a55c388f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms-MY.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture ms-MY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ms-MY", "default", { + name: "ms-MY", + englishName: "Malay (Malaysia)", + nativeName: "Bahasa Melayu (Malaysia)", + language: "ms", + numberFormat: { + currency: { + decimals: 0, + symbol: "RM" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms.js new file mode 100644 index 000000000..9a8ed21f9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ms.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture ms + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ms", "default", { + name: "ms", + englishName: "Malay", + nativeName: "Bahasa Melayu", + language: "ms", + numberFormat: { + currency: { + decimals: 0, + symbol: "RM" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mt-MT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mt-MT.js new file mode 100644 index 000000000..639c9020e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mt-MT.js @@ -0,0 +1,68 @@ +/* + * Globalize Culture mt-MT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mt-MT", "default", { + name: "mt-MT", + englishName: "Maltese (Malta)", + nativeName: "Malti (Malta)", + language: "mt", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ä imgħa","Is-Sibt"], + namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ä im","Sib"], + namesShort: ["I","I","I","L","I","I","I"] + }, + months: { + names: ["Jannar","Frar","Marzu","April","Mejju","Ä unju","Lulju","Awissu","Settembru","Ottubru","Novembru","DiÄ‹embru",""], + namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ä un","Lul","Awi","Set","Ott","Nov","DiÄ‹",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' ta\\' 'MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", + F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", + M: "d' ta\\' 'MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mt.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mt.js new file mode 100644 index 000000000..cde510540 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.mt.js @@ -0,0 +1,68 @@ +/* + * Globalize Culture mt + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "mt", "default", { + name: "mt", + englishName: "Maltese", + nativeName: "Malti", + language: "mt", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ä imgħa","Is-Sibt"], + namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ä im","Sib"], + namesShort: ["I","I","I","L","I","I","I"] + }, + months: { + names: ["Jannar","Frar","Marzu","April","Mejju","Ä unju","Lulju","Awissu","Settembru","Ottubru","Novembru","DiÄ‹embru",""], + namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ä un","Lul","Awi","Set","Ott","Nov","DiÄ‹",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' ta\\' 'MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", + F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", + M: "d' ta\\' 'MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nb-NO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nb-NO.js new file mode 100644 index 000000000..27c744208 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nb-NO.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture nb-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nb-NO", "default", { + name: "nb-NO", + englishName: "Norwegian, BokmÃ¥l (Norway)", + nativeName: "norsk, bokmÃ¥l (Norge)", + language: "nb", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nb.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nb.js new file mode 100644 index 000000000..8b959ed6b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nb.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture nb + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nb", "default", { + name: "nb", + englishName: "Norwegian (BokmÃ¥l)", + nativeName: "norsk (bokmÃ¥l)", + language: "nb", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ne-NP.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ne-NP.js new file mode 100644 index 000000000..e353fbac6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ne-NP.js @@ -0,0 +1,68 @@ +/* + * Globalize Culture ne-NP + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ne-NP", "default", { + name: "ne-NP", + englishName: "Nepali (Nepal)", + nativeName: "नेपाली (नेपाल)", + language: "ne", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "रà¥" + } + }, + calendars: { + standard: { + days: { + names: ["आइतवार","सोमवार","मङà¥à¤—लवार","बà¥à¤§à¤µà¤¾à¤°","बिहीवार","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["आइत","सोम","मङà¥à¤—ल","बà¥à¤§","बिही","शà¥à¤•à¥à¤°","शनि"], + namesShort: ["आ","सो","म","बà¥","बि","शà¥","श"] + }, + months: { + names: ["जनवरी","फेबà¥à¤°à¥à¤…री","मारà¥à¤š","अपà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सेपà¥à¤Ÿà¥‡à¤®à¥à¤¬à¤°","अकà¥à¤Ÿà¥‹à¤¬à¤°","नोभेमà¥à¤¬à¤°","डिसेमà¥à¤¬à¤°",""], + namesAbbr: ["जन","फेब","मारà¥à¤š","अपà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¤¾à¤ˆ","अग","सेपà¥à¤Ÿ","अकà¥à¤Ÿ","नोभ","डिस",""] + }, + AM: ["विहानी","विहानी","विहानी"], + PM: ["बेलà¥à¤•à¥€","बेलà¥à¤•à¥€","बेलà¥à¤•à¥€"], + eras: [{"name":"a.d.","start":null,"offset":0}], + patterns: { + Y: "MMMM,yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ne.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ne.js new file mode 100644 index 000000000..c36a96012 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ne.js @@ -0,0 +1,68 @@ +/* + * Globalize Culture ne + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ne", "default", { + name: "ne", + englishName: "Nepali", + nativeName: "नेपाली", + language: "ne", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "रà¥" + } + }, + calendars: { + standard: { + days: { + names: ["आइतवार","सोमवार","मङà¥à¤—लवार","बà¥à¤§à¤µà¤¾à¤°","बिहीवार","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["आइत","सोम","मङà¥à¤—ल","बà¥à¤§","बिही","शà¥à¤•à¥à¤°","शनि"], + namesShort: ["आ","सो","म","बà¥","बि","शà¥","श"] + }, + months: { + names: ["जनवरी","फेबà¥à¤°à¥à¤…री","मारà¥à¤š","अपà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सेपà¥à¤Ÿà¥‡à¤®à¥à¤¬à¤°","अकà¥à¤Ÿà¥‹à¤¬à¤°","नोभेमà¥à¤¬à¤°","डिसेमà¥à¤¬à¤°",""], + namesAbbr: ["जन","फेब","मारà¥à¤š","अपà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¤¾à¤ˆ","अग","सेपà¥à¤Ÿ","अकà¥à¤Ÿ","नोभ","डिस",""] + }, + AM: ["विहानी","विहानी","विहानी"], + PM: ["बेलà¥à¤•à¥€","बेलà¥à¤•à¥€","बेलà¥à¤•à¥€"], + eras: [{"name":"a.d.","start":null,"offset":0}], + patterns: { + Y: "MMMM,yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl-BE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl-BE.js new file mode 100644 index 000000000..39417db9d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl-BE.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture nl-BE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nl-BE", "default", { + name: "nl-BE", + englishName: "Dutch (Belgium)", + nativeName: "Nederlands (België)", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Niet-een-getal)", + negativeInfinity: "-oneindig", + positiveInfinity: "oneindig", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl-NL.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl-NL.js new file mode 100644 index 000000000..39994a6af --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl-NL.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture nl-NL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nl-NL", "default", { + name: "nl-NL", + englishName: "Dutch (Netherlands)", + nativeName: "Nederlands (Nederland)", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl.js new file mode 100644 index 000000000..cb58ea870 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nl.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture nl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nl", "default", { + name: "nl", + englishName: "Dutch", + nativeName: "Nederlands", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nn-NO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nn-NO.js new file mode 100644 index 000000000..e50b1e529 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nn-NO.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture nn-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nn-NO", "default", { + name: "nn-NO", + englishName: "Norwegian, Nynorsk (Norway)", + nativeName: "norsk, nynorsk (Noreg)", + language: "nn", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mÃ¥ndag","tysdag","onsdag","torsdag","fredag","laurdag"], + namesAbbr: ["sø","mÃ¥","ty","on","to","fr","la"], + namesShort: ["sø","mÃ¥","ty","on","to","fr","la"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nn.js new file mode 100644 index 000000000..7f5fa46ee --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nn.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture nn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nn", "default", { + name: "nn", + englishName: "Norwegian (Nynorsk)", + nativeName: "norsk (nynorsk)", + language: "nn", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mÃ¥ndag","tysdag","onsdag","torsdag","fredag","laurdag"], + namesAbbr: ["sø","mÃ¥","ty","on","to","fr","la"], + namesShort: ["sø","mÃ¥","ty","on","to","fr","la"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.no.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.no.js new file mode 100644 index 000000000..5f38c7137 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.no.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture no + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "no", "default", { + name: "no", + englishName: "Norwegian", + nativeName: "norsk", + language: "no", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nso-ZA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nso-ZA.js new file mode 100644 index 000000000..d334ee0f9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nso-ZA.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture nso-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nso-ZA", "default", { + name: "nso-ZA", + englishName: "Sesotho sa Leboa (South Africa)", + nativeName: "Sesotho sa Leboa (Afrika Borwa)", + language: "nso", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Lamorena","MoÅ¡upologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], + namesAbbr: ["Lam","MoÅ¡","Lbb","Lbr","Lbn","Lbh","Mok"], + namesShort: ["L","M","L","L","L","L","M"] + }, + months: { + names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","NgoatoboÅ¡ego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], + namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nso.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nso.js new file mode 100644 index 000000000..9933d4050 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.nso.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture nso + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "nso", "default", { + name: "nso", + englishName: "Sesotho sa Leboa", + nativeName: "Sesotho sa Leboa", + language: "nso", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Lamorena","MoÅ¡upologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], + namesAbbr: ["Lam","MoÅ¡","Lbb","Lbr","Lbn","Lbh","Mok"], + namesShort: ["L","M","L","L","L","L","M"] + }, + months: { + names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","NgoatoboÅ¡ego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], + namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.oc-FR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.oc-FR.js new file mode 100644 index 000000000..c175e7c5a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.oc-FR.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture oc-FR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "oc-FR", "default", { + name: "oc-FR", + englishName: "Occitan (France)", + nativeName: "Occitan (França)", + language: "oc", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numeric", + negativeInfinity: "-Infinit", + positiveInfinity: "+Infinit", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], + namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], + namesShort: ["di","lu","ma","mè","jò","ve","sa"] + }, + months: { + names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + monthsGenitive: { + names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + AM: null, + PM: null, + eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd,' lo 'd MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", + F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.oc.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.oc.js new file mode 100644 index 000000000..7547503bf --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.oc.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture oc + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "oc", "default", { + name: "oc", + englishName: "Occitan", + nativeName: "Occitan", + language: "oc", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numeric", + negativeInfinity: "-Infinit", + positiveInfinity: "+Infinit", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], + namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], + namesShort: ["di","lu","ma","mè","jò","ve","sa"] + }, + months: { + names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + monthsGenitive: { + names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + AM: null, + PM: null, + eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd,' lo 'd MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", + F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.or-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.or-IN.js new file mode 100644 index 000000000..2da61a78b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.or-IN.js @@ -0,0 +1,70 @@ +/* + * Globalize Culture or-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "or-IN", "default", { + name: "or-IN", + englishName: "Oriya (India)", + nativeName: "ଓଡ଼ିଆ (ଭାରତ)", + language: "or", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ଟ" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ରବିବାର","ସୋମବାର","ମଙà­à¬—ଳବାର","ବà­à¬§à¬¬à¬¾à¬°","ଗà­à¬°à­à¬¬à¬¾à¬°","ଶà­à¬•à­à¬°à¬¬à¬¾à¬°","ଶନିବାର"], + namesAbbr: ["ରବି.","ସୋମ.","ମଙà­à¬—ଳ.","ବà­à¬§.","ଗà­à¬°à­.","ଶà­à¬•à­à¬°.","ଶନି."], + namesShort: ["ର","ସୋ","ମ","ବà­","ଗà­","ଶà­","ଶ"] + }, + months: { + names: ["ଜାନà­à­Ÿà¬¾à¬°à­€","ଫà­à¬°à­‡à¬¬à­ƒà­Ÿà¬¾à¬°à­€","ମାରà­à¬šà­à¬š","à¬à¬ªà­à¬°à¬¿à¬²à­\u200c","ମେ","ଜà­à¬¨à­\u200c","ଜà­à¬²à¬¾à¬‡","ଅଗଷà­à¬Ÿ","ସେପà­à¬Ÿà­‡à¬®à­à¬¬à¬°","ଅକà­à¬Ÿà­‹à¬¬à¬°","ନଭେମà­à¬¬à¬°","(ଡିସେମà­à¬¬à¬°",""], + namesAbbr: ["ଜାନà­à­Ÿà¬¾à¬°à­€","ଫà­à¬°à­‡à¬¬à­ƒà­Ÿà¬¾à¬°à­€","ମାରà­à¬šà­à¬š","à¬à¬ªà­à¬°à¬¿à¬²à­\u200c","ମେ","ଜà­à¬¨à­\u200c","ଜà­à¬²à¬¾à¬‡","ଅଗଷà­à¬Ÿ","ସେପà­à¬Ÿà­‡à¬®à­à¬¬à¬°","ଅକà­à¬Ÿà­‹à¬¬à¬°","ନଭେମà­à¬¬à¬°","(ଡିସେମà­à¬¬à¬°",""] + }, + eras: [{"name":"ଖà­à¬°à­€à¬·à­à¬Ÿà¬¾à¬¬à­à¬¦","start":null,"offset":0}], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.or.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.or.js new file mode 100644 index 000000000..3ce2909a9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.or.js @@ -0,0 +1,70 @@ +/* + * Globalize Culture or + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "or", "default", { + name: "or", + englishName: "Oriya", + nativeName: "ଓଡ଼ିଆ", + language: "or", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ଟ" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ରବିବାର","ସୋମବାର","ମଙà­à¬—ଳବାର","ବà­à¬§à¬¬à¬¾à¬°","ଗà­à¬°à­à¬¬à¬¾à¬°","ଶà­à¬•à­à¬°à¬¬à¬¾à¬°","ଶନିବାର"], + namesAbbr: ["ରବି.","ସୋମ.","ମଙà­à¬—ଳ.","ବà­à¬§.","ଗà­à¬°à­.","ଶà­à¬•à­à¬°.","ଶନି."], + namesShort: ["ର","ସୋ","ମ","ବà­","ଗà­","ଶà­","ଶ"] + }, + months: { + names: ["ଜାନà­à­Ÿà¬¾à¬°à­€","ଫà­à¬°à­‡à¬¬à­ƒà­Ÿà¬¾à¬°à­€","ମାରà­à¬šà­à¬š","à¬à¬ªà­à¬°à¬¿à¬²à­\u200c","ମେ","ଜà­à¬¨à­\u200c","ଜà­à¬²à¬¾à¬‡","ଅଗଷà­à¬Ÿ","ସେପà­à¬Ÿà­‡à¬®à­à¬¬à¬°","ଅକà­à¬Ÿà­‹à¬¬à¬°","ନଭେମà­à¬¬à¬°","(ଡିସେମà­à¬¬à¬°",""], + namesAbbr: ["ଜାନà­à­Ÿà¬¾à¬°à­€","ଫà­à¬°à­‡à¬¬à­ƒà­Ÿà¬¾à¬°à­€","ମାରà­à¬šà­à¬š","à¬à¬ªà­à¬°à¬¿à¬²à­\u200c","ମେ","ଜà­à¬¨à­\u200c","ଜà­à¬²à¬¾à¬‡","ଅଗଷà­à¬Ÿ","ସେପà­à¬Ÿà­‡à¬®à­à¬¬à¬°","ଅକà­à¬Ÿà­‹à¬¬à¬°","ନଭେମà­à¬¬à¬°","(ଡିସେମà­à¬¬à¬°",""] + }, + eras: [{"name":"ଖà­à¬°à­€à¬·à­à¬Ÿà¬¾à¬¬à­à¬¦","start":null,"offset":0}], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pa-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pa-IN.js new file mode 100644 index 000000000..dcaab14f1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pa-IN.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture pa-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pa-IN", "default", { + name: "pa-IN", + englishName: "Punjabi (India)", + nativeName: "ਪੰਜਾਬੀ (ਭਾਰਤ)", + language: "pa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ਰà©" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["à¨à¨¤à¨µà¨¾à¨°","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬà©à©±à¨§à¨µà¨¾à¨°","ਵੀਰਵਾਰ","ਸ਼à©à©±à¨•à¨°à¨µà¨¾à¨°","ਸ਼ਨਿੱਚਰਵਾਰ"], + namesAbbr: ["à¨à¨¤.","ਸੋਮ.","ਮੰਗਲ.","ਬà©à©±à¨§.","ਵੀਰ.","ਸ਼à©à¨•à¨°.","ਸ਼ਨਿੱਚਰ."], + namesShort: ["à¨","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] + }, + months: { + names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪà©à¨°à©ˆà¨²","ਮਈ","ਜੂਨ","ਜà©à¨²à¨¾à¨ˆ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], + namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪà©à¨°à©ˆà¨²","ਮਈ","ਜੂਨ","ਜà©à¨²à¨¾à¨ˆ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] + }, + AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], + PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy dddd", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "dd MMMM yyyy dddd tt hh:mm", + F: "dd MMMM yyyy dddd tt hh:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pa.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pa.js new file mode 100644 index 000000000..74cbec275 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pa.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture pa + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pa", "default", { + name: "pa", + englishName: "Punjabi", + nativeName: "ਪੰਜਾਬੀ", + language: "pa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ਰà©" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["à¨à¨¤à¨µà¨¾à¨°","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬà©à©±à¨§à¨µà¨¾à¨°","ਵੀਰਵਾਰ","ਸ਼à©à©±à¨•à¨°à¨µà¨¾à¨°","ਸ਼ਨਿੱਚਰਵਾਰ"], + namesAbbr: ["à¨à¨¤.","ਸੋਮ.","ਮੰਗਲ.","ਬà©à©±à¨§.","ਵੀਰ.","ਸ਼à©à¨•à¨°.","ਸ਼ਨਿੱਚਰ."], + namesShort: ["à¨","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] + }, + months: { + names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪà©à¨°à©ˆà¨²","ਮਈ","ਜੂਨ","ਜà©à¨²à¨¾à¨ˆ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], + namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪà©à¨°à©ˆà¨²","ਮਈ","ਜੂਨ","ਜà©à¨²à¨¾à¨ˆ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] + }, + AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], + PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy dddd", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "dd MMMM yyyy dddd tt hh:mm", + F: "dd MMMM yyyy dddd tt hh:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pl-PL.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pl-PL.js new file mode 100644 index 000000000..23a304027 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pl-PL.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture pl-PL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pl-PL", "default", { + name: "pl-PL", + englishName: "Polish (Poland)", + nativeName: "polski (Polska)", + language: "pl", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nie jest liczbÄ…", + negativeInfinity: "-nieskoÅ„czoność", + positiveInfinity: "+nieskoÅ„czoność", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "zÅ‚" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["niedziela","poniedziaÅ‚ek","wtorek","Å›roda","czwartek","piÄ…tek","sobota"], + namesAbbr: ["N","Pn","Wt","Åšr","Cz","Pt","So"], + namesShort: ["N","Pn","Wt","Åšr","Cz","Pt","So"] + }, + months: { + names: ["styczeÅ„","luty","marzec","kwiecieÅ„","maj","czerwiec","lipiec","sierpieÅ„","wrzesieÅ„","październik","listopad","grudzieÅ„",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + monthsGenitive: { + names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrzeÅ›nia","października","listopada","grudnia",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pl.js new file mode 100644 index 000000000..1df240bd3 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pl.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture pl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pl", "default", { + name: "pl", + englishName: "Polish", + nativeName: "polski", + language: "pl", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nie jest liczbÄ…", + negativeInfinity: "-nieskoÅ„czoność", + positiveInfinity: "+nieskoÅ„czoność", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "zÅ‚" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["niedziela","poniedziaÅ‚ek","wtorek","Å›roda","czwartek","piÄ…tek","sobota"], + namesAbbr: ["N","Pn","Wt","Åšr","Cz","Pt","So"], + namesShort: ["N","Pn","Wt","Åšr","Cz","Pt","So"] + }, + months: { + names: ["styczeÅ„","luty","marzec","kwiecieÅ„","maj","czerwiec","lipiec","sierpieÅ„","wrzesieÅ„","październik","listopad","grudzieÅ„",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + monthsGenitive: { + names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrzeÅ›nia","października","listopada","grudnia",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.prs-AF.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.prs-AF.js new file mode 100644 index 000000000..b50d2112b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.prs-AF.js @@ -0,0 +1,174 @@ +/* + * Globalize Culture prs-AF + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "prs-AF", "default", { + name: "prs-AF", + englishName: "Dari (Afghanistan)", + nativeName: "درى (اÙغانستان)", + language: "prs", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + symbol: "Ø‹" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 5, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 5, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","ليندÛ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","ليندÛ","مرغومى",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"Ù„.Ù‡","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.prs.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.prs.js new file mode 100644 index 000000000..aaf297baa --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.prs.js @@ -0,0 +1,174 @@ +/* + * Globalize Culture prs + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "prs", "default", { + name: "prs", + englishName: "Dari", + nativeName: "درى", + language: "prs", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + symbol: "Ø‹" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 5, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 5, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","ليندÛ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","ليندÛ","مرغومى",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"Ù„.Ù‡","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ps-AF.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ps-AF.js new file mode 100644 index 000000000..bf38c1bcd --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ps-AF.js @@ -0,0 +1,176 @@ +/* + * Globalize Culture ps-AF + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ps-AF", "default", { + name: "ps-AF", + englishName: "Pashto (Afghanistan)", + nativeName: "پښتو (اÙغانستان)", + language: "ps", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": "ØŒ", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": "ØŒ", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + ",": "Ù¬", + ".": "Ù«", + symbol: "Ø‹" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","لنڈ Û","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا Úš","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","لنڈ Û","مرغومى",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"Ù„.Ù‡","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ps.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ps.js new file mode 100644 index 000000000..9220a759a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ps.js @@ -0,0 +1,176 @@ +/* + * Globalize Culture ps + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ps", "default", { + name: "ps", + englishName: "Pashto", + nativeName: "پښتو", + language: "ps", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": "ØŒ", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": "ØŒ", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + ",": "Ù¬", + ".": "Ù«", + symbol: "Ø‹" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","لنڈ Û","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا Úš","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","لنڈ Û","مرغومى",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"Ù„.Ù‡","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt-BR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt-BR.js new file mode 100644 index 000000000..c9a132190 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt-BR.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture pt-BR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pt-BR", "default", { + name: "pt-BR", + englishName: "Portuguese (Brazil)", + nativeName: "Português (Brasil)", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "R$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], + namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt-PT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt-PT.js new file mode 100644 index 000000000..67a957f3e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt-PT.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture pt-PT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pt-PT", "default", { + name: "pt-PT", + englishName: "Portuguese (Portugal)", + nativeName: "português (Portugal)", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""], + namesAbbr: ["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "d/M", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt.js new file mode 100644 index 000000000..45cbbff6a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.pt.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture pt + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "pt", "default", { + name: "pt", + englishName: "Portuguese", + nativeName: "Português", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "R$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], + namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.qut-GT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.qut-GT.js new file mode 100644 index 000000000..40f86587e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.qut-GT.js @@ -0,0 +1,69 @@ +/* + * Globalize Culture qut-GT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "qut-GT", "default", { + name: "qut-GT", + englishName: "K'iche (Guatemala)", + nativeName: "K'iche (Guatemala)", + language: "qut", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], + namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], + namesShort: ["ju","ka","ox","ka","jo","wa","wu"] + }, + months: { + names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], + namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.qut.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.qut.js new file mode 100644 index 000000000..6d6569d13 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.qut.js @@ -0,0 +1,69 @@ +/* + * Globalize Culture qut + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "qut", "default", { + name: "qut", + englishName: "K'iche", + nativeName: "K'iche", + language: "qut", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], + namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], + namesShort: ["ju","ka","ox","ka","jo","wa","wu"] + }, + months: { + names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], + namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-BO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-BO.js new file mode 100644 index 000000000..72a80e682 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-BO.js @@ -0,0 +1,74 @@ +/* + * Globalize Culture quz-BO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "quz-BO", "default", { + name: "quz-BO", + englishName: "Quechua (Bolivia)", + nativeName: "runasimi (Qullasuyu)", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-EC.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-EC.js new file mode 100644 index 000000000..30c4b2f49 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-EC.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture quz-EC + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "quz-EC", "default", { + name: "quz-EC", + englishName: "Quechua (Ecuador)", + nativeName: "runasimi (Ecuador)", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-PE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-PE.js new file mode 100644 index 000000000..e98b31002 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz-PE.js @@ -0,0 +1,68 @@ +/* + * Globalize Culture quz-PE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "quz-PE", "default", { + name: "quz-PE", + englishName: "Quechua (Peru)", + nativeName: "runasimi (Piruw)", + language: "quz", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$ -n","$ n"], + symbol: "S/." + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz.js new file mode 100644 index 000000000..705134da6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.quz.js @@ -0,0 +1,74 @@ +/* + * Globalize Culture quz + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "quz", "default", { + name: "quz", + englishName: "Quechua", + nativeName: "runasimi", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rm-CH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rm-CH.js new file mode 100644 index 000000000..bac6d143d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rm-CH.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture rm-CH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "rm-CH", "default", { + name: "rm-CH", + englishName: "Romansh (Switzerland)", + nativeName: "Rumantsch (Svizra)", + language: "rm", + numberFormat: { + ",": "'", + "NaN": "betg def.", + negativeInfinity: "-infinit", + positiveInfinity: "+infinit", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], + namesAbbr: ["du","gli","ma","me","gie","ve","so"], + namesShort: ["du","gli","ma","me","gie","ve","so"] + }, + months: { + names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], + namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"s. Cr.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d MMMM yyyy HH:mm", + F: "dddd, d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rm.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rm.js new file mode 100644 index 000000000..761118dd8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rm.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture rm + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "rm", "default", { + name: "rm", + englishName: "Romansh", + nativeName: "Rumantsch", + language: "rm", + numberFormat: { + ",": "'", + "NaN": "betg def.", + negativeInfinity: "-infinit", + positiveInfinity: "+infinit", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], + namesAbbr: ["du","gli","ma","me","gie","ve","so"], + namesShort: ["du","gli","ma","me","gie","ve","so"] + }, + months: { + names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], + namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"s. Cr.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d MMMM yyyy HH:mm", + F: "dddd, d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ro-RO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ro-RO.js new file mode 100644 index 000000000..f677ccf8c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ro-RO.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture ro-RO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ro-RO", "default", { + name: "ro-RO", + englishName: "Romanian (Romania)", + nativeName: "română (România)", + language: "ro", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "lei" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["duminică","luni","marÅ£i","miercuri","joi","vineri","sâmbătă"], + namesAbbr: ["D","L","Ma","Mi","J","V","S"], + namesShort: ["D","L","Ma","Mi","J","V","S"] + }, + months: { + names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], + namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ro.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ro.js new file mode 100644 index 000000000..3d5ac20b6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ro.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture ro + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ro", "default", { + name: "ro", + englishName: "Romanian", + nativeName: "română", + language: "ro", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "lei" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["duminică","luni","marÅ£i","miercuri","joi","vineri","sâmbătă"], + namesAbbr: ["D","L","Ma","Mi","J","V","S"], + namesShort: ["D","L","Ma","Mi","J","V","S"] + }, + months: { + names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], + namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ru-RU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ru-RU.js new file mode 100644 index 000000000..5946b15ce --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ru-RU.js @@ -0,0 +1,82 @@ +/* + * Globalize Culture ru-RU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ru-RU", "default", { + name: "ru-RU", + englishName: "Russian (Russia)", + nativeName: "руÑÑкий (РоÑÑиÑ)", + language: "ru", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["воÑкреÑенье","понедельник","вторник","Ñреда","четверг","пÑтница","Ñуббота"], + namesAbbr: ["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"], + namesShort: ["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Ñнв","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + monthsGenitive: { + names: ["ÑнварÑ","февралÑ","марта","апрелÑ","маÑ","июнÑ","июлÑ","авгуÑта","ÑентÑбрÑ","октÑбрÑ","ноÑбрÑ","декабрÑ",""], + namesAbbr: ["Ñнв","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'г.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'г.' H:mm", + F: "d MMMM yyyy 'г.' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ru.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ru.js new file mode 100644 index 000000000..23d54fa7a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ru.js @@ -0,0 +1,82 @@ +/* + * Globalize Culture ru + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ru", "default", { + name: "ru", + englishName: "Russian", + nativeName: "руÑÑкий", + language: "ru", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["воÑкреÑенье","понедельник","вторник","Ñреда","четверг","пÑтница","Ñуббота"], + namesAbbr: ["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"], + namesShort: ["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Ñнв","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + monthsGenitive: { + names: ["ÑнварÑ","февралÑ","марта","апрелÑ","маÑ","июнÑ","июлÑ","авгуÑта","ÑентÑбрÑ","октÑбрÑ","ноÑбрÑ","декабрÑ",""], + namesAbbr: ["Ñнв","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'г.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'г.' H:mm", + F: "d MMMM yyyy 'г.' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rw-RW.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rw-RW.js new file mode 100644 index 000000000..6052f4df0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rw-RW.js @@ -0,0 +1,65 @@ +/* + * Globalize Culture rw-RW + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "rw-RW", "default", { + name: "rw-RW", + englishName: "Kinyarwanda (Rwanda)", + nativeName: "Kinyarwanda (Rwanda)", + language: "rw", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "RWF" + } + }, + calendars: { + standard: { + days: { + names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], + namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], + namesShort: ["mb","ka","ga","ka","ga","ga","cy"] + }, + months: { + names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], + namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] + }, + AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], + PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], + eras: [{"name":"AD","start":null,"offset":0}] + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rw.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rw.js new file mode 100644 index 000000000..8d63d977b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.rw.js @@ -0,0 +1,65 @@ +/* + * Globalize Culture rw + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "rw", "default", { + name: "rw", + englishName: "Kinyarwanda", + nativeName: "Kinyarwanda", + language: "rw", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "RWF" + } + }, + calendars: { + standard: { + days: { + names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], + namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], + namesShort: ["mb","ka","ga","ka","ga","ga","cy"] + }, + months: { + names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], + namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] + }, + AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], + PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], + eras: [{"name":"AD","start":null,"offset":0}] + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sa-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sa-IN.js new file mode 100644 index 000000000..b94958d16 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sa-IN.js @@ -0,0 +1,71 @@ +/* + * Globalize Culture sa-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sa-IN", "default", { + name: "sa-IN", + englishName: "Sanskrit (India)", + nativeName: "संसà¥à¤•à¥ƒà¤¤ (भारतमà¥)", + language: "sa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["रविवासरः","सोमवासरः","मङà¥à¤—लवासरः","बà¥à¤§à¤µà¤¾à¤¸à¤°à¤ƒ","गà¥à¤°à¥à¤µà¤¾à¤¸à¤°à¤ƒ","शà¥à¤•à¥à¤°à¤µà¤¾à¤¸à¤°à¤ƒ","शनिवासरः"], + namesAbbr: ["रविवासरः","सोमवासरः","मङà¥à¤—लवासरः","बà¥à¤§à¤µà¤¾à¤¸à¤°à¤ƒ","गà¥à¤°à¥à¤µà¤¾à¤¸à¤°à¤ƒ","शà¥à¤•à¥à¤°à¤µà¤¾à¤¸à¤°à¤ƒ","शनिवासरः"], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""], + namesAbbr: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""] + }, + AM: ["पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨"], + PM: ["अपराहà¥à¤¨","अपराहà¥à¤¨","अपराहà¥à¤¨"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sa.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sa.js new file mode 100644 index 000000000..059f4bf55 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sa.js @@ -0,0 +1,71 @@ +/* + * Globalize Culture sa + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sa", "default", { + name: "sa", + englishName: "Sanskrit", + nativeName: "संसà¥à¤•à¥ƒà¤¤", + language: "sa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["रविवासरः","सोमवासरः","मङà¥à¤—लवासरः","बà¥à¤§à¤µà¤¾à¤¸à¤°à¤ƒ","गà¥à¤°à¥à¤µà¤¾à¤¸à¤°à¤ƒ","शà¥à¤•à¥à¤°à¤µà¤¾à¤¸à¤°à¤ƒ","शनिवासरः"], + namesAbbr: ["रविवासरः","सोमवासरः","मङà¥à¤—लवासरः","बà¥à¤§à¤µà¤¾à¤¸à¤°à¤ƒ","गà¥à¤°à¥à¤µà¤¾à¤¸à¤°à¤ƒ","शà¥à¤•à¥à¤°à¤µà¤¾à¤¸à¤°à¤ƒ","शनिवासरः"], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""], + namesAbbr: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""] + }, + AM: ["पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨"], + PM: ["अपराहà¥à¤¨","अपराहà¥à¤¨","अपराहà¥à¤¨"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sah-RU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sah-RU.js new file mode 100644 index 000000000..7d1ae37e2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sah-RU.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture sah-RU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sah-RU", "default", { + name: "sah-RU", + englishName: "Yakut (Russia)", + nativeName: "Ñаха (РоÑÑиÑ)", + language: "sah", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NAN", + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "Ñ." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["баÑкыһыанньа","бÑнидиÑнньик","оптуорунньук","ÑÑÑ€ÑдÑ","чÑппиÑÑ€","бÑÑтинÑÑ","Ñубуота"], + namesAbbr: ["БÑ","Бн","Оп","Ср","Чп","Бт","Сб"], + namesShort: ["БÑ","Бн","Оп","Ср","Чп","Бт","Сб"] + }, + months: { + names: ["ТохÑунньу","Олунньу","Кулун тутар","ÐœÑƒÑƒÑ ÑƒÑтар","Ыам ыйа","БÑÑ Ñ‹Ð¹Ð°","От ыйа","Ðтырдьах ыйа","Балаҕан ыйа","Ðлтынньы","СÑтинньи","ÐÑ…Ñынньы",""], + namesAbbr: ["Ñ‚Ñ…Ñ","олн","кул","мÑÑ‚","ыам","бÑÑ","отй","атр","блҕ","алт","Ñтн","ахÑ",""] + }, + monthsGenitive: { + names: ["тохÑунньу","олунньу","кулун тутар","Ð¼ÑƒÑƒÑ ÑƒÑтар","ыам ыйын","бÑÑ Ñ‹Ð¹Ñ‹Ð½","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","ÑÑтинньи","ахÑынньы",""], + namesAbbr: ["Ñ‚Ñ…Ñ","олн","кул","мÑÑ‚","ыам","бÑÑ","отй","атр","блҕ","алт","Ñтн","ахÑ",""] + }, + AM: null, + PM: null, + patterns: { + d: "MM.dd.yyyy", + D: "MMMM d yyyy 'Ñ.'", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d yyyy 'Ñ.' H:mm", + F: "MMMM d yyyy 'Ñ.' H:mm:ss", + Y: "MMMM yyyy 'Ñ.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sah.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sah.js new file mode 100644 index 000000000..4ad841be0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sah.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture sah + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sah", "default", { + name: "sah", + englishName: "Yakut", + nativeName: "Ñаха", + language: "sah", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NAN", + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "Ñ." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["баÑкыһыанньа","бÑнидиÑнньик","оптуорунньук","ÑÑÑ€ÑдÑ","чÑппиÑÑ€","бÑÑтинÑÑ","Ñубуота"], + namesAbbr: ["БÑ","Бн","Оп","Ср","Чп","Бт","Сб"], + namesShort: ["БÑ","Бн","Оп","Ср","Чп","Бт","Сб"] + }, + months: { + names: ["ТохÑунньу","Олунньу","Кулун тутар","ÐœÑƒÑƒÑ ÑƒÑтар","Ыам ыйа","БÑÑ Ñ‹Ð¹Ð°","От ыйа","Ðтырдьах ыйа","Балаҕан ыйа","Ðлтынньы","СÑтинньи","ÐÑ…Ñынньы",""], + namesAbbr: ["Ñ‚Ñ…Ñ","олн","кул","мÑÑ‚","ыам","бÑÑ","отй","атр","блҕ","алт","Ñтн","ахÑ",""] + }, + monthsGenitive: { + names: ["тохÑунньу","олунньу","кулун тутар","Ð¼ÑƒÑƒÑ ÑƒÑтар","ыам ыйын","бÑÑ Ñ‹Ð¹Ñ‹Ð½","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","ÑÑтинньи","ахÑынньы",""], + namesAbbr: ["Ñ‚Ñ…Ñ","олн","кул","мÑÑ‚","ыам","бÑÑ","отй","атр","блҕ","алт","Ñтн","ахÑ",""] + }, + AM: null, + PM: null, + patterns: { + d: "MM.dd.yyyy", + D: "MMMM d yyyy 'Ñ.'", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d yyyy 'Ñ.' H:mm", + F: "MMMM d yyyy 'Ñ.' H:mm:ss", + Y: "MMMM yyyy 'Ñ.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-FI.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-FI.js new file mode 100644 index 000000000..b270fa580 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-FI.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture se-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "se-FI", "default", { + name: "se-FI", + englishName: "Sami, Northern (Finland)", + nativeName: "davvisámegiella (Suopma)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maÅ‹Å‹ebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maÅ‹","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["oÄ‘Ä‘ajagemánnu","guovvamánnu","njukÄamánnu","cuoÅ‹ománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","ÄakÄamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ajagimánu","guovvamánu","njukÄamánu","cuoÅ‹ománu","miessemánu","geassemánu","suoidnemánu","borgemánu","ÄakÄamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. b. 'yyyy H:mm", + F: "MMMM d'. b. 'yyyy H:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-NO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-NO.js new file mode 100644 index 000000000..46f387f49 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-NO.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture se-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "se-NO", "default", { + name: "se-NO", + englishName: "Sami, Northern (Norway)", + nativeName: "davvisámegiella (Norga)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maÅ‹Å‹ebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maÅ‹","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["oÄ‘Ä‘ajagemánnu","guovvamánnu","njukÄamánnu","cuoÅ‹ománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","ÄakÄamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ajagimánu","guovvamánu","njukÄamánu","cuoÅ‹ománu","miessemánu","geassemánu","suoidnemánu","borgemánu","ÄakÄamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-SE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-SE.js new file mode 100644 index 000000000..fd4ec323f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se-SE.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture se-SE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "se-SE", "default", { + name: "se-SE", + englishName: "Sami, Northern (Sweden)", + nativeName: "davvisámegiella (Ruoŧŧa)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sotnabeaivi","mánnodat","disdat","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","mán","dis","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["oÄ‘Ä‘ajagemánnu","guovvamánnu","njukÄamánnu","cuoÅ‹ománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","ÄakÄamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ajagimánu","guovvamánu","njukÄamánu","cuoÅ‹ománu","miessemánu","geassemánu","suoidnemánu","borgemánu","ÄakÄamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se.js new file mode 100644 index 000000000..9a5dcec64 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.se.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture se + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "se", "default", { + name: "se", + englishName: "Sami (Northern)", + nativeName: "davvisámegiella", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maÅ‹Å‹ebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maÅ‹","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["oÄ‘Ä‘ajagemánnu","guovvamánnu","njukÄamánnu","cuoÅ‹ománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","ÄakÄamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ajagimánu","guovvamánu","njukÄamánu","cuoÅ‹ománu","miessemánu","geassemánu","suoidnemánu","borgemánu","ÄakÄamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.si-LK.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.si-LK.js new file mode 100644 index 000000000..a331625f7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.si-LK.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture si-LK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "si-LK", "default", { + name: "si-LK", + englishName: "Sinhala (Sri Lanka)", + nativeName: "සිංහල (à·à·Š\u200dරී ලංකà·)", + language: "si", + numberFormat: { + groupSizes: [3,2], + negativeInfinity: "-අනන්තය", + positiveInfinity: "අනන්තය", + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["($ n)","$ n"], + symbol: "රු." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ඉරිදà·","සඳුදà·","අඟහරුවà·à¶¯à·","බදà·à¶¯à·","බ්\u200dරහස්පතින්දà·","සිකුරà·à¶¯à·","සෙනසුරà·à¶¯à·"], + namesAbbr: ["ඉරිදà·","සඳුදà·","කුජදà·","බුදදà·","ගුරුදà·","කිවිදà·","à·à¶±à·’දà·"], + namesShort: ["ඉ","à·ƒ","අ","බ","බ්\u200dර","සි","සෙ"] + }, + months: { + names: ["ජනවà·à¶»à·’","පෙබරවà·à¶»à·’","මà·à¶»à·Šà¶­à·”","අ\u200cප්\u200dරේල්","මà·à¶ºà·’","ජූනි","ජූලි","අ\u200cගà·à·ƒà·Šà¶­à·”","à·ƒà·à¶´à·Šà¶­à·à¶¸à·Šà¶¶à¶»à·Š","ඔක්තà·à¶¶à¶»à·Š","නොවà·à¶¸à·Šà¶¶à¶»à·Š","දෙසà·à¶¸à·Šà¶¶à¶»à·Š",""], + namesAbbr: ["ජන.","පෙබ.","මà·à¶»à·Šà¶­à·”.","අප්\u200dරේල්.","මà·à¶ºà·’.","ජූනි.","ජූලි.","අගà·.","à·ƒà·à¶´à·Š.","ඔක්.","නොවà·.","දෙසà·.",""] + }, + AM: ["පෙ.à·€.","පෙ.à·€.","පෙ.à·€."], + PM: ["ප.à·€.","ප.à·€.","ප.à·€."], + eras: [{"name":"ක්\u200dරි.à·€.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd", + f: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd h:mm tt", + F: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd h:mm:ss tt", + Y: "yyyy MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.si.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.si.js new file mode 100644 index 000000000..c9141e250 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.si.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture si + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "si", "default", { + name: "si", + englishName: "Sinhala", + nativeName: "සිංහල", + language: "si", + numberFormat: { + groupSizes: [3,2], + negativeInfinity: "-අනන්තය", + positiveInfinity: "අනන්තය", + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["($ n)","$ n"], + symbol: "රු." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ඉරිදà·","සඳුදà·","අඟහරුවà·à¶¯à·","බදà·à¶¯à·","බ්\u200dරහස්පතින්දà·","සිකුරà·à¶¯à·","සෙනසුරà·à¶¯à·"], + namesAbbr: ["ඉරිදà·","සඳුදà·","කුජදà·","බුදදà·","ගුරුදà·","කිවිදà·","à·à¶±à·’දà·"], + namesShort: ["ඉ","à·ƒ","අ","බ","බ්\u200dර","සි","සෙ"] + }, + months: { + names: ["ජනවà·à¶»à·’","පෙබරවà·à¶»à·’","මà·à¶»à·Šà¶­à·”","අ\u200cප්\u200dරේල්","මà·à¶ºà·’","ජූනි","ජූලි","අ\u200cගà·à·ƒà·Šà¶­à·”","à·ƒà·à¶´à·Šà¶­à·à¶¸à·Šà¶¶à¶»à·Š","ඔක්තà·à¶¶à¶»à·Š","නොවà·à¶¸à·Šà¶¶à¶»à·Š","දෙසà·à¶¸à·Šà¶¶à¶»à·Š",""], + namesAbbr: ["ජන.","පෙබ.","මà·à¶»à·Šà¶­à·”.","අප්\u200dරේල්.","මà·à¶ºà·’.","ජූනි.","ජූලි.","අගà·.","à·ƒà·à¶´à·Š.","ඔක්.","නොවà·.","දෙසà·.",""] + }, + AM: ["පෙ.à·€.","පෙ.à·€.","පෙ.à·€."], + PM: ["ප.à·€.","ප.à·€.","ප.à·€."], + eras: [{"name":"ක්\u200dරි.à·€.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd", + f: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd h:mm tt", + F: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd h:mm:ss tt", + Y: "yyyy MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sk-SK.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sk-SK.js new file mode 100644 index 000000000..feff22d51 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sk-SK.js @@ -0,0 +1,85 @@ +/* + * Globalize Culture sk-SK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sk-SK", "default", { + name: "sk-SK", + englishName: "Slovak (Slovakia)", + nativeName: "slovenÄina (Slovenská republika)", + language: "sk", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Nie je Äíslo", + negativeInfinity: "-nekoneÄno", + positiveInfinity: "+nekoneÄno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["nedeľa","pondelok","utorok","streda","Å¡tvrtok","piatok","sobota"], + namesAbbr: ["ne","po","ut","st","Å¡t","pi","so"], + namesShort: ["ne","po","ut","st","Å¡t","pi","so"] + }, + months: { + names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sk.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sk.js new file mode 100644 index 000000000..3cd66db99 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sk.js @@ -0,0 +1,85 @@ +/* + * Globalize Culture sk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sk", "default", { + name: "sk", + englishName: "Slovak", + nativeName: "slovenÄina", + language: "sk", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Nie je Äíslo", + negativeInfinity: "-nekoneÄno", + positiveInfinity: "+nekoneÄno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["nedeľa","pondelok","utorok","streda","Å¡tvrtok","piatok","sobota"], + namesAbbr: ["ne","po","ut","st","Å¡t","pi","so"], + namesShort: ["ne","po","ut","st","Å¡t","pi","so"] + }, + months: { + names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sl-SI.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sl-SI.js new file mode 100644 index 000000000..7ddc54aa5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sl-SI.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture sl-SI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sl-SI", "default", { + name: "sl-SI", + englishName: "Slovenian (Slovenia)", + nativeName: "slovenski (Slovenija)", + language: "sl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-neskonÄnost", + positiveInfinity: "neskonÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljek","torek","sreda","Äetrtek","petek","sobota"], + namesAbbr: ["ned","pon","tor","sre","Äet","pet","sob"], + namesShort: ["ne","po","to","sr","Äe","pe","so"] + }, + months: { + names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sl.js new file mode 100644 index 000000000..a75dbdedc --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sl.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture sl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sl", "default", { + name: "sl", + englishName: "Slovenian", + nativeName: "slovenski", + language: "sl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-neskonÄnost", + positiveInfinity: "neskonÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljek","torek","sreda","Äetrtek","petek","sobota"], + namesAbbr: ["ned","pon","tor","sre","Äet","pet","sob"], + namesShort: ["ne","po","to","sr","Äe","pe","so"] + }, + months: { + names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma-NO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma-NO.js new file mode 100644 index 000000000..4954494e5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma-NO.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture sma-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sma-NO", "default", { + name: "sma-NO", + englishName: "Sami, Southern (Norway)", + nativeName: "Ã¥arjelsaemiengiele (Nöörje)", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["aejlege","mÃ¥anta","dæjsta","gaskevÃ¥hkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","mÃ¥a","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma-SE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma-SE.js new file mode 100644 index 000000000..d6c02c028 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma-SE.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sma-SE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sma-SE", "default", { + name: "sma-SE", + englishName: "Sami, Southern (Sweden)", + nativeName: "Ã¥arjelsaemiengiele (Sveerje)", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["aejlege","mÃ¥anta","dæjsta","gaskevÃ¥hkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","mÃ¥a","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma.js new file mode 100644 index 000000000..5b8935647 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sma.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sma + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sma", "default", { + name: "sma", + englishName: "Sami (Southern)", + nativeName: "Ã¥arjelsaemiengiele", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["aejlege","mÃ¥anta","dæjsta","gaskevÃ¥hkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","mÃ¥a","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj-NO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj-NO.js new file mode 100644 index 000000000..f6f13823e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj-NO.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture smj-NO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smj-NO", "default", { + name: "smj-NO", + englishName: "Sami, Lule (Norway)", + nativeName: "julevusámegiella (Vuodna)", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sÃ¥dnÃ¥biejvve","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["sÃ¥d","mán","dis","gas","duor","bier","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["Ã¥dÃ¥jakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bÃ¥rggemánno","ragátmánno","gÃ¥lgÃ¥dismánno","basádismánno","javllamánno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + monthsGenitive: { + names: ["Ã¥dÃ¥jakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bÃ¥rggemáno","ragátmáno","gÃ¥lgÃ¥dismáno","basádismáno","javllamáno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj-SE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj-SE.js new file mode 100644 index 000000000..b7ee88aff --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj-SE.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture smj-SE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smj-SE", "default", { + name: "smj-SE", + englishName: "Sami, Lule (Sweden)", + nativeName: "julevusámegiella (Svierik)", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], + namesShort: ["á","m","d","g","d","b","l"] + }, + months: { + names: ["Ã¥dÃ¥jakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bÃ¥rggemánno","ragátmánno","gÃ¥lgÃ¥dismánno","basádismánno","javllamánno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + monthsGenitive: { + names: ["Ã¥dÃ¥jakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bÃ¥rggemáno","ragátmáno","gÃ¥lgÃ¥dismáno","basádismáno","javllamáno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj.js new file mode 100644 index 000000000..021f9a315 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smj.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture smj + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smj", "default", { + name: "smj", + englishName: "Sami (Lule)", + nativeName: "julevusámegiella", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], + namesShort: ["á","m","d","g","d","b","l"] + }, + months: { + names: ["Ã¥dÃ¥jakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bÃ¥rggemánno","ragátmánno","gÃ¥lgÃ¥dismánno","basádismánno","javllamánno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + monthsGenitive: { + names: ["Ã¥dÃ¥jakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bÃ¥rggemáno","ragátmáno","gÃ¥lgÃ¥dismáno","basádismáno","javllamáno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smn-FI.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smn-FI.js new file mode 100644 index 000000000..ce73bd3d4 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smn-FI.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture smn-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smn-FI", "default", { + name: "smn-FI", + englishName: "Sami, Inari (Finland)", + nativeName: "sämikielâ (Suomâ)", + language: "smn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], + namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], + namesShort: ["p","v","m","k","t","v","l"] + }, + months: { + names: ["uđđâivemáánu","kuovâmáánu","njuhÄâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","ÄohÄâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], + namesAbbr: ["uÄ‘iv","kuov","njuh","cuoÅ‹","vyes","kesi","syei","porg","Äoh","roov","ska","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smn.js new file mode 100644 index 000000000..aba89e0e6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.smn.js @@ -0,0 +1,76 @@ +/* + * Globalize Culture smn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "smn", "default", { + name: "smn", + englishName: "Sami (Inari)", + nativeName: "sämikielâ", + language: "smn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], + namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], + namesShort: ["p","v","m","k","t","v","l"] + }, + months: { + names: ["uđđâivemáánu","kuovâmáánu","njuhÄâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","ÄohÄâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], + namesAbbr: ["uÄ‘iv","kuov","njuh","cuoÅ‹","vyes","kesi","syei","porg","Äoh","roov","ska","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sms-FI.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sms-FI.js new file mode 100644 index 000000000..d5a23e12d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sms-FI.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sms-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sms-FI", "default", { + name: "sms-FI", + englishName: "Sami, Skolt (Finland)", + nativeName: "sääm´ǩiõll (Lää´ddjânnam)", + language: "sms", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], + namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], + namesShort: ["p","v","m","s","n","p","s"] + }, + months: { + names: ["oÄ‘Ä‘ee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhÄÄmään","vue´ssmään","Ç©ie´ssmään","suei´nnmään","på´rǧǧmään","ÄõhÄÄmään","kÃ¥lggmään","skamm´mään","rosttovmään",""], + namesAbbr: ["oÄ‘jm","tä´lvv","pâzl","njuh","vue","Ç©ie","suei","på´r","Äõh","kÃ¥lg","ska","rost",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhÄÄmannu","vue´ssmannu","Ç©ie´ssmannu","suei´nnmannu","på´rǧǧmannu","ÄõhÄÄmannu","kÃ¥lggmannu","skamm´mannu","rosttovmannu",""], + namesAbbr: ["oÄ‘jm","tä´lvv","pâzl","njuh","vue","Ç©ie","suei","på´r","Äõh","kÃ¥lg","ska","rost",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sms.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sms.js new file mode 100644 index 000000000..b5bf2b92a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sms.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sms + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sms", "default", { + name: "sms", + englishName: "Sami (Skolt)", + nativeName: "sääm´ǩiõll", + language: "sms", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], + namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], + namesShort: ["p","v","m","s","n","p","s"] + }, + months: { + names: ["oÄ‘Ä‘ee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhÄÄmään","vue´ssmään","Ç©ie´ssmään","suei´nnmään","på´rǧǧmään","ÄõhÄÄmään","kÃ¥lggmään","skamm´mään","rosttovmään",""], + namesAbbr: ["oÄ‘jm","tä´lvv","pâzl","njuh","vue","Ç©ie","suei","på´r","Äõh","kÃ¥lg","ska","rost",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhÄÄmannu","vue´ssmannu","Ç©ie´ssmannu","suei´nnmannu","på´rǧǧmannu","ÄõhÄÄmannu","kÃ¥lggmannu","skamm´mannu","rosttovmannu",""], + namesAbbr: ["oÄ‘jm","tä´lvv","pâzl","njuh","vue","Ç©ie","suei","på´r","Äõh","kÃ¥lg","ska","rost",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sq-AL.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sq-AL.js new file mode 100644 index 000000000..b5c770d6e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sq-AL.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture sq-AL + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sq-AL", "default", { + name: "sq-AL", + englishName: "Albanian (Albania)", + nativeName: "shqipe (Shqipëria)", + language: "sq", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-infinit", + positiveInfinity: "infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": ".", + ".": ",", + symbol: "Lek" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], + namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], + namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] + }, + months: { + names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], + namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] + }, + AM: ["PD","pd","PD"], + PM: ["MD","md","MD"], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy-MM-dd", + t: "h:mm.tt", + T: "h:mm:ss.tt", + f: "yyyy-MM-dd h:mm.tt", + F: "yyyy-MM-dd h:mm:ss.tt", + Y: "yyyy-MM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sq.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sq.js new file mode 100644 index 000000000..d6a8f9996 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sq.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture sq + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sq", "default", { + name: "sq", + englishName: "Albanian", + nativeName: "shqipe", + language: "sq", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-infinit", + positiveInfinity: "infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": ".", + ".": ",", + symbol: "Lek" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], + namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], + namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] + }, + months: { + names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], + namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] + }, + AM: ["PD","pd","PD"], + PM: ["MD","md","MD"], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy-MM-dd", + t: "h:mm.tt", + T: "h:mm:ss.tt", + f: "yyyy-MM-dd h:mm.tt", + F: "yyyy-MM-dd h:mm:ss.tt", + Y: "yyyy-MM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-BA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-BA.js new file mode 100644 index 000000000..5d8fc4e29 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-BA.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture sr-Cyrl-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl-BA", "default", { + name: "sr-Cyrl-BA", + englishName: "Serbian (Cyrillic, Bosnia and Herzegovina)", + nativeName: "ÑрпÑки (БоÑна и Херцеговина)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["н","п","у","Ñ","ч","п","Ñ"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-CS.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-CS.js new file mode 100644 index 000000000..475658f23 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-CS.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr-Cyrl-CS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl-CS", "default", { + name: "sr-Cyrl-CS", + englishName: "Serbian (Cyrillic, Serbia and Montenegro (Former))", + nativeName: "ÑрпÑки (Србија и Црна Гора (Претходно))", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["не","по","ут","ÑÑ€","че","пе","Ñу"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-ME.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-ME.js new file mode 100644 index 000000000..99b44a79b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-ME.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr-Cyrl-ME + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl-ME", "default", { + name: "sr-Cyrl-ME", + englishName: "Serbian (Cyrillic, Montenegro)", + nativeName: "ÑрпÑки (Црна Гора)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["не","по","ут","ÑÑ€","че","пе","Ñу"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-RS.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-RS.js new file mode 100644 index 000000000..d5a018115 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl-RS.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr-Cyrl-RS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl-RS", "default", { + name: "sr-Cyrl-RS", + englishName: "Serbian (Cyrillic, Serbia)", + nativeName: "ÑрпÑки (Србија)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["не","по","ут","ÑÑ€","че","пе","Ñу"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl.js new file mode 100644 index 000000000..3b96b8e41 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Cyrl.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Cyrl", "default", { + name: "sr-Cyrl", + englishName: "Serbian (Cyrillic)", + nativeName: "ÑрпÑки", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["не","по","ут","ÑÑ€","че","пе","Ñу"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октоÐ±Ð°Ñ€","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-BA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-BA.js new file mode 100644 index 000000000..32184ae7c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-BA.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture sr-Latn-BA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn-BA", "default", { + name: "sr-Latn-BA", + englishName: "Serbian (Latin, Bosnia and Herzegovina)", + nativeName: "srpski (Bosna i Hercegovina)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-CS.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-CS.js new file mode 100644 index 000000000..741ec2b79 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-CS.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr-Latn-CS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn-CS", "default", { + name: "sr-Latn-CS", + englishName: "Serbian (Latin, Serbia and Montenegro (Former))", + nativeName: "srpski (Srbija i Crna Gora (Prethodno))", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-ME.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-ME.js new file mode 100644 index 000000000..ea98474f5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-ME.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr-Latn-ME + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn-ME", "default", { + name: "sr-Latn-ME", + englishName: "Serbian (Latin, Montenegro)", + nativeName: "srpski (Crna Gora)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-RS.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-RS.js new file mode 100644 index 000000000..f3c373099 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn-RS.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr-Latn-RS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn-RS", "default", { + name: "sr-Latn-RS", + englishName: "Serbian (Latin, Serbia)", + nativeName: "srpski (Srbija)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn.js new file mode 100644 index 000000000..c65797905 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr-Latn.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr-Latn", "default", { + name: "sr-Latn", + englishName: "Serbian (Latin)", + nativeName: "srpski", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr.js new file mode 100644 index 000000000..2d691fe82 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sr.js @@ -0,0 +1,80 @@ +/* + * Globalize Culture sr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sr", "default", { + name: "sr", + englishName: "Serbian", + nativeName: "srpski", + language: "sr", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv-FI.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv-FI.js new file mode 100644 index 000000000..1aa912ea5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv-FI.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture sv-FI + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sv-FI", "default", { + name: "sv-FI", + englishName: "Swedish (Finland)", + nativeName: "svenska (Finland)", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["söndag","mÃ¥ndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","mÃ¥","ti","on","to","fr","lö"], + namesShort: ["sö","mÃ¥","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv-SE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv-SE.js new file mode 100644 index 000000000..5c2c729bd --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv-SE.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture sv-SE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sv-SE", "default", { + name: "sv-SE", + englishName: "Swedish (Sweden)", + nativeName: "svenska (Sverige)", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["söndag","mÃ¥ndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","mÃ¥","ti","on","to","fr","lö"], + namesShort: ["sö","mÃ¥","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv.js new file mode 100644 index 000000000..ed02c2f75 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sv.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture sv + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sv", "default", { + name: "sv", + englishName: "Swedish", + nativeName: "svenska", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["söndag","mÃ¥ndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","mÃ¥","ti","on","to","fr","lö"], + namesShort: ["sö","mÃ¥","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sw-KE.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sw-KE.js new file mode 100644 index 000000000..579e4fafc --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sw-KE.js @@ -0,0 +1,53 @@ +/* + * Globalize Culture sw-KE + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sw-KE", "default", { + name: "sw-KE", + englishName: "Kiswahili (Kenya)", + nativeName: "Kiswahili (Kenya)", + language: "sw", + numberFormat: { + currency: { + symbol: "S" + } + }, + calendars: { + standard: { + days: { + names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], + namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], + namesShort: ["P","T","N","T","A","I","M"] + }, + months: { + names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sw.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sw.js new file mode 100644 index 000000000..14824e909 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.sw.js @@ -0,0 +1,53 @@ +/* + * Globalize Culture sw + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "sw", "default", { + name: "sw", + englishName: "Kiswahili", + nativeName: "Kiswahili", + language: "sw", + numberFormat: { + currency: { + symbol: "S" + } + }, + calendars: { + standard: { + days: { + names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], + namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], + namesShort: ["P","T","N","T","A","I","M"] + }, + months: { + names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.syr-SY.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.syr-SY.js new file mode 100644 index 000000000..b44cf9870 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.syr-SY.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture syr-SY + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "syr-SY", "default", { + name: "syr-SY", + englishName: "Syriac (Syria)", + nativeName: "ܣܘܪÜÜÜ (سوريا)", + language: "syr", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$ n"], + symbol: "Ù„.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["ܚܕ ܒܫܒÜ","ܬܪÜܢ ܒܫܒÜ","ܬܠܬÜ ܒܫܒÜ","ÜܪܒܥÜ ܒܫܒÜ","ܚܡܫÜ ܒܫܒÜ","ܥܪܘܒܬÜ","ܫܒܬÜ"], + namesAbbr: ["\u070fÜ \u070fÜ’Ü«","\u070fܒ \u070fÜ’Ü«","\u070fܓ \u070fÜ’Ü«","\u070fܕ \u070fÜ’Ü«","\u070fܗ \u070fÜ’Ü«","\u070fܥܪܘܒ","\u070fÜ«Ü’"], + namesShort: ["Ü","Ü’","Ü“","Ü•","Ü—","Ü¥","Ü«"] + }, + months: { + names: ["ܟܢܘܢ ÜܚܪÜ","Ü«Ü’Ü›","Üܕܪ","Ü¢Üܣܢ","ÜÜܪ","ܚܙÜܪܢ","ܬܡܘܙ","ÜÜ’","ÜÜܠܘܠ","ܬܫܪÜ ܩܕÜÜ¡","ܬܫܪÜ ÜܚܪÜ","ܟܢܘܢ ܩܕÜÜ¡",""], + namesAbbr: ["\u070fܟܢ \u070fÜ’","Ü«Ü’Ü›","Üܕܪ","Ü¢Üܣܢ","ÜÜܪ","ܚܙÜܪܢ","ܬܡܘܙ","ÜÜ’","ÜÜܠܘܠ","\u070fܬܫ \u070fÜ","\u070fܬܫ \u070fÜ’","\u070fܟܢ \u070fÜ",""] + }, + AM: ["Ü©.Ü›","Ü©.Ü›","Ü©.Ü›"], + PM: ["Ü’.Ü›","Ü’.Ü›","Ü’.Ü›"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.syr.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.syr.js new file mode 100644 index 000000000..2d9f1d2fe --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.syr.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture syr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "syr", "default", { + name: "syr", + englishName: "Syriac", + nativeName: "ܣܘܪÜÜÜ", + language: "syr", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$ n"], + symbol: "Ù„.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["ܚܕ ܒܫܒÜ","ܬܪÜܢ ܒܫܒÜ","ܬܠܬÜ ܒܫܒÜ","ÜܪܒܥÜ ܒܫܒÜ","ܚܡܫÜ ܒܫܒÜ","ܥܪܘܒܬÜ","ܫܒܬÜ"], + namesAbbr: ["\u070fÜ \u070fÜ’Ü«","\u070fܒ \u070fÜ’Ü«","\u070fܓ \u070fÜ’Ü«","\u070fܕ \u070fÜ’Ü«","\u070fܗ \u070fÜ’Ü«","\u070fܥܪܘܒ","\u070fÜ«Ü’"], + namesShort: ["Ü","Ü’","Ü“","Ü•","Ü—","Ü¥","Ü«"] + }, + months: { + names: ["ܟܢܘܢ ÜܚܪÜ","Ü«Ü’Ü›","Üܕܪ","Ü¢Üܣܢ","ÜÜܪ","ܚܙÜܪܢ","ܬܡܘܙ","ÜÜ’","ÜÜܠܘܠ","ܬܫܪÜ ܩܕÜÜ¡","ܬܫܪÜ ÜܚܪÜ","ܟܢܘܢ ܩܕÜÜ¡",""], + namesAbbr: ["\u070fܟܢ \u070fÜ’","Ü«Ü’Ü›","Üܕܪ","Ü¢Üܣܢ","ÜÜܪ","ܚܙÜܪܢ","ܬܡܘܙ","ÜÜ’","ÜÜܠܘܠ","\u070fܬܫ \u070fÜ","\u070fܬܫ \u070fÜ’","\u070fܟܢ \u070fÜ",""] + }, + AM: ["Ü©.Ü›","Ü©.Ü›","Ü©.Ü›"], + PM: ["Ü’.Ü›","Ü’.Ü›","Ü’.Ü›"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ta-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ta-IN.js new file mode 100644 index 000000000..b9d550acb --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ta-IN.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture ta-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ta-IN", "default", { + name: "ta-IN", + englishName: "Tamil (India)", + nativeName: "தமிழ௠(இநà¯à®¤à®¿à®¯à®¾)", + language: "ta", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ரூ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ஞாயிறà¯à®±à¯à®•à¯à®•à®¿à®´à®®à¯ˆ","திஙà¯à®•à®³à¯à®•à®¿à®´à®®à¯ˆ","செவà¯à®µà®¾à®¯à¯à®•à®¿à®´à®®à¯ˆ","பà¯à®¤à®©à¯à®•à®¿à®´à®®à¯ˆ","வியாழகà¯à®•à®¿à®´à®®à¯ˆ","வெளà¯à®³à®¿à®•à¯à®•à®¿à®´à®®à¯ˆ","சனிகà¯à®•à®¿à®´à®®à¯ˆ"], + namesAbbr: ["ஞாயிறà¯","திஙà¯à®•à®³à¯","செவà¯à®µà®¾à®¯à¯","பà¯à®¤à®©à¯","வியாழனà¯","வெளà¯à®³à®¿","சனி"], + namesShort: ["ஞா","தி","செ","பà¯","வி","வெ","ச"] + }, + months: { + names: ["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯",""], + namesAbbr: ["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯",""] + }, + AM: ["காலை","காலை","காலை"], + PM: ["மாலை","மாலை","மாலை"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ta.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ta.js new file mode 100644 index 000000000..3d15ce167 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ta.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture ta + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ta", "default", { + name: "ta", + englishName: "Tamil", + nativeName: "தமிழà¯", + language: "ta", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ரூ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ஞாயிறà¯à®±à¯à®•à¯à®•à®¿à®´à®®à¯ˆ","திஙà¯à®•à®³à¯à®•à®¿à®´à®®à¯ˆ","செவà¯à®µà®¾à®¯à¯à®•à®¿à®´à®®à¯ˆ","பà¯à®¤à®©à¯à®•à®¿à®´à®®à¯ˆ","வியாழகà¯à®•à®¿à®´à®®à¯ˆ","வெளà¯à®³à®¿à®•à¯à®•à®¿à®´à®®à¯ˆ","சனிகà¯à®•à®¿à®´à®®à¯ˆ"], + namesAbbr: ["ஞாயிறà¯","திஙà¯à®•à®³à¯","செவà¯à®µà®¾à®¯à¯","பà¯à®¤à®©à¯","வியாழனà¯","வெளà¯à®³à®¿","சனி"], + namesShort: ["ஞா","தி","செ","பà¯","வி","வெ","ச"] + }, + months: { + names: ["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯",""], + namesAbbr: ["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯",""] + }, + AM: ["காலை","காலை","காலை"], + PM: ["மாலை","மாலை","மாலை"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.te-IN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.te-IN.js new file mode 100644 index 000000000..b9f8b8484 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.te-IN.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture te-IN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "te-IN", "default", { + name: "te-IN", + englishName: "Telugu (India)", + nativeName: "తెలà±à°—à± (భారత దేశం)", + language: "te", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "రూ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ఆదివారం","సోమవారం","మంగళవారం","à°¬à±à°§à°µà°¾à°°à°‚","à°—à±à°°à±à°µà°¾à°°à°‚","à°¶à±à°•à±à°°à°µà°¾à°°à°‚","శనివారం"], + namesAbbr: ["ఆది.","సోమ.","మంగళ.","à°¬à±à°§.","à°—à±à°°à±.","à°¶à±à°•à±à°°.","శని."], + namesShort: ["à°†","సో","మం","à°¬à±","à°—à±","à°¶à±","à°¶"] + }, + months: { + names: ["జనవరి","à°«à°¿à°¬à±à°°à°µà°°à°¿","మారà±à°šà°¿","à°à°ªà±à°°à°¿à°²à±","మే","జూనà±","జూలై","ఆగసà±à°Ÿà±","సెపà±à°Ÿà±†à°‚బరà±","à°…à°•à±à°Ÿà±‹à°¬à°°à±","నవంబరà±","డిసెంబరà±",""], + namesAbbr: ["జనవరి","à°«à°¿à°¬à±à°°à°µà°°à°¿","మారà±à°šà°¿","à°à°ªà±à°°à°¿à°²à±","మే","జూనà±","జూలై","ఆగసà±à°Ÿà±","సెపà±à°Ÿà±†à°‚బరà±","à°…à°•à±à°Ÿà±‹à°¬à°°à±","నవంబరà±","డిసెంబరà±",""] + }, + AM: ["పూరà±à°µà°¾à°¹à±à°¨","పూరà±à°µà°¾à°¹à±à°¨","పూరà±à°µà°¾à°¹à±à°¨"], + PM: ["అపరాహà±à°¨","అపరాహà±à°¨","అపరాహà±à°¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.te.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.te.js new file mode 100644 index 000000000..4ef21e08e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.te.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture te + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "te", "default", { + name: "te", + englishName: "Telugu", + nativeName: "తెలà±à°—à±", + language: "te", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "రూ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ఆదివారం","సోమవారం","మంగళవారం","à°¬à±à°§à°µà°¾à°°à°‚","à°—à±à°°à±à°µà°¾à°°à°‚","à°¶à±à°•à±à°°à°µà°¾à°°à°‚","శనివారం"], + namesAbbr: ["ఆది.","సోమ.","మంగళ.","à°¬à±à°§.","à°—à±à°°à±.","à°¶à±à°•à±à°°.","శని."], + namesShort: ["à°†","సో","మం","à°¬à±","à°—à±","à°¶à±","à°¶"] + }, + months: { + names: ["జనవరి","à°«à°¿à°¬à±à°°à°µà°°à°¿","మారà±à°šà°¿","à°à°ªà±à°°à°¿à°²à±","మే","జూనà±","జూలై","ఆగసà±à°Ÿà±","సెపà±à°Ÿà±†à°‚బరà±","à°…à°•à±à°Ÿà±‹à°¬à°°à±","నవంబరà±","డిసెంబరà±",""], + namesAbbr: ["జనవరి","à°«à°¿à°¬à±à°°à°µà°°à°¿","మారà±à°šà°¿","à°à°ªà±à°°à°¿à°²à±","మే","జూనà±","జూలై","ఆగసà±à°Ÿà±","సెపà±à°Ÿà±†à°‚బరà±","à°…à°•à±à°Ÿà±‹à°¬à°°à±","నవంబరà±","డిసెంబరà±",""] + }, + AM: ["పూరà±à°µà°¾à°¹à±à°¨","పూరà±à°µà°¾à°¹à±à°¨","పూరà±à°µà°¾à°¹à±à°¨"], + PM: ["అపరాహà±à°¨","అపరాహà±à°¨","అపరాహà±à°¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg-Cyrl-TJ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg-Cyrl-TJ.js new file mode 100644 index 000000000..3fe4d1b27 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg-Cyrl-TJ.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture tg-Cyrl-TJ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tg-Cyrl-TJ", "default", { + name: "tg-Cyrl-TJ", + englishName: "Tajik (Cyrillic, Tajikistan)", + nativeName: "Тоҷикӣ (ТоҷикиÑтон)", + language: "tg-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "Ñ‚.Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвари","феврали","марти","апрели","маи","июни","июли","авгуÑти","ÑентÑбри","октÑбри","ноÑбри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg-Cyrl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg-Cyrl.js new file mode 100644 index 000000000..5825abdb5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg-Cyrl.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture tg-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tg-Cyrl", "default", { + name: "tg-Cyrl", + englishName: "Tajik (Cyrillic)", + nativeName: "Тоҷикӣ", + language: "tg-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "Ñ‚.Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвари","феврали","марти","апрели","маи","июни","июли","авгуÑти","ÑентÑбри","октÑбри","ноÑбри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg.js new file mode 100644 index 000000000..5c3494f8d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tg.js @@ -0,0 +1,84 @@ +/* + * Globalize Culture tg + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tg", "default", { + name: "tg", + englishName: "Tajik", + nativeName: "Тоҷикӣ", + language: "tg", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "Ñ‚.Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвари","феврали","марти","апрели","маи","июни","июли","авгуÑти","ÑентÑбри","октÑбри","ноÑбри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.th-TH.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.th-TH.js new file mode 100644 index 000000000..5451bf1f5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.th-TH.js @@ -0,0 +1,90 @@ +/* + * Globalize Culture th-TH + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "th-TH", "default", { + name: "th-TH", + englishName: "Thai (Thailand)", + nativeName: "ไทย (ไทย)", + language: "th", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "฿" + } + }, + calendars: { + standard: { + name: "ThaiBuddhist", + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุà¸à¸£à¹Œ","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ à¸²à¸žà¸±à¸™à¸˜à¹Œ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม",""], + namesAbbr: ["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + eras: [{"name":"พ.ศ.","start":null,"offset":-543}], + twoDigitYearMax: 2572, + patterns: { + d: "d/M/yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Gregorian_Localized: { + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุà¸à¸£à¹Œ","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ à¸²à¸žà¸±à¸™à¸˜à¹Œ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม",""], + namesAbbr: ["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + patterns: { + d: "d/M/yyyy", + D: "'วัน'dddd'ที่' d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", + F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.th.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.th.js new file mode 100644 index 000000000..5490f588d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.th.js @@ -0,0 +1,90 @@ +/* + * Globalize Culture th + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "th", "default", { + name: "th", + englishName: "Thai", + nativeName: "ไทย", + language: "th", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "฿" + } + }, + calendars: { + standard: { + name: "ThaiBuddhist", + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุà¸à¸£à¹Œ","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ à¸²à¸žà¸±à¸™à¸˜à¹Œ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม",""], + namesAbbr: ["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + eras: [{"name":"พ.ศ.","start":null,"offset":-543}], + twoDigitYearMax: 2572, + patterns: { + d: "d/M/yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Gregorian_Localized: { + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุà¸à¸£à¹Œ","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ à¸²à¸žà¸±à¸™à¸˜à¹Œ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม",""], + namesAbbr: ["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + patterns: { + d: "d/M/yyyy", + D: "'วัน'dddd'ที่' d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", + F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tk-TM.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tk-TM.js new file mode 100644 index 000000000..7f2e2a324 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tk-TM.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture tk-TM + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tk-TM", "default", { + name: "tk-TM", + englishName: "Turkmen (Turkmenistan)", + nativeName: "türkmençe (Türkmenistan)", + language: "tk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-üznüksizlik", + positiveInfinity: "üznüksizlik", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "m." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["DuÅŸenbe","SiÅŸenbe","ÇarÅŸenbe","PenÅŸenbe","Anna","Åženbe","ÃekÅŸenbe"], + namesAbbr: ["Db","Sb","Çb","Pb","An","Åžb","Ãb"], + namesShort: ["D","S","Ç","P","A","Åž","Ã"] + }, + months: { + names: ["Ãanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], + namesAbbr: ["Ãan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "yyyy 'ý.' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'ý.' MMMM d H:mm", + F: "yyyy 'ý.' MMMM d H:mm:ss", + Y: "yyyy 'ý.' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tk.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tk.js new file mode 100644 index 000000000..151c2ee6d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tk.js @@ -0,0 +1,78 @@ +/* + * Globalize Culture tk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tk", "default", { + name: "tk", + englishName: "Turkmen", + nativeName: "türkmençe", + language: "tk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-üznüksizlik", + positiveInfinity: "üznüksizlik", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "m." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["DuÅŸenbe","SiÅŸenbe","ÇarÅŸenbe","PenÅŸenbe","Anna","Åženbe","ÃekÅŸenbe"], + namesAbbr: ["Db","Sb","Çb","Pb","An","Åžb","Ãb"], + namesShort: ["D","S","Ç","P","A","Åž","Ã"] + }, + months: { + names: ["Ãanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], + namesAbbr: ["Ãan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "yyyy 'ý.' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'ý.' MMMM d H:mm", + F: "yyyy 'ý.' MMMM d H:mm:ss", + Y: "yyyy 'ý.' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tn-ZA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tn-ZA.js new file mode 100644 index 000000000..e08cc810d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tn-ZA.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture tn-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tn-ZA", "default", { + name: "tn-ZA", + englishName: "Setswana (South Africa)", + nativeName: "Setswana (Aforika Borwa)", + language: "tn", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], + namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], + namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] + }, + months: { + names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], + namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tn.js new file mode 100644 index 000000000..54b9745d7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tn.js @@ -0,0 +1,67 @@ +/* + * Globalize Culture tn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tn", "default", { + name: "tn", + englishName: "Setswana", + nativeName: "Setswana", + language: "tn", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], + namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], + namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] + }, + months: { + names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], + namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tr-TR.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tr-TR.js new file mode 100644 index 000000000..c0377ba30 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tr-TR.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture tr-TR + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tr-TR", "default", { + name: "tr-TR", + englishName: "Turkish (Turkey)", + nativeName: "Türkçe (Türkiye)", + language: "tr", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "TL" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Pazar","Pazartesi","Salı","ÇarÅŸamba","PerÅŸembe","Cuma","Cumartesi"], + namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], + namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] + }, + months: { + names: ["Ocak","Åžubat","Mart","Nisan","Mayıs","Haziran","Temmuz","AÄŸustos","Eylül","Ekim","Kasım","Aralık",""], + namesAbbr: ["Oca","Åžub","Mar","Nis","May","Haz","Tem","AÄŸu","Eyl","Eki","Kas","Ara",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tr.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tr.js new file mode 100644 index 000000000..47a18ccf7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tr.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture tr + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tr", "default", { + name: "tr", + englishName: "Turkish", + nativeName: "Türkçe", + language: "tr", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "TL" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Pazar","Pazartesi","Salı","ÇarÅŸamba","PerÅŸembe","Cuma","Cumartesi"], + namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], + namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] + }, + months: { + names: ["Ocak","Åžubat","Mart","Nisan","Mayıs","Haziran","Temmuz","AÄŸustos","Eylül","Ekim","Kasım","Aralık",""], + namesAbbr: ["Oca","Åžub","Mar","Nis","May","Haz","Tem","AÄŸu","Eyl","Eki","Kas","Ara",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tt-RU.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tt-RU.js new file mode 100644 index 000000000..163d7555a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tt-RU.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture tt-RU + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tt-RU", "default", { + name: "tt-RU", + englishName: "Tatar (Russia)", + nativeName: "Татар (РоÑÑиÑ)", + language: "tt", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], + namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], + namesShort: ["Я","Д","С","Ч","П","Ò–","Ш"] + }, + months: { + names: ["Гыйнвар","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Гыйн.","Фев.","Мар.","Ðпр.","Май","Июнь","Июль","Ðвг.","Сен.","Окт.","ÐоÑб.","Дек.",""] + }, + monthsGenitive: { + names: ["Гыйнварның","Февральнең","Мартның","Ðпрельнең","Майның","Июньнең","Июльнең","ÐвгуÑтның","СентÑбрьның","ОктÑбрьның","ÐоÑбрьның","Декабрьның",""], + namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Ðпр.-нең","Майның","Июньнең","Июльнең","Ðвг.-ның","Сен.-ның","Окт.-ның","ÐоÑб.-ның","Дек.-ның",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tt.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tt.js new file mode 100644 index 000000000..0d810ad8a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tt.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture tt + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tt", "default", { + name: "tt", + englishName: "Tatar", + nativeName: "Татар", + language: "tt", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], + namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], + namesShort: ["Я","Д","С","Ч","П","Ò–","Ш"] + }, + months: { + names: ["Гыйнвар","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Гыйн.","Фев.","Мар.","Ðпр.","Май","Июнь","Июль","Ðвг.","Сен.","Окт.","ÐоÑб.","Дек.",""] + }, + monthsGenitive: { + names: ["Гыйнварның","Февральнең","Мартның","Ðпрельнең","Майның","Июньнең","Июльнең","ÐвгуÑтның","СентÑбрьның","ОктÑбрьның","ÐоÑбрьның","Декабрьның",""], + namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Ðпр.-нең","Майның","Июньнең","Июльнең","Ðвг.-ның","Сен.-ның","Окт.-ның","ÐоÑб.-ның","Дек.-ның",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm-Latn-DZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm-Latn-DZ.js new file mode 100644 index 000000000..68504af32 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm-Latn-DZ.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture tzm-Latn-DZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tzm-Latn-DZ", "default", { + name: "tzm-Latn-DZ", + englishName: "Tamazight (Latin, Algeria)", + nativeName: "Tamazight (Djazaïr)", + language: "tzm-Latn", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm-Latn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm-Latn.js new file mode 100644 index 000000000..039138784 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm-Latn.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture tzm-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tzm-Latn", "default", { + name: "tzm-Latn", + englishName: "Tamazight (Latin)", + nativeName: "Tamazight", + language: "tzm-Latn", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm.js new file mode 100644 index 000000000..92b44c6e0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.tzm.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture tzm + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "tzm", "default", { + name: "tzm", + englishName: "Tamazight", + nativeName: "Tamazight", + language: "tzm", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ug-CN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ug-CN.js new file mode 100644 index 000000000..02a3d5012 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ug-CN.js @@ -0,0 +1,75 @@ +/* + * Globalize Culture ug-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ug-CN", "default", { + name: "ug-CN", + englishName: "Uyghur (PRC)", + nativeName: "ئۇيغۇرچە (جۇڭخۇا خەلق جۇمھۇرىيىتى)", + language: "ug", + isRTL: true, + numberFormat: { + "NaN": "سان ئەمەس", + negativeInfinity: "مەنپىي چەكسىزلىك", + positiveInfinity: "مۇسبەت چەكسىزلىك", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], + namesAbbr: ["ÙŠÛ•","دۈ","سە","چا","Ù¾Û•","جۈ","Ø´Û•"], + namesShort: ["ÙŠ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], + namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] + }, + AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], + PM: ["چۈشتىن ÙƒÛيىن","چۈشتىن ÙƒÛيىن","چۈشتىن ÙƒÛيىن"], + eras: [{"name":"مىلادى","start":null,"offset":0}], + patterns: { + d: "yyyy-M-d", + D: "yyyy-'يىلى' MMMM d-'كۈنى،'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", + F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", + M: "MMMM d'-كۈنى'", + Y: "yyyy-'يىلى' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ug.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ug.js new file mode 100644 index 000000000..d8dd8a4ea --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ug.js @@ -0,0 +1,75 @@ +/* + * Globalize Culture ug + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ug", "default", { + name: "ug", + englishName: "Uyghur", + nativeName: "ئۇيغۇرچە", + language: "ug", + isRTL: true, + numberFormat: { + "NaN": "سان ئەمەس", + negativeInfinity: "مەنپىي چەكسىزلىك", + positiveInfinity: "مۇسبەت چەكسىزلىك", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], + namesAbbr: ["ÙŠÛ•","دۈ","سە","چا","Ù¾Û•","جۈ","Ø´Û•"], + namesShort: ["ÙŠ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], + namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] + }, + AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], + PM: ["چۈشتىن ÙƒÛيىن","چۈشتىن ÙƒÛيىن","چۈشتىن ÙƒÛيىن"], + eras: [{"name":"مىلادى","start":null,"offset":0}], + patterns: { + d: "yyyy-M-d", + D: "yyyy-'يىلى' MMMM d-'كۈنى،'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", + F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", + M: "MMMM d'-كۈنى'", + Y: "yyyy-'يىلى' MMMM" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uk-UA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uk-UA.js new file mode 100644 index 000000000..e46fe4487 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uk-UA.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture uk-UA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uk-UA", "default", { + name: "uk-UA", + englishName: "Ukrainian (Ukraine)", + nativeName: "українÑька (Україна)", + language: "uk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-безмежніÑÑ‚ÑŒ", + positiveInfinity: "безмежніÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚´" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неділÑ","понеділок","вівторок","Ñереда","четвер","п'ÑтницÑ","Ñубота"], + namesAbbr: ["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"], + namesShort: ["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","ВереÑень","Жовтень","ЛиÑтопад","Грудень",""], + namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","ЛиÑ","Гру",""] + }, + monthsGenitive: { + names: ["ÑічнÑ","лютого","березнÑ","квітнÑ","травнÑ","червнÑ","липнÑ","ÑерпнÑ","вереÑнÑ","жовтнÑ","лиÑтопада","груднÑ",""], + namesAbbr: ["Ñіч","лют","бер","кві","тра","чер","лип","Ñер","вер","жов","лиÑ","гру",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy' Ñ€.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy' Ñ€.' H:mm", + F: "d MMMM yyyy' Ñ€.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy' Ñ€.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uk.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uk.js new file mode 100644 index 000000000..18e0a8927 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uk.js @@ -0,0 +1,83 @@ +/* + * Globalize Culture uk + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uk", "default", { + name: "uk", + englishName: "Ukrainian", + nativeName: "українÑька", + language: "uk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-безмежніÑÑ‚ÑŒ", + positiveInfinity: "безмежніÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚´" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неділÑ","понеділок","вівторок","Ñереда","четвер","п'ÑтницÑ","Ñубота"], + namesAbbr: ["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"], + namesShort: ["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","ВереÑень","Жовтень","ЛиÑтопад","Грудень",""], + namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","ЛиÑ","Гру",""] + }, + monthsGenitive: { + names: ["ÑічнÑ","лютого","березнÑ","квітнÑ","травнÑ","червнÑ","липнÑ","ÑерпнÑ","вереÑнÑ","жовтнÑ","лиÑтопада","груднÑ",""], + namesAbbr: ["Ñіч","лют","бер","кві","тра","чер","лип","Ñер","вер","жов","лиÑ","гру",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy' Ñ€.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy' Ñ€.' H:mm", + F: "d MMMM yyyy' Ñ€.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy' Ñ€.'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ur-PK.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ur-PK.js new file mode 100644 index 000000000..c92e6e30b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ur-PK.js @@ -0,0 +1,157 @@ +/* + * Globalize Culture ur-PK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ur-PK", "default", { + name: "ur-PK", + englishName: "Urdu (Islamic Republic of Pakistan)", + nativeName: "اÙردو (پاکستان)", + language: "ur", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$n"], + symbol: "Rs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","Ù‡Ùته"], + namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","Ù‡Ùته"], + namesShort: ["ا","Ù¾","Ù…","ب","ج","ج","Ù‡"] + }, + months: { + names: ["جنوری","Ùروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], + namesAbbr: ["جنوری","Ùروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + f: "dd MMMM, yyyy h:mm tt", + F: "dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ur.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ur.js new file mode 100644 index 000000000..3b6709db8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.ur.js @@ -0,0 +1,157 @@ +/* + * Globalize Culture ur + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ur", "default", { + name: "ur", + englishName: "Urdu", + nativeName: "اÙردو", + language: "ur", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$n"], + symbol: "Rs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","Ù‡Ùته"], + namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","Ù‡Ùته"], + namesShort: ["ا","Ù¾","Ù…","ب","ج","ج","Ù‡"] + }, + months: { + names: ["جنوری","Ùروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], + namesAbbr: ["جنوری","Ùروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + f: "dd MMMM, yyyy h:mm tt", + F: "dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Cyrl-UZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Cyrl-UZ.js new file mode 100644 index 000000000..f034500b0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Cyrl-UZ.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture uz-Cyrl-UZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz-Cyrl-UZ", "default", { + name: "uz-Cyrl-UZ", + englishName: "Uzbek (Cyrillic, Uzbekistan)", + nativeName: "Ўзбек (ЎзбекиÑтон)", + language: "uz-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñўм" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ñкшанба","душанба","Ñешанба","чоршанба","пайшанба","жума","шанба"], + namesAbbr: ["Ñкш","дш","Ñш","чш","пш","ж","ш"], + namesShort: ["Ñ","д","Ñ","ч","п","ж","ш"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвар","феврал","март","апрел","май","июн","июл","авгуÑÑ‚","ÑентÑбр","октÑбр","ноÑбр","декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","маÑ","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'йил' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'йил' d-MMMM HH:mm", + F: "yyyy 'йил' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Cyrl.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Cyrl.js new file mode 100644 index 000000000..8dbb77ca5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Cyrl.js @@ -0,0 +1,81 @@ +/* + * Globalize Culture uz-Cyrl + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz-Cyrl", "default", { + name: "uz-Cyrl", + englishName: "Uzbek (Cyrillic)", + nativeName: "Ўзбек", + language: "uz-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñўм" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ñкшанба","душанба","Ñешанба","чоршанба","пайшанба","жума","шанба"], + namesAbbr: ["Ñкш","дш","Ñш","чш","пш","ж","ш"], + namesShort: ["Ñ","д","Ñ","ч","п","ж","ш"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвар","феврал","март","апрел","май","июн","июл","авгуÑÑ‚","ÑентÑбр","октÑбр","ноÑбр","декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","маÑ","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'йил' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'йил' d-MMMM HH:mm", + F: "yyyy 'йил' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Latn-UZ.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Latn-UZ.js new file mode 100644 index 000000000..7f22ce802 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Latn-UZ.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture uz-Latn-UZ + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz-Latn-UZ", "default", { + name: "uz-Latn-UZ", + englishName: "Uzbek (Latin, Uzbekistan)", + nativeName: "U'zbek (U'zbekiston Respublikasi)", + language: "uz-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Latn.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Latn.js new file mode 100644 index 000000000..33d160bb7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz-Latn.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture uz-Latn + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz-Latn", "default", { + name: "uz-Latn", + englishName: "Uzbek (Latin)", + nativeName: "U'zbek", + language: "uz-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz.js new file mode 100644 index 000000000..63eac49c0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.uz.js @@ -0,0 +1,77 @@ +/* + * Globalize Culture uz + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "uz", "default", { + name: "uz", + englishName: "Uzbek", + nativeName: "U'zbek", + language: "uz", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.vi-VN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.vi-VN.js new file mode 100644 index 000000000..b55977859 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.vi-VN.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture vi-VN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "vi-VN", "default", { + name: "vi-VN", + englishName: "Vietnamese (Vietnam)", + nativeName: "TiêÌng Việt (Việt Nam)", + language: "vi", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "â‚«" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Chủ Nhật","ThÆ°Ì Hai","ThÆ°Ì Ba","ThÆ°Ì TÆ°","ThÆ°Ì Năm","ThÆ°Ì SaÌu","ThÆ°Ì Bảy"], + namesAbbr: ["CN","Hai","Ba","TÆ°","Năm","SaÌu","Bảy"], + namesShort: ["C","H","B","T","N","S","B"] + }, + months: { + names: ["ThaÌng Giêng","ThaÌng Hai","ThaÌng Ba","ThaÌng TÆ°","ThaÌng Năm","ThaÌng SaÌu","ThaÌng Bảy","ThaÌng TaÌm","ThaÌng ChiÌn","ThaÌng MÆ°Æ¡Ì€i","ThaÌng MÆ°Æ¡Ì€i Một","ThaÌng MÆ°Æ¡Ì€i Hai",""], + namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] + }, + AM: ["SA","sa","SA"], + PM: ["CH","ch","CH"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + f: "dd MMMM yyyy h:mm tt", + F: "dd MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.vi.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.vi.js new file mode 100644 index 000000000..d7191bfc0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.vi.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture vi + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "vi", "default", { + name: "vi", + englishName: "Vietnamese", + nativeName: "TiêÌng Việt", + language: "vi", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "â‚«" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Chủ Nhật","ThÆ°Ì Hai","ThÆ°Ì Ba","ThÆ°Ì TÆ°","ThÆ°Ì Năm","ThÆ°Ì SaÌu","ThÆ°Ì Bảy"], + namesAbbr: ["CN","Hai","Ba","TÆ°","Năm","SaÌu","Bảy"], + namesShort: ["C","H","B","T","N","S","B"] + }, + months: { + names: ["ThaÌng Giêng","ThaÌng Hai","ThaÌng Ba","ThaÌng TÆ°","ThaÌng Năm","ThaÌng SaÌu","ThaÌng Bảy","ThaÌng TaÌm","ThaÌng ChiÌn","ThaÌng MÆ°Æ¡Ì€i","ThaÌng MÆ°Æ¡Ì€i Một","ThaÌng MÆ°Æ¡Ì€i Hai",""], + namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] + }, + AM: ["SA","sa","SA"], + PM: ["CH","ch","CH"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + f: "dd MMMM yyyy h:mm tt", + F: "dd MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.wo-SN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.wo-SN.js new file mode 100644 index 000000000..245f6ec6c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.wo-SN.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture wo-SN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "wo-SN", "default", { + name: "wo-SN", + englishName: "Wolof (Senegal)", + nativeName: "Wolof (Sénégal)", + language: "wo", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "XOF" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.wo.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.wo.js new file mode 100644 index 000000000..da949053e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.wo.js @@ -0,0 +1,79 @@ +/* + * Globalize Culture wo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "wo", "default", { + name: "wo", + englishName: "Wolof", + nativeName: "Wolof", + language: "wo", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "XOF" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.xh-ZA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.xh-ZA.js new file mode 100644 index 000000000..10f34c373 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.xh-ZA.js @@ -0,0 +1,65 @@ +/* + * Globalize Culture xh-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "xh-ZA", "default", { + name: "xh-ZA", + englishName: "isiXhosa (South Africa)", + nativeName: "isiXhosa (uMzantsi Afrika)", + language: "xh", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] + }, + months: { + names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.xh.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.xh.js new file mode 100644 index 000000000..d15a3b85c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.xh.js @@ -0,0 +1,65 @@ +/* + * Globalize Culture xh + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "xh", "default", { + name: "xh", + englishName: "isiXhosa", + nativeName: "isiXhosa", + language: "xh", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] + }, + months: { + names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.yo-NG.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.yo-NG.js new file mode 100644 index 000000000..c968ad328 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.yo-NG.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture yo-NG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "yo-NG", "default", { + name: "yo-NG", + englishName: "Yoruba (Nigeria)", + nativeName: "Yoruba (Nigeria)", + language: "yo", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], + namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] + }, + AM: ["Owuro","owuro","OWURO"], + PM: ["Ale","ale","ALE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.yo.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.yo.js new file mode 100644 index 000000000..15b5c8c0e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.yo.js @@ -0,0 +1,60 @@ +/* + * Globalize Culture yo + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "yo", "default", { + name: "yo", + englishName: "Yoruba", + nativeName: "Yoruba", + language: "yo", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], + namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] + }, + AM: ["Owuro","owuro","OWURO"], + PM: ["Ale","ale","ALE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CHS.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CHS.js new file mode 100644 index 000000000..265227de2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CHS.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture zh-CHS + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-CHS", "default", { + name: "zh-CHS", + englishName: "Chinese (Simplified) Legacy", + nativeName: "中文(简体) 旧版", + language: "zh-CHS", + numberFormat: { + "NaN": "éžæ•°å­—", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CHT.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CHT.js new file mode 100644 index 000000000..a0438f05e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CHT.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture zh-CHT + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-CHT", "default", { + name: "zh-CHT", + englishName: "Chinese (Traditional) Legacy", + nativeName: "中文(ç¹é«”) 舊版", + language: "zh-CHT", + numberFormat: { + "NaN": "éžæ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CN.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CN.js new file mode 100644 index 000000000..d9de0cd09 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-CN.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture zh-CN + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-CN", "default", { + name: "zh-CN", + englishName: "Chinese (Simplified, PRC)", + nativeName: "中文(中åŽäººæ°‘共和国)", + language: "zh-CHS", + numberFormat: { + "NaN": "éžæ•°å­—", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-HK.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-HK.js new file mode 100644 index 000000000..0bac5bff5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-HK.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture zh-HK + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-HK", "default", { + name: "zh-HK", + englishName: "Chinese (Traditional, Hong Kong S.A.R.)", + nativeName: "中文(香港特別行政å€)", + language: "zh-CHT", + numberFormat: { + "NaN": "éžæ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-Hans.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-Hans.js new file mode 100644 index 000000000..9be13a327 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-Hans.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture zh-Hans + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-Hans", "default", { + name: "zh-Hans", + englishName: "Chinese (Simplified)", + nativeName: "中文(简体)", + language: "zh-Hans", + numberFormat: { + "NaN": "éžæ•°å­—", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-Hant.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-Hant.js new file mode 100644 index 000000000..9392ea76c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-Hant.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture zh-Hant + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-Hant", "default", { + name: "zh-Hant", + englishName: "Chinese (Traditional)", + nativeName: "中文(ç¹é«”)", + language: "zh-Hant", + numberFormat: { + "NaN": "éžæ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-MO.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-MO.js new file mode 100644 index 000000000..7a7296498 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-MO.js @@ -0,0 +1,72 @@ +/* + * Globalize Culture zh-MO + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-MO", "default", { + name: "zh-MO", + englishName: "Chinese (Traditional, Macao S.A.R.)", + nativeName: "中文(澳門特別行政å€)", + language: "zh-CHT", + numberFormat: { + "NaN": "éžæ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "MOP" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-SG.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-SG.js new file mode 100644 index 000000000..803493006 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-SG.js @@ -0,0 +1,63 @@ +/* + * Globalize Culture zh-SG + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-SG", "default", { + name: "zh-SG", + englishName: "Chinese (Simplified, Singapore)", + nativeName: "中文(新加å¡)", + language: "zh-CHS", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' tt h:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' tt h:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-TW.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-TW.js new file mode 100644 index 000000000..14d172511 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh-TW.js @@ -0,0 +1,99 @@ +/* + * Globalize Culture zh-TW + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh-TW", "default", { + name: "zh-TW", + englishName: "Chinese (Traditional, Taiwan)", + nativeName: "中文(å°ç£)", + language: "zh-CHT", + numberFormat: { + "NaN": "ä¸æ˜¯ä¸€å€‹æ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "NT$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"西元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' tt hh:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' tt hh:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + }, + Taiwan: { + name: "Taiwan", + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"","start":null,"offset":1911}], + twoDigitYearMax: 99, + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' tt hh:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' tt hh:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh.js new file mode 100644 index 000000000..b828385ff --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zh.js @@ -0,0 +1,73 @@ +/* + * Globalize Culture zh + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zh", "default", { + name: "zh", + englishName: "Chinese", + nativeName: "中文", + language: "zh", + numberFormat: { + "NaN": "éžæ•°å­—", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zu-ZA.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zu-ZA.js new file mode 100644 index 000000000..ffc89474c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zu-ZA.js @@ -0,0 +1,66 @@ +/* + * Globalize Culture zu-ZA + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zu-ZA", "default", { + name: "zu-ZA", + englishName: "isiZulu (South Africa)", + nativeName: "isiZulu (iNingizimu Afrika)", + language: "zu", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] + }, + months: { + names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], + namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zu.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zu.js new file mode 100644 index 000000000..d1fbcc1ac --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.culture.zu.js @@ -0,0 +1,66 @@ +/* + * Globalize Culture zu + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "zu", "default", { + name: "zu", + englishName: "isiZulu", + nativeName: "isiZulu", + language: "zu", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] + }, + months: { + names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], + namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.cultures.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.cultures.js new file mode 100644 index 000000000..8b16cfce5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/cultures/globalize.cultures.js @@ -0,0 +1,24063 @@ +/* + * Globalize Cultures + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * This file was generated by the Globalize Culture Generator + * Translation: bugs found in this file need to be fixed in the generator + */ + +(function( window, undefined ) { + +var Globalize; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + Globalize = require( "globalize" ); +} else { + // Global variable + Globalize = window.Globalize; +} + +Globalize.addCultureInfo( "ar", "default", { + name: "ar", + englishName: "Arabic", + nativeName: "العربية", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.س.\u200f" + } + }, + calendars: { + standard: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "bg", "default", { + name: "bg", + englishName: "Bulgarian", + nativeName: "българÑки", + language: "bg", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "- безкрайноÑÑ‚", + positiveInfinity: "+ безкрайноÑÑ‚", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "лв." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неделÑ","понеделник","вторник","ÑÑ€Ñда","четвъртък","петък","Ñъбота"], + namesAbbr: ["нед","пон","вт","ÑÑ€","четв","пет","Ñъб"], + namesShort: ["н","п","в","Ñ","ч","п","Ñ"] + }, + months: { + names: ["Ñнуари","февруари","март","април","май","юни","юли","авгуÑÑ‚","Ñептември","октомври","ноември","декември",""], + namesAbbr: ["Ñн","февр","март","апр","май","юни","юли","авг","Ñепт","окт","ноември","дек",""] + }, + AM: null, + PM: null, + eras: [{"name":"Ñлед новата ера","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy 'г.'", + D: "dd MMMM yyyy 'г.'", + t: "HH:mm 'ч.'", + T: "HH:mm:ss 'ч.'", + f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", + F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", + M: "dd MMMM", + Y: "MMMM yyyy 'г.'" + } + } + } +}); + +Globalize.addCultureInfo( "ca", "default", { + name: "ca", + englishName: "Catalan", + nativeName: "català", + language: "ca", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinit", + positiveInfinity: "Infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], + namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], + namesShort: ["dg","dl","dt","dc","dj","dv","ds"] + }, + months: { + names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], + namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' / 'MMMM' / 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", + F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM' / 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh-Hans", "default", { + name: "zh-Hans", + englishName: "Chinese (Simplified)", + nativeName: "中文(简体)", + language: "zh-Hans", + numberFormat: { + "NaN": "éžæ•°å­—", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "cs", "default", { + name: "cs", + englishName: "Czech", + nativeName: "ÄeÅ¡tina", + language: "cs", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Není Äíslo", + negativeInfinity: "-nekoneÄno", + positiveInfinity: "+nekoneÄno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "KÄ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedÄ›le","pondÄ›lí","úterý","stÅ™eda","Ätvrtek","pátek","sobota"], + namesAbbr: ["ne","po","út","st","Ät","pá","so"], + namesShort: ["ne","po","út","st","Ät","pá","so"] + }, + months: { + names: ["leden","únor","bÅ™ezen","duben","kvÄ›ten","Äerven","Äervenec","srpen","září","říjen","listopad","prosinec",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["ledna","února","bÅ™ezna","dubna","kvÄ›tna","Äervna","Äervence","srpna","září","října","listopadu","prosince",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["dop.","dop.","DOP."], + PM: ["odp.","odp.","ODP."], + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "da", "default", { + name: "da", + englishName: "Danish", + nativeName: "dansk", + language: "da", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "de", "default", { + name: "de", + englishName: "German", + nativeName: "Deutsch", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "el", "default", { + name: "el", + englishName: "Greek", + nativeName: "Ελληνικά", + language: "el", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "μη αÏιθμός", + negativeInfinity: "-ΆπειÏο", + positiveInfinity: "ΆπειÏο", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ΚυÏιακή","ΔευτέÏα","ΤÏίτη","ΤετάÏτη","Πέμπτη","ΠαÏασκευή","Σάββατο"], + namesAbbr: ["ΚυÏ","Δευ","ΤÏι","Τετ","Πεμ","ΠαÏ","Σαβ"], + namesShort: ["Κυ","Δε","ΤÏ","Τε","Πε","Πα","Σά"] + }, + months: { + names: ["ΙανουάÏιος","ΦεβÏουάÏιος","ΜάÏτιος","ΑπÏίλιος","Μάιος","ΙοÏνιος","ΙοÏλιος","ΑÏγουστος","ΣεπτέμβÏιος","ΟκτώβÏιος","ÎοέμβÏιος","ΔεκέμβÏιος",""], + namesAbbr: ["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ",""] + }, + monthsGenitive: { + names: ["ΙανουαÏίου","ΦεβÏουαÏίου","ΜαÏτίου","ΑπÏιλίου","ΜαÎου","Ιουνίου","Ιουλίου","ΑυγοÏστου","ΣεπτεμβÏίου","ΟκτωβÏίου","ÎοεμβÏίου","ΔεκεμβÏίου",""], + namesAbbr: ["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ",""] + }, + AM: ["πμ","πμ","ΠΜ"], + PM: ["μμ","μμ","ΜΜ"], + eras: [{"name":"μ.Χ.","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es", "default", { + name: "es", + englishName: "Spanish", + nativeName: "español", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fi", "default", { + name: "fi", + englishName: "Finnish", + nativeName: "suomi", + language: "fi", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], + namesAbbr: ["su","ma","ti","ke","to","pe","la"], + namesShort: ["su","ma","ti","ke","to","pe","la"] + }, + months: { + names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], + namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM'ta 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM'ta 'yyyy H:mm", + F: "d. MMMM'ta 'yyyy H:mm:ss", + M: "d. MMMM'ta'", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr", "default", { + name: "fr", + englishName: "French", + nativeName: "français", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "he", "default", { + name: "he", + englishName: "Hebrew", + nativeName: "עברית", + language: "he", + isRTL: true, + numberFormat: { + "NaN": "×œ× ×ž×¡×¤×¨", + negativeInfinity: "×ינסוף שלילי", + positiveInfinity: "×ינסוף חיובי", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "₪" + } + }, + calendars: { + standard: { + days: { + names: ["יו× ר×שון","יו× שני","יו× שלישי","יו× רביעי","יו× חמישי","יו× שישי","שבת"], + namesAbbr: ["יו× ×","יו× ב","יו× ג","יו× ד","יו× ה","יו× ו","שבת"], + namesShort: ["×","ב","×’","ד","×”","ו","ש"] + }, + months: { + names: ["ינו×ר","פברו×ר","מרץ","×פריל","מ××™","יוני","יולי","×וגוסט","ספטמבר","×וקטובר","נובמבר","דצמבר",""], + namesAbbr: ["ינו","פבר","מרץ","×פר","מ××™","יונ","יול","×וג","ספט","×וק","נוב","דצמ",""] + }, + eras: [{"name":"לספירה","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Hebrew: { + name: "Hebrew", + "/": " ", + days: { + names: ["יו× ר×שון","יו× שני","יו× שלישי","יו× רביעי","יו× חמישי","יו× שישי","שבת"], + namesAbbr: ["×","ב","×’","ד","×”","ו","ש"], + namesShort: ["×","ב","×’","ד","×”","ו","ש"] + }, + months: { + names: ["תשרי","חשון","כסלו","טבת","שבט","×דר","×דר ב","ניסן","×ייר","סיון","תמוז","×ב","×לול"], + namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","×דר","×דר ב","ניסן","×ייר","סיון","תמוז","×ב","×לול"] + }, + eras: [{"name":"C.E.","start":null,"offset":0}], + twoDigitYearMax: 5790, + patterns: { + d: "dd MMMM yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hu", "default", { + name: "hu", + englishName: "Hungarian", + nativeName: "magyar", + language: "hu", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nem szám", + negativeInfinity: "negatív végtelen", + positiveInfinity: "végtelen", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ft" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["vasárnap","hétfÅ‘","kedd","szerda","csütörtök","péntek","szombat"], + namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], + namesShort: ["V","H","K","Sze","Cs","P","Szo"] + }, + months: { + names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], + namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] + }, + AM: ["de.","de.","DE."], + PM: ["du.","du.","DU."], + eras: [{"name":"i.sz.","start":null,"offset":0}], + patterns: { + d: "yyyy.MM.dd.", + D: "yyyy. MMMM d.", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy. MMMM d. H:mm", + F: "yyyy. MMMM d. H:mm:ss", + M: "MMMM d.", + Y: "yyyy. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "is", "default", { + name: "is", + englishName: "Icelandic", + nativeName: "íslenska", + language: "is", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], + namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], + namesShort: ["su","má","þr","mi","fi","fö","la"] + }, + months: { + names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], + namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "it", "default", { + name: "it", + englishName: "Italian", + nativeName: "italiano", + language: "it", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ja", "default", { + name: "ja", + englishName: "Japanese", + nativeName: "日本語", + language: "ja", + numberFormat: { + "NaN": "NaN (éžæ•°å€¤)", + negativeInfinity: "-∞", + positiveInfinity: "+∞", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["日曜日","月曜日","ç«æ›œæ—¥","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["æ—¥","月","ç«","æ°´","木","金","土"], + namesShort: ["æ—¥","月","ç«","æ°´","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["åˆå‰","åˆå‰","åˆå‰"], + PM: ["åˆå¾Œ","åˆå¾Œ","åˆå¾Œ"], + eras: [{"name":"西暦","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + }, + Japanese: { + name: "Japanese", + days: { + names: ["日曜日","月曜日","ç«æ›œæ—¥","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["æ—¥","月","ç«","æ°´","木","金","土"], + namesShort: ["æ—¥","月","ç«","æ°´","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["åˆå‰","åˆå‰","åˆå‰"], + PM: ["åˆå¾Œ","åˆå¾Œ","åˆå¾Œ"], + eras: [{"name":"å¹³æˆ","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], + twoDigitYearMax: 99, + patterns: { + d: "gg y/M/d", + D: "gg y'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "gg y'å¹´'M'月'd'æ—¥' H:mm", + F: "gg y'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "gg y'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "ko", "default", { + name: "ko", + englishName: "Korean", + nativeName: "한국어", + language: "ko", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "â‚©" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","토요ì¼"], + namesAbbr: ["ì¼","ì›”","í™”","수","목","금","토"], + namesShort: ["ì¼","ì›”","í™”","수","목","금","토"] + }, + months: { + names: ["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"서기","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy'ë…„' M'ì›”' d'ì¼' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm", + F: "yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm:ss", + M: "M'ì›”' d'ì¼'", + Y: "yyyy'ë…„' M'ì›”'" + } + }, + Korean: { + name: "Korean", + "/": "-", + days: { + names: ["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","토요ì¼"], + namesAbbr: ["ì¼","ì›”","í™”","수","목","금","토"], + namesShort: ["ì¼","ì›”","í™”","수","목","금","토"] + }, + months: { + names: ["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"단기","start":null,"offset":-2333}], + twoDigitYearMax: 4362, + patterns: { + d: "gg yyyy-MM-dd", + D: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm", + F: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm:ss", + M: "M'ì›”' d'ì¼'", + Y: "gg yyyy'ë…„' M'ì›”'" + } + } + } +}); + +Globalize.addCultureInfo( "nl", "default", { + name: "nl", + englishName: "Dutch", + nativeName: "Nederlands", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "no", "default", { + name: "no", + englishName: "Norwegian", + nativeName: "norsk", + language: "no", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pl", "default", { + name: "pl", + englishName: "Polish", + nativeName: "polski", + language: "pl", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nie jest liczbÄ…", + negativeInfinity: "-nieskoÅ„czoność", + positiveInfinity: "+nieskoÅ„czoność", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "zÅ‚" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["niedziela","poniedziaÅ‚ek","wtorek","Å›roda","czwartek","piÄ…tek","sobota"], + namesAbbr: ["N","Pn","Wt","Åšr","Cz","Pt","So"], + namesShort: ["N","Pn","Wt","Åšr","Cz","Pt","So"] + }, + months: { + names: ["styczeÅ„","luty","marzec","kwiecieÅ„","maj","czerwiec","lipiec","sierpieÅ„","wrzesieÅ„","październik","listopad","grudzieÅ„",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + monthsGenitive: { + names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrzeÅ›nia","października","listopada","grudnia",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pt", "default", { + name: "pt", + englishName: "Portuguese", + nativeName: "Português", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "R$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], + namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "rm", "default", { + name: "rm", + englishName: "Romansh", + nativeName: "Rumantsch", + language: "rm", + numberFormat: { + ",": "'", + "NaN": "betg def.", + negativeInfinity: "-infinit", + positiveInfinity: "+infinit", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], + namesAbbr: ["du","gli","ma","me","gie","ve","so"], + namesShort: ["du","gli","ma","me","gie","ve","so"] + }, + months: { + names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], + namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"s. Cr.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d MMMM yyyy HH:mm", + F: "dddd, d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ro", "default", { + name: "ro", + englishName: "Romanian", + nativeName: "română", + language: "ro", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "lei" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["duminică","luni","marÅ£i","miercuri","joi","vineri","sâmbătă"], + namesAbbr: ["D","L","Ma","Mi","J","V","S"], + namesShort: ["D","L","Ma","Mi","J","V","S"] + }, + months: { + names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], + namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ru", "default", { + name: "ru", + englishName: "Russian", + nativeName: "руÑÑкий", + language: "ru", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["воÑкреÑенье","понедельник","вторник","Ñреда","четверг","пÑтница","Ñуббота"], + namesAbbr: ["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"], + namesShort: ["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Ñнв","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + monthsGenitive: { + names: ["ÑнварÑ","февралÑ","марта","апрелÑ","маÑ","июнÑ","июлÑ","авгуÑта","ÑентÑбрÑ","октÑбрÑ","ноÑбрÑ","декабрÑ",""], + namesAbbr: ["Ñнв","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'г.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'г.' H:mm", + F: "d MMMM yyyy 'г.' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hr", "default", { + name: "hr", + englishName: "Croatian", + nativeName: "hrvatski", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kn" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["sijeÄanj","veljaÄa","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["sijeÄnja","veljaÄe","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sk", "default", { + name: "sk", + englishName: "Slovak", + nativeName: "slovenÄina", + language: "sk", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Nie je Äíslo", + negativeInfinity: "-nekoneÄno", + positiveInfinity: "+nekoneÄno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["nedeľa","pondelok","utorok","streda","Å¡tvrtok","piatok","sobota"], + namesAbbr: ["ne","po","ut","st","Å¡t","pi","so"], + namesShort: ["ne","po","ut","st","Å¡t","pi","so"] + }, + months: { + names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sq", "default", { + name: "sq", + englishName: "Albanian", + nativeName: "shqipe", + language: "sq", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-infinit", + positiveInfinity: "infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": ".", + ".": ",", + symbol: "Lek" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], + namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], + namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] + }, + months: { + names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], + namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] + }, + AM: ["PD","pd","PD"], + PM: ["MD","md","MD"], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy-MM-dd", + t: "h:mm.tt", + T: "h:mm:ss.tt", + f: "yyyy-MM-dd h:mm.tt", + F: "yyyy-MM-dd h:mm:ss.tt", + Y: "yyyy-MM" + } + } + } +}); + +Globalize.addCultureInfo( "sv", "default", { + name: "sv", + englishName: "Swedish", + nativeName: "svenska", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["söndag","mÃ¥ndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","mÃ¥","ti","on","to","fr","lö"], + namesShort: ["sö","mÃ¥","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "th", "default", { + name: "th", + englishName: "Thai", + nativeName: "ไทย", + language: "th", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "฿" + } + }, + calendars: { + standard: { + name: "ThaiBuddhist", + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุà¸à¸£à¹Œ","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ à¸²à¸žà¸±à¸™à¸˜à¹Œ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม",""], + namesAbbr: ["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + eras: [{"name":"พ.ศ.","start":null,"offset":-543}], + twoDigitYearMax: 2572, + patterns: { + d: "d/M/yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Gregorian_Localized: { + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุà¸à¸£à¹Œ","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ à¸²à¸žà¸±à¸™à¸˜à¹Œ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม",""], + namesAbbr: ["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + patterns: { + d: "d/M/yyyy", + D: "'วัน'dddd'ที่' d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", + F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tr", "default", { + name: "tr", + englishName: "Turkish", + nativeName: "Türkçe", + language: "tr", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "TL" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Pazar","Pazartesi","Salı","ÇarÅŸamba","PerÅŸembe","Cuma","Cumartesi"], + namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], + namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] + }, + months: { + names: ["Ocak","Åžubat","Mart","Nisan","Mayıs","Haziran","Temmuz","AÄŸustos","Eylül","Ekim","Kasım","Aralık",""], + namesAbbr: ["Oca","Åžub","Mar","Nis","May","Haz","Tem","AÄŸu","Eyl","Eki","Kas","Ara",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ur", "default", { + name: "ur", + englishName: "Urdu", + nativeName: "اÙردو", + language: "ur", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$n"], + symbol: "Rs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","Ù‡Ùته"], + namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","Ù‡Ùته"], + namesShort: ["ا","Ù¾","Ù…","ب","ج","ج","Ù‡"] + }, + months: { + names: ["جنوری","Ùروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], + namesAbbr: ["جنوری","Ùروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + f: "dd MMMM, yyyy h:mm tt", + F: "dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + } + } +}); + +Globalize.addCultureInfo( "id", "default", { + name: "id", + englishName: "Indonesian", + nativeName: "Bahasa Indonesia", + language: "id", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": ",", + symbol: "Rp" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], + namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], + namesShort: ["M","S","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uk", "default", { + name: "uk", + englishName: "Ukrainian", + nativeName: "українÑька", + language: "uk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-безмежніÑÑ‚ÑŒ", + positiveInfinity: "безмежніÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚´" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неділÑ","понеділок","вівторок","Ñереда","четвер","п'ÑтницÑ","Ñубота"], + namesAbbr: ["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"], + namesShort: ["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","ВереÑень","Жовтень","ЛиÑтопад","Грудень",""], + namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","ЛиÑ","Гру",""] + }, + monthsGenitive: { + names: ["ÑічнÑ","лютого","березнÑ","квітнÑ","травнÑ","червнÑ","липнÑ","ÑерпнÑ","вереÑнÑ","жовтнÑ","лиÑтопада","груднÑ",""], + namesAbbr: ["Ñіч","лют","бер","кві","тра","чер","лип","Ñер","вер","жов","лиÑ","гру",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy' Ñ€.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy' Ñ€.' H:mm", + F: "d MMMM yyyy' Ñ€.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy' Ñ€.'" + } + } + } +}); + +Globalize.addCultureInfo( "be", "default", { + name: "be", + englishName: "Belarusian", + nativeName: "БеларуÑкі", + language: "be", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["нÑдзелÑ","панÑдзелак","аўторак","Ñерада","чацвер","пÑтніца","Ñубота"], + namesAbbr: ["нд","пн","аў","ÑÑ€","чц","пт","Ñб"], + namesShort: ["нд","пн","аў","ÑÑ€","чц","пт","Ñб"] + }, + months: { + names: ["Студзень","Люты","Сакавік","КраÑавік","Май","ЧÑрвень","Ліпень","Жнівень","ВераÑень","КаÑтрычнік","ЛіÑтапад","Снежань",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","ЧÑÑ€","Ліп","Жні","Вер","КаÑ","ЛіÑ","Сне",""] + }, + monthsGenitive: { + names: ["ÑтудзенÑ","лютага","Ñакавіка","краÑавіка","маÑ","чÑрвенÑ","ліпенÑ","жніўнÑ","вераÑнÑ","каÑтрычніка","ліÑтапада","ÑнежнÑ",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","ЧÑÑ€","Ліп","Жні","Вер","КаÑ","ЛіÑ","Сне",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sl", "default", { + name: "sl", + englishName: "Slovenian", + nativeName: "slovenski", + language: "sl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-neskonÄnost", + positiveInfinity: "neskonÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljek","torek","sreda","Äetrtek","petek","sobota"], + namesAbbr: ["ned","pon","tor","sre","Äet","pet","sob"], + namesShort: ["ne","po","to","sr","Äe","pe","so"] + }, + months: { + names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "et", "default", { + name: "et", + englishName: "Estonian", + nativeName: "eesti", + language: "et", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "avaldamatu", + negativeInfinity: "miinuslõpmatus", + positiveInfinity: "plusslõpmatus", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], + namesAbbr: ["P","E","T","K","N","R","L"], + namesShort: ["P","E","T","K","N","R","L"] + }, + months: { + names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], + namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] + }, + AM: ["EL","el","EL"], + PM: ["PL","pl","PL"], + patterns: { + d: "d.MM.yyyy", + D: "d. MMMM yyyy'. a.'", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy'. a.' H:mm", + F: "d. MMMM yyyy'. a.' H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy'. a.'" + } + } + } +}); + +Globalize.addCultureInfo( "lv", "default", { + name: "lv", + englishName: "Latvian", + nativeName: "latvieÅ¡u", + language: "lv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-bezgalÄ«ba", + positiveInfinity: "bezgalÄ«ba", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": " ", + ".": ",", + symbol: "Ls" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["svÄ“tdiena","pirmdiena","otrdiena","treÅ¡diena","ceturtdiena","piektdiena","sestdiena"], + namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], + namesShort: ["sv","pr","ot","tr","ce","pk","se"] + }, + months: { + names: ["janvÄris","februÄris","marts","aprÄ«lis","maijs","jÅ«nijs","jÅ«lijs","augusts","septembris","oktobris","novembris","decembris",""], + namesAbbr: ["jan","feb","mar","apr","mai","jÅ«n","jÅ«l","aug","sep","okt","nov","dec",""] + }, + monthsGenitive: { + names: ["janvÄrÄ«","februÄrÄ«","martÄ","aprÄ«lÄ«","maijÄ","jÅ«nijÄ","jÅ«lijÄ","augustÄ","septembrÄ«","oktobrÄ«","novembrÄ«","decembrÄ«",""], + namesAbbr: ["jan","feb","mar","apr","mai","jÅ«n","jÅ«l","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd.", + D: "dddd, yyyy'. gada 'd. MMMM", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, yyyy'. gada 'd. MMMM H:mm", + F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", + M: "d. MMMM", + Y: "yyyy. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "lt", "default", { + name: "lt", + englishName: "Lithuanian", + nativeName: "lietuvių", + language: "lt", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-begalybÄ—", + positiveInfinity: "begalybÄ—", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Lt" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sekmadienis","pirmadienis","antradienis","treÄiadienis","ketvirtadienis","penktadienis","Å¡eÅ¡tadienis"], + namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Å t"], + namesShort: ["S","P","A","T","K","Pn","Å "] + }, + months: { + names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjÅ«tis","rugsÄ—jis","spalis","lapkritis","gruodis",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + monthsGenitive: { + names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjÅ«Äio","rugsÄ—jo","spalio","lapkriÄio","gruodžio",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd", + D: "yyyy 'm.' MMMM d 'd.'", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'm.' MMMM d 'd.' HH:mm", + F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", + M: "MMMM d 'd.'", + Y: "yyyy 'm.' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "tg", "default", { + name: "tg", + englishName: "Tajik", + nativeName: "Тоҷикӣ", + language: "tg", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "Ñ‚.Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвари","феврали","марти","апрели","маи","июни","июли","авгуÑти","ÑентÑбри","октÑбри","ноÑбри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fa", "default", { + name: "fa", + englishName: "Persian", + nativeName: "Ùارسى", + language: "fa", + isRTL: true, + numberFormat: { + pattern: ["n-"], + currency: { + pattern: ["$n-","$ n"], + ".": "/", + symbol: "ريال" + } + }, + calendars: { + standard: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["ژانويه","Ùوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اÙكتبر","نوامبر","دسامبر",""], + namesAbbr: ["ژانويه","Ùوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اÙكتبر","نوامبر","دسامبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy/MM/dd", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "yyyy/MM/dd hh:mm tt", + F: "yyyy/MM/dd hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "vi", "default", { + name: "vi", + englishName: "Vietnamese", + nativeName: "TiêÌng Việt", + language: "vi", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "â‚«" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Chủ Nhật","ThÆ°Ì Hai","ThÆ°Ì Ba","ThÆ°Ì TÆ°","ThÆ°Ì Năm","ThÆ°Ì SaÌu","ThÆ°Ì Bảy"], + namesAbbr: ["CN","Hai","Ba","TÆ°","Năm","SaÌu","Bảy"], + namesShort: ["C","H","B","T","N","S","B"] + }, + months: { + names: ["ThaÌng Giêng","ThaÌng Hai","ThaÌng Ba","ThaÌng TÆ°","ThaÌng Năm","ThaÌng SaÌu","ThaÌng Bảy","ThaÌng TaÌm","ThaÌng ChiÌn","ThaÌng MÆ°Æ¡Ì€i","ThaÌng MÆ°Æ¡Ì€i Một","ThaÌng MÆ°Æ¡Ì€i Hai",""], + namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] + }, + AM: ["SA","sa","SA"], + PM: ["CH","ch","CH"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + f: "dd MMMM yyyy h:mm tt", + F: "dd MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hy", "default", { + name: "hy", + englishName: "Armenian", + nativeName: "Õ€Õ¡ÕµÕ¥Ö€Õ¥Õ¶", + language: "hy", + numberFormat: { + currency: { + pattern: ["-n $","n $"], + symbol: "Õ¤Ö€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ô¿Õ«Ö€Õ¡Õ¯Õ«","ÔµÖ€Õ¯Õ¸Ö‚Õ·Õ¡Õ¢Õ©Õ«","ÔµÖ€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ‰Õ¸Ö€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ€Õ«Õ¶Õ£Õ·Õ¡Õ¢Õ©Õ«","ÕˆÕ’Ö€Õ¢Õ¡Õ©","Õ‡Õ¡Õ¢Õ¡Õ©"], + namesAbbr: ["Ô¿Õ«Ö€","ÔµÖ€Õ¯","ÔµÖ€Ö„","Õ‰Ö€Ö„","Õ€Õ¶Õ£","ÕˆÕ’Ö€","Õ‡Õ¢Õ©"], + namesShort: ["Ô¿","Ôµ","Ôµ","Õ‰","Õ€","Õˆ","Õ‡"] + }, + months: { + names: ["Õ€Õ¸Ö‚Õ¶Õ¾Õ¡Ö€","Õ“Õ¥Õ¿Ö€Õ¾Õ¡Ö€","Õ„Õ¡Ö€Õ¿","Ô±ÕºÖ€Õ«Õ¬","Õ„Õ¡ÕµÕ«Õ½","Õ€Õ¸Ö‚Õ¶Õ«Õ½","Õ€Õ¸Ö‚Õ¬Õ«Õ½","Õ•Õ£Õ¸Õ½Õ¿Õ¸Õ½","ÕÕ¥ÕºÕ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ€Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ†Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€","Ô´Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€",""], + namesAbbr: ["Õ€Õ†ÕŽ","Õ“ÕÕŽ","Õ„ÕÕ","Ô±ÕŠÕ","Õ„Õ…Õ","Õ€Õ†Õ","Õ€Ô¼Õ","Õ•Ô³Õ","ÕÔµÕŠ","Õ€ÕˆÔ¿","Õ†ÕˆÕ…","Ô´ÔµÔ¿",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM, yyyy H:mm", + F: "d MMMM, yyyy H:mm:ss", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "az", "default", { + name: "az", + englishName: "Azeri", + nativeName: "AzÉ™rbaycan\xadılı", + language: "az", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertÉ™si","ÇərÅŸÉ™nbə axÅŸamı","ÇərÅŸÉ™nbÉ™","Cümə axÅŸamı","CümÉ™","ŞənbÉ™"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Åž"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Åž"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","Ä°yun","Ä°yul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "eu", "default", { + name: "eu", + englishName: "Basque", + nativeName: "euskara", + language: "eu", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "EdZ", + negativeInfinity: "-Infinitu", + positiveInfinity: "Infinitu", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], + namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], + namesShort: ["ig","al","as","az","og","or","lr"] + }, + months: { + names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], + namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "dddd, yyyy.'eko' MMMM'k 'd", + t: "HH:mm", + T: "H:mm:ss", + f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", + F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", + Y: "yyyy.'eko' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "hsb", "default", { + name: "hsb", + englishName: "Upper Sorbian", + nativeName: "hornjoserbšćina", + language: "hsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekónÄne", + positiveInfinity: "+njekónÄne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njedźela","póndźela","wutora","srjeda","Å¡twórtk","pjatk","sobota"], + namesAbbr: ["nje","pón","wut","srj","Å¡tw","pja","sob"], + namesShort: ["n","p","w","s","Å¡","p","s"] + }, + months: { + names: ["januar","februar","mÄ›rc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","mÄ›r","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","mÄ›rca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","mÄ›r","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'hodź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "mk", "default", { + name: "mk", + englishName: "Macedonian (FYROM)", + nativeName: "македонÑки јазик", + language: "mk", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "ден." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недела","понеделник","вторник","Ñреда","четврток","петок","Ñабота"], + namesAbbr: ["нед","пон","втр","Ñрд","чет","пет","Ñаб"], + namesShort: ["не","по","вт","ÑÑ€","че","пе","Ñа"] + }, + months: { + names: ["јануари","февруари","март","април","мај","јуни","јули","авгуÑÑ‚","Ñептември","октомври","ноември","декември",""], + namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","Ñеп","окт","ное","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd MMMM yyyy HH:mm", + F: "dddd, dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tn", "default", { + name: "tn", + englishName: "Setswana", + nativeName: "Setswana", + language: "tn", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], + namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], + namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] + }, + months: { + names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], + namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "xh", "default", { + name: "xh", + englishName: "isiXhosa", + nativeName: "isiXhosa", + language: "xh", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] + }, + months: { + names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zu", "default", { + name: "zu", + englishName: "isiZulu", + nativeName: "isiZulu", + language: "zu", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] + }, + months: { + names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], + namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "af", "default", { + name: "af", + englishName: "Afrikaans", + nativeName: "Afrikaans", + language: "af", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], + namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], + namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] + }, + months: { + names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ka", "default", { + name: "ka", + englishName: "Georgian", + nativeName: "ქáƒáƒ áƒ—ული", + language: "ka", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Lari" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["კვირáƒ","áƒáƒ áƒ¨áƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"], + namesAbbr: ["კვირáƒ","áƒáƒ áƒ¨áƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"], + namesShort: ["კ","áƒ","ს","áƒ","ხ","პ","შ"] + }, + months: { + names: ["იáƒáƒœáƒ•áƒáƒ áƒ˜","თებერვáƒáƒšáƒ˜","მáƒáƒ áƒ¢áƒ˜","áƒáƒžáƒ áƒ˜áƒšáƒ˜","მáƒáƒ˜áƒ¡áƒ˜","ივნისი","ივლისი","áƒáƒ’ვისტáƒ","სექტემბერი","áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი","ნáƒáƒ”მბერი","დეკემბერი",""], + namesAbbr: ["იáƒáƒœ","თებ","მáƒáƒ ","áƒáƒžáƒ ","მáƒáƒ˜áƒ¡","ივნ","ივლ","áƒáƒ’ვ","სექ","áƒáƒ¥áƒ¢","ნáƒáƒ”მ","დეკ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'წლის' dd MM, dddd", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'წლის' dd MM, dddd H:mm", + F: "yyyy 'წლის' dd MM, dddd H:mm:ss", + M: "dd MM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fo", "default", { + name: "fo", + englishName: "Faroese", + nativeName: "føroyskt", + language: "fo", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], + namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], + namesShort: ["su","má","tý","mi","hó","fr","ley"] + }, + months: { + names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hi", "default", { + name: "hi", + englishName: "Hindi", + nativeName: "हिंदी", + language: "hi", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगलवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगल.","बà¥à¤§.","गà¥à¤°à¥.","शà¥à¤•à¥à¤°.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""], + namesAbbr: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""] + }, + AM: ["पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨"], + PM: ["अपराहà¥à¤¨","अपराहà¥à¤¨","अपराहà¥à¤¨"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mt", "default", { + name: "mt", + englishName: "Maltese", + nativeName: "Malti", + language: "mt", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ä imgħa","Is-Sibt"], + namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ä im","Sib"], + namesShort: ["I","I","I","L","I","I","I"] + }, + months: { + names: ["Jannar","Frar","Marzu","April","Mejju","Ä unju","Lulju","Awissu","Settembru","Ottubru","Novembru","DiÄ‹embru",""], + namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ä un","Lul","Awi","Set","Ott","Nov","DiÄ‹",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' ta\\' 'MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", + F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", + M: "d' ta\\' 'MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "se", "default", { + name: "se", + englishName: "Sami (Northern)", + nativeName: "davvisámegiella", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maÅ‹Å‹ebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maÅ‹","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["oÄ‘Ä‘ajagemánnu","guovvamánnu","njukÄamánnu","cuoÅ‹ománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","ÄakÄamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ajagimánu","guovvamánu","njukÄamánu","cuoÅ‹ománu","miessemánu","geassemánu","suoidnemánu","borgemánu","ÄakÄamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ga", "default", { + name: "ga", + englishName: "Irish", + nativeName: "Gaeilge", + language: "ga", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], + namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], + namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] + }, + months: { + names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], + namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] + }, + AM: ["r.n.","r.n.","R.N."], + PM: ["i.n.","i.n.","I.N."], + patterns: { + d: "dd/MM/yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ms", "default", { + name: "ms", + englishName: "Malay", + nativeName: "Bahasa Melayu", + language: "ms", + numberFormat: { + currency: { + decimals: 0, + symbol: "RM" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kk", "default", { + name: "kk", + englishName: "Kazakh", + nativeName: "Қазақ", + language: "kk", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$n","$n"], + ",": " ", + ".": "-", + symbol: "Т" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ЖекÑенбі","ДүйÑенбі","СейÑенбі","СәрÑенбі","БейÑенбі","Жұма","Сенбі"], + namesAbbr: ["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"], + namesShort: ["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"] + }, + months: { + names: ["қаңтар","ақпан","наурыз","Ñәуір","мамыр","мауÑым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқÑан",""], + namesAbbr: ["Қаң","Ðқп","Ðау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'ж.' H:mm", + F: "d MMMM yyyy 'ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ky", "default", { + name: "ky", + englishName: "Kyrgyz", + nativeName: "Кыргыз", + language: "ky", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": "-", + symbol: "Ñом" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], + namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], + namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] + }, + months: { + names: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d'-'MMMM yyyy'-ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d'-'MMMM yyyy'-ж.' H:mm", + F: "d'-'MMMM yyyy'-ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy'-ж.'" + } + } + } +}); + +Globalize.addCultureInfo( "sw", "default", { + name: "sw", + englishName: "Kiswahili", + nativeName: "Kiswahili", + language: "sw", + numberFormat: { + currency: { + symbol: "S" + } + }, + calendars: { + standard: { + days: { + names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], + namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], + namesShort: ["P","T","N","T","A","I","M"] + }, + months: { + names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] + } + } + } +}); + +Globalize.addCultureInfo( "tk", "default", { + name: "tk", + englishName: "Turkmen", + nativeName: "türkmençe", + language: "tk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-üznüksizlik", + positiveInfinity: "üznüksizlik", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "m." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["DuÅŸenbe","SiÅŸenbe","ÇarÅŸenbe","PenÅŸenbe","Anna","Åženbe","ÃekÅŸenbe"], + namesAbbr: ["Db","Sb","Çb","Pb","An","Åžb","Ãb"], + namesShort: ["D","S","Ç","P","A","Åž","Ã"] + }, + months: { + names: ["Ãanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], + namesAbbr: ["Ãan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "yyyy 'ý.' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'ý.' MMMM d H:mm", + F: "yyyy 'ý.' MMMM d H:mm:ss", + Y: "yyyy 'ý.' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "uz", "default", { + name: "uz", + englishName: "Uzbek", + nativeName: "U'zbek", + language: "uz", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tt", "default", { + name: "tt", + englishName: "Tatar", + nativeName: "Татар", + language: "tt", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], + namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], + namesShort: ["Я","Д","С","Ч","П","Ò–","Ш"] + }, + months: { + names: ["Гыйнвар","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Гыйн.","Фев.","Мар.","Ðпр.","Май","Июнь","Июль","Ðвг.","Сен.","Окт.","ÐоÑб.","Дек.",""] + }, + monthsGenitive: { + names: ["Гыйнварның","Февральнең","Мартның","Ðпрельнең","Майның","Июньнең","Июльнең","ÐвгуÑтның","СентÑбрьның","ОктÑбрьның","ÐоÑбрьның","Декабрьның",""], + namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Ðпр.-нең","Майның","Июньнең","Июльнең","Ðвг.-ның","Сен.-ның","Окт.-ның","ÐоÑб.-ның","Дек.-ның",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bn", "default", { + name: "bn", + englishName: "Bengali", + nativeName: "বাংলা", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "টা" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহসà§à¦ªà¦¤à¦¿.","শà§à¦•à§à¦°.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নভেমà§à¦¬à¦°","ডিসেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§.","ফেবà§à¦°à§.","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগ.","সেপà§à¦Ÿà§‡.","অকà§à¦Ÿà§‹.","নভে.","ডিসে.",""] + }, + AM: ["পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨"], + PM: ["অপরাহà§à¦¨","অপরাহà§à¦¨","অপরাহà§à¦¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "pa", "default", { + name: "pa", + englishName: "Punjabi", + nativeName: "ਪੰਜਾਬੀ", + language: "pa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ਰà©" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["à¨à¨¤à¨µà¨¾à¨°","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬà©à©±à¨§à¨µà¨¾à¨°","ਵੀਰਵਾਰ","ਸ਼à©à©±à¨•à¨°à¨µà¨¾à¨°","ਸ਼ਨਿੱਚਰਵਾਰ"], + namesAbbr: ["à¨à¨¤.","ਸੋਮ.","ਮੰਗਲ.","ਬà©à©±à¨§.","ਵੀਰ.","ਸ਼à©à¨•à¨°.","ਸ਼ਨਿੱਚਰ."], + namesShort: ["à¨","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] + }, + months: { + names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪà©à¨°à©ˆà¨²","ਮਈ","ਜੂਨ","ਜà©à¨²à¨¾à¨ˆ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], + namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪà©à¨°à©ˆà¨²","ਮਈ","ਜੂਨ","ਜà©à¨²à¨¾à¨ˆ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] + }, + AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], + PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy dddd", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "dd MMMM yyyy dddd tt hh:mm", + F: "dd MMMM yyyy dddd tt hh:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "gu", "default", { + name: "gu", + englishName: "Gujarati", + nativeName: "ગà«àªœàª°àª¾àª¤à«€", + language: "gu", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "રૂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["રવિવાર","સોમવાર","મંગળવાર","બà«àª§àªµàª¾àª°","ગà«àª°à«àªµàª¾àª°","શà«àª•à«àª°àªµàª¾àª°","શનિવાર"], + namesAbbr: ["રવિ","સોમ","મંગળ","બà«àª§","ગà«àª°à«","શà«àª•à«àª°","શનિ"], + namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] + }, + months: { + names: ["જાનà«àª¯à«àª†àª°à«€","ફેબà«àª°à«àª†àª°à«€","મારà«àªš","àªàªªà«àª°àª¿àª²","મે","જૂન","જà«àª²àª¾àªˆ","ઑગસà«àªŸ","સપà«àªŸà«‡àª®à«àª¬àª°","ઑકà«àªŸà«àª¬àª°","નવેમà«àª¬àª°","ડિસેમà«àª¬àª°",""], + namesAbbr: ["જાનà«àª¯à«","ફેબà«àª°à«","મારà«àªš","àªàªªà«àª°àª¿àª²","મે","જૂન","જà«àª²àª¾àªˆ","ઑગસà«àªŸ","સપà«àªŸà«‡","ઑકà«àªŸà«‹","નવે","ડિસે",""] + }, + AM: ["પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨","પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨","પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨"], + PM: ["ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨","ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨","ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "or", "default", { + name: "or", + englishName: "Oriya", + nativeName: "ଓଡ଼ିଆ", + language: "or", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ଟ" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ରବିବାର","ସୋମବାର","ମଙà­à¬—ଳବାର","ବà­à¬§à¬¬à¬¾à¬°","ଗà­à¬°à­à¬¬à¬¾à¬°","ଶà­à¬•à­à¬°à¬¬à¬¾à¬°","ଶନିବାର"], + namesAbbr: ["ରବି.","ସୋମ.","ମଙà­à¬—ଳ.","ବà­à¬§.","ଗà­à¬°à­.","ଶà­à¬•à­à¬°.","ଶନି."], + namesShort: ["ର","ସୋ","ମ","ବà­","ଗà­","ଶà­","ଶ"] + }, + months: { + names: ["ଜାନà­à­Ÿà¬¾à¬°à­€","ଫà­à¬°à­‡à¬¬à­ƒà­Ÿà¬¾à¬°à­€","ମାରà­à¬šà­à¬š","à¬à¬ªà­à¬°à¬¿à¬²à­\u200c","ମେ","ଜà­à¬¨à­\u200c","ଜà­à¬²à¬¾à¬‡","ଅଗଷà­à¬Ÿ","ସେପà­à¬Ÿà­‡à¬®à­à¬¬à¬°","ଅକà­à¬Ÿà­‹à¬¬à¬°","ନଭେମà­à¬¬à¬°","(ଡିସେମà­à¬¬à¬°",""], + namesAbbr: ["ଜାନà­à­Ÿà¬¾à¬°à­€","ଫà­à¬°à­‡à¬¬à­ƒà­Ÿà¬¾à¬°à­€","ମାରà­à¬šà­à¬š","à¬à¬ªà­à¬°à¬¿à¬²à­\u200c","ମେ","ଜà­à¬¨à­\u200c","ଜà­à¬²à¬¾à¬‡","ଅଗଷà­à¬Ÿ","ସେପà­à¬Ÿà­‡à¬®à­à¬¬à¬°","ଅକà­à¬Ÿà­‹à¬¬à¬°","ନଭେମà­à¬¬à¬°","(ଡିସେମà­à¬¬à¬°",""] + }, + eras: [{"name":"ଖà­à¬°à­€à¬·à­à¬Ÿà¬¾à¬¬à­à¬¦","start":null,"offset":0}], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ta", "default", { + name: "ta", + englishName: "Tamil", + nativeName: "தமிழà¯", + language: "ta", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ரூ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ஞாயிறà¯à®±à¯à®•à¯à®•à®¿à®´à®®à¯ˆ","திஙà¯à®•à®³à¯à®•à®¿à®´à®®à¯ˆ","செவà¯à®µà®¾à®¯à¯à®•à®¿à®´à®®à¯ˆ","பà¯à®¤à®©à¯à®•à®¿à®´à®®à¯ˆ","வியாழகà¯à®•à®¿à®´à®®à¯ˆ","வெளà¯à®³à®¿à®•à¯à®•à®¿à®´à®®à¯ˆ","சனிகà¯à®•à®¿à®´à®®à¯ˆ"], + namesAbbr: ["ஞாயிறà¯","திஙà¯à®•à®³à¯","செவà¯à®µà®¾à®¯à¯","பà¯à®¤à®©à¯","வியாழனà¯","வெளà¯à®³à®¿","சனி"], + namesShort: ["ஞா","தி","செ","பà¯","வி","வெ","ச"] + }, + months: { + names: ["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯",""], + namesAbbr: ["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯",""] + }, + AM: ["காலை","காலை","காலை"], + PM: ["மாலை","மாலை","மாலை"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "te", "default", { + name: "te", + englishName: "Telugu", + nativeName: "తెలà±à°—à±", + language: "te", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "రూ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ఆదివారం","సోమవారం","మంగళవారం","à°¬à±à°§à°µà°¾à°°à°‚","à°—à±à°°à±à°µà°¾à°°à°‚","à°¶à±à°•à±à°°à°µà°¾à°°à°‚","శనివారం"], + namesAbbr: ["ఆది.","సోమ.","మంగళ.","à°¬à±à°§.","à°—à±à°°à±.","à°¶à±à°•à±à°°.","శని."], + namesShort: ["à°†","సో","మం","à°¬à±","à°—à±","à°¶à±","à°¶"] + }, + months: { + names: ["జనవరి","à°«à°¿à°¬à±à°°à°µà°°à°¿","మారà±à°šà°¿","à°à°ªà±à°°à°¿à°²à±","మే","జూనà±","జూలై","ఆగసà±à°Ÿà±","సెపà±à°Ÿà±†à°‚బరà±","à°…à°•à±à°Ÿà±‹à°¬à°°à±","నవంబరà±","డిసెంబరà±",""], + namesAbbr: ["జనవరి","à°«à°¿à°¬à±à°°à°µà°°à°¿","మారà±à°šà°¿","à°à°ªà±à°°à°¿à°²à±","మే","జూనà±","జూలై","ఆగసà±à°Ÿà±","సెపà±à°Ÿà±†à°‚బరà±","à°…à°•à±à°Ÿà±‹à°¬à°°à±","నవంబరà±","డిసెంబరà±",""] + }, + AM: ["పూరà±à°µà°¾à°¹à±à°¨","పూరà±à°µà°¾à°¹à±à°¨","పూరà±à°µà°¾à°¹à±à°¨"], + PM: ["అపరాహà±à°¨","అపరాహà±à°¨","అపరాహà±à°¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "kn", "default", { + name: "kn", + englishName: "Kannada", + nativeName: "ಕನà³à²¨à²¡", + language: "kn", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ರೂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ಭಾನà³à²µà²¾à²°","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬà³à²§à²µà²¾à²°","ಗà³à²°à³à²µà²¾à²°","ಶà³à²•à³à²°à²µà²¾à²°","ಶನಿವಾರ"], + namesAbbr: ["ಭಾನà³.","ಸೋಮ.","ಮಂಗಳ.","ಬà³à²§.","ಗà³à²°à³.","ಶà³à²•à³à²°.","ಶನಿ."], + namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] + }, + months: { + names: ["ಜನವರಿ","ಫೆಬà³à²°à²µà²°à²¿","ಮಾರà³à²šà³","ಎಪà³à²°à²¿à²²à³","ಮೇ","ಜೂನà³","ಜà³à²²à³ˆ","ಆಗಸà³à²Ÿà³","ಸೆಪà³à²Ÿà²‚ಬರà³","ಅಕà³à²Ÿà³‹à²¬à²°à³","ನವೆಂಬರà³","ಡಿಸೆಂಬರà³",""], + namesAbbr: ["ಜನವರಿ","ಫೆಬà³à²°à²µà²°à²¿","ಮಾರà³à²šà³","ಎಪà³à²°à²¿à²²à³","ಮೇ","ಜೂನà³","ಜà³à²²à³ˆ","ಆಗಸà³à²Ÿà³","ಸೆಪà³à²Ÿà²‚ಬರà³","ಅಕà³à²Ÿà³‹à²¬à²°à³","ನವೆಂಬರà³","ಡಿಸೆಂಬರà³",""] + }, + AM: ["ಪೂರà³à²µà²¾à²¹à³à²¨","ಪೂರà³à²µà²¾à²¹à³à²¨","ಪೂರà³à²µà²¾à²¹à³à²¨"], + PM: ["ಅಪರಾಹà³à²¨","ಅಪರಾಹà³à²¨","ಅಪರಾಹà³à²¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ml", "default", { + name: "ml", + englishName: "Malayalam", + nativeName: "മലയാളം", + language: "ml", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "à´•" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["ഞായറാഴàµà´š","തിങàµà´•à´³à´¾à´´àµà´š","ചൊവàµà´µà´¾à´´àµà´š","à´¬àµà´§à´¨à´¾à´´àµà´š","à´µàµà´¯à´¾à´´à´¾à´´àµà´š","വെളàµà´³à´¿à´¯à´¾à´´àµà´š","ശനിയാഴàµà´š"], + namesAbbr: ["ഞായർ.","തിങàµà´•àµ¾.","ചൊവàµà´µ.","à´¬àµà´§àµ».","à´µàµà´¯à´¾à´´à´‚.","വെളàµà´³à´¿.","ശനി."], + namesShort: ["à´ž","à´¤","à´š","à´¬","à´µ","വെ","à´¶"] + }, + months: { + names: ["ജനàµà´µà´°à´¿","ഫെബàµà´±àµà´µà´°à´¿","മാറàµà´šàµà´šàµ","à´à´ªàµà´±à´¿à´²àµ","മെയàµ","ജൂണàµ","ജൂലൈ","à´“à´—à´¸àµà´±à´±àµ","സെപàµà´±à´±à´‚ബറàµ","à´’à´•àµà´Ÿàµ‹à´¬à´±àµ","നവംബറàµ","ഡിസംബറàµ",""], + namesAbbr: ["ജനàµà´µà´°à´¿","ഫെബàµà´±àµà´µà´°à´¿","മാറàµà´šàµà´šàµ","à´à´ªàµà´±à´¿à´²àµ","മെയàµ","ജൂണàµ","ജൂലൈ","à´“à´—à´¸àµà´±à´±àµ","സെപàµà´±à´±à´‚ബറàµ","à´’à´•àµà´Ÿàµ‹à´¬à´±àµ","നവംബറàµ","ഡിസംബറàµ",""] + }, + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "as", "default", { + name: "as", + englishName: "Assamese", + nativeName: "অসমীয়া", + language: "as", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","n$"], + groupSizes: [3,2], + symbol: "ট" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["সোমবাৰ","মঙà§à¦—লবাৰ","বà§à¦§à¦¬à¦¾à§°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à§°","শà§à¦•à§à¦°à¦¬à¦¾à§°","শনিবাৰ","ৰবিবাৰ"], + namesAbbr: ["সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহ.","শà§à¦•à§à¦°.","শনি.","ৰবি."], + namesShort: ["সো","ম","বà§","বৃ","শà§","শ","র"] + }, + months: { + names: ["জানà§à§±à¦¾à§°à§€","ফেবà§à¦°à§à§±à¦¾à§°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগষà§à¦Ÿ","চেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নবেমà§à¦¬à¦°","ডিচেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§","ফেবà§à¦°à§","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগষà§à¦Ÿ","চেপà§à¦Ÿà§‡","অকà§à¦Ÿà§‹","নবে","ডিচে",""] + }, + AM: ["ৰাতিপà§","ৰাতিপà§","ৰাতিপà§"], + PM: ["আবেলি","আবেলি","আবেলি"], + eras: [{"name":"খà§à¦°à§€à¦·à§à¦Ÿà¦¾à¦¬à§à¦¦","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "yyyy,MMMM dd, dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy,MMMM dd, dddd tt h:mm", + F: "yyyy,MMMM dd, dddd tt h:mm:ss", + M: "dd MMMM", + Y: "MMMM,yy" + } + } + } +}); + +Globalize.addCultureInfo( "mr", "default", { + name: "mr", + englishName: "Marathi", + nativeName: "मराठी", + language: "mr", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगळवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगळ.","बà¥à¤§.","गà¥à¤°à¥.","शà¥à¤•à¥à¤°.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवà¥à¤¹à¥‡à¤‚बर","डिसेंबर",""], + namesAbbr: ["जाने.","फेबà¥à¤°à¥.","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚.","ऑकà¥à¤Ÿà¥‹.","नोवà¥à¤¹à¥‡à¤‚.","डिसें.",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sa", "default", { + name: "sa", + englishName: "Sanskrit", + nativeName: "संसà¥à¤•à¥ƒà¤¤", + language: "sa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["रविवासरः","सोमवासरः","मङà¥à¤—लवासरः","बà¥à¤§à¤µà¤¾à¤¸à¤°à¤ƒ","गà¥à¤°à¥à¤µà¤¾à¤¸à¤°à¤ƒ","शà¥à¤•à¥à¤°à¤µà¤¾à¤¸à¤°à¤ƒ","शनिवासरः"], + namesAbbr: ["रविवासरः","सोमवासरः","मङà¥à¤—लवासरः","बà¥à¤§à¤µà¤¾à¤¸à¤°à¤ƒ","गà¥à¤°à¥à¤µà¤¾à¤¸à¤°à¤ƒ","शà¥à¤•à¥à¤°à¤µà¤¾à¤¸à¤°à¤ƒ","शनिवासरः"], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""], + namesAbbr: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""] + }, + AM: ["पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨"], + PM: ["अपराहà¥à¤¨","अपराहà¥à¤¨","अपराहà¥à¤¨"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mn", "default", { + name: "mn", + englishName: "Mongolian", + nativeName: "Монгол хÑл", + language: "mn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚®" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ÐÑм","Даваа","ÐœÑгмар","Лхагва","ПүрÑв","БааÑан","БÑмба"], + namesAbbr: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"], + namesShort: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"] + }, + months: { + names: ["1 дүгÑÑр Ñар","2 дугаар Ñар","3 дугаар Ñар","4 дүгÑÑр Ñар","5 дугаар Ñар","6 дугаар Ñар","7 дугаар Ñар","8 дугаар Ñар","9 дүгÑÑр Ñар","10 дугаар Ñар","11 дүгÑÑр Ñар","12 дугаар Ñар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгÑÑр Ñарын","2 дугаар Ñарын","3 дугаар Ñарын","4 дүгÑÑр Ñарын","5 дугаар Ñарын","6 дугаар Ñарын","7 дугаар Ñарын","8 дугаар Ñарын","9 дүгÑÑр Ñарын","10 дугаар Ñарын","11 дүгÑÑр Ñарын","12 дугаар Ñарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "bo", "default", { + name: "bo", + englishName: "Tibetan", + nativeName: "བོད་ཡིག", + language: "bo", + numberFormat: { + groupSizes: [3,0], + "NaN": "ཨང་ཀི་མིན་པà¼", + negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བà¼", + positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བà¼", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["གཟའ་ཉི་མà¼","གཟའ་ཟླ་བà¼","གཟའ་མིག་དམརà¼","གཟའ་ལྷག་པà¼","གཟའ་ཕུར་བུà¼","གཟའ་པ་སངསà¼","གཟའ་སྤེན་པà¼"], + namesAbbr: ["ཉི་མà¼","ཟླ་བà¼","མིག་དམརà¼","ལྷག་པà¼","ཕུར་བུà¼","པ་སངསà¼","སྤེན་པà¼"], + namesShort: ["༧","༡","༢","༣","༤","༥","༦"] + }, + months: { + names: ["སྤྱི་ཟླ་དང་པོà¼","སྤྱི་ཟླ་གཉིས་པà¼","སྤྱི་ཟླ་གསུམ་པà¼","སྤྱི་ཟླ་བཞི་པà¼","སྤྱི་ཟླ་ལྔ་པà¼","སྤྱི་ཟླ་དྲུག་པà¼","སྤྱི་ཟླ་བདུན་པà¼","སྤྱི་ཟླ་བརྒྱད་པà¼","སྤྱི་ཟླ་དགུ་པà¼","སྤྱི་ཟླ་བཅུ་པོà¼","སྤྱི་ཟླ་བཅུ་གཅིག་པà¼","སྤྱི་ཟླ་བཅུ་གཉིས་པà¼",""], + namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] + }, + AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], + PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], + eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", + F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", + M: "'ཟླ་' M'ཚེས'd", + Y: "yyyy.M" + } + } + } +}); + +Globalize.addCultureInfo( "cy", "default", { + name: "cy", + englishName: "Welsh", + nativeName: "Cymraeg", + language: "cy", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], + namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], + namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] + }, + months: { + names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], + namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "km", "default", { + name: "km", + englishName: "Khmer", + nativeName: "ážáŸ’មែរ", + language: "km", + numberFormat: { + pattern: ["- n"], + groupSizes: [3,0], + "NaN": "NAN", + negativeInfinity: "-- អនន្áž", + positiveInfinity: "អនន្áž", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["-n$","n$"], + symbol: "៛" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ážáŸ’ងៃអាទិážáŸ’áž™","ážáŸ’ងៃចáŸáž“្ទ","ážáŸ’ងៃអង្គារ","ážáŸ’ងៃពុធ","ážáŸ’ងៃព្រហស្បážáž·áŸ","ážáŸ’ងៃសុក្រ","ážáŸ’ងៃសៅរáŸ"], + namesAbbr: ["អាទិ.","áž….","អ.","áž–áž»","ព្រហ.","សុ.","ស."], + namesShort: ["អា","áž…","អ","áž–áž»","ព្","សុ","ស"] + }, + months: { + names: ["មករា","កុម្ភៈ","មិនា","មáŸážŸáž¶","ឧសភា","មិážáž»áž“ា","កក្កដា","សីហា","កញ្ញា","ážáž»áž›áž¶","វិច្ឆិកា","ធ្នូ",""], + namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "d MMMM yyyy H:mm tt", + F: "d MMMM yyyy HH:mm:ss", + M: "'ážáŸ’ងៃទី' dd 'ážáŸ‚' MM", + Y: "'ážáŸ‚' MM 'ឆ្នាំ' yyyy" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm tt", + F: "dddd, MMMM dd, yyyy HH:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "lo", "default", { + name: "lo", + englishName: "Lao", + nativeName: "ລາວ", + language: "lo", + numberFormat: { + pattern: ["(n)"], + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + }, + currency: { + pattern: ["(n$)","n$"], + groupSizes: [3,0], + symbol: "â‚­" + } + }, + calendars: { + standard: { + days: { + names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸàº","ວັນເສົາ"], + namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸàº","ເສົາ"], + namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] + }, + months: { + names: ["ມັງàºàº­àº™","àºàº¸àº¡àºžàº²","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","àºà»àº¥àº°àºàº»àº”","ສິງຫາ","àºàº±àº™àºàº²","ຕຸລາ","ພະຈິàº","ທັນວາ",""], + namesAbbr: ["ມັງàºàº­àº™","àºàº¸àº¡àºžàº²","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","àºà»àº¥àº°àºàº»àº”","ສິງຫາ","àºàº±àº™àºàº²","ຕຸລາ","ພະຈິàº","ທັນວາ",""] + }, + AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], + PM: ["à»àº¥àº‡","à»àº¥àº‡","à»àº¥àº‡"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dd MMMM yyyy H:mm tt", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gl", "default", { + name: "gl", + englishName: "Galician", + nativeName: "galego", + language: "gl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], + namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], + namesShort: ["do","lu","ma","mé","xo","ve","sá"] + }, + months: { + names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], + namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kok", "default", { + name: "kok", + englishName: "Konkani", + nativeName: "कोंकणी", + language: "kok", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["आयतार","सोमार","मंगळार","बà¥à¤§à¤µà¤¾à¤°","बिरेसà¥à¤¤à¤¾à¤°","सà¥à¤•à¥à¤°à¤¾à¤°","शेनवार"], + namesAbbr: ["आय.","सोम.","मंगळ.","बà¥à¤§.","बिरे.","सà¥à¤•à¥à¤°.","शेन."], + namesShort: ["आ","स","म","ब","ब","स","श"] + }, + months: { + names: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवेमà¥à¤¬à¤°","डिसेंबर",""], + namesAbbr: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवेमà¥à¤¬à¤°","डिसेंबर",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "syr", "default", { + name: "syr", + englishName: "Syriac", + nativeName: "ܣܘܪÜÜÜ", + language: "syr", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$ n"], + symbol: "Ù„.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["ܚܕ ܒܫܒÜ","ܬܪÜܢ ܒܫܒÜ","ܬܠܬÜ ܒܫܒÜ","ÜܪܒܥÜ ܒܫܒÜ","ܚܡܫÜ ܒܫܒÜ","ܥܪܘܒܬÜ","ܫܒܬÜ"], + namesAbbr: ["\u070fÜ \u070fÜ’Ü«","\u070fܒ \u070fÜ’Ü«","\u070fܓ \u070fÜ’Ü«","\u070fܕ \u070fÜ’Ü«","\u070fܗ \u070fÜ’Ü«","\u070fܥܪܘܒ","\u070fÜ«Ü’"], + namesShort: ["Ü","Ü’","Ü“","Ü•","Ü—","Ü¥","Ü«"] + }, + months: { + names: ["ܟܢܘܢ ÜܚܪÜ","Ü«Ü’Ü›","Üܕܪ","Ü¢Üܣܢ","ÜÜܪ","ܚܙÜܪܢ","ܬܡܘܙ","ÜÜ’","ÜÜܠܘܠ","ܬܫܪÜ ܩܕÜÜ¡","ܬܫܪÜ ÜܚܪÜ","ܟܢܘܢ ܩܕÜÜ¡",""], + namesAbbr: ["\u070fܟܢ \u070fÜ’","Ü«Ü’Ü›","Üܕܪ","Ü¢Üܣܢ","ÜÜܪ","ܚܙÜܪܢ","ܬܡܘܙ","ÜÜ’","ÜÜܠܘܠ","\u070fܬܫ \u070fÜ","\u070fܬܫ \u070fÜ’","\u070fܟܢ \u070fÜ",""] + }, + AM: ["Ü©.Ü›","Ü©.Ü›","Ü©.Ü›"], + PM: ["Ü’.Ü›","Ü’.Ü›","Ü’.Ü›"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "si", "default", { + name: "si", + englishName: "Sinhala", + nativeName: "සිංහල", + language: "si", + numberFormat: { + groupSizes: [3,2], + negativeInfinity: "-අනන්තය", + positiveInfinity: "අනන්තය", + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["($ n)","$ n"], + symbol: "රු." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ඉරිදà·","සඳුදà·","අඟහරුවà·à¶¯à·","බදà·à¶¯à·","බ්\u200dරහස්පතින්දà·","සිකුරà·à¶¯à·","සෙනසුරà·à¶¯à·"], + namesAbbr: ["ඉරිදà·","සඳුදà·","කුජදà·","බුදදà·","ගුරුදà·","කිවිදà·","à·à¶±à·’දà·"], + namesShort: ["ඉ","à·ƒ","අ","බ","බ්\u200dර","සි","සෙ"] + }, + months: { + names: ["ජනවà·à¶»à·’","පෙබරවà·à¶»à·’","මà·à¶»à·Šà¶­à·”","අ\u200cප්\u200dරේල්","මà·à¶ºà·’","ජූනි","ජූලි","අ\u200cගà·à·ƒà·Šà¶­à·”","à·ƒà·à¶´à·Šà¶­à·à¶¸à·Šà¶¶à¶»à·Š","ඔක්තà·à¶¶à¶»à·Š","නොවà·à¶¸à·Šà¶¶à¶»à·Š","දෙසà·à¶¸à·Šà¶¶à¶»à·Š",""], + namesAbbr: ["ජන.","පෙබ.","මà·à¶»à·Šà¶­à·”.","අප්\u200dරේල්.","මà·à¶ºà·’.","ජූනි.","ජූලි.","අගà·.","à·ƒà·à¶´à·Š.","ඔක්.","නොවà·.","දෙසà·.",""] + }, + AM: ["පෙ.à·€.","පෙ.à·€.","පෙ.à·€."], + PM: ["ප.à·€.","ප.à·€.","ප.à·€."], + eras: [{"name":"ක්\u200dරි.à·€.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd", + f: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd h:mm tt", + F: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd h:mm:ss tt", + Y: "yyyy MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "iu", "default", { + name: "iu", + englishName: "Inuktitut", + nativeName: "Inuktitut", + language: "iu", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "am", "default", { + name: "am", + englishName: "Amharic", + nativeName: "አማርኛ", + language: "am", + numberFormat: { + decimals: 1, + groupSizes: [3,0], + "NaN": "NAN", + percent: { + pattern: ["-n%","n%"], + decimals: 1, + groupSizes: [3,0] + }, + currency: { + pattern: ["-$n","$n"], + groupSizes: [3,0], + symbol: "ETB" + } + }, + calendars: { + standard: { + days: { + names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","áˆáˆ™áˆµ","ዓርብ","ቅዳሜ"], + namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","áˆáˆ™áˆµ","ዓርብ","ቅዳሜ"], + namesShort: ["እ","ሰ","ማ","ረ","áˆ","á‹“","ቅ"] + }, + months: { + names: ["ጃንዩወሪ","áŒá‰¥áˆ©á‹ˆáˆª","ማርች","ኤá•áˆ¨áˆ","ሜይ","áŒáŠ•","áŒáˆ‹á‹­","ኦገስት","ሴá•á‰´áˆá‰ áˆ­","ኦክተá‹á‰ áˆ­","ኖቬáˆá‰ áˆ­","ዲሴáˆá‰ áˆ­",""], + namesAbbr: ["ጃንዩ","áŒá‰¥áˆ©","ማርች","ኤá•áˆ¨","ሜይ","áŒáŠ•","áŒáˆ‹á‹­","ኦገስ","ሴá•á‰´","ኦክተ","ኖቬáˆ","ዲሴáˆ",""] + }, + AM: ["ጡዋት","ጡዋት","ጡዋት"], + PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], + eras: [{"name":"ዓመተ áˆáˆ•áˆ¨á‰µ","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd 'á£' MMMM d 'ቀን' yyyy", + f: "dddd 'á£' MMMM d 'ቀን' yyyy h:mm tt", + F: "dddd 'á£' MMMM d 'ቀን' yyyy h:mm:ss tt", + M: "MMMM d ቀን", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tzm", "default", { + name: "tzm", + englishName: "Tamazight", + nativeName: "Tamazight", + language: "tzm", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ne", "default", { + name: "ne", + englishName: "Nepali", + nativeName: "नेपाली", + language: "ne", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "रà¥" + } + }, + calendars: { + standard: { + days: { + names: ["आइतवार","सोमवार","मङà¥à¤—लवार","बà¥à¤§à¤µà¤¾à¤°","बिहीवार","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["आइत","सोम","मङà¥à¤—ल","बà¥à¤§","बिही","शà¥à¤•à¥à¤°","शनि"], + namesShort: ["आ","सो","म","बà¥","बि","शà¥","श"] + }, + months: { + names: ["जनवरी","फेबà¥à¤°à¥à¤…री","मारà¥à¤š","अपà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सेपà¥à¤Ÿà¥‡à¤®à¥à¤¬à¤°","अकà¥à¤Ÿà¥‹à¤¬à¤°","नोभेमà¥à¤¬à¤°","डिसेमà¥à¤¬à¤°",""], + namesAbbr: ["जन","फेब","मारà¥à¤š","अपà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¤¾à¤ˆ","अग","सेपà¥à¤Ÿ","अकà¥à¤Ÿ","नोभ","डिस",""] + }, + AM: ["विहानी","विहानी","विहानी"], + PM: ["बेलà¥à¤•à¥€","बेलà¥à¤•à¥€","बेलà¥à¤•à¥€"], + eras: [{"name":"a.d.","start":null,"offset":0}], + patterns: { + Y: "MMMM,yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fy", "default", { + name: "fy", + englishName: "Frisian", + nativeName: "Frysk", + language: "fy", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], + namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], + namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ps", "default", { + name: "ps", + englishName: "Pashto", + nativeName: "پښتو", + language: "ps", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": "ØŒ", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": "ØŒ", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + ",": "Ù¬", + ".": "Ù«", + symbol: "Ø‹" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","لنڈ Û","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا Úš","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","لنڈ Û","مرغومى",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"Ù„.Ù‡","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fil", "default", { + name: "fil", + englishName: "Filipino", + nativeName: "Filipino", + language: "fil", + numberFormat: { + currency: { + symbol: "PhP" + } + }, + calendars: { + standard: { + days: { + names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], + namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], + namesShort: ["L","L","M","M","H","B","S"] + }, + months: { + names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], + namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] + }, + eras: [{"name":"Anno Domini","start":null,"offset":0}] + } + } +}); + +Globalize.addCultureInfo( "dv", "default", { + name: "dv", + englishName: "Divehi", + nativeName: "Þ‹Þ¨ÞˆÞ¬Þ€Þ¨Þ„Þ¦ÞÞ°", + language: "dv", + isRTL: true, + numberFormat: { + currency: { + pattern: ["n $-","n $"], + symbol: "Þƒ." + } + }, + calendars: { + standard: { + name: "Hijri", + days: { + names: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesAbbr: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesShort: ["Þ‡Þ§","Þ€Þ¯","Þ‡Þ¦","Þ„Þª","Þ„Þª","Þ€Þª","Þ€Þ®"] + }, + months: { + names: ["Þ‰ÞªÞ™Þ¦Þ‡Þ°ÞƒÞ¦Þ‰Þ°","ÞžÞ¦ÞŠÞ¦ÞƒÞª","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ¦Þ‡Þ°ÞˆÞ¦ÞÞ°","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞª","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ«ÞÞ§","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞ§","ÞƒÞ¦Þ–Þ¦Þ„Þ°","ÞÞ¦Þ¢Þ°Þ„Þ§Þ‚Þ°","ÞƒÞ¦Þ‰Þ¦ÞŸÞ§Þ‚Þ°","ÞÞ¦Þ‡Þ°ÞˆÞ§ÞÞ°","Þ›ÞªÞÞ°Þ¤Þ¦Þ¢Þ¨Þ‹Þ§","Þ›ÞªÞÞ°Þ™Þ¨Þ‡Þ°Þ–Þ§",""], + namesAbbr: ["Þ‰ÞªÞ™Þ¦Þ‡Þ°ÞƒÞ¦Þ‰Þ°","ÞžÞ¦ÞŠÞ¦ÞƒÞª","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ¦Þ‡Þ°ÞˆÞ¦ÞÞ°","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞª","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ«ÞÞ§","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞ§","ÞƒÞ¦Þ–Þ¦Þ„Þ°","ÞÞ¦Þ¢Þ°Þ„Þ§Þ‚Þ°","ÞƒÞ¦Þ‰Þ¦ÞŸÞ§Þ‚Þ°","ÞÞ¦Þ‡Þ°ÞˆÞ§ÞÞ°","Þ›ÞªÞÞ°Þ¤Þ¦Þ¢Þ¨Þ‹Þ§","Þ›ÞªÞÞ°Þ™Þ¨Þ‡Þ°Þ–Þ§",""] + }, + AM: ["Þ‰Þ†","Þ‰Þ†","Þ‰Þ†"], + PM: ["Þ‰ÞŠ","Þ‰ÞŠ","Þ‰ÞŠ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd/MM/yyyy HH:mm", + F: "dd/MM/yyyy HH:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + days: { + names: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesAbbr: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesShort: ["Þ‡Þ§","Þ€Þ¯","Þ‡Þ¦","Þ„Þª","Þ„Þª","Þ€Þª","Þ€Þ®"] + }, + months: { + names: ["Þ–Þ¦Þ‚Þ¦ÞˆÞ¦ÞƒÞ©","ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©","Þ‰Þ§Þ—Þ°","Þ‡Þ­Þ•Þ°ÞƒÞ¨ÞÞ°","Þ‰Þ¬Þ‡Þ¨","Þ–Þ«Þ‚Þ°","Þ–ÞªÞÞ¦Þ‡Þ¨","Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þ°","ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦Þƒ","Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦Þƒ",""], + namesAbbr: ["Þ–Þ¦Þ‚Þ¦ÞˆÞ¦ÞƒÞ©","ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©","Þ‰Þ§Þ—Þ°","Þ‡Þ­Þ•Þ°ÞƒÞ¨ÞÞ°","Þ‰Þ¬Þ‡Þ¨","Þ–Þ«Þ‚Þ°","Þ–ÞªÞÞ¦Þ‡Þ¨","Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þ°","ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦Þƒ","Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦Þƒ",""] + }, + AM: ["Þ‰Þ†","Þ‰Þ†","Þ‰Þ†"], + PM: ["Þ‰ÞŠ","Þ‰ÞŠ","Þ‰ÞŠ"], + eras: [{"name":"Þ‰Þ©ÞÞ§Þ‹Þ©","start":null,"offset":0}], + patterns: { + d: "dd/MM/yy", + D: "ddd, yyyy MMMM dd", + t: "HH:mm", + T: "HH:mm:ss", + f: "ddd, yyyy MMMM dd HH:mm", + F: "ddd, yyyy MMMM dd HH:mm:ss", + Y: "yyyy, MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ha", "default", { + name: "ha", + englishName: "Hausa", + nativeName: "Hausa", + language: "ha", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "yo", "default", { + name: "yo", + englishName: "Yoruba", + nativeName: "Yoruba", + language: "yo", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], + namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] + }, + AM: ["Owuro","owuro","OWURO"], + PM: ["Ale","ale","ALE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "quz", "default", { + name: "quz", + englishName: "Quechua", + nativeName: "runasimi", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nso", "default", { + name: "nso", + englishName: "Sesotho sa Leboa", + nativeName: "Sesotho sa Leboa", + language: "nso", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Lamorena","MoÅ¡upologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], + namesAbbr: ["Lam","MoÅ¡","Lbb","Lbr","Lbn","Lbh","Mok"], + namesShort: ["L","M","L","L","L","L","M"] + }, + months: { + names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","NgoatoboÅ¡ego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], + namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ba", "default", { + name: "ba", + englishName: "Bashkir", + nativeName: "Башҡорт", + language: "ba", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ",", + symbol: "Ò»." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","КеÑаҙна","Йома","Шәмбе"], + namesAbbr: ["Йш","Дш","Шш","Шр","КÑ","Йм","Шб"], + namesShort: ["Йш","Дш","Шш","Шр","КÑ","Йм","Шб"] + }, + months: { + names: ["ғинуар","февраль","март","апрель","май","июнь","июль","авгуÑÑ‚","ÑентÑбрь","октÑбрь","ноÑбрь","декабрь",""], + namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy 'й'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'й' H:mm", + F: "d MMMM yyyy 'й' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "lb", "default", { + name: "lb", + englishName: "Luxembourgish", + nativeName: "Lëtzebuergesch", + language: "lb", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "n. num.", + negativeInfinity: "-onendlech", + positiveInfinity: "+onendlech", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], + namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], + namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kl", "default", { + name: "kl", + englishName: "Greenlandic", + nativeName: "kalaallisut", + language: "kl", + numberFormat: { + ",": ".", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + groupSizes: [3,0], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], + namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], + namesShort: ["sa","at","ma","pi","si","ta","ar"] + }, + months: { + names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ig", "default", { + name: "ig", + englishName: "Igbo", + nativeName: "Igbo", + language: "ig", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], + namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] + }, + AM: ["Ututu","ututu","UTUTU"], + PM: ["Efifie","efifie","EFIFIE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ii", "default", { + name: "ii", + englishName: "Yi", + nativeName: "ꆈꌠê±ê‚·", + language: "ii", + numberFormat: { + groupSizes: [3,0], + "NaN": "ꌗꂷꀋꉬ", + negativeInfinity: "ꀄꊭêŒê€‹ê‰†", + positiveInfinity: "ꈤê‡ê‘–ꀋꉬ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ê‘­ê†ê‘","ê†êŠ‚ê’”","ê†êŠ‚ê‘","ê†êŠ‚ꌕ","ê†êŠ‚ꇖ","ê†êŠ‚ꉬ","ê†êŠ‚ꃘ"], + namesAbbr: ["ê‘­ê†","ê†ê’”","ê†ê‘","ê†êŒ•","ê†ê‡–","ê†ê‰¬","ê†êƒ˜"], + namesShort: ["ê†","ê’”","ê‘","ꌕ","ꇖ","ꉬ","ꃘ"] + }, + months: { + names: ["ê‹ê†ª","ê‘ꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","êƒê†ª","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], + namesAbbr: ["ê‹ê†ª","ê‘ꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","êƒê†ª","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] + }, + AM: ["ꂵꆪꈌêˆ","ꂵꆪꈌêˆ","ꂵꆪꈌêˆ"], + PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], + eras: [{"name":"ꇬꑼ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ꈎ' M'ꆪ' d'ê‘'", + t: "tt h:mm", + T: "H:mm:ss", + f: "yyyy'ꈎ' M'ꆪ' d'ê‘' tt h:mm", + F: "yyyy'ꈎ' M'ꆪ' d'ê‘' H:mm:ss", + M: "M'ꆪ' d'ê‘'", + Y: "yyyy'ꈎ' M'ꆪ'" + } + } + } +}); + +Globalize.addCultureInfo( "arn", "default", { + name: "arn", + englishName: "Mapudungun", + nativeName: "Mapudungun", + language: "arn", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "moh", "default", { + name: "moh", + englishName: "Mohawk", + nativeName: "Kanien'kéha", + language: "moh", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] + } + } + } +}); + +Globalize.addCultureInfo( "br", "default", { + name: "br", + englishName: "Breton", + nativeName: "brezhoneg", + language: "br", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NkN", + negativeInfinity: "-Anfin", + positiveInfinity: "+Anfin", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], + namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], + namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] + }, + months: { + names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], + namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] + }, + AM: null, + PM: null, + eras: [{"name":"g. J.-K.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ug", "default", { + name: "ug", + englishName: "Uyghur", + nativeName: "ئۇيغۇرچە", + language: "ug", + isRTL: true, + numberFormat: { + "NaN": "سان ئەمەس", + negativeInfinity: "مەنپىي چەكسىزلىك", + positiveInfinity: "مۇسبەت چەكسىزلىك", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], + namesAbbr: ["ÙŠÛ•","دۈ","سە","چا","Ù¾Û•","جۈ","Ø´Û•"], + namesShort: ["ÙŠ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], + namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] + }, + AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], + PM: ["چۈشتىن ÙƒÛيىن","چۈشتىن ÙƒÛيىن","چۈشتىن ÙƒÛيىن"], + eras: [{"name":"مىلادى","start":null,"offset":0}], + patterns: { + d: "yyyy-M-d", + D: "yyyy-'يىلى' MMMM d-'كۈنى،'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", + F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", + M: "MMMM d'-كۈنى'", + Y: "yyyy-'يىلى' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mi", "default", { + name: "mi", + englishName: "Maori", + nativeName: "Reo MÄori", + language: "mi", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["RÄtapu","RÄhina","RÄtÅ«","RÄapa","RÄpare","RÄmere","RÄhoroi"], + namesAbbr: ["Ta","Hi","TÅ«","Apa","Pa","Me","Ho"], + namesShort: ["Ta","Hi","TÅ«","Aa","Pa","Me","Ho"] + }, + months: { + names: ["Kohi-tÄtea","Hui-tanguru","PoutÅ«-te-rangi","Paenga-whÄwhÄ","Haratua","Pipiri","HÅngongoi","Here-turi-kÅkÄ","Mahuru","Whiringa-Ä-nuku","Whiringa-Ä-rangi","Hakihea",""], + namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","HÅngo","Here","Mahu","Nuku","Rangi","Haki",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM, yyyy", + f: "dddd, dd MMMM, yyyy h:mm tt", + F: "dddd, dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM, yy" + } + } + } +}); + +Globalize.addCultureInfo( "oc", "default", { + name: "oc", + englishName: "Occitan", + nativeName: "Occitan", + language: "oc", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numeric", + negativeInfinity: "-Infinit", + positiveInfinity: "+Infinit", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], + namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], + namesShort: ["di","lu","ma","mè","jò","ve","sa"] + }, + months: { + names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + monthsGenitive: { + names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + AM: null, + PM: null, + eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd,' lo 'd MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", + F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "co", "default", { + name: "co", + englishName: "Corsican", + nativeName: "Corsu", + language: "co", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Mica numericu", + negativeInfinity: "-Infinitu", + positiveInfinity: "+Infinitu", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], + namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], + namesShort: ["du","lu","ma","me","gh","ve","sa"] + }, + months: { + names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], + namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] + }, + AM: null, + PM: null, + eras: [{"name":"dopu J-C","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gsw", "default", { + name: "gsw", + englishName: "Alsatian", + nativeName: "Elsässisch", + language: "gsw", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Ohne Nummer", + negativeInfinity: "-Unendlich", + positiveInfinity: "+Unendlich", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], + namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], + namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] + }, + months: { + names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], + namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] + }, + AM: null, + PM: null, + eras: [{"name":"Vor J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sah", "default", { + name: "sah", + englishName: "Yakut", + nativeName: "Ñаха", + language: "sah", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NAN", + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "Ñ." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["баÑкыһыанньа","бÑнидиÑнньик","оптуорунньук","ÑÑÑ€ÑдÑ","чÑппиÑÑ€","бÑÑтинÑÑ","Ñубуота"], + namesAbbr: ["БÑ","Бн","Оп","Ср","Чп","Бт","Сб"], + namesShort: ["БÑ","Бн","Оп","Ср","Чп","Бт","Сб"] + }, + months: { + names: ["ТохÑунньу","Олунньу","Кулун тутар","ÐœÑƒÑƒÑ ÑƒÑтар","Ыам ыйа","БÑÑ Ñ‹Ð¹Ð°","От ыйа","Ðтырдьах ыйа","Балаҕан ыйа","Ðлтынньы","СÑтинньи","ÐÑ…Ñынньы",""], + namesAbbr: ["Ñ‚Ñ…Ñ","олн","кул","мÑÑ‚","ыам","бÑÑ","отй","атр","блҕ","алт","Ñтн","ахÑ",""] + }, + monthsGenitive: { + names: ["тохÑунньу","олунньу","кулун тутар","Ð¼ÑƒÑƒÑ ÑƒÑтар","ыам ыйын","бÑÑ Ñ‹Ð¹Ñ‹Ð½","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","ÑÑтинньи","ахÑынньы",""], + namesAbbr: ["Ñ‚Ñ…Ñ","олн","кул","мÑÑ‚","ыам","бÑÑ","отй","атр","блҕ","алт","Ñтн","ахÑ",""] + }, + AM: null, + PM: null, + patterns: { + d: "MM.dd.yyyy", + D: "MMMM d yyyy 'Ñ.'", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d yyyy 'Ñ.' H:mm", + F: "MMMM d yyyy 'Ñ.' H:mm:ss", + Y: "MMMM yyyy 'Ñ.'" + } + } + } +}); + +Globalize.addCultureInfo( "qut", "default", { + name: "qut", + englishName: "K'iche", + nativeName: "K'iche", + language: "qut", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], + namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], + namesShort: ["ju","ka","ox","ka","jo","wa","wu"] + }, + months: { + names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], + namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "rw", "default", { + name: "rw", + englishName: "Kinyarwanda", + nativeName: "Kinyarwanda", + language: "rw", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "RWF" + } + }, + calendars: { + standard: { + days: { + names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], + namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], + namesShort: ["mb","ka","ga","ka","ga","ga","cy"] + }, + months: { + names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], + namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] + }, + AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], + PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], + eras: [{"name":"AD","start":null,"offset":0}] + } + } +}); + +Globalize.addCultureInfo( "wo", "default", { + name: "wo", + englishName: "Wolof", + nativeName: "Wolof", + language: "wo", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "XOF" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "prs", "default", { + name: "prs", + englishName: "Dari", + nativeName: "درى", + language: "prs", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + symbol: "Ø‹" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 5, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 5, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","ليندÛ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","ليندÛ","مرغومى",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"Ù„.Ù‡","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gd", "default", { + name: "gd", + englishName: "Scottish Gaelic", + nativeName: "Gàidhlig", + language: "gd", + numberFormat: { + negativeInfinity: "-Neo-chrìochnachd", + positiveInfinity: "Neo-chrìochnachd", + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], + namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], + namesShort: ["D","L","M","C","A","H","S"] + }, + months: { + names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ã’gmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], + namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ã’gm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] + }, + AM: ["m","m","M"], + PM: ["f","f","F"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-SA", "default", { + name: "ar-SA", + englishName: "Arabic (Saudi Arabia)", + nativeName: "العربية (المملكة العربية السعودية)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.س.\u200f" + } + }, + calendars: { + standard: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "bg-BG", "default", { + name: "bg-BG", + englishName: "Bulgarian (Bulgaria)", + nativeName: "българÑки (БългариÑ)", + language: "bg", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "- безкрайноÑÑ‚", + positiveInfinity: "+ безкрайноÑÑ‚", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "лв." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неделÑ","понеделник","вторник","ÑÑ€Ñда","четвъртък","петък","Ñъбота"], + namesAbbr: ["нед","пон","вт","ÑÑ€","четв","пет","Ñъб"], + namesShort: ["н","п","в","Ñ","ч","п","Ñ"] + }, + months: { + names: ["Ñнуари","февруари","март","април","май","юни","юли","авгуÑÑ‚","Ñептември","октомври","ноември","декември",""], + namesAbbr: ["Ñн","февр","март","апр","май","юни","юли","авг","Ñепт","окт","ноември","дек",""] + }, + AM: null, + PM: null, + eras: [{"name":"Ñлед новата ера","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy 'г.'", + D: "dd MMMM yyyy 'г.'", + t: "HH:mm 'ч.'", + T: "HH:mm:ss 'ч.'", + f: "dd MMMM yyyy 'г.' HH:mm 'ч.'", + F: "dd MMMM yyyy 'г.' HH:mm:ss 'ч.'", + M: "dd MMMM", + Y: "MMMM yyyy 'г.'" + } + } + } +}); + +Globalize.addCultureInfo( "ca-ES", "default", { + name: "ca-ES", + englishName: "Catalan (Catalan)", + nativeName: "català (català)", + language: "ca", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinit", + positiveInfinity: "Infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"], + namesAbbr: ["dg.","dl.","dt.","dc.","dj.","dv.","ds."], + namesShort: ["dg","dl","dt","dc","dj","dv","ds"] + }, + months: { + names: ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""], + namesAbbr: ["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' / 'MMMM' / 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' / 'MMMM' / 'yyyy HH:mm", + F: "dddd, d' / 'MMMM' / 'yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM' / 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh-TW", "default", { + name: "zh-TW", + englishName: "Chinese (Traditional, Taiwan)", + nativeName: "中文(å°ç£)", + language: "zh-CHT", + numberFormat: { + "NaN": "ä¸æ˜¯ä¸€å€‹æ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "NT$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"西元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' tt hh:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' tt hh:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + }, + Taiwan: { + name: "Taiwan", + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"","start":null,"offset":1911}], + twoDigitYearMax: 99, + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' tt hh:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' tt hh:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "cs-CZ", "default", { + name: "cs-CZ", + englishName: "Czech (Czech Republic)", + nativeName: "ÄeÅ¡tina (ÄŒeská republika)", + language: "cs", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Není Äíslo", + negativeInfinity: "-nekoneÄno", + positiveInfinity: "+nekoneÄno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "KÄ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedÄ›le","pondÄ›lí","úterý","stÅ™eda","Ätvrtek","pátek","sobota"], + namesAbbr: ["ne","po","út","st","Ät","pá","so"], + namesShort: ["ne","po","út","st","Ät","pá","so"] + }, + months: { + names: ["leden","únor","bÅ™ezen","duben","kvÄ›ten","Äerven","Äervenec","srpen","září","říjen","listopad","prosinec",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["ledna","února","bÅ™ezna","dubna","kvÄ›tna","Äervna","Äervence","srpna","září","října","listopadu","prosince",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["dop.","dop.","DOP."], + PM: ["odp.","odp.","ODP."], + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "da-DK", "default", { + name: "da-DK", + englishName: "Danish (Denmark)", + nativeName: "dansk (Danmark)", + language: "da", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "de-DE", "default", { + name: "de-DE", + englishName: "German (Germany)", + nativeName: "Deutsch (Deutschland)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "el-GR", "default", { + name: "el-GR", + englishName: "Greek (Greece)", + nativeName: "Ελληνικά (Ελλάδα)", + language: "el", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "μη αÏιθμός", + negativeInfinity: "-ΆπειÏο", + positiveInfinity: "ΆπειÏο", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ΚυÏιακή","ΔευτέÏα","ΤÏίτη","ΤετάÏτη","Πέμπτη","ΠαÏασκευή","Σάββατο"], + namesAbbr: ["ΚυÏ","Δευ","ΤÏι","Τετ","Πεμ","ΠαÏ","Σαβ"], + namesShort: ["Κυ","Δε","ΤÏ","Τε","Πε","Πα","Σά"] + }, + months: { + names: ["ΙανουάÏιος","ΦεβÏουάÏιος","ΜάÏτιος","ΑπÏίλιος","Μάιος","ΙοÏνιος","ΙοÏλιος","ΑÏγουστος","ΣεπτέμβÏιος","ΟκτώβÏιος","ÎοέμβÏιος","ΔεκέμβÏιος",""], + namesAbbr: ["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ",""] + }, + monthsGenitive: { + names: ["ΙανουαÏίου","ΦεβÏουαÏίου","ΜαÏτίου","ΑπÏιλίου","ΜαÎου","Ιουνίου","Ιουλίου","ΑυγοÏστου","ΣεπτεμβÏίου","ΟκτωβÏίου","ÎοεμβÏίου","ΔεκεμβÏίου",""], + namesAbbr: ["Ιαν","Φεβ","ΜαÏ","ΑπÏ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Îοε","Δεκ",""] + }, + AM: ["πμ","πμ","ΠΜ"], + PM: ["μμ","μμ","ΜΜ"], + eras: [{"name":"μ.Χ.","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-US", "default", { + name: "en-US", + englishName: "English (United States)" +}); + +Globalize.addCultureInfo( "fi-FI", "default", { + name: "fi-FI", + englishName: "Finnish (Finland)", + nativeName: "suomi (Suomi)", + language: "fi", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"], + namesAbbr: ["su","ma","ti","ke","to","pe","la"], + namesShort: ["su","ma","ti","ke","to","pe","la"] + }, + months: { + names: ["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""], + namesAbbr: ["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM'ta 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM'ta 'yyyy H:mm", + F: "d. MMMM'ta 'yyyy H:mm:ss", + M: "d. MMMM'ta'", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-FR", "default", { + name: "fr-FR", + englishName: "French (France)", + nativeName: "français (France)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "he-IL", "default", { + name: "he-IL", + englishName: "Hebrew (Israel)", + nativeName: "עברית (ישר×ל)", + language: "he", + isRTL: true, + numberFormat: { + "NaN": "×œ× ×ž×¡×¤×¨", + negativeInfinity: "×ינסוף שלילי", + positiveInfinity: "×ינסוף חיובי", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "₪" + } + }, + calendars: { + standard: { + days: { + names: ["יו× ר×שון","יו× שני","יו× שלישי","יו× רביעי","יו× חמישי","יו× שישי","שבת"], + namesAbbr: ["יו× ×","יו× ב","יו× ג","יו× ד","יו× ה","יו× ו","שבת"], + namesShort: ["×","ב","×’","ד","×”","ו","ש"] + }, + months: { + names: ["ינו×ר","פברו×ר","מרץ","×פריל","מ××™","יוני","יולי","×וגוסט","ספטמבר","×וקטובר","נובמבר","דצמבר",""], + namesAbbr: ["ינו","פבר","מרץ","×פר","מ××™","יונ","יול","×וג","ספט","×וק","נוב","דצמ",""] + }, + eras: [{"name":"לספירה","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Hebrew: { + name: "Hebrew", + "/": " ", + days: { + names: ["יו× ר×שון","יו× שני","יו× שלישי","יו× רביעי","יו× חמישי","יו× שישי","שבת"], + namesAbbr: ["×","ב","×’","ד","×”","ו","ש"], + namesShort: ["×","ב","×’","ד","×”","ו","ש"] + }, + months: { + names: ["תשרי","חשון","כסלו","טבת","שבט","×דר","×דר ב","ניסן","×ייר","סיון","תמוז","×ב","×לול"], + namesAbbr: ["תשרי","חשון","כסלו","טבת","שבט","×דר","×דר ב","ניסן","×ייר","סיון","תמוז","×ב","×לול"] + }, + eras: [{"name":"C.E.","start":null,"offset":0}], + twoDigitYearMax: 5790, + patterns: { + d: "dd MMMM yyyy", + D: "dddd dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd dd MMMM yyyy HH:mm", + F: "dddd dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hu-HU", "default", { + name: "hu-HU", + englishName: "Hungarian (Hungary)", + nativeName: "magyar (Magyarország)", + language: "hu", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nem szám", + negativeInfinity: "negatív végtelen", + positiveInfinity: "végtelen", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ft" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["vasárnap","hétfÅ‘","kedd","szerda","csütörtök","péntek","szombat"], + namesAbbr: ["V","H","K","Sze","Cs","P","Szo"], + namesShort: ["V","H","K","Sze","Cs","P","Szo"] + }, + months: { + names: ["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""], + namesAbbr: ["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""] + }, + AM: ["de.","de.","DE."], + PM: ["du.","du.","DU."], + eras: [{"name":"i.sz.","start":null,"offset":0}], + patterns: { + d: "yyyy.MM.dd.", + D: "yyyy. MMMM d.", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy. MMMM d. H:mm", + F: "yyyy. MMMM d. H:mm:ss", + M: "MMMM d.", + Y: "yyyy. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "is-IS", "default", { + name: "is-IS", + englishName: "Icelandic (Iceland)", + nativeName: "íslenska (Ãsland)", + language: "is", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"], + namesAbbr: ["sun.","mán.","þri.","mið.","fim.","fös.","lau."], + namesShort: ["su","má","þr","mi","fi","fö","la"] + }, + months: { + names: ["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""], + namesAbbr: ["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "it-IT", "default", { + name: "it-IT", + englishName: "Italian (Italy)", + nativeName: "italiano (Italia)", + language: "it", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ja-JP", "default", { + name: "ja-JP", + englishName: "Japanese (Japan)", + nativeName: "日本語 (日本)", + language: "ja", + numberFormat: { + "NaN": "NaN (éžæ•°å€¤)", + negativeInfinity: "-∞", + positiveInfinity: "+∞", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["日曜日","月曜日","ç«æ›œæ—¥","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["æ—¥","月","ç«","æ°´","木","金","土"], + namesShort: ["æ—¥","月","ç«","æ°´","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["åˆå‰","åˆå‰","åˆå‰"], + PM: ["åˆå¾Œ","åˆå¾Œ","åˆå¾Œ"], + eras: [{"name":"西暦","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + }, + Japanese: { + name: "Japanese", + days: { + names: ["日曜日","月曜日","ç«æ›œæ—¥","水曜日","木曜日","金曜日","土曜日"], + namesAbbr: ["æ—¥","月","ç«","æ°´","木","金","土"], + namesShort: ["æ—¥","月","ç«","æ°´","木","金","土"] + }, + months: { + names: ["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["åˆå‰","åˆå‰","åˆå‰"], + PM: ["åˆå¾Œ","åˆå¾Œ","åˆå¾Œ"], + eras: [{"name":"å¹³æˆ","start":null,"offset":1867},{"name":"昭和","start":-1812153600000,"offset":1911},{"name":"大正","start":-1357603200000,"offset":1925},{"name":"明治","start":60022080000,"offset":1988}], + twoDigitYearMax: 99, + patterns: { + d: "gg y/M/d", + D: "gg y'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "gg y'å¹´'M'月'd'æ—¥' H:mm", + F: "gg y'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "gg y'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "ko-KR", "default", { + name: "ko-KR", + englishName: "Korean (Korea)", + nativeName: "한국어 (대한민국)", + language: "ko", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + decimals: 0, + symbol: "â‚©" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","토요ì¼"], + namesAbbr: ["ì¼","ì›”","í™”","수","목","금","토"], + namesShort: ["ì¼","ì›”","í™”","수","목","금","토"] + }, + months: { + names: ["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"서기","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy'ë…„' M'ì›”' d'ì¼' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm", + F: "yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm:ss", + M: "M'ì›”' d'ì¼'", + Y: "yyyy'ë…„' M'ì›”'" + } + }, + Korean: { + name: "Korean", + "/": "-", + days: { + names: ["ì¼ìš”ì¼","월요ì¼","화요ì¼","수요ì¼","목요ì¼","금요ì¼","토요ì¼"], + namesAbbr: ["ì¼","ì›”","í™”","수","목","금","토"], + namesShort: ["ì¼","ì›”","í™”","수","목","금","토"] + }, + months: { + names: ["1ì›”","2ì›”","3ì›”","4ì›”","5ì›”","6ì›”","7ì›”","8ì›”","9ì›”","10ì›”","11ì›”","12ì›”",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: ["오전","오전","오전"], + PM: ["오후","오후","오후"], + eras: [{"name":"단기","start":null,"offset":-2333}], + twoDigitYearMax: 4362, + patterns: { + d: "gg yyyy-MM-dd", + D: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm", + F: "gg yyyy'ë…„' M'ì›”' d'ì¼' dddd tt h:mm:ss", + M: "M'ì›”' d'ì¼'", + Y: "gg yyyy'ë…„' M'ì›”'" + } + } + } +}); + +Globalize.addCultureInfo( "nl-NL", "default", { + name: "nl-NL", + englishName: "Dutch (Netherlands)", + nativeName: "Nederlands (Nederland)", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nb-NO", "default", { + name: "nb-NO", + englishName: "Norwegian, BokmÃ¥l (Norway)", + nativeName: "norsk, bokmÃ¥l (Norge)", + language: "nb", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pl-PL", "default", { + name: "pl-PL", + englishName: "Polish (Poland)", + nativeName: "polski (Polska)", + language: "pl", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "nie jest liczbÄ…", + negativeInfinity: "-nieskoÅ„czoność", + positiveInfinity: "+nieskoÅ„czoność", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "zÅ‚" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["niedziela","poniedziaÅ‚ek","wtorek","Å›roda","czwartek","piÄ…tek","sobota"], + namesAbbr: ["N","Pn","Wt","Åšr","Cz","Pt","So"], + namesShort: ["N","Pn","Wt","Åšr","Cz","Pt","So"] + }, + months: { + names: ["styczeÅ„","luty","marzec","kwiecieÅ„","maj","czerwiec","lipiec","sierpieÅ„","wrzesieÅ„","październik","listopad","grudzieÅ„",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + monthsGenitive: { + names: ["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrzeÅ›nia","października","listopada","grudnia",""], + namesAbbr: ["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pt-BR", "default", { + name: "pt-BR", + englishName: "Portuguese (Brazil)", + nativeName: "Português (Brasil)", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "R$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""], + namesAbbr: ["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "rm-CH", "default", { + name: "rm-CH", + englishName: "Romansh (Switzerland)", + nativeName: "Rumantsch (Svizra)", + language: "rm", + numberFormat: { + ",": "'", + "NaN": "betg def.", + negativeInfinity: "-infinit", + positiveInfinity: "+infinit", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumengia","glindesdi","mardi","mesemna","gievgia","venderdi","sonda"], + namesAbbr: ["du","gli","ma","me","gie","ve","so"], + namesShort: ["du","gli","ma","me","gie","ve","so"] + }, + months: { + names: ["schaner","favrer","mars","avrigl","matg","zercladur","fanadur","avust","settember","october","november","december",""], + namesAbbr: ["schan","favr","mars","avr","matg","zercl","fan","avust","sett","oct","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"s. Cr.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d MMMM yyyy HH:mm", + F: "dddd, d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ro-RO", "default", { + name: "ro-RO", + englishName: "Romanian (Romania)", + nativeName: "română (România)", + language: "ro", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "lei" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["duminică","luni","marÅ£i","miercuri","joi","vineri","sâmbătă"], + namesAbbr: ["D","L","Ma","Mi","J","V","S"], + namesShort: ["D","L","Ma","Mi","J","V","S"] + }, + months: { + names: ["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""], + namesAbbr: ["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ru-RU", "default", { + name: "ru-RU", + englishName: "Russian (Russia)", + nativeName: "руÑÑкий (РоÑÑиÑ)", + language: "ru", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["воÑкреÑенье","понедельник","вторник","Ñреда","четверг","пÑтница","Ñуббота"], + namesAbbr: ["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"], + namesShort: ["Ð’Ñ","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Ñнв","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + monthsGenitive: { + names: ["ÑнварÑ","февралÑ","марта","апрелÑ","маÑ","июнÑ","июлÑ","авгуÑта","ÑентÑбрÑ","октÑбрÑ","ноÑбрÑ","декабрÑ",""], + namesAbbr: ["Ñнв","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'г.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'г.' H:mm", + F: "d MMMM yyyy 'г.' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hr-HR", "default", { + name: "hr-HR", + englishName: "Croatian (Croatia)", + nativeName: "hrvatski (Hrvatska)", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kn" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["sijeÄanj","veljaÄa","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["sijeÄnja","veljaÄe","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sk-SK", "default", { + name: "sk-SK", + englishName: "Slovak (Slovakia)", + nativeName: "slovenÄina (Slovenská republika)", + language: "sk", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Nie je Äíslo", + negativeInfinity: "-nekoneÄno", + positiveInfinity: "+nekoneÄno", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["nedeľa","pondelok","utorok","streda","Å¡tvrtok","piatok","sobota"], + namesAbbr: ["ne","po","ut","st","Å¡t","pi","so"], + namesShort: ["ne","po","ut","st","Å¡t","pi","so"] + }, + months: { + names: ["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + monthsGenitive: { + names: ["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""], + namesAbbr: ["1","2","3","4","5","6","7","8","9","10","11","12",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. l.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sq-AL", "default", { + name: "sq-AL", + englishName: "Albanian (Albania)", + nativeName: "shqipe (Shqipëria)", + language: "sq", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-infinit", + positiveInfinity: "infinit", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": ".", + ".": ",", + symbol: "Lek" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"], + namesAbbr: ["Die","Hën","Mar","Mër","Enj","Pre","Sht"], + namesShort: ["Di","Hë","Ma","Më","En","Pr","Sh"] + }, + months: { + names: ["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""], + namesAbbr: ["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""] + }, + AM: ["PD","pd","PD"], + PM: ["MD","md","MD"], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy-MM-dd", + t: "h:mm.tt", + T: "h:mm:ss.tt", + f: "yyyy-MM-dd h:mm.tt", + F: "yyyy-MM-dd h:mm:ss.tt", + Y: "yyyy-MM" + } + } + } +}); + +Globalize.addCultureInfo( "sv-SE", "default", { + name: "sv-SE", + englishName: "Swedish (Sweden)", + nativeName: "svenska (Sverige)", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["söndag","mÃ¥ndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","mÃ¥","ti","on","to","fr","lö"], + namesShort: ["sö","mÃ¥","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "th-TH", "default", { + name: "th-TH", + englishName: "Thai (Thailand)", + nativeName: "ไทย (ไทย)", + language: "th", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "฿" + } + }, + calendars: { + standard: { + name: "ThaiBuddhist", + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุà¸à¸£à¹Œ","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ à¸²à¸žà¸±à¸™à¸˜à¹Œ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม",""], + namesAbbr: ["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + eras: [{"name":"พ.ศ.","start":null,"offset":-543}], + twoDigitYearMax: 2572, + patterns: { + d: "d/M/yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + }, + Gregorian_Localized: { + firstDay: 1, + days: { + names: ["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุà¸à¸£à¹Œ","เสาร์"], + namesAbbr: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], + namesShort: ["อ","จ","อ","พ","พ","ศ","ส"] + }, + months: { + names: ["มà¸à¸£à¸²à¸„ม","à¸à¸¸à¸¡à¸ à¸²à¸žà¸±à¸™à¸˜à¹Œ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","à¸à¸£à¸à¸Žà¸²à¸„ม","สิงหาคม","à¸à¸±à¸™à¸¢à¸²à¸¢à¸™","ตุลาคม","พฤศจิà¸à¸²à¸¢à¸™","ธันวาคม",""], + namesAbbr: ["ม.ค.","à¸.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","à¸.ค.","ส.ค.","à¸.ย.","ต.ค.","พ.ย.","ธ.ค.",""] + }, + patterns: { + d: "d/M/yyyy", + D: "'วัน'dddd'ที่' d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "'วัน'dddd'ที่' d MMMM yyyy H:mm", + F: "'วัน'dddd'ที่' d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tr-TR", "default", { + name: "tr-TR", + englishName: "Turkish (Turkey)", + nativeName: "Türkçe (Türkiye)", + language: "tr", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "TL" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Pazar","Pazartesi","Salı","ÇarÅŸamba","PerÅŸembe","Cuma","Cumartesi"], + namesAbbr: ["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"], + namesShort: ["Pz","Pt","Sa","Ça","Pe","Cu","Ct"] + }, + months: { + names: ["Ocak","Åžubat","Mart","Nisan","Mayıs","Haziran","Temmuz","AÄŸustos","Eylül","Ekim","Kasım","Aralık",""], + namesAbbr: ["Oca","Åžub","Mar","Nis","May","Haz","Tem","AÄŸu","Eyl","Eki","Kas","Ara",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ur-PK", "default", { + name: "ur-PK", + englishName: "Urdu (Islamic Republic of Pakistan)", + nativeName: "اÙردو (پاکستان)", + language: "ur", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$n"], + symbol: "Rs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","Ù‡Ùته"], + namesAbbr: ["اتوار","پير","منگل","بدھ","جمعرات","جمعه","Ù‡Ùته"], + namesShort: ["ا","Ù¾","Ù…","ب","ج","ج","Ù‡"] + }, + months: { + names: ["جنوری","Ùروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""], + namesAbbr: ["جنوری","Ùروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + f: "dd MMMM, yyyy h:mm tt", + F: "dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + } + } +}); + +Globalize.addCultureInfo( "id-ID", "default", { + name: "id-ID", + englishName: "Indonesian (Indonesia)", + nativeName: "Bahasa Indonesia (Indonesia)", + language: "id", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": ",", + symbol: "Rp" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"], + namesAbbr: ["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"], + namesShort: ["M","S","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uk-UA", "default", { + name: "uk-UA", + englishName: "Ukrainian (Ukraine)", + nativeName: "українÑька (Україна)", + language: "uk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-безмежніÑÑ‚ÑŒ", + positiveInfinity: "безмежніÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚´" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["неділÑ","понеділок","вівторок","Ñереда","четвер","п'ÑтницÑ","Ñубота"], + namesAbbr: ["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"], + namesShort: ["Ðд","Пн","Ð’Ñ‚","Ср","Чт","Пт","Сб"] + }, + months: { + names: ["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","ВереÑень","Жовтень","ЛиÑтопад","Грудень",""], + namesAbbr: ["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","ЛиÑ","Гру",""] + }, + monthsGenitive: { + names: ["ÑічнÑ","лютого","березнÑ","квітнÑ","травнÑ","червнÑ","липнÑ","ÑерпнÑ","вереÑнÑ","жовтнÑ","лиÑтопада","груднÑ",""], + namesAbbr: ["Ñіч","лют","бер","кві","тра","чер","лип","Ñер","вер","жов","лиÑ","гру",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy' Ñ€.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy' Ñ€.' H:mm", + F: "d MMMM yyyy' Ñ€.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy' Ñ€.'" + } + } + } +}); + +Globalize.addCultureInfo( "be-BY", "default", { + name: "be-BY", + englishName: "Belarusian (Belarus)", + nativeName: "БеларуÑкі (БеларуÑÑŒ)", + language: "be", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["нÑдзелÑ","панÑдзелак","аўторак","Ñерада","чацвер","пÑтніца","Ñубота"], + namesAbbr: ["нд","пн","аў","ÑÑ€","чц","пт","Ñб"], + namesShort: ["нд","пн","аў","ÑÑ€","чц","пт","Ñб"] + }, + months: { + names: ["Студзень","Люты","Сакавік","КраÑавік","Май","ЧÑрвень","Ліпень","Жнівень","ВераÑень","КаÑтрычнік","ЛіÑтапад","Снежань",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","ЧÑÑ€","Ліп","Жні","Вер","КаÑ","ЛіÑ","Сне",""] + }, + monthsGenitive: { + names: ["ÑтудзенÑ","лютага","Ñакавіка","краÑавіка","маÑ","чÑрвенÑ","ліпенÑ","жніўнÑ","вераÑнÑ","каÑтрычніка","ліÑтапада","ÑнежнÑ",""], + namesAbbr: ["Сту","Лют","Сак","Кра","Май","ЧÑÑ€","Ліп","Жні","Вер","КаÑ","ЛіÑ","Сне",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sl-SI", "default", { + name: "sl-SI", + englishName: "Slovenian (Slovenia)", + nativeName: "slovenski (Slovenija)", + language: "sl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-neskonÄnost", + positiveInfinity: "neskonÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljek","torek","sreda","Äetrtek","petek","sobota"], + namesAbbr: ["ned","pon","tor","sre","Äet","pet","sob"], + namesShort: ["ne","po","to","sr","Äe","pe","so"] + }, + months: { + names: ["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "et-EE", "default", { + name: "et-EE", + englishName: "Estonian (Estonia)", + nativeName: "eesti (Eesti)", + language: "et", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "avaldamatu", + negativeInfinity: "miinuslõpmatus", + positiveInfinity: "plusslõpmatus", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"], + namesAbbr: ["P","E","T","K","N","R","L"], + namesShort: ["P","E","T","K","N","R","L"] + }, + months: { + names: ["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""], + namesAbbr: ["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""] + }, + AM: ["EL","el","EL"], + PM: ["PL","pl","PL"], + patterns: { + d: "d.MM.yyyy", + D: "d. MMMM yyyy'. a.'", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy'. a.' H:mm", + F: "d. MMMM yyyy'. a.' H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy'. a.'" + } + } + } +}); + +Globalize.addCultureInfo( "lv-LV", "default", { + name: "lv-LV", + englishName: "Latvian (Latvia)", + nativeName: "latvieÅ¡u (Latvija)", + language: "lv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-bezgalÄ«ba", + positiveInfinity: "bezgalÄ«ba", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": " ", + ".": ",", + symbol: "Ls" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["svÄ“tdiena","pirmdiena","otrdiena","treÅ¡diena","ceturtdiena","piektdiena","sestdiena"], + namesAbbr: ["sv","pr","ot","tr","ce","pk","se"], + namesShort: ["sv","pr","ot","tr","ce","pk","se"] + }, + months: { + names: ["janvÄris","februÄris","marts","aprÄ«lis","maijs","jÅ«nijs","jÅ«lijs","augusts","septembris","oktobris","novembris","decembris",""], + namesAbbr: ["jan","feb","mar","apr","mai","jÅ«n","jÅ«l","aug","sep","okt","nov","dec",""] + }, + monthsGenitive: { + names: ["janvÄrÄ«","februÄrÄ«","martÄ","aprÄ«lÄ«","maijÄ","jÅ«nijÄ","jÅ«lijÄ","augustÄ","septembrÄ«","oktobrÄ«","novembrÄ«","decembrÄ«",""], + namesAbbr: ["jan","feb","mar","apr","mai","jÅ«n","jÅ«l","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd.", + D: "dddd, yyyy'. gada 'd. MMMM", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, yyyy'. gada 'd. MMMM H:mm", + F: "dddd, yyyy'. gada 'd. MMMM H:mm:ss", + M: "d. MMMM", + Y: "yyyy. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "lt-LT", "default", { + name: "lt-LT", + englishName: "Lithuanian (Lithuania)", + nativeName: "lietuvių (Lietuva)", + language: "lt", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-begalybÄ—", + positiveInfinity: "begalybÄ—", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Lt" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sekmadienis","pirmadienis","antradienis","treÄiadienis","ketvirtadienis","penktadienis","Å¡eÅ¡tadienis"], + namesAbbr: ["Sk","Pr","An","Tr","Kt","Pn","Å t"], + namesShort: ["S","P","A","T","K","Pn","Å "] + }, + months: { + names: ["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjÅ«tis","rugsÄ—jis","spalis","lapkritis","gruodis",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + monthsGenitive: { + names: ["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjÅ«Äio","rugsÄ—jo","spalio","lapkriÄio","gruodžio",""], + namesAbbr: ["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy.MM.dd", + D: "yyyy 'm.' MMMM d 'd.'", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'm.' MMMM d 'd.' HH:mm", + F: "yyyy 'm.' MMMM d 'd.' HH:mm:ss", + M: "MMMM d 'd.'", + Y: "yyyy 'm.' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "tg-Cyrl-TJ", "default", { + name: "tg-Cyrl-TJ", + englishName: "Tajik (Cyrillic, Tajikistan)", + nativeName: "Тоҷикӣ (ТоҷикиÑтон)", + language: "tg-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "Ñ‚.Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвари","феврали","марти","апрели","маи","июни","июли","авгуÑти","ÑентÑбри","октÑбри","ноÑбри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fa-IR", "default", { + name: "fa-IR", + englishName: "Persian", + nativeName: "Ùارسى (ایران)", + language: "fa", + isRTL: true, + numberFormat: { + pattern: ["n-"], + currency: { + pattern: ["$n-","$ n"], + ".": "/", + symbol: "ريال" + } + }, + calendars: { + standard: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["ژانويه","Ùوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اÙكتبر","نوامبر","دسامبر",""], + namesAbbr: ["ژانويه","Ùوريه","مارس","آوريل","مى","ژوئن","ژوئيه","اوت","سپتامبر","اÙكتبر","نوامبر","دسامبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + patterns: { + d: "yyyy/MM/dd", + D: "yyyy/MM/dd", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "yyyy/MM/dd hh:mm tt", + F: "yyyy/MM/dd hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["Ù‚.ظ","Ù‚.ظ","Ù‚.ظ"], + PM: ["ب.ظ","ب.ظ","ب.ظ"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "vi-VN", "default", { + name: "vi-VN", + englishName: "Vietnamese (Vietnam)", + nativeName: "TiêÌng Việt (Việt Nam)", + language: "vi", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "â‚«" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Chủ Nhật","ThÆ°Ì Hai","ThÆ°Ì Ba","ThÆ°Ì TÆ°","ThÆ°Ì Năm","ThÆ°Ì SaÌu","ThÆ°Ì Bảy"], + namesAbbr: ["CN","Hai","Ba","TÆ°","Năm","SaÌu","Bảy"], + namesShort: ["C","H","B","T","N","S","B"] + }, + months: { + names: ["ThaÌng Giêng","ThaÌng Hai","ThaÌng Ba","ThaÌng TÆ°","ThaÌng Năm","ThaÌng SaÌu","ThaÌng Bảy","ThaÌng TaÌm","ThaÌng ChiÌn","ThaÌng MÆ°Æ¡Ì€i","ThaÌng MÆ°Æ¡Ì€i Một","ThaÌng MÆ°Æ¡Ì€i Hai",""], + namesAbbr: ["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""] + }, + AM: ["SA","sa","SA"], + PM: ["CH","ch","CH"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + f: "dd MMMM yyyy h:mm tt", + F: "dd MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hy-AM", "default", { + name: "hy-AM", + englishName: "Armenian (Armenia)", + nativeName: "Õ€Õ¡ÕµÕ¥Ö€Õ¥Õ¶ (Õ€Õ¡ÕµÕ¡Õ½Õ¿Õ¡Õ¶)", + language: "hy", + numberFormat: { + currency: { + pattern: ["-n $","n $"], + symbol: "Õ¤Ö€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ô¿Õ«Ö€Õ¡Õ¯Õ«","ÔµÖ€Õ¯Õ¸Ö‚Õ·Õ¡Õ¢Õ©Õ«","ÔµÖ€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ‰Õ¸Ö€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«","Õ€Õ«Õ¶Õ£Õ·Õ¡Õ¢Õ©Õ«","ÕˆÕ’Ö€Õ¢Õ¡Õ©","Õ‡Õ¡Õ¢Õ¡Õ©"], + namesAbbr: ["Ô¿Õ«Ö€","ÔµÖ€Õ¯","ÔµÖ€Ö„","Õ‰Ö€Ö„","Õ€Õ¶Õ£","ÕˆÕ’Ö€","Õ‡Õ¢Õ©"], + namesShort: ["Ô¿","Ôµ","Ôµ","Õ‰","Õ€","Õˆ","Õ‡"] + }, + months: { + names: ["Õ€Õ¸Ö‚Õ¶Õ¾Õ¡Ö€","Õ“Õ¥Õ¿Ö€Õ¾Õ¡Ö€","Õ„Õ¡Ö€Õ¿","Ô±ÕºÖ€Õ«Õ¬","Õ„Õ¡ÕµÕ«Õ½","Õ€Õ¸Ö‚Õ¶Õ«Õ½","Õ€Õ¸Ö‚Õ¬Õ«Õ½","Õ•Õ£Õ¸Õ½Õ¿Õ¸Õ½","ÕÕ¥ÕºÕ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ€Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€","Õ†Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€","Ô´Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€",""], + namesAbbr: ["Õ€Õ†ÕŽ","Õ“ÕÕŽ","Õ„ÕÕ","Ô±ÕŠÕ","Õ„Õ…Õ","Õ€Õ†Õ","Õ€Ô¼Õ","Õ•Ô³Õ","ÕÔµÕŠ","Õ€ÕˆÔ¿","Õ†ÕˆÕ…","Ô´ÔµÔ¿",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM, yyyy H:mm", + F: "d MMMM, yyyy H:mm:ss", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "az-Latn-AZ", "default", { + name: "az-Latn-AZ", + englishName: "Azeri (Latin, Azerbaijan)", + nativeName: "AzÉ™rbaycan\xadılı (AzÉ™rbaycan)", + language: "az-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertÉ™si","ÇərÅŸÉ™nbə axÅŸamı","ÇərÅŸÉ™nbÉ™","Cümə axÅŸamı","CümÉ™","ŞənbÉ™"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Åž"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Åž"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","Ä°yun","Ä°yul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "eu-ES", "default", { + name: "eu-ES", + englishName: "Basque (Basque)", + nativeName: "euskara (euskara)", + language: "eu", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "EdZ", + negativeInfinity: "-Infinitu", + positiveInfinity: "Infinitu", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"], + namesAbbr: ["ig.","al.","as.","az.","og.","or.","lr."], + namesShort: ["ig","al","as","az","og","or","lr"] + }, + months: { + names: ["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""], + namesAbbr: ["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "yyyy/MM/dd", + D: "dddd, yyyy.'eko' MMMM'k 'd", + t: "HH:mm", + T: "H:mm:ss", + f: "dddd, yyyy.'eko' MMMM'k 'd HH:mm", + F: "dddd, yyyy.'eko' MMMM'k 'd H:mm:ss", + Y: "yyyy.'eko' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "hsb-DE", "default", { + name: "hsb-DE", + englishName: "Upper Sorbian (Germany)", + nativeName: "hornjoserbšćina (NÄ›mska)", + language: "hsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekónÄne", + positiveInfinity: "+njekónÄne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njedźela","póndźela","wutora","srjeda","Å¡twórtk","pjatk","sobota"], + namesAbbr: ["nje","pón","wut","srj","Å¡tw","pja","sob"], + namesShort: ["n","p","w","s","Å¡","p","s"] + }, + months: { + names: ["januar","februar","mÄ›rc","apryl","meja","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","mÄ›r","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","mÄ›rca","apryla","meje","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","mÄ›r","apr","mej","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'hodź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'hodź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "mk-MK", "default", { + name: "mk-MK", + englishName: "Macedonian (Former Yugoslav Republic of Macedonia)", + nativeName: "македонÑки јазик (Македонија)", + language: "mk", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "ден." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недела","понеделник","вторник","Ñреда","четврток","петок","Ñабота"], + namesAbbr: ["нед","пон","втр","Ñрд","чет","пет","Ñаб"], + namesShort: ["не","по","вт","ÑÑ€","че","пе","Ñа"] + }, + months: { + names: ["јануари","февруари","март","април","мај","јуни","јули","авгуÑÑ‚","Ñептември","октомври","ноември","декември",""], + namesAbbr: ["јан","фев","мар","апр","мај","јун","јул","авг","Ñеп","окт","ное","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd MMMM yyyy HH:mm", + F: "dddd, dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tn-ZA", "default", { + name: "tn-ZA", + englishName: "Setswana (South Africa)", + nativeName: "Setswana (Aforika Borwa)", + language: "tn", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Latshipi","Mosupologo","Labobedi","Laboraro","Labone","Labotlhano","Lamatlhatso"], + namesAbbr: ["Ltp.","Mos.","Lbd.","Lbr.","Lbn.","Lbt.","Lmt."], + namesShort: ["Lp","Ms","Lb","Lr","Ln","Lt","Lm"] + }, + months: { + names: ["Ferikgong","Tlhakole","Mopitloe","Moranang","Motsheganong","Seetebosigo","Phukwi","Phatwe","Lwetse","Diphalane","Ngwanatsele","Sedimothole",""], + namesAbbr: ["Fer.","Tlhak.","Mop.","Mor.","Motsh.","Seet.","Phukw.","Phatw.","Lwets.","Diph.","Ngwan.","Sed.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "xh-ZA", "default", { + name: "xh-ZA", + englishName: "isiXhosa (South Africa)", + nativeName: "isiXhosa (uMzantsi Afrika)", + language: "xh", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iCawa","uMvulo","uLwesibini","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesShort: ["Ca","Mv","Lb","Lt","Ln","Lh","Mg"] + }, + months: { + names: ["Mqungu","Mdumba","Kwindla","Tshazimpuzi","Canzibe","Silimela","Khala","Thupha","Msintsi","Dwarha","Nkanga","Mnga",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zu-ZA", "default", { + name: "zu-ZA", + englishName: "isiZulu (South Africa)", + nativeName: "isiZulu (iNingizimu Afrika)", + language: "zu", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["iSonto","uMsombuluko","uLwesibili","uLwesithathu","uLwesine","uLwesihlanu","uMgqibelo"], + namesAbbr: ["Son.","Mso.","Bi.","Tha.","Ne.","Hla.","Mgq."] + }, + months: { + names: ["uMasingana","uNhlolanja","uNdasa","uMbaso","uNhlaba","uNhlangulana","uNtulikazi","uNcwaba","uMandulo","uMfumfu","uLwezi","uZibandlela",""], + namesAbbr: ["Mas.","Nhlo.","Nda.","Mba.","Nhla.","Nhlang.","Ntu.","Ncwa.","Man.","Mfu.","Lwe.","Zib.",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "af-ZA", "default", { + name: "af-ZA", + englishName: "Afrikaans (South Africa)", + nativeName: "Afrikaans (Suid Afrika)", + language: "af", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"], + namesAbbr: ["Son","Maan","Dins","Woen","Dond","Vry","Sat"], + namesShort: ["So","Ma","Di","Wo","Do","Vr","Sa"] + }, + months: { + names: ["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""], + namesAbbr: ["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ka-GE", "default", { + name: "ka-GE", + englishName: "Georgian (Georgia)", + nativeName: "ქáƒáƒ áƒ—ული (სáƒáƒ¥áƒáƒ áƒ—ველáƒ)", + language: "ka", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Lari" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["კვირáƒ","áƒáƒ áƒ¨áƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"], + namesAbbr: ["კვირáƒ","áƒáƒ áƒ¨áƒáƒ‘áƒáƒ—ი","სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი","áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი","ხუთშáƒáƒ‘áƒáƒ—ი","პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი","შáƒáƒ‘áƒáƒ—ი"], + namesShort: ["კ","áƒ","ს","áƒ","ხ","პ","შ"] + }, + months: { + names: ["იáƒáƒœáƒ•áƒáƒ áƒ˜","თებერვáƒáƒšáƒ˜","მáƒáƒ áƒ¢áƒ˜","áƒáƒžáƒ áƒ˜áƒšáƒ˜","მáƒáƒ˜áƒ¡áƒ˜","ივნისი","ივლისი","áƒáƒ’ვისტáƒ","სექტემბერი","áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი","ნáƒáƒ”მბერი","დეკემბერი",""], + namesAbbr: ["იáƒáƒœ","თებ","მáƒáƒ ","áƒáƒžáƒ ","მáƒáƒ˜áƒ¡","ივნ","ივლ","áƒáƒ’ვ","სექ","áƒáƒ¥áƒ¢","ნáƒáƒ”მ","დეკ",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'წლის' dd MM, dddd", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'წლის' dd MM, dddd H:mm", + F: "yyyy 'წლის' dd MM, dddd H:mm:ss", + M: "dd MM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fo-FO", "default", { + name: "fo-FO", + englishName: "Faroese (Faroe Islands)", + nativeName: "føroyskt (Føroyar)", + language: "fo", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"], + namesAbbr: ["sun","mán","týs","mik","hós","frí","leyg"], + namesShort: ["su","má","tý","mi","hó","fr","ley"] + }, + months: { + names: ["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hi-IN", "default", { + name: "hi-IN", + englishName: "Hindi (India)", + nativeName: "हिंदी (भारत)", + language: "hi", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगलवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगल.","बà¥à¤§.","गà¥à¤°à¥.","शà¥à¤•à¥à¤°.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""], + namesAbbr: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""] + }, + AM: ["पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨"], + PM: ["अपराहà¥à¤¨","अपराहà¥à¤¨","अपराहà¥à¤¨"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mt-MT", "default", { + name: "mt-MT", + englishName: "Maltese (Malta)", + nativeName: "Malti (Malta)", + language: "mt", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Il-Ħadd","It-Tnejn","It-Tlieta","L-Erbgħa","Il-Ħamis","Il-Ä imgħa","Is-Sibt"], + namesAbbr: ["Ħad","Tne","Tli","Erb","Ħam","Ä im","Sib"], + namesShort: ["I","I","I","L","I","I","I"] + }, + months: { + names: ["Jannar","Frar","Marzu","April","Mejju","Ä unju","Lulju","Awissu","Settembru","Ottubru","Novembru","DiÄ‹embru",""], + namesAbbr: ["Jan","Fra","Mar","Apr","Mej","Ä un","Lul","Awi","Set","Ott","Nov","DiÄ‹",""] + }, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, d' ta\\' 'MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' ta\\' 'MMMM yyyy HH:mm", + F: "dddd, d' ta\\' 'MMMM yyyy HH:mm:ss", + M: "d' ta\\' 'MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "se-NO", "default", { + name: "se-NO", + englishName: "Sami, Northern (Norway)", + nativeName: "davvisámegiella (Norga)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maÅ‹Å‹ebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maÅ‹","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["oÄ‘Ä‘ajagemánnu","guovvamánnu","njukÄamánnu","cuoÅ‹ománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","ÄakÄamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ajagimánu","guovvamánu","njukÄamánu","cuoÅ‹ománu","miessemánu","geassemánu","suoidnemánu","borgemánu","ÄakÄamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ms-MY", "default", { + name: "ms-MY", + englishName: "Malay (Malaysia)", + nativeName: "Bahasa Melayu (Malaysia)", + language: "ms", + numberFormat: { + currency: { + decimals: 0, + symbol: "RM" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kk-KZ", "default", { + name: "kk-KZ", + englishName: "Kazakh (Kazakhstan)", + nativeName: "Қазақ (ҚазақÑтан)", + language: "kk", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-$n","$n"], + ",": " ", + ".": "-", + symbol: "Т" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ЖекÑенбі","ДүйÑенбі","СейÑенбі","СәрÑенбі","БейÑенбі","Жұма","Сенбі"], + namesAbbr: ["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"], + namesShort: ["Жк","ДÑ","СÑ","Ср","БÑ","Жм","Сн"] + }, + months: { + names: ["қаңтар","ақпан","наурыз","Ñәуір","мамыр","мауÑым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқÑан",""], + namesAbbr: ["Қаң","Ðқп","Ðау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy 'ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'ж.' H:mm", + F: "d MMMM yyyy 'ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ky-KG", "default", { + name: "ky-KG", + englishName: "Kyrgyz (Kyrgyzstan)", + nativeName: "Кыргыз (КыргызÑтан)", + language: "ky", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": "-", + symbol: "Ñом" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"], + namesAbbr: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"], + namesShort: ["Жш","Дш","Шш","Шр","Бш","Жм","Иш"] + }, + months: { + names: ["Январь","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d'-'MMMM yyyy'-ж.'", + t: "H:mm", + T: "H:mm:ss", + f: "d'-'MMMM yyyy'-ж.' H:mm", + F: "d'-'MMMM yyyy'-ж.' H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy'-ж.'" + } + } + } +}); + +Globalize.addCultureInfo( "sw-KE", "default", { + name: "sw-KE", + englishName: "Kiswahili (Kenya)", + nativeName: "Kiswahili (Kenya)", + language: "sw", + numberFormat: { + currency: { + symbol: "S" + } + }, + calendars: { + standard: { + days: { + names: ["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"], + namesAbbr: ["Jumap.","Jumat.","Juman.","Jumat.","Alh.","Iju.","Jumam."], + namesShort: ["P","T","N","T","A","I","M"] + }, + months: { + names: ["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Decemba",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Dec",""] + } + } + } +}); + +Globalize.addCultureInfo( "tk-TM", "default", { + name: "tk-TM", + englishName: "Turkmen (Turkmenistan)", + nativeName: "türkmençe (Türkmenistan)", + language: "tk", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-üznüksizlik", + positiveInfinity: "üznüksizlik", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "m." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["DuÅŸenbe","SiÅŸenbe","ÇarÅŸenbe","PenÅŸenbe","Anna","Åženbe","ÃekÅŸenbe"], + namesAbbr: ["Db","Sb","Çb","Pb","An","Åžb","Ãb"], + namesShort: ["D","S","Ç","P","A","Åž","Ã"] + }, + months: { + names: ["Ãanwar","Fewral","Mart","Aprel","Maý","lýun","lýul","Awgust","Sentýabr","Oktýabr","Noýabr","Dekabr",""], + namesAbbr: ["Ãan","Few","Mart","Apr","Maý","lýun","lýul","Awg","Sen","Okt","Not","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "yyyy 'ý.' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'ý.' MMMM d H:mm", + F: "yyyy 'ý.' MMMM d H:mm:ss", + Y: "yyyy 'ý.' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "uz-Latn-UZ", "default", { + name: "uz-Latn-UZ", + englishName: "Uzbek (Latin, Uzbekistan)", + nativeName: "U'zbek (U'zbekiston Respublikasi)", + language: "uz-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tt-RU", "default", { + name: "tt-RU", + englishName: "Tatar (Russia)", + nativeName: "Татар (РоÑÑиÑ)", + language: "tt", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"], + namesAbbr: ["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"], + namesShort: ["Я","Д","С","Ч","П","Ò–","Ш"] + }, + months: { + names: ["Гыйнвар","Февраль","Март","Ðпрель","Май","Июнь","Июль","ÐвгуÑÑ‚","СентÑбрь","ОктÑбрь","ÐоÑбрь","Декабрь",""], + namesAbbr: ["Гыйн.","Фев.","Мар.","Ðпр.","Май","Июнь","Июль","Ðвг.","Сен.","Окт.","ÐоÑб.","Дек.",""] + }, + monthsGenitive: { + names: ["Гыйнварның","Февральнең","Мартның","Ðпрельнең","Майның","Июньнең","Июльнең","ÐвгуÑтның","СентÑбрьның","ОктÑбрьның","ÐоÑбрьның","Декабрьның",""], + namesAbbr: ["Гыйн.-ның","Фев.-нең","Мар.-ның","Ðпр.-нең","Майның","Июньнең","Июльнең","Ðвг.-ның","Сен.-ның","Окт.-ның","ÐоÑб.-ның","Дек.-ның",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bn-IN", "default", { + name: "bn-IN", + englishName: "Bengali (India)", + nativeName: "বাংলা (ভারত)", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "টা" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহসà§à¦ªà¦¤à¦¿.","শà§à¦•à§à¦°.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নভেমà§à¦¬à¦°","ডিসেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§.","ফেবà§à¦°à§.","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগ.","সেপà§à¦Ÿà§‡.","অকà§à¦Ÿà§‹.","নভে.","ডিসে.",""] + }, + AM: ["পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨"], + PM: ["অপরাহà§à¦¨","অপরাহà§à¦¨","অপরাহà§à¦¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "pa-IN", "default", { + name: "pa-IN", + englishName: "Punjabi (India)", + nativeName: "ਪੰਜਾਬੀ (ਭਾਰਤ)", + language: "pa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ਰà©" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["à¨à¨¤à¨µà¨¾à¨°","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬà©à©±à¨§à¨µà¨¾à¨°","ਵੀਰਵਾਰ","ਸ਼à©à©±à¨•à¨°à¨µà¨¾à¨°","ਸ਼ਨਿੱਚਰਵਾਰ"], + namesAbbr: ["à¨à¨¤.","ਸੋਮ.","ਮੰਗਲ.","ਬà©à©±à¨§.","ਵੀਰ.","ਸ਼à©à¨•à¨°.","ਸ਼ਨਿੱਚਰ."], + namesShort: ["à¨","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"] + }, + months: { + names: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪà©à¨°à©ˆà¨²","ਮਈ","ਜੂਨ","ਜà©à¨²à¨¾à¨ˆ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""], + namesAbbr: ["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪà©à¨°à©ˆà¨²","ਮਈ","ਜੂਨ","ਜà©à¨²à¨¾à¨ˆ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""] + }, + AM: ["ਸਵੇਰ","ਸਵੇਰ","ਸਵੇਰ"], + PM: ["ਸ਼ਾਮ","ਸ਼ਾਮ","ਸ਼ਾਮ"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy dddd", + t: "tt hh:mm", + T: "tt hh:mm:ss", + f: "dd MMMM yyyy dddd tt hh:mm", + F: "dd MMMM yyyy dddd tt hh:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "gu-IN", "default", { + name: "gu-IN", + englishName: "Gujarati (India)", + nativeName: "ગà«àªœàª°àª¾àª¤à«€ (ભારત)", + language: "gu", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "રૂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["રવિવાર","સોમવાર","મંગળવાર","બà«àª§àªµàª¾àª°","ગà«àª°à«àªµàª¾àª°","શà«àª•à«àª°àªµàª¾àª°","શનિવાર"], + namesAbbr: ["રવિ","સોમ","મંગળ","બà«àª§","ગà«àª°à«","શà«àª•à«àª°","શનિ"], + namesShort: ["ર","સ","મ","બ","ગ","શ","શ"] + }, + months: { + names: ["જાનà«àª¯à«àª†àª°à«€","ફેબà«àª°à«àª†àª°à«€","મારà«àªš","àªàªªà«àª°àª¿àª²","મે","જૂન","જà«àª²àª¾àªˆ","ઑગસà«àªŸ","સપà«àªŸà«‡àª®à«àª¬àª°","ઑકà«àªŸà«àª¬àª°","નવેમà«àª¬àª°","ડિસેમà«àª¬àª°",""], + namesAbbr: ["જાનà«àª¯à«","ફેબà«àª°à«","મારà«àªš","àªàªªà«àª°àª¿àª²","મે","જૂન","જà«àª²àª¾àªˆ","ઑગસà«àªŸ","સપà«àªŸà«‡","ઑકà«àªŸà«‹","નવે","ડિસે",""] + }, + AM: ["પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨","પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨","પૂરà«àªµÂ àª®àª§à«àª¯àª¾àª¹à«àª¨"], + PM: ["ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨","ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨","ઉતà«àª¤àª°Â àª®àª§à«àª¯àª¾àª¹à«àª¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "or-IN", "default", { + name: "or-IN", + englishName: "Oriya (India)", + nativeName: "ଓଡ଼ିଆ (ଭାରତ)", + language: "or", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ଟ" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ରବିବାର","ସୋମବାର","ମଙà­à¬—ଳବାର","ବà­à¬§à¬¬à¬¾à¬°","ଗà­à¬°à­à¬¬à¬¾à¬°","ଶà­à¬•à­à¬°à¬¬à¬¾à¬°","ଶନିବାର"], + namesAbbr: ["ରବି.","ସୋମ.","ମଙà­à¬—ଳ.","ବà­à¬§.","ଗà­à¬°à­.","ଶà­à¬•à­à¬°.","ଶନି."], + namesShort: ["ର","ସୋ","ମ","ବà­","ଗà­","ଶà­","ଶ"] + }, + months: { + names: ["ଜାନà­à­Ÿà¬¾à¬°à­€","ଫà­à¬°à­‡à¬¬à­ƒà­Ÿà¬¾à¬°à­€","ମାରà­à¬šà­à¬š","à¬à¬ªà­à¬°à¬¿à¬²à­\u200c","ମେ","ଜà­à¬¨à­\u200c","ଜà­à¬²à¬¾à¬‡","ଅଗଷà­à¬Ÿ","ସେପà­à¬Ÿà­‡à¬®à­à¬¬à¬°","ଅକà­à¬Ÿà­‹à¬¬à¬°","ନଭେମà­à¬¬à¬°","(ଡିସେମà­à¬¬à¬°",""], + namesAbbr: ["ଜାନà­à­Ÿà¬¾à¬°à­€","ଫà­à¬°à­‡à¬¬à­ƒà­Ÿà¬¾à¬°à­€","ମାରà­à¬šà­à¬š","à¬à¬ªà­à¬°à¬¿à¬²à­\u200c","ମେ","ଜà­à¬¨à­\u200c","ଜà­à¬²à¬¾à¬‡","ଅଗଷà­à¬Ÿ","ସେପà­à¬Ÿà­‡à¬®à­à¬¬à¬°","ଅକà­à¬Ÿà­‹à¬¬à¬°","ନଭେମà­à¬¬à¬°","(ଡିସେମà­à¬¬à¬°",""] + }, + eras: [{"name":"ଖà­à¬°à­€à¬·à­à¬Ÿà¬¾à¬¬à­à¬¦","start":null,"offset":0}], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ta-IN", "default", { + name: "ta-IN", + englishName: "Tamil (India)", + nativeName: "தமிழ௠(இநà¯à®¤à®¿à®¯à®¾)", + language: "ta", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ரூ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ஞாயிறà¯à®±à¯à®•à¯à®•à®¿à®´à®®à¯ˆ","திஙà¯à®•à®³à¯à®•à®¿à®´à®®à¯ˆ","செவà¯à®µà®¾à®¯à¯à®•à®¿à®´à®®à¯ˆ","பà¯à®¤à®©à¯à®•à®¿à®´à®®à¯ˆ","வியாழகà¯à®•à®¿à®´à®®à¯ˆ","வெளà¯à®³à®¿à®•à¯à®•à®¿à®´à®®à¯ˆ","சனிகà¯à®•à®¿à®´à®®à¯ˆ"], + namesAbbr: ["ஞாயிறà¯","திஙà¯à®•à®³à¯","செவà¯à®µà®¾à®¯à¯","பà¯à®¤à®©à¯","வியாழனà¯","வெளà¯à®³à®¿","சனி"], + namesShort: ["ஞா","தி","செ","பà¯","வி","வெ","ச"] + }, + months: { + names: ["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯",""], + namesAbbr: ["ஜனவரி","பிபà¯à®°à®µà®°à®¿","மாரà¯à®šà¯","à®à®ªà¯à®°à®²à¯","மே","ஜூனà¯","ஜூலை","ஆகஸà¯à®Ÿà¯","செபà¯à®Ÿà®®à¯à®ªà®°à¯","அகà¯à®Ÿà¯‹à®ªà®°à¯","நவமà¯à®ªà®°à¯","டிசமà¯à®ªà®°à¯",""] + }, + AM: ["காலை","காலை","காலை"], + PM: ["மாலை","மாலை","மாலை"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "te-IN", "default", { + name: "te-IN", + englishName: "Telugu (India)", + nativeName: "తెలà±à°—à± (భారత దేశం)", + language: "te", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "రూ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ఆదివారం","సోమవారం","మంగళవారం","à°¬à±à°§à°µà°¾à°°à°‚","à°—à±à°°à±à°µà°¾à°°à°‚","à°¶à±à°•à±à°°à°µà°¾à°°à°‚","శనివారం"], + namesAbbr: ["ఆది.","సోమ.","మంగళ.","à°¬à±à°§.","à°—à±à°°à±.","à°¶à±à°•à±à°°.","శని."], + namesShort: ["à°†","సో","మం","à°¬à±","à°—à±","à°¶à±","à°¶"] + }, + months: { + names: ["జనవరి","à°«à°¿à°¬à±à°°à°µà°°à°¿","మారà±à°šà°¿","à°à°ªà±à°°à°¿à°²à±","మే","జూనà±","జూలై","ఆగసà±à°Ÿà±","సెపà±à°Ÿà±†à°‚బరà±","à°…à°•à±à°Ÿà±‹à°¬à°°à±","నవంబరà±","డిసెంబరà±",""], + namesAbbr: ["జనవరి","à°«à°¿à°¬à±à°°à°µà°°à°¿","మారà±à°šà°¿","à°à°ªà±à°°à°¿à°²à±","మే","జూనà±","జూలై","ఆగసà±à°Ÿà±","సెపà±à°Ÿà±†à°‚బరà±","à°…à°•à±à°Ÿà±‹à°¬à°°à±","నవంబరà±","డిసెంబరà±",""] + }, + AM: ["పూరà±à°µà°¾à°¹à±à°¨","పూరà±à°µà°¾à°¹à±à°¨","పూరà±à°µà°¾à°¹à±à°¨"], + PM: ["అపరాహà±à°¨","అపరాహà±à°¨","అపరాహà±à°¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "kn-IN", "default", { + name: "kn-IN", + englishName: "Kannada (India)", + nativeName: "ಕನà³à²¨à²¡ (ಭಾರತ)", + language: "kn", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "ರೂ" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ಭಾನà³à²µà²¾à²°","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬà³à²§à²µà²¾à²°","ಗà³à²°à³à²µà²¾à²°","ಶà³à²•à³à²°à²µà²¾à²°","ಶನಿವಾರ"], + namesAbbr: ["ಭಾನà³.","ಸೋಮ.","ಮಂಗಳ.","ಬà³à²§.","ಗà³à²°à³.","ಶà³à²•à³à²°.","ಶನಿ."], + namesShort: ["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"] + }, + months: { + names: ["ಜನವರಿ","ಫೆಬà³à²°à²µà²°à²¿","ಮಾರà³à²šà³","ಎಪà³à²°à²¿à²²à³","ಮೇ","ಜೂನà³","ಜà³à²²à³ˆ","ಆಗಸà³à²Ÿà³","ಸೆಪà³à²Ÿà²‚ಬರà³","ಅಕà³à²Ÿà³‹à²¬à²°à³","ನವೆಂಬರà³","ಡಿಸೆಂಬರà³",""], + namesAbbr: ["ಜನವರಿ","ಫೆಬà³à²°à²µà²°à²¿","ಮಾರà³à²šà³","ಎಪà³à²°à²¿à²²à³","ಮೇ","ಜೂನà³","ಜà³à²²à³ˆ","ಆಗಸà³à²Ÿà³","ಸೆಪà³à²Ÿà²‚ಬರà³","ಅಕà³à²Ÿà³‹à²¬à²°à³","ನವೆಂಬರà³","ಡಿಸೆಂಬರà³",""] + }, + AM: ["ಪೂರà³à²µà²¾à²¹à³à²¨","ಪೂರà³à²µà²¾à²¹à³à²¨","ಪೂರà³à²µà²¾à²¹à³à²¨"], + PM: ["ಅಪರಾಹà³à²¨","ಅಪರಾಹà³à²¨","ಅಪರಾಹà³à²¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ml-IN", "default", { + name: "ml-IN", + englishName: "Malayalam (India)", + nativeName: "മലയാളം (ഭാരതം)", + language: "ml", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "à´•" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["ഞായറാഴàµà´š","തിങàµà´•à´³à´¾à´´àµà´š","ചൊവàµà´µà´¾à´´àµà´š","à´¬àµà´§à´¨à´¾à´´àµà´š","à´µàµà´¯à´¾à´´à´¾à´´àµà´š","വെളàµà´³à´¿à´¯à´¾à´´àµà´š","ശനിയാഴàµà´š"], + namesAbbr: ["ഞായർ.","തിങàµà´•àµ¾.","ചൊവàµà´µ.","à´¬àµà´§àµ».","à´µàµà´¯à´¾à´´à´‚.","വെളàµà´³à´¿.","ശനി."], + namesShort: ["à´ž","à´¤","à´š","à´¬","à´µ","വെ","à´¶"] + }, + months: { + names: ["ജനàµà´µà´°à´¿","ഫെബàµà´±àµà´µà´°à´¿","മാറàµà´šàµà´šàµ","à´à´ªàµà´±à´¿à´²àµ","മെയàµ","ജൂണàµ","ജൂലൈ","à´“à´—à´¸àµà´±à´±àµ","സെപàµà´±à´±à´‚ബറàµ","à´’à´•àµà´Ÿàµ‹à´¬à´±àµ","നവംബറàµ","ഡിസംബറàµ",""], + namesAbbr: ["ജനàµà´µà´°à´¿","ഫെബàµà´±àµà´µà´°à´¿","മാറàµà´šàµà´šàµ","à´à´ªàµà´±à´¿à´²àµ","മെയàµ","ജൂണàµ","ജൂലൈ","à´“à´—à´¸àµà´±à´±àµ","സെപàµà´±à´±à´‚ബറàµ","à´’à´•àµà´Ÿàµ‹à´¬à´±àµ","നവംബറàµ","ഡിസംബറàµ",""] + }, + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "as-IN", "default", { + name: "as-IN", + englishName: "Assamese (India)", + nativeName: "অসমীয়া (ভাৰত)", + language: "as", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","n$"], + groupSizes: [3,2], + symbol: "ট" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["সোমবাৰ","মঙà§à¦—লবাৰ","বà§à¦§à¦¬à¦¾à§°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à§°","শà§à¦•à§à¦°à¦¬à¦¾à§°","শনিবাৰ","ৰবিবাৰ"], + namesAbbr: ["সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহ.","শà§à¦•à§à¦°.","শনি.","ৰবি."], + namesShort: ["সো","ম","বà§","বৃ","শà§","শ","র"] + }, + months: { + names: ["জানà§à§±à¦¾à§°à§€","ফেবà§à¦°à§à§±à¦¾à§°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগষà§à¦Ÿ","চেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নবেমà§à¦¬à¦°","ডিচেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§","ফেবà§à¦°à§","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগষà§à¦Ÿ","চেপà§à¦Ÿà§‡","অকà§à¦Ÿà§‹","নবে","ডিচে",""] + }, + AM: ["ৰাতিপà§","ৰাতিপà§","ৰাতিপà§"], + PM: ["আবেলি","আবেলি","আবেলি"], + eras: [{"name":"খà§à¦°à§€à¦·à§à¦Ÿà¦¾à¦¬à§à¦¦","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "yyyy,MMMM dd, dddd", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy,MMMM dd, dddd tt h:mm", + F: "yyyy,MMMM dd, dddd tt h:mm:ss", + M: "dd MMMM", + Y: "MMMM,yy" + } + } + } +}); + +Globalize.addCultureInfo( "mr-IN", "default", { + name: "mr-IN", + englishName: "Marathi (India)", + nativeName: "मराठी (भारत)", + language: "mr", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["रविवार","सोमवार","मंगळवार","बà¥à¤§à¤µà¤¾à¤°","गà¥à¤°à¥à¤µà¤¾à¤°","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["रवि.","सोम.","मंगळ.","बà¥à¤§.","गà¥à¤°à¥.","शà¥à¤•à¥à¤°.","शनि."], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवà¥à¤¹à¥‡à¤‚बर","डिसेंबर",""], + namesAbbr: ["जाने.","फेबà¥à¤°à¥.","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚.","ऑकà¥à¤Ÿà¥‹.","नोवà¥à¤¹à¥‡à¤‚.","डिसें.",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sa-IN", "default", { + name: "sa-IN", + englishName: "Sanskrit (India)", + nativeName: "संसà¥à¤•à¥ƒà¤¤ (भारतमà¥)", + language: "sa", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["रविवासरः","सोमवासरः","मङà¥à¤—लवासरः","बà¥à¤§à¤µà¤¾à¤¸à¤°à¤ƒ","गà¥à¤°à¥à¤µà¤¾à¤¸à¤°à¤ƒ","शà¥à¤•à¥à¤°à¤µà¤¾à¤¸à¤°à¤ƒ","शनिवासरः"], + namesAbbr: ["रविवासरः","सोमवासरः","मङà¥à¤—लवासरः","बà¥à¤§à¤µà¤¾à¤¸à¤°à¤ƒ","गà¥à¤°à¥à¤µà¤¾à¤¸à¤°à¤ƒ","शà¥à¤•à¥à¤°à¤µà¤¾à¤¸à¤°à¤ƒ","शनिवासरः"], + namesShort: ["र","स","म","ब","ग","श","श"] + }, + months: { + names: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""], + namesAbbr: ["जनवरी","फरवरी","मारà¥à¤š","अपà¥à¤°à¥ˆà¤²","मई","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सितमà¥à¤¬à¤°","अकà¥à¤¤à¥‚बर","नवमà¥à¤¬à¤°","दिसमà¥à¤¬à¤°",""] + }, + AM: ["पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨","पूरà¥à¤µà¤¾à¤¹à¥à¤¨"], + PM: ["अपराहà¥à¤¨","अपराहà¥à¤¨","अपराहà¥à¤¨"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy dddd", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy dddd HH:mm", + F: "dd MMMM yyyy dddd HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mn-MN", "default", { + name: "mn-MN", + englishName: "Mongolian (Cyrillic, Mongolia)", + nativeName: "Монгол хÑл (Монгол улÑ)", + language: "mn-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚®" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ÐÑм","Даваа","ÐœÑгмар","Лхагва","ПүрÑв","БааÑан","БÑмба"], + namesAbbr: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"], + namesShort: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"] + }, + months: { + names: ["1 дүгÑÑр Ñар","2 дугаар Ñар","3 дугаар Ñар","4 дүгÑÑр Ñар","5 дугаар Ñар","6 дугаар Ñар","7 дугаар Ñар","8 дугаар Ñар","9 дүгÑÑр Ñар","10 дугаар Ñар","11 дүгÑÑр Ñар","12 дугаар Ñар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгÑÑр Ñарын","2 дугаар Ñарын","3 дугаар Ñарын","4 дүгÑÑр Ñарын","5 дугаар Ñарын","6 дугаар Ñарын","7 дугаар Ñарын","8 дугаар Ñарын","9 дүгÑÑр Ñарын","10 дугаар Ñарын","11 дүгÑÑр Ñарын","12 дугаар Ñарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "bo-CN", "default", { + name: "bo-CN", + englishName: "Tibetan (PRC)", + nativeName: "བོད་ཡིག (ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མà½à½´à½“་རྒྱལ་à½à½–à¼)", + language: "bo", + numberFormat: { + groupSizes: [3,0], + "NaN": "ཨང་ཀི་མིན་པà¼", + negativeInfinity: "མོ་གྲངས་ཚད་མེད་ཆུང་བà¼", + positiveInfinity: "ཕོ་གྲངས་ཚད་མེད་ཆེ་བà¼", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["གཟའ་ཉི་མà¼","གཟའ་ཟླ་བà¼","གཟའ་མིག་དམརà¼","གཟའ་ལྷག་པà¼","གཟའ་ཕུར་བུà¼","གཟའ་པ་སངསà¼","གཟའ་སྤེན་པà¼"], + namesAbbr: ["ཉི་མà¼","ཟླ་བà¼","མིག་དམརà¼","ལྷག་པà¼","ཕུར་བུà¼","པ་སངསà¼","སྤེན་པà¼"], + namesShort: ["༧","༡","༢","༣","༤","༥","༦"] + }, + months: { + names: ["སྤྱི་ཟླ་དང་པོà¼","སྤྱི་ཟླ་གཉིས་པà¼","སྤྱི་ཟླ་གསུམ་པà¼","སྤྱི་ཟླ་བཞི་པà¼","སྤྱི་ཟླ་ལྔ་པà¼","སྤྱི་ཟླ་དྲུག་པà¼","སྤྱི་ཟླ་བདུན་པà¼","སྤྱི་ཟླ་བརྒྱད་པà¼","སྤྱི་ཟླ་དགུ་པà¼","སྤྱི་ཟླ་བཅུ་པོà¼","སྤྱི་ཟླ་བཅུ་གཅིག་པà¼","སྤྱི་ཟླ་བཅུ་གཉིས་པà¼",""], + namesAbbr: ["ཟླ་ ༡","ཟླ་ ༢","ཟླ་ ༣","ཟླ་ ༤","ཟླ་ ༥","ཟླ་ ༦","ཟླ་ ༧","ཟླ་ ༨","ཟླ་ ༩","ཟླ་ ༡༠","ཟླ་ ༡༡","ཟླ་ ༡༢",""] + }, + AM: ["སྔ་དྲོ","སྔ་དྲོ","སྔ་དྲོ"], + PM: ["ཕྱི་དྲོ","ཕྱི་དྲོ","ཕྱི་དྲོ"], + eras: [{"name":"སྤྱི་ལོ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ལོའི་ཟླ' M'ཚེས' d", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm", + F: "yyyy'ལོའི་ཟླ' M'ཚེས' d HH:mm:ss", + M: "'ཟླ་' M'ཚེས'd", + Y: "yyyy.M" + } + } + } +}); + +Globalize.addCultureInfo( "cy-GB", "default", { + name: "cy-GB", + englishName: "Welsh (United Kingdom)", + nativeName: "Cymraeg (y Deyrnas Unedig)", + language: "cy", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"], + namesAbbr: ["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"], + namesShort: ["Su","Ll","Ma","Me","Ia","Gw","Sa"] + }, + months: { + names: ["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr",""], + namesAbbr: ["Ion","Chwe","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rhag",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "km-KH", "default", { + name: "km-KH", + englishName: "Khmer (Cambodia)", + nativeName: "ážáŸ’មែរ (កម្ពុជា)", + language: "km", + numberFormat: { + pattern: ["- n"], + groupSizes: [3,0], + "NaN": "NAN", + negativeInfinity: "-- អនន្áž", + positiveInfinity: "អនន្áž", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["-n$","n$"], + symbol: "៛" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["ážáŸ’ងៃអាទិážáŸ’áž™","ážáŸ’ងៃចáŸáž“្ទ","ážáŸ’ងៃអង្គារ","ážáŸ’ងៃពុធ","ážáŸ’ងៃព្រហស្បážáž·áŸ","ážáŸ’ងៃសុក្រ","ážáŸ’ងៃសៅរáŸ"], + namesAbbr: ["អាទិ.","áž….","អ.","áž–áž»","ព្រហ.","សុ.","ស."], + namesShort: ["អា","áž…","អ","áž–áž»","ព្","សុ","ស"] + }, + months: { + names: ["មករា","កុម្ភៈ","មិនា","មáŸážŸáž¶","ឧសភា","មិážáž»áž“ា","កក្កដា","សីហា","កញ្ញា","ážáž»áž›áž¶","វិច្ឆិកា","ធ្នូ",""], + namesAbbr: ["១","២","៣","៤","៥","៦","៧","៨","៩","១០","១១","១២",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"មុនគ.ស.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "d MMMM yyyy H:mm tt", + F: "d MMMM yyyy HH:mm:ss", + M: "'ážáŸ’ងៃទី' dd 'ážáŸ‚' MM", + Y: "'ážáŸ‚' MM 'ឆ្នាំ' yyyy" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ព្រឹក","ព្រឹក","ព្រឹក"], + PM: ["ល្ងាច","ល្ងាច","ល្ងាច"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm tt", + F: "dddd, MMMM dd, yyyy HH:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "lo-LA", "default", { + name: "lo-LA", + englishName: "Lao (Lao P.D.R.)", + nativeName: "ລາວ (ສ.ປ.ປ. ລາວ)", + language: "lo", + numberFormat: { + pattern: ["(n)"], + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + }, + currency: { + pattern: ["(n$)","n$"], + groupSizes: [3,0], + symbol: "â‚­" + } + }, + calendars: { + standard: { + days: { + names: ["ວັນອາທິດ","ວັນຈັນ","ວັນອັງຄານ","ວັນພຸດ","ວັນພະຫັດ","ວັນສຸàº","ວັນເສົາ"], + namesAbbr: ["ອາທິດ","ຈັນ","ອັງຄານ","ພຸດ","ພະຫັດ","ສຸàº","ເສົາ"], + namesShort: ["ອ","ຈ","ອ","ພ","ພ","ສ","ເ"] + }, + months: { + names: ["ມັງàºàº­àº™","àºàº¸àº¡àºžàº²","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","àºà»àº¥àº°àºàº»àº”","ສິງຫາ","àºàº±àº™àºàº²","ຕຸລາ","ພະຈິàº","ທັນວາ",""], + namesAbbr: ["ມັງàºàº­àº™","àºàº¸àº¡àºžàº²","ມີນາ","ເມສາ","ພຶດສະພາ","ມິຖຸນາ","àºà»àº¥àº°àºàº»àº”","ສິງຫາ","àºàº±àº™àºàº²","ຕຸລາ","ພະຈິàº","ທັນວາ",""] + }, + AM: ["ເຊົ້າ","ເຊົ້າ","ເຊົ້າ"], + PM: ["à»àº¥àº‡","à»àº¥àº‡","à»àº¥àº‡"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm tt", + T: "HH:mm:ss", + f: "dd MMMM yyyy H:mm tt", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gl-ES", "default", { + name: "gl-ES", + englishName: "Galician (Galician)", + nativeName: "galego (galego)", + language: "gl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","luns","martes","mércores","xoves","venres","sábado"], + namesAbbr: ["dom","luns","mar","mér","xov","ven","sáb"], + namesShort: ["do","lu","ma","mé","xo","ve","sá"] + }, + months: { + names: ["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""], + namesAbbr: ["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kok-IN", "default", { + name: "kok-IN", + englishName: "Konkani (India)", + nativeName: "कोंकणी (भारत)", + language: "kok", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "रà¥" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["आयतार","सोमार","मंगळार","बà¥à¤§à¤µà¤¾à¤°","बिरेसà¥à¤¤à¤¾à¤°","सà¥à¤•à¥à¤°à¤¾à¤°","शेनवार"], + namesAbbr: ["आय.","सोम.","मंगळ.","बà¥à¤§.","बिरे.","सà¥à¤•à¥à¤°.","शेन."], + namesShort: ["आ","स","म","ब","ब","स","श"] + }, + months: { + names: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवेमà¥à¤¬à¤°","डिसेंबर",""], + namesAbbr: ["जानेवारी","फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€","मारà¥à¤š","à¤à¤ªà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¥ˆ","ऑगसà¥à¤Ÿ","सपà¥à¤Ÿà¥‡à¤‚बर","ऑकà¥à¤Ÿà¥‹à¤¬à¤°","नोवेमà¥à¤¬à¤°","डिसेंबर",""] + }, + AM: ["म.पू.","म.पू.","म.पू."], + PM: ["म.नं.","म.नं.","म.नं."], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "syr-SY", "default", { + name: "syr-SY", + englishName: "Syriac (Syria)", + nativeName: "ܣܘܪÜÜÜ (سوريا)", + language: "syr", + isRTL: true, + numberFormat: { + currency: { + pattern: ["$n-","$ n"], + symbol: "Ù„.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["ܚܕ ܒܫܒÜ","ܬܪÜܢ ܒܫܒÜ","ܬܠܬÜ ܒܫܒÜ","ÜܪܒܥÜ ܒܫܒÜ","ܚܡܫÜ ܒܫܒÜ","ܥܪܘܒܬÜ","ܫܒܬÜ"], + namesAbbr: ["\u070fÜ \u070fÜ’Ü«","\u070fܒ \u070fÜ’Ü«","\u070fܓ \u070fÜ’Ü«","\u070fܕ \u070fÜ’Ü«","\u070fܗ \u070fÜ’Ü«","\u070fܥܪܘܒ","\u070fÜ«Ü’"], + namesShort: ["Ü","Ü’","Ü“","Ü•","Ü—","Ü¥","Ü«"] + }, + months: { + names: ["ܟܢܘܢ ÜܚܪÜ","Ü«Ü’Ü›","Üܕܪ","Ü¢Üܣܢ","ÜÜܪ","ܚܙÜܪܢ","ܬܡܘܙ","ÜÜ’","ÜÜܠܘܠ","ܬܫܪÜ ܩܕÜÜ¡","ܬܫܪÜ ÜܚܪÜ","ܟܢܘܢ ܩܕÜÜ¡",""], + namesAbbr: ["\u070fܟܢ \u070fÜ’","Ü«Ü’Ü›","Üܕܪ","Ü¢Üܣܢ","ÜÜܪ","ܚܙÜܪܢ","ܬܡܘܙ","ÜÜ’","ÜÜܠܘܠ","\u070fܬܫ \u070fÜ","\u070fܬܫ \u070fÜ’","\u070fܟܢ \u070fÜ",""] + }, + AM: ["Ü©.Ü›","Ü©.Ü›","Ü©.Ü›"], + PM: ["Ü’.Ü›","Ü’.Ü›","Ü’.Ü›"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "si-LK", "default", { + name: "si-LK", + englishName: "Sinhala (Sri Lanka)", + nativeName: "සිංහල (à·à·Š\u200dරී ලංකà·)", + language: "si", + numberFormat: { + groupSizes: [3,2], + negativeInfinity: "-අනන්තය", + positiveInfinity: "අනන්තය", + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["($ n)","$ n"], + symbol: "රු." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ඉරිදà·","සඳුදà·","අඟහරුවà·à¶¯à·","බදà·à¶¯à·","බ්\u200dරහස්පතින්දà·","සිකුරà·à¶¯à·","සෙනසුරà·à¶¯à·"], + namesAbbr: ["ඉරිදà·","සඳුදà·","කුජදà·","බුදදà·","ගුරුදà·","කිවිදà·","à·à¶±à·’දà·"], + namesShort: ["ඉ","à·ƒ","අ","බ","බ්\u200dර","සි","සෙ"] + }, + months: { + names: ["ජනවà·à¶»à·’","පෙබරවà·à¶»à·’","මà·à¶»à·Šà¶­à·”","අ\u200cප්\u200dරේල්","මà·à¶ºà·’","ජූනි","ජූලි","අ\u200cගà·à·ƒà·Šà¶­à·”","à·ƒà·à¶´à·Šà¶­à·à¶¸à·Šà¶¶à¶»à·Š","ඔක්තà·à¶¶à¶»à·Š","නොවà·à¶¸à·Šà¶¶à¶»à·Š","දෙසà·à¶¸à·Šà¶¶à¶»à·Š",""], + namesAbbr: ["ජන.","පෙබ.","මà·à¶»à·Šà¶­à·”.","අප්\u200dරේල්.","මà·à¶ºà·’.","ජූනි.","ජූලි.","අගà·.","à·ƒà·à¶´à·Š.","ඔක්.","නොවà·.","දෙසà·.",""] + }, + AM: ["පෙ.à·€.","පෙ.à·€.","පෙ.à·€."], + PM: ["ප.à·€.","ප.à·€.","ප.à·€."], + eras: [{"name":"ක්\u200dරි.à·€.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd", + f: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd h:mm tt", + F: "yyyy MMMM' මස 'dd' à·€à·à¶±à·’ද෠'dddd h:mm:ss tt", + Y: "yyyy MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "iu-Cans-CA", "default", { + name: "iu-Cans-CA", + englishName: "Inuktitut (Syllabics, Canada)", + nativeName: "áƒá“„ᒃᑎá‘ᑦ (ᑲᓇᑕᒥ)", + language: "iu-Cans", + numberFormat: { + groupSizes: [3,0], + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["ᓈᑦá‘á–‘á”­","ᓇᒡá’ᔾᔭá…","áŠáƒá‘‰á±á–…","á±á–“ᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕá•á’¥á–…","ᓯᕙᑖá•á••á’ƒ"], + namesAbbr: ["ᓈᑦá‘","ᓇᒡá’","áŠáƒá‘‰á±","á±á–“ᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖá•á••á’ƒ"], + namesShort: ["ᓈ","ᓇ","áŠ","á±","ᓯ","á‘•","ᓯ"] + }, + months: { + names: ["á”®á“á“„áŠá•†","á•–á•á•—áŠá•†","ᒫᑦᓯ","á„á³á•†","á’ªáƒ","ᔫᓂ","ᔪᓚáƒ","á‹á’¡á’Œá“¯","ᓯᑎá±á•†","á…á‘á±á•†","á“„á••á±á•†","ᑎᓯá±á•†",""], + namesAbbr: ["á”®á“á“„","á•–á•á•—","ᒫᑦᓯ","á„á³á•†","á’ªáƒ","ᔫᓂ","ᔪᓚáƒ","á‹á’¡á’Œ","ᓯᑎá±","á…á‘á±","á“„á••á±","ᑎᓯá±",""] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd,MMMM dd,yyyy", + f: "dddd,MMMM dd,yyyy h:mm tt", + F: "dddd,MMMM dd,yyyy h:mm:ss tt", + Y: "MMMM,yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "am-ET", "default", { + name: "am-ET", + englishName: "Amharic (Ethiopia)", + nativeName: "አማርኛ (ኢትዮጵያ)", + language: "am", + numberFormat: { + decimals: 1, + groupSizes: [3,0], + "NaN": "NAN", + percent: { + pattern: ["-n%","n%"], + decimals: 1, + groupSizes: [3,0] + }, + currency: { + pattern: ["-$n","$n"], + groupSizes: [3,0], + symbol: "ETB" + } + }, + calendars: { + standard: { + days: { + names: ["እሑድ","ሰኞ","ማክሰኞ","ረቡዕ","áˆáˆ™áˆµ","ዓርብ","ቅዳሜ"], + namesAbbr: ["እሑድ","ሰኞ","ማክሰ","ረቡዕ","áˆáˆ™áˆµ","ዓርብ","ቅዳሜ"], + namesShort: ["እ","ሰ","ማ","ረ","áˆ","á‹“","ቅ"] + }, + months: { + names: ["ጃንዩወሪ","áŒá‰¥áˆ©á‹ˆáˆª","ማርች","ኤá•áˆ¨áˆ","ሜይ","áŒáŠ•","áŒáˆ‹á‹­","ኦገስት","ሴá•á‰´áˆá‰ áˆ­","ኦክተá‹á‰ áˆ­","ኖቬáˆá‰ áˆ­","ዲሴáˆá‰ áˆ­",""], + namesAbbr: ["ጃንዩ","áŒá‰¥áˆ©","ማርች","ኤá•áˆ¨","ሜይ","áŒáŠ•","áŒáˆ‹á‹­","ኦገስ","ሴá•á‰´","ኦክተ","ኖቬáˆ","ዲሴáˆ",""] + }, + AM: ["ጡዋት","ጡዋት","ጡዋት"], + PM: ["ከሰዓት","ከሰዓት","ከሰዓት"], + eras: [{"name":"ዓመተ áˆáˆ•áˆ¨á‰µ","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "dddd 'á£' MMMM d 'ቀን' yyyy", + f: "dddd 'á£' MMMM d 'ቀን' yyyy h:mm tt", + F: "dddd 'á£' MMMM d 'ቀን' yyyy h:mm:ss tt", + M: "MMMM d ቀን", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ne-NP", "default", { + name: "ne-NP", + englishName: "Nepali (Nepal)", + nativeName: "नेपाली (नेपाल)", + language: "ne", + numberFormat: { + groupSizes: [3,2], + "NaN": "nan", + negativeInfinity: "-infinity", + positiveInfinity: "infinity", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,2] + }, + currency: { + pattern: ["-$n","$n"], + symbol: "रà¥" + } + }, + calendars: { + standard: { + days: { + names: ["आइतवार","सोमवार","मङà¥à¤—लवार","बà¥à¤§à¤µà¤¾à¤°","बिहीवार","शà¥à¤•à¥à¤°à¤µà¤¾à¤°","शनिवार"], + namesAbbr: ["आइत","सोम","मङà¥à¤—ल","बà¥à¤§","बिही","शà¥à¤•à¥à¤°","शनि"], + namesShort: ["आ","सो","म","बà¥","बि","शà¥","श"] + }, + months: { + names: ["जनवरी","फेबà¥à¤°à¥à¤…री","मारà¥à¤š","अपà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¤¾à¤ˆ","अगसà¥à¤¤","सेपà¥à¤Ÿà¥‡à¤®à¥à¤¬à¤°","अकà¥à¤Ÿà¥‹à¤¬à¤°","नोभेमà¥à¤¬à¤°","डिसेमà¥à¤¬à¤°",""], + namesAbbr: ["जन","फेब","मारà¥à¤š","अपà¥à¤°à¤¿à¤²","मे","जून","जà¥à¤²à¤¾à¤ˆ","अग","सेपà¥à¤Ÿ","अकà¥à¤Ÿ","नोभ","डिस",""] + }, + AM: ["विहानी","विहानी","विहानी"], + PM: ["बेलà¥à¤•à¥€","बेलà¥à¤•à¥€","बेलà¥à¤•à¥€"], + eras: [{"name":"a.d.","start":null,"offset":0}], + patterns: { + Y: "MMMM,yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fy-NL", "default", { + name: "fy-NL", + englishName: "Frisian (Netherlands)", + nativeName: "Frysk (Nederlân)", + language: "fy", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["Snein","Moandei","Tiisdei","Woansdei","Tongersdei","Freed","Sneon"], + namesAbbr: ["Sn","Mo","Ti","Wo","To","Fr","Sn"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["jannewaris","febrewaris","maart","april","maaie","juny","july","augustus","septimber","oktober","novimber","desimber",""], + namesAbbr: ["jann","febr","mrt","apr","maaie","jun","jul","aug","sept","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "d-M-yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ps-AF", "default", { + name: "ps-AF", + englishName: "Pashto (Afghanistan)", + nativeName: "پښتو (اÙغانستان)", + language: "ps", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": "ØŒ", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": "ØŒ", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + ",": "Ù¬", + ".": "Ù«", + symbol: "Ø‹" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 6, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا ښزمرى","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","لنڈ Û","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګا Úš","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","لنڈ Û","مرغومى",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"Ù„.Ù‡","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fil-PH", "default", { + name: "fil-PH", + englishName: "Filipino (Philippines)", + nativeName: "Filipino (Pilipinas)", + language: "fil", + numberFormat: { + currency: { + symbol: "PhP" + } + }, + calendars: { + standard: { + days: { + names: ["Linggo","Lunes","Martes","Mierkoles","Huebes","Biernes","Sabado"], + namesAbbr: ["Lin","Lun","Mar","Mier","Hueb","Bier","Saba"], + namesShort: ["L","L","M","M","H","B","S"] + }, + months: { + names: ["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Septyembre","Oktubre","Nobyembre","Disyembre",""], + namesAbbr: ["En","Peb","Mar","Abr","Mayo","Hun","Hul","Agos","Sept","Okt","Nob","Dis",""] + }, + eras: [{"name":"Anno Domini","start":null,"offset":0}] + } + } +}); + +Globalize.addCultureInfo( "dv-MV", "default", { + name: "dv-MV", + englishName: "Divehi (Maldives)", + nativeName: "Þ‹Þ¨ÞˆÞ¬Þ€Þ¨Þ„Þ¦ÞÞ° (Þ‹Þ¨ÞˆÞ¬Þ€Þ¨ ÞƒÞ§Þ‡Þ°Þ–Þ¬)", + language: "dv", + isRTL: true, + numberFormat: { + currency: { + pattern: ["n $-","n $"], + symbol: "Þƒ." + } + }, + calendars: { + standard: { + name: "Hijri", + days: { + names: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesAbbr: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesShort: ["Þ‡Þ§","Þ€Þ¯","Þ‡Þ¦","Þ„Þª","Þ„Þª","Þ€Þª","Þ€Þ®"] + }, + months: { + names: ["Þ‰ÞªÞ™Þ¦Þ‡Þ°ÞƒÞ¦Þ‰Þ°","ÞžÞ¦ÞŠÞ¦ÞƒÞª","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ¦Þ‡Þ°ÞˆÞ¦ÞÞ°","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞª","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ«ÞÞ§","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞ§","ÞƒÞ¦Þ–Þ¦Þ„Þ°","ÞÞ¦Þ¢Þ°Þ„Þ§Þ‚Þ°","ÞƒÞ¦Þ‰Þ¦ÞŸÞ§Þ‚Þ°","ÞÞ¦Þ‡Þ°ÞˆÞ§ÞÞ°","Þ›ÞªÞÞ°Þ¤Þ¦Þ¢Þ¨Þ‹Þ§","Þ›ÞªÞÞ°Þ™Þ¨Þ‡Þ°Þ–Þ§",""], + namesAbbr: ["Þ‰ÞªÞ™Þ¦Þ‡Þ°ÞƒÞ¦Þ‰Þ°","ÞžÞ¦ÞŠÞ¦ÞƒÞª","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ¦Þ‡Þ°ÞˆÞ¦ÞÞ°","ÞƒÞ¦Þ„Þ©Þ¢ÞªÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞª","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ«ÞÞ§","Þ–ÞªÞ‰Þ§Þ‹Þ¦ÞÞ°Þ‡Þ§ÞšÞ¨ÞƒÞ§","ÞƒÞ¦Þ–Þ¦Þ„Þ°","ÞÞ¦Þ¢Þ°Þ„Þ§Þ‚Þ°","ÞƒÞ¦Þ‰Þ¦ÞŸÞ§Þ‚Þ°","ÞÞ¦Þ‡Þ°ÞˆÞ§ÞÞ°","Þ›ÞªÞÞ°Þ¤Þ¦Þ¢Þ¨Þ‹Þ§","Þ›ÞªÞÞ°Þ™Þ¨Þ‡Þ°Þ–Þ§",""] + }, + AM: ["Þ‰Þ†","Þ‰Þ†","Þ‰Þ†"], + PM: ["Þ‰ÞŠ","Þ‰ÞŠ","Þ‰ÞŠ"], + eras: [{"name":"Þ€Þ¨Þ–Þ°ÞƒÞ©","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd/MM/yyyy HH:mm", + F: "dd/MM/yyyy HH:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + days: { + names: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesAbbr: ["އާދީއްތަ","Þ€Þ¯Þ‰Þ¦","Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦","Þ„ÞªÞ‹Þ¦","Þ„ÞªÞƒÞ§Þްފަތި","Þ€ÞªÞ†ÞªÞƒÞª","Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª"], + namesShort: ["Þ‡Þ§","Þ€Þ¯","Þ‡Þ¦","Þ„Þª","Þ„Þª","Þ€Þª","Þ€Þ®"] + }, + months: { + names: ["Þ–Þ¦Þ‚Þ¦ÞˆÞ¦ÞƒÞ©","ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©","Þ‰Þ§Þ—Þ°","Þ‡Þ­Þ•Þ°ÞƒÞ¨ÞÞ°","Þ‰Þ¬Þ‡Þ¨","Þ–Þ«Þ‚Þ°","Þ–ÞªÞÞ¦Þ‡Þ¨","Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þ°","ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦Þƒ","Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦Þƒ",""], + namesAbbr: ["Þ–Þ¦Þ‚Þ¦ÞˆÞ¦ÞƒÞ©","ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©","Þ‰Þ§Þ—Þ°","Þ‡Þ­Þ•Þ°ÞƒÞ¨ÞÞ°","Þ‰Þ¬Þ‡Þ¨","Þ–Þ«Þ‚Þ°","Þ–ÞªÞÞ¦Þ‡Þ¨","Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þ°","ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦Þƒ","Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦Þƒ","Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦Þƒ",""] + }, + AM: ["Þ‰Þ†","Þ‰Þ†","Þ‰Þ†"], + PM: ["Þ‰ÞŠ","Þ‰ÞŠ","Þ‰ÞŠ"], + eras: [{"name":"Þ‰Þ©ÞÞ§Þ‹Þ©","start":null,"offset":0}], + patterns: { + d: "dd/MM/yy", + D: "ddd, yyyy MMMM dd", + t: "HH:mm", + T: "HH:mm:ss", + f: "ddd, yyyy MMMM dd HH:mm", + F: "ddd, yyyy MMMM dd HH:mm:ss", + Y: "yyyy, MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ha-Latn-NG", "default", { + name: "ha-Latn-NG", + englishName: "Hausa (Latin, Nigeria)", + nativeName: "Hausa (Nigeria)", + language: "ha-Latn", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "yo-NG", "default", { + name: "yo-NG", + englishName: "Yoruba (Nigeria)", + nativeName: "Yoruba (Nigeria)", + language: "yo", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Osu kinni","Osu keji","Osu keta","Osu kerin","Osu karun","Osu kefa","Osu keje","Osu kejo","Osu kesan","Osu kewa","Osu kokanla","Osu keresi",""], + namesAbbr: ["kin.","kej.","ket.","ker.","kar.","kef.","kej.","kej.","kes.","kew.","kok.","ker.",""] + }, + AM: ["Owuro","owuro","OWURO"], + PM: ["Ale","ale","ALE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "quz-BO", "default", { + name: "quz-BO", + englishName: "Quechua (Bolivia)", + nativeName: "runasimi (Qullasuyu)", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nso-ZA", "default", { + name: "nso-ZA", + englishName: "Sesotho sa Leboa (South Africa)", + nativeName: "Sesotho sa Leboa (Afrika Borwa)", + language: "nso", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$-n","$ n"], + symbol: "R" + } + }, + calendars: { + standard: { + days: { + names: ["Lamorena","MoÅ¡upologo","Labobedi","Laboraro","Labone","Labohlano","Mokibelo"], + namesAbbr: ["Lam","MoÅ¡","Lbb","Lbr","Lbn","Lbh","Mok"], + namesShort: ["L","M","L","L","L","L","M"] + }, + months: { + names: ["Pherekgong","Hlakola","Mopitlo","Moranang","Mosegamanye","NgoatoboÅ¡ego","Phuphu","Phato","Lewedi","Diphalana","Dibatsela","Manthole",""], + namesAbbr: ["Pher","Hlak","Mop","Mor","Mos","Ngwat","Phup","Phat","Lew","Dip","Dib","Man",""] + }, + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ba-RU", "default", { + name: "ba-RU", + englishName: "Bashkir (Russia)", + nativeName: "Башҡорт (РоÑÑиÑ)", + language: "ba", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ",", + symbol: "Ò»." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Йәкшәмбе","Дүшәмбе","Шишәмбе","Шаршамбы","КеÑаҙна","Йома","Шәмбе"], + namesAbbr: ["Йш","Дш","Шш","Шр","КÑ","Йм","Шб"], + namesShort: ["Йш","Дш","Шш","Шр","КÑ","Йм","Шб"] + }, + months: { + names: ["ғинуар","февраль","март","апрель","май","июнь","июль","авгуÑÑ‚","ÑентÑбрь","октÑбрь","ноÑбрь","декабрь",""], + namesAbbr: ["ғин","фев","мар","апр","май","июн","июл","авг","Ñен","окт","ноÑ","дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy 'й'", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy 'й' H:mm", + F: "d MMMM yyyy 'й' H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "lb-LU", "default", { + name: "lb-LU", + englishName: "Luxembourgish (Luxembourg)", + nativeName: "Lëtzebuergesch (Luxembourg)", + language: "lb", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "n. num.", + negativeInfinity: "-onendlech", + positiveInfinity: "+onendlech", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"], + namesAbbr: ["Son","Méi","Dën","Mët","Don","Fre","Sam"], + namesShort: ["So","Mé","Dë","Më","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "kl-GL", "default", { + name: "kl-GL", + englishName: "Greenlandic (Greenland)", + nativeName: "kalaallisut (Kalaallit Nunaat)", + language: "kl", + numberFormat: { + ",": ".", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + groupSizes: [3,0], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + ",": ".", + ".": ",", + symbol: "kr." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sapaat","ataasinngorneq","marlunngorneq","pingasunngorneq","sisamanngorneq","tallimanngorneq","arfininngorneq"], + namesAbbr: ["sap","ata","mar","ping","sis","tal","arf"], + namesShort: ["sa","at","ma","pi","si","ta","ar"] + }, + months: { + names: ["januari","februari","martsi","apriili","maaji","juni","juli","aggusti","septembari","oktobari","novembari","decembari",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ig-NG", "default", { + name: "ig-NG", + englishName: "Igbo (Nigeria)", + nativeName: "Igbo (Nigeria)", + language: "ig", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Aiku","Aje","Isegun","Ojo'ru","Ojo'bo","Eti","Abameta"], + namesAbbr: ["Aik","Aje","Ise","Ojo","Ojo","Eti","Aba"], + namesShort: ["A","A","I","O","O","E","A"] + }, + months: { + names: ["Onwa mbu","Onwa ibua","Onwa ato","Onwa ano","Onwa ise","Onwa isi","Onwa asa","Onwa asato","Onwa itolu","Onwa iri","Onwa iri n'ofu","Onwa iri n'ibua",""], + namesAbbr: ["mbu.","ibu.","ato.","ano.","ise","isi","asa","asa.","ito.","iri.","n'of.","n'ib.",""] + }, + AM: ["Ututu","ututu","UTUTU"], + PM: ["Efifie","efifie","EFIFIE"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ii-CN", "default", { + name: "ii-CN", + englishName: "Yi (PRC)", + nativeName: "ꆈꌠê±ê‚· (êꉸê“ꂱꇭꉼꇩ)", + language: "ii", + numberFormat: { + groupSizes: [3,0], + "NaN": "ꌗꂷꀋꉬ", + negativeInfinity: "ꀄꊭêŒê€‹ê‰†", + positiveInfinity: "ꈤê‡ê‘–ꀋꉬ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["ê‘­ê†ê‘","ê†êŠ‚ê’”","ê†êŠ‚ê‘","ê†êŠ‚ꌕ","ê†êŠ‚ꇖ","ê†êŠ‚ꉬ","ê†êŠ‚ꃘ"], + namesAbbr: ["ê‘­ê†","ê†ê’”","ê†ê‘","ê†êŒ•","ê†ê‡–","ê†ê‰¬","ê†êƒ˜"], + namesShort: ["ê†","ê’”","ê‘","ꌕ","ꇖ","ꉬ","ꃘ"] + }, + months: { + names: ["ê‹ê†ª","ê‘ꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","êƒê†ª","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""], + namesAbbr: ["ê‹ê†ª","ê‘ꆪ","ꌕꆪ","ꇖꆪ","ꉬꆪ","ꃘꆪ","êƒê†ª","ꉆꆪ","ꈬꆪ","ꊰꆪ","ꊯꊪꆪ","ꊰꑋꆪ",""] + }, + AM: ["ꂵꆪꈌêˆ","ꂵꆪꈌêˆ","ꂵꆪꈌêˆ"], + PM: ["ꂵꆪꈌꉈ","ꂵꆪꈌꉈ","ꂵꆪꈌꉈ"], + eras: [{"name":"ꇬꑼ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ꈎ' M'ꆪ' d'ê‘'", + t: "tt h:mm", + T: "H:mm:ss", + f: "yyyy'ꈎ' M'ꆪ' d'ê‘' tt h:mm", + F: "yyyy'ꈎ' M'ꆪ' d'ê‘' H:mm:ss", + M: "M'ꆪ' d'ê‘'", + Y: "yyyy'ꈎ' M'ꆪ'" + } + } + } +}); + +Globalize.addCultureInfo( "arn-CL", "default", { + name: "arn-CL", + englishName: "Mapudungun (Chile)", + nativeName: "Mapudungun (Chile)", + language: "arn", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "moh-CA", "default", { + name: "moh-CA", + englishName: "Mohawk (Mohawk)", + nativeName: "Kanien'kéha", + language: "moh", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Awentatokentì:ke","Awentataón'ke","Ratironhia'kehronòn:ke","Soséhne","Okaristiiáhne","Ronwaia'tanentaktonhne","Entákta"], + namesShort: ["S","M","T","W","T","F","S"] + }, + months: { + names: ["Tsothohrkó:Wa","Enniska","Enniskó:Wa","Onerahtókha","Onerahtohkó:Wa","Ohiari:Ha","Ohiarihkó:Wa","Seskéha","Seskehkó:Wa","Kenténha","Kentenhkó:Wa","Tsothóhrha",""] + } + } + } +}); + +Globalize.addCultureInfo( "br-FR", "default", { + name: "br-FR", + englishName: "Breton (France)", + nativeName: "brezhoneg (Frañs)", + language: "br", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NkN", + negativeInfinity: "-Anfin", + positiveInfinity: "+Anfin", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sul","Lun","Meurzh","Merc'her","Yaou","Gwener","Sadorn"], + namesAbbr: ["Sul","Lun","Meu.","Mer.","Yaou","Gwe.","Sad."], + namesShort: ["Su","Lu","Mz","Mc","Ya","Gw","Sa"] + }, + months: { + names: ["Genver","C'hwevrer","Meurzh","Ebrel","Mae","Mezheven","Gouere","Eost","Gwengolo","Here","Du","Kerzu",""], + namesAbbr: ["Gen.","C'hwe.","Meur.","Ebr.","Mae","Mezh.","Goue.","Eost","Gwen.","Here","Du","Kzu",""] + }, + AM: null, + PM: null, + eras: [{"name":"g. J.-K.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ug-CN", "default", { + name: "ug-CN", + englishName: "Uyghur (PRC)", + nativeName: "ئۇيغۇرچە (جۇڭخۇا خەلق جۇمھۇرىيىتى)", + language: "ug", + isRTL: true, + numberFormat: { + "NaN": "سان ئەمەس", + negativeInfinity: "مەنپىي چەكسىزلىك", + positiveInfinity: "مۇسبەت چەكسىزلىك", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["يەكشەنبە","دۈشەنبە","سەيشەنبە","چارشەنبە","پەيشەنبە","جۈمە","شەنبە"], + namesAbbr: ["ÙŠÛ•","دۈ","سە","چا","Ù¾Û•","جۈ","Ø´Û•"], + namesShort: ["ÙŠ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""], + namesAbbr: ["1-ئاي","2-ئاي","3-ئاي","4-ئاي","5-ئاي","6-ئاي","7-ئاي","8-ئاي","9-ئاي","10-ئاي","11-ئاي","12-ئاي",""] + }, + AM: ["چۈشتىن بۇرۇن","چۈشتىن بۇرۇن","چۈشتىن بۇرۇن"], + PM: ["چۈشتىن ÙƒÛيىن","چۈشتىن ÙƒÛيىن","چۈشتىن ÙƒÛيىن"], + eras: [{"name":"مىلادى","start":null,"offset":0}], + patterns: { + d: "yyyy-M-d", + D: "yyyy-'يىلى' MMMM d-'كۈنى،'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm", + F: "yyyy-'يىلى' MMMM d-'كۈنى،' H:mm:ss", + M: "MMMM d'-كۈنى'", + Y: "yyyy-'يىلى' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mi-NZ", "default", { + name: "mi-NZ", + englishName: "Maori (New Zealand)", + nativeName: "Reo MÄori (Aotearoa)", + language: "mi", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["RÄtapu","RÄhina","RÄtÅ«","RÄapa","RÄpare","RÄmere","RÄhoroi"], + namesAbbr: ["Ta","Hi","TÅ«","Apa","Pa","Me","Ho"], + namesShort: ["Ta","Hi","TÅ«","Aa","Pa","Me","Ho"] + }, + months: { + names: ["Kohi-tÄtea","Hui-tanguru","PoutÅ«-te-rangi","Paenga-whÄwhÄ","Haratua","Pipiri","HÅngongoi","Here-turi-kÅkÄ","Mahuru","Whiringa-Ä-nuku","Whiringa-Ä-rangi","Hakihea",""], + namesAbbr: ["Kohi","Hui","Pou","Pae","Hara","Pipi","HÅngo","Here","Mahu","Nuku","Rangi","Haki",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM, yyyy", + f: "dddd, dd MMMM, yyyy h:mm tt", + F: "dddd, dd MMMM, yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM, yy" + } + } + } +}); + +Globalize.addCultureInfo( "oc-FR", "default", { + name: "oc-FR", + englishName: "Occitan (France)", + nativeName: "Occitan (França)", + language: "oc", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numeric", + negativeInfinity: "-Infinit", + positiveInfinity: "+Infinit", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimenge","diluns","dimars","dimècres","dijòus","divendres","dissabte"], + namesAbbr: ["dim.","lun.","mar.","mèc.","jòu.","ven.","sab."], + namesShort: ["di","lu","ma","mè","jò","ve","sa"] + }, + months: { + names: ["genier","febrier","març","abril","mai","junh","julh","agost","setembre","octobre","novembre","desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + monthsGenitive: { + names: ["de genier","de febrier","de març","d'abril","de mai","de junh","de julh","d'agost","de setembre","d'octobre","de novembre","de desembre",""], + namesAbbr: ["gen.","feb.","mar.","abr.","mai.","jun.","jul.","ag.","set.","oct.","nov.","des.",""] + }, + AM: null, + PM: null, + eras: [{"name":"après Jèsus-Crist","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd,' lo 'd MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd,' lo 'd MMMM' de 'yyyy HH:mm", + F: "dddd,' lo 'd MMMM' de 'yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "co-FR", "default", { + name: "co-FR", + englishName: "Corsican (France)", + nativeName: "Corsu (France)", + language: "co", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Mica numericu", + negativeInfinity: "-Infinitu", + positiveInfinity: "+Infinitu", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dumenica","luni","marti","mercuri","ghjovi","venderi","sabbatu"], + namesAbbr: ["dum.","lun.","mar.","mer.","ghj.","ven.","sab."], + namesShort: ["du","lu","ma","me","gh","ve","sa"] + }, + months: { + names: ["ghjennaghju","ferraghju","marzu","aprile","maghju","ghjunghju","lugliu","aostu","settembre","ottobre","nuvembre","dicembre",""], + namesAbbr: ["ghje","ferr","marz","apri","magh","ghju","lugl","aost","sett","otto","nuve","dice",""] + }, + AM: null, + PM: null, + eras: [{"name":"dopu J-C","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gsw-FR", "default", { + name: "gsw-FR", + englishName: "Alsatian (France)", + nativeName: "Elsässisch (Frànkrisch)", + language: "gsw", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Ohne Nummer", + negativeInfinity: "-Unendlich", + positiveInfinity: "+Unendlich", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Sundàà","Mondàà","Dienschdàà","Mittwuch","Dunnerschdàà","Fridàà","Sàmschdàà"], + namesAbbr: ["Su.","Mo.","Di.","Mi.","Du.","Fr.","Sà."], + namesShort: ["Su","Mo","Di","Mi","Du","Fr","Sà"] + }, + months: { + names: ["Jänner","Feverje","März","Àpril","Mai","Jüni","Jüli","Augscht","September","Oktower","Nowember","Dezember",""], + namesAbbr: ["Jän.","Fev.","März","Apr.","Mai","Jüni","Jüli","Aug.","Sept.","Okt.","Now.","Dez.",""] + }, + AM: null, + PM: null, + eras: [{"name":"Vor J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sah-RU", "default", { + name: "sah-RU", + englishName: "Yakut (Russia)", + nativeName: "Ñаха (РоÑÑиÑ)", + language: "sah", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "NAN", + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "Ñ." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["баÑкыһыанньа","бÑнидиÑнньик","оптуорунньук","ÑÑÑ€ÑдÑ","чÑппиÑÑ€","бÑÑтинÑÑ","Ñубуота"], + namesAbbr: ["БÑ","Бн","Оп","Ср","Чп","Бт","Сб"], + namesShort: ["БÑ","Бн","Оп","Ср","Чп","Бт","Сб"] + }, + months: { + names: ["ТохÑунньу","Олунньу","Кулун тутар","ÐœÑƒÑƒÑ ÑƒÑтар","Ыам ыйа","БÑÑ Ñ‹Ð¹Ð°","От ыйа","Ðтырдьах ыйа","Балаҕан ыйа","Ðлтынньы","СÑтинньи","ÐÑ…Ñынньы",""], + namesAbbr: ["Ñ‚Ñ…Ñ","олн","кул","мÑÑ‚","ыам","бÑÑ","отй","атр","блҕ","алт","Ñтн","ахÑ",""] + }, + monthsGenitive: { + names: ["тохÑунньу","олунньу","кулун тутар","Ð¼ÑƒÑƒÑ ÑƒÑтар","ыам ыйын","бÑÑ Ñ‹Ð¹Ñ‹Ð½","от ыйын","атырдьах ыйын","балаҕан ыйын","алтынньы","ÑÑтинньи","ахÑынньы",""], + namesAbbr: ["Ñ‚Ñ…Ñ","олн","кул","мÑÑ‚","ыам","бÑÑ","отй","атр","блҕ","алт","Ñтн","ахÑ",""] + }, + AM: null, + PM: null, + patterns: { + d: "MM.dd.yyyy", + D: "MMMM d yyyy 'Ñ.'", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d yyyy 'Ñ.' H:mm", + F: "MMMM d yyyy 'Ñ.' H:mm:ss", + Y: "MMMM yyyy 'Ñ.'" + } + } + } +}); + +Globalize.addCultureInfo( "qut-GT", "default", { + name: "qut-GT", + englishName: "K'iche (Guatemala)", + nativeName: "K'iche (Guatemala)", + language: "qut", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["juq'ij","kaq'ij","oxq'ij","kajq'ij","joq'ij","waqq'ij","wuqq'ij"], + namesAbbr: ["juq","kaq","oxq","kajq","joq","waqq","wuqq"], + namesShort: ["ju","ka","ox","ka","jo","wa","wu"] + }, + months: { + names: ["nab'e ik'","ukab' ik'","rox ik'","ukaj ik'","uro' ik'","uwaq ik'","uwuq ik'","uwajxaq ik'","ub'elej ik'","ulaj ik'","ujulaj ik'","ukab'laj ik'",""], + namesAbbr: ["nab'e","ukab","rox","ukaj","uro","uwaq","uwuq","uwajxaq","ub'elej","ulaj","ujulaj","ukab'laj",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "rw-RW", "default", { + name: "rw-RW", + englishName: "Kinyarwanda (Rwanda)", + nativeName: "Kinyarwanda (Rwanda)", + language: "rw", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "RWF" + } + }, + calendars: { + standard: { + days: { + names: ["Ku wa mbere","Ku wa kabiri","Ku wa gatatu","Ku wa kane","Ku wa gatanu","Ku wa gatandatu","Ku cyumweru"], + namesAbbr: ["mbe.","kab.","gat.","kan.","gat.","gat.","cyu."], + namesShort: ["mb","ka","ga","ka","ga","ga","cy"] + }, + months: { + names: ["Mutarama","Gashyantare","Werurwe","Mata","Gicurasi","Kamena","Nyakanga","Kanama","Nzeli","Ukwakira","Ugushyingo","Ukuboza",""], + namesAbbr: ["Mut","Gas","Wer","Mat","Gic","Kam","Nya","Kan","Nze","Ukwa","Ugu","Uku",""] + }, + AM: ["saa moya z.m.","saa moya z.m.","SAA MOYA Z.M."], + PM: ["saa moya z.n.","saa moya z.n.","SAA MOYA Z.N."], + eras: [{"name":"AD","start":null,"offset":0}] + } + } +}); + +Globalize.addCultureInfo( "wo-SN", "default", { + name: "wo-SN", + englishName: "Wolof (Senegal)", + nativeName: "Wolof (Sénégal)", + language: "wo", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "XOF" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "prs-AF", "default", { + name: "prs-AF", + englishName: "Dari (Afghanistan)", + nativeName: "درى (اÙغانستان)", + language: "prs", + isRTL: true, + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "غ ع", + negativeInfinity: "-∞", + positiveInfinity: "∞", + percent: { + pattern: ["%n-","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$n-","$n"], + symbol: "Ø‹" + } + }, + calendars: { + standard: { + name: "Hijri", + firstDay: 5, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + f: "dd/MM/yyyy h:mm tt", + F: "dd/MM/yyyy h:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_Localized: { + firstDay: 5, + days: { + names: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesAbbr: ["یکشنبه","دوشنبه","سه\u200cشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"], + namesShort: ["ÛŒ","د","س","Ú†","Ù¾","ج","Ø´"] + }, + months: { + names: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","ليندÛ","مرغومى",""], + namesAbbr: ["سلواغه","كب","ورى","غويى","غبرګولى","چنګاښ","زمرى","ÙˆÚ–Ù‰","تله","Ù„Ú“Ù…","ليندÛ","مرغومى",""] + }, + AM: ["غ.Ù…","غ.Ù…","غ.Ù…"], + PM: ["غ.Ùˆ","غ.Ùˆ","غ.Ùˆ"], + eras: [{"name":"Ù„.Ù‡","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy, dd, MMMM, dddd", + f: "yyyy, dd, MMMM, dddd h:mm tt", + F: "yyyy, dd, MMMM, dddd h:mm:ss tt", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "gd-GB", "default", { + name: "gd-GB", + englishName: "Scottish Gaelic (United Kingdom)", + nativeName: "Gàidhlig (An Rìoghachd Aonaichte)", + language: "gd", + numberFormat: { + negativeInfinity: "-Neo-chrìochnachd", + positiveInfinity: "Neo-chrìochnachd", + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"], + namesAbbr: ["Dòm","Lua","Mài","Cia","Ard","Hao","Sat"], + namesShort: ["D","L","M","C","A","H","S"] + }, + months: { + names: ["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ã’gmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd",""], + namesAbbr: ["Fao","Gea","Màr","Gib","Cèi","Ã’gm","Iuc","Lùn","Sul","Dàm","Sam","Dùb",""] + }, + AM: ["m","m","M"], + PM: ["f","f","F"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-IQ", "default", { + name: "ar-IQ", + englishName: "Arabic (Iraq)", + nativeName: "العربية (العراق)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.ع.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "zh-CN", "default", { + name: "zh-CN", + englishName: "Chinese (Simplified, PRC)", + nativeName: "中文(中åŽäººæ°‘共和国)", + language: "zh-CHS", + numberFormat: { + "NaN": "éžæ•°å­—", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "de-CH", "default", { + name: "de-CH", + englishName: "German (Switzerland)", + nativeName: "Deutsch (Schweiz)", + language: "de", + numberFormat: { + ",": "'", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "Fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-GB", "default", { + name: "en-GB", + englishName: "English (United Kingdom)", + nativeName: "English (United Kingdom)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "£" + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-MX", "default", { + name: "es-MX", + englishName: "Spanish (Mexico)", + nativeName: "Español (México)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-BE", "default", { + name: "fr-BE", + englishName: "French (Belgium)", + nativeName: "français (Belgique)", + language: "fr", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "d/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "it-CH", "default", { + name: "it-CH", + englishName: "Italian (Switzerland)", + nativeName: "italiano (Svizzera)", + language: "it", + numberFormat: { + ",": "'", + "NaN": "Non un numero reale", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"], + namesAbbr: ["dom","lun","mar","mer","gio","ven","sab"], + namesShort: ["do","lu","ma","me","gi","ve","sa"] + }, + months: { + names: ["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""], + namesAbbr: ["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nl-BE", "default", { + name: "nl-BE", + englishName: "Dutch (Belgium)", + nativeName: "Nederlands (België)", + language: "nl", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Niet-een-getal)", + negativeInfinity: "-oneindig", + positiveInfinity: "oneindig", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"], + namesAbbr: ["zo","ma","di","wo","do","vr","za"], + namesShort: ["zo","ma","di","wo","do","vr","za"] + }, + months: { + names: ["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd d MMMM yyyy H:mm", + F: "dddd d MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "nn-NO", "default", { + name: "nn-NO", + englishName: "Norwegian, Nynorsk (Norway)", + nativeName: "norsk, nynorsk (Noreg)", + language: "nn", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mÃ¥ndag","tysdag","onsdag","torsdag","fredag","laurdag"], + namesAbbr: ["sø","mÃ¥","ty","on","to","fr","la"], + namesShort: ["sø","mÃ¥","ty","on","to","fr","la"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "pt-PT", "default", { + name: "pt-PT", + englishName: "Portuguese (Portugal)", + nativeName: "português (Portugal)", + language: "pt", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NaN (Não é um número)", + negativeInfinity: "-Infinito", + positiveInfinity: "+Infinito", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"], + namesAbbr: ["dom","seg","ter","qua","qui","sex","sáb"], + namesShort: ["D","S","T","Q","Q","S","S"] + }, + months: { + names: ["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""], + namesAbbr: ["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, d' de 'MMMM' de 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d' de 'MMMM' de 'yyyy HH:mm", + F: "dddd, d' de 'MMMM' de 'yyyy HH:mm:ss", + M: "d/M", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn-CS", "default", { + name: "sr-Latn-CS", + englishName: "Serbian (Latin, Serbia and Montenegro (Former))", + nativeName: "srpski (Srbija i Crna Gora (Prethodno))", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sv-FI", "default", { + name: "sv-FI", + englishName: "Swedish (Finland)", + nativeName: "svenska (Finland)", + language: "sv", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["söndag","mÃ¥ndag","tisdag","onsdag","torsdag","fredag","lördag"], + namesAbbr: ["sö","mÃ¥","ti","on","to","fr","lö"], + namesShort: ["sö","mÃ¥","ti","on","to","fr","lö"] + }, + months: { + names: ["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "'den 'd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "'den 'd MMMM yyyy HH:mm", + F: "'den 'd MMMM yyyy HH:mm:ss", + M: "'den 'd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "az-Cyrl-AZ", "default", { + name: "az-Cyrl-AZ", + englishName: "Azeri (Cyrillic, Azerbaijan)", + nativeName: "Ðзәрбајҹан (Ðзәрбајҹан)", + language: "az-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "ман." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Базар","Базар ертәÑи","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], + namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ò¸","Ш"], + namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ò¸","Ш"] + }, + months: { + names: ["Јанвар","Феврал","Март","Ðпрел","Мај","Ијун","Ијул","ÐвгуÑÑ‚","Сентјабр","Октјабр","Ðојабр","Декабр",""], + namesAbbr: ["Јан","Фев","Мар","Ðпр","Мај","Ијун","Ијул","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","авгуÑÑ‚","Ñентјабр","октјабр","нојабр","декабр",""], + namesAbbr: ["Јан","Фев","Мар","Ðпр","маÑ","ијун","ијул","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "dsb-DE", "default", { + name: "dsb-DE", + englishName: "Lower Sorbian (Germany)", + nativeName: "dolnoserbšćina (Nimska)", + language: "dsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekoÅ„cne", + positiveInfinity: "+njekoÅ„cne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njeźela","ponjeźele","waÅ‚tora","srjoda","stwortk","pÄ›tk","sobota"], + namesAbbr: ["nje","pon","waÅ‚","srj","stw","pÄ›t","sob"], + namesShort: ["n","p","w","s","s","p","s"] + }, + months: { + names: ["januar","februar","mÄ›rc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","mÄ›r","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","mÄ›rca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","mÄ›r","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'goź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "se-SE", "default", { + name: "se-SE", + englishName: "Sami, Northern (Sweden)", + nativeName: "davvisámegiella (Ruoŧŧa)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["sotnabeaivi","mánnodat","disdat","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","mán","dis","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["oÄ‘Ä‘ajagemánnu","guovvamánnu","njukÄamánnu","cuoÅ‹ománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","ÄakÄamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ajagimánu","guovvamánu","njukÄamánu","cuoÅ‹ománu","miessemánu","geassemánu","suoidnemánu","borgemánu","ÄakÄamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ga-IE", "default", { + name: "ga-IE", + englishName: "Irish (Ireland)", + nativeName: "Gaeilge (Éire)", + language: "ga", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"], + namesAbbr: ["Domh","Luan","Máir","Céad","Déar","Aoi","Sath"], + namesShort: ["Do","Lu","Má","Cé","De","Ao","Sa"] + }, + months: { + names: ["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig",""], + namesAbbr: ["Ean","Feabh","Már","Aib","Bealt","Meith","Iúil","Lún","M.Fómh","D.Fómh","Samh","Noll",""] + }, + AM: ["r.n.","r.n.","R.N."], + PM: ["i.n.","i.n.","I.N."], + patterns: { + d: "dd/MM/yyyy", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ms-BN", "default", { + name: "ms-BN", + englishName: "Malay (Brunei Darussalam)", + nativeName: "Bahasa Melayu (Brunei Darussalam)", + language: "ms", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + decimals: 0, + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"], + namesAbbr: ["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"], + namesShort: ["A","I","S","R","K","J","S"] + }, + months: { + names: ["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""], + namesAbbr: ["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM yyyy H:mm", + F: "dd MMMM yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uz-Cyrl-UZ", "default", { + name: "uz-Cyrl-UZ", + englishName: "Uzbek (Cyrillic, Uzbekistan)", + nativeName: "Ўзбек (ЎзбекиÑтон)", + language: "uz-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñўм" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ñкшанба","душанба","Ñешанба","чоршанба","пайшанба","жума","шанба"], + namesAbbr: ["Ñкш","дш","Ñш","чш","пш","ж","ш"], + namesShort: ["Ñ","д","Ñ","ч","п","ж","ш"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвар","феврал","март","апрел","май","июн","июл","авгуÑÑ‚","ÑентÑбр","октÑбр","ноÑбр","декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","маÑ","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'йил' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'йил' d-MMMM HH:mm", + F: "yyyy 'йил' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bn-BD", "default", { + name: "bn-BD", + englishName: "Bengali (Bangladesh)", + nativeName: "বাংলা (বাংলাদেশ)", + language: "bn", + numberFormat: { + groupSizes: [3,2], + percent: { + pattern: ["-%n","%n"], + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "৳" + } + }, + calendars: { + standard: { + "/": "-", + ":": ".", + firstDay: 1, + days: { + names: ["রবিবার","সোমবার","মঙà§à¦—লবার","বà§à¦§à¦¬à¦¾à¦°","বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°","শà§à¦•à§à¦°à¦¬à¦¾à¦°","শনিবার"], + namesAbbr: ["রবি.","সোম.","মঙà§à¦—ল.","বà§à¦§.","বৃহসà§à¦ªà¦¤à¦¿.","শà§à¦•à§à¦°.","শনি."], + namesShort: ["র","স","ম","ব","ব","শ","শ"] + }, + months: { + names: ["জানà§à¦¯à¦¼à¦¾à¦°à§€","ফেবà§à¦°à§à¦¯à¦¼à¦¾à¦°à§€","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগসà§à¦Ÿ","সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°","অকà§à¦Ÿà§‹à¦¬à¦°","নভেমà§à¦¬à¦°","ডিসেমà§à¦¬à¦°",""], + namesAbbr: ["জানà§.","ফেবà§à¦°à§.","মারà§à¦š","à¦à¦ªà§à¦°à¦¿à¦²","মে","জà§à¦¨","জà§à¦²à¦¾à¦‡","আগ.","সেপà§à¦Ÿà§‡.","অকà§à¦Ÿà§‹.","নভে.","ডিসে.",""] + }, + AM: ["পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨","পà§à¦°à§à¦¬à¦¾à¦¹à§à¦¨"], + PM: ["অপরাহà§à¦¨","অপরাহà§à¦¨","অপরাহà§à¦¨"], + patterns: { + d: "dd-MM-yy", + D: "dd MMMM yyyy", + t: "HH.mm", + T: "HH.mm.ss", + f: "dd MMMM yyyy HH.mm", + F: "dd MMMM yyyy HH.mm.ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "mn-Mong-CN", "default", { + name: "mn-Mong-CN", + englishName: "Mongolian (Traditional Mongolian, PRC)", + nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ (ᠪᠦᠭᠦᠳᠡ ᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤ ᠳᠤᠮᠳᠠᠳᠤ á  á ·á  á ³ ᠣᠯᠣᠰ)", + language: "mn-Mong", + numberFormat: { + groupSizes: [3,0], + "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", + negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", + positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["á ­á  á ·á  á ­\u202fᠤᠨ ᠡᠳᠦᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠨᠢᠭᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠬᠣᠶᠠᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠲᠠᠪᠤᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesAbbr: ["á ­á  á ·á  á ­\u202fᠤᠨ ᠡᠳᠦᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠨᠢᠭᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠬᠣᠶᠠᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠲᠠᠪᠤᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesShort: ["á ¡\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","á ­á ¤\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] + }, + months: { + names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ",""], + namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ",""] + }, + AM: null, + PM: null, + eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", + F: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", + M: "M'á °á  á ·á Žá  ' d'ᠡᠳᠦᠷ'", + Y: "yyyy'ᠣᠨ' M'á °á  á ·á Žá  '" + } + } + } +}); + +Globalize.addCultureInfo( "iu-Latn-CA", "default", { + name: "iu-Latn-CA", + englishName: "Inuktitut (Latin, Canada)", + nativeName: "Inuktitut (Kanatami)", + language: "iu-Latn", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "tzm-Latn-DZ", "default", { + name: "tzm-Latn-DZ", + englishName: "Tamazight (Latin, Algeria)", + nativeName: "Tamazight (Djazaïr)", + language: "tzm-Latn", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "quz-EC", "default", { + name: "quz-EC", + englishName: "Quechua (Ecuador)", + nativeName: "runasimi (Ecuador)", + language: "quz", + numberFormat: { + ",": ".", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-EG", "default", { + name: "ar-EG", + englishName: "Arabic (Egypt)", + nativeName: "العربية (مصر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + symbol: "ج.Ù….\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "zh-HK", "default", { + name: "zh-HK", + englishName: "Chinese (Traditional, Hong Kong S.A.R.)", + nativeName: "中文(香港特別行政å€)", + language: "zh-CHT", + numberFormat: { + "NaN": "éžæ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "de-AT", "default", { + name: "de-AT", + englishName: "German (Austria)", + nativeName: "Deutsch (Österreich)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, dd. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, dd. MMMM yyyy HH:mm", + F: "dddd, dd. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-AU", "default", { + name: "en-AU", + englishName: "English (Australia)", + nativeName: "English (Australia)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "d/MM/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-ES", "default", { + name: "es-ES", + englishName: "Spanish (Spain, International Sort)", + nativeName: "Español (España, alfabetización internacional)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-CA", "default", { + name: "fr-CA", + englishName: "French (Canada)", + nativeName: "français (Canada)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["(n $)","n $"], + ",": " ", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "yyyy-MM-dd", + D: "d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d MMMM yyyy HH:mm", + F: "d MMMM yyyy HH:mm:ss", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl-CS", "default", { + name: "sr-Cyrl-CS", + englishName: "Serbian (Cyrillic, Serbia and Montenegro (Former))", + nativeName: "ÑрпÑки (Србија и Црна Гора (Претходно))", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["не","по","ут","ÑÑ€","че","пе","Ñу"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "se-FI", "default", { + name: "se-FI", + englishName: "Sami, Northern (Finland)", + nativeName: "davvisámegiella (Suopma)", + language: "se", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sotnabeaivi","vuossárga","maÅ‹Å‹ebárga","gaskavahkku","duorastat","bearjadat","lávvardat"], + namesAbbr: ["sotn","vuos","maÅ‹","gask","duor","bear","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["oÄ‘Ä‘ajagemánnu","guovvamánnu","njukÄamánnu","cuoÅ‹ománnu","miessemánnu","geassemánnu","suoidnemánnu","borgemánnu","ÄakÄamánnu","golggotmánnu","skábmamánnu","juovlamánnu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ajagimánu","guovvamánu","njukÄamánu","cuoÅ‹ománu","miessemánu","geassemánu","suoidnemánu","borgemánu","ÄakÄamánu","golggotmánu","skábmamánu","juovlamánu",""], + namesAbbr: ["oÄ‘Ä‘j","guov","njuk","cuo","mies","geas","suoi","borg","ÄakÄ","golg","skáb","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. b. 'yyyy H:mm", + F: "MMMM d'. b. 'yyyy H:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "quz-PE", "default", { + name: "quz-PE", + englishName: "Quechua (Peru)", + nativeName: "runasimi (Piruw)", + language: "quz", + numberFormat: { + percent: { + pattern: ["-%n","%n"] + }, + currency: { + pattern: ["$ -n","$ n"], + symbol: "S/." + } + }, + calendars: { + standard: { + days: { + names: ["intichaw","killachaw","atipachaw","quyllurchaw","Ch' askachaw","Illapachaw","k'uychichaw"], + namesAbbr: ["int","kil","ati","quy","Ch'","Ill","k'u"], + namesShort: ["d","k","a","m","h","b","k"] + }, + months: { + names: ["Qulla puquy","Hatun puquy","Pauqar waray","ayriwa","Aymuray","Inti raymi","Anta Sitwa","Qhapaq Sitwa","Uma raymi","Kantaray","Ayamarq'a","Kapaq Raymi",""], + namesAbbr: ["Qul","Hat","Pau","ayr","Aym","Int","Ant","Qha","Uma","Kan","Aya","Kap",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-LY", "default", { + name: "ar-LY", + englishName: "Arabic (Libya)", + nativeName: "العربية (ليبيا)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$n"], + decimals: 3, + symbol: "د.Ù„.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "zh-SG", "default", { + name: "zh-SG", + englishName: "Chinese (Simplified, Singapore)", + nativeName: "中文(新加å¡)", + language: "zh-CHS", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "tt h:mm", + T: "tt h:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' tt h:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' tt h:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "de-LU", "default", { + name: "de-LU", + englishName: "German (Luxembourg)", + nativeName: "Deutsch (Luxemburg)", + language: "de", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-CA", "default", { + name: "en-CA", + englishName: "English (Canada)", + nativeName: "English (Canada)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "MMMM-dd-yy", + f: "MMMM-dd-yy h:mm tt", + F: "MMMM-dd-yy h:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "es-GT", "default", { + name: "es-GT", + englishName: "Spanish (Guatemala)", + nativeName: "Español (Guatemala)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "Q" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-CH", "default", { + name: "fr-CH", + englishName: "French (Switzerland)", + nativeName: "français (Suisse)", + language: "fr", + numberFormat: { + ",": "'", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "fr." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "hr-BA", "default", { + name: "hr-BA", + englishName: "Croatian (Latin, Bosnia and Herzegovina)", + nativeName: "hrvatski (Bosna i Hercegovina)", + language: "hr", + numberFormat: { + pattern: ["- n"], + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["sijeÄanj","veljaÄa","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + monthsGenitive: { + names: ["sijeÄnja","veljaÄe","ožujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenog","prosinca",""], + namesAbbr: ["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy.", + D: "d. MMMM yyyy.", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy. H:mm", + F: "d. MMMM yyyy. H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "smj-NO", "default", { + name: "smj-NO", + englishName: "Sami, Lule (Norway)", + nativeName: "julevusámegiella (Vuodna)", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["sÃ¥dnÃ¥biejvve","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["sÃ¥d","mán","dis","gas","duor","bier","láv"], + namesShort: ["s","m","d","g","d","b","l"] + }, + months: { + names: ["Ã¥dÃ¥jakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bÃ¥rggemánno","ragátmánno","gÃ¥lgÃ¥dismánno","basádismánno","javllamánno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + monthsGenitive: { + names: ["Ã¥dÃ¥jakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bÃ¥rggemáno","ragátmáno","gÃ¥lgÃ¥dismáno","basádismáno","javllamáno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-DZ", "default", { + name: "ar-DZ", + englishName: "Arabic (Algeria)", + nativeName: "العربية (الجزائر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.ج.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "zh-MO", "default", { + name: "zh-MO", + englishName: "Chinese (Traditional, Macao S.A.R.)", + nativeName: "中文(澳門特別行政å€)", + language: "zh-CHT", + numberFormat: { + "NaN": "éžæ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "MOP" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "de-LI", "default", { + name: "de-LI", + englishName: "German (Liechtenstein)", + nativeName: "Deutsch (Liechtenstein)", + language: "de", + numberFormat: { + ",": "'", + "NaN": "n. def.", + negativeInfinity: "-unendlich", + positiveInfinity: "+unendlich", + percent: { + pattern: ["-n%","n%"], + ",": "'" + }, + currency: { + pattern: ["$-n","$ n"], + ",": "'", + symbol: "CHF" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"], + namesAbbr: ["So","Mo","Di","Mi","Do","Fr","Sa"], + namesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"] + }, + months: { + names: ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""], + namesAbbr: ["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""] + }, + AM: null, + PM: null, + eras: [{"name":"n. Chr.","start":null,"offset":0}], + patterns: { + d: "dd.MM.yyyy", + D: "dddd, d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd, d. MMMM yyyy HH:mm", + F: "dddd, d. MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-NZ", "default", { + name: "en-NZ", + englishName: "English (New Zealand)", + nativeName: "English (New Zealand)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + patterns: { + d: "d/MM/yyyy", + D: "dddd, d MMMM yyyy", + f: "dddd, d MMMM yyyy h:mm tt", + F: "dddd, d MMMM yyyy h:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-CR", "default", { + name: "es-CR", + englishName: "Spanish (Costa Rica)", + nativeName: "Español (Costa Rica)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + ",": ".", + ".": ",", + symbol: "â‚¡" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-LU", "default", { + name: "fr-LU", + englishName: "French (Luxembourg)", + nativeName: "français (Luxembourg)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bs-Latn-BA", "default", { + name: "bs-Latn-BA", + englishName: "Bosnian (Latin, Bosnia and Herzegovina)", + nativeName: "bosanski (Bosna i Hercegovina)", + language: "bs-Latn", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "smj-SE", "default", { + name: "smj-SE", + englishName: "Sami, Lule (Sweden)", + nativeName: "julevusámegiella (Svierik)", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], + namesShort: ["á","m","d","g","d","b","l"] + }, + months: { + names: ["Ã¥dÃ¥jakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bÃ¥rggemánno","ragátmánno","gÃ¥lgÃ¥dismánno","basádismánno","javllamánno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + monthsGenitive: { + names: ["Ã¥dÃ¥jakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bÃ¥rggemáno","ragátmáno","gÃ¥lgÃ¥dismáno","basádismáno","javllamáno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-MA", "default", { + name: "ar-MA", + englishName: "Arabic (Morocco)", + nativeName: "العربية (المملكة المغربية)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.Ù….\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","ماي","يونيو","يوليوز","غشت","شتنبر","أكتوبر","نونبر","دجنبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "en-IE", "default", { + name: "en-IE", + englishName: "English (Ireland)", + nativeName: "English (Ireland)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + AM: null, + PM: null, + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-PA", "default", { + name: "es-PA", + englishName: "Spanish (Panama)", + nativeName: "Español (Panamá)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + symbol: "B/." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "fr-MC", "default", { + name: "fr-MC", + englishName: "French (Monaco)", + nativeName: "français (Principauté de Monaco)", + language: "fr", + numberFormat: { + ",": " ", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: null, + PM: null, + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd d MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dddd d MMMM yyyy HH:mm", + F: "dddd d MMMM yyyy HH:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn-BA", "default", { + name: "sr-Latn-BA", + englishName: "Serbian (Latin, Bosnia and Herzegovina)", + nativeName: "srpski (Bosna i Hercegovina)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sma-NO", "default", { + name: "sma-NO", + englishName: "Sami, Southern (Norway)", + nativeName: "Ã¥arjelsaemiengiele (Nöörje)", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-%n","%n"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["aejlege","mÃ¥anta","dæjsta","gaskevÃ¥hkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","mÃ¥a","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-TN", "default", { + name: "ar-TN", + englishName: "Arabic (Tunisia)", + nativeName: "العربية (تونس)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ت.\u200f" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MM/yyyy H:mm", + F: "dd/MM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd/MMMM/yyyy H:mm", + F: "dd/MMMM/yyyy H:mm:ss", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, MMMM dd, yyyy H:mm", + F: "dddd, MMMM dd, yyyy H:mm:ss" + } + } + } +}); + +Globalize.addCultureInfo( "en-ZA", "default", { + name: "en-ZA", + englishName: "English (South Africa)", + nativeName: "English (South Africa)", + numberFormat: { + ",": " ", + percent: { + pattern: ["-n%","n%"], + ",": " " + }, + currency: { + pattern: ["$-n","$ n"], + ",": " ", + ".": ",", + symbol: "R" + } + }, + calendars: { + standard: { + patterns: { + d: "yyyy/MM/dd", + D: "dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM yyyy hh:mm tt", + F: "dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-DO", "default", { + name: "es-DO", + englishName: "Spanish (Dominican Republic)", + nativeName: "Español (República Dominicana)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + symbol: "RD$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl-BA", "default", { + name: "sr-Cyrl-BA", + englishName: "Serbian (Cyrillic, Bosnia and Herzegovina)", + nativeName: "ÑрпÑки (БоÑна и Херцеговина)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["н","п","у","Ñ","ч","п","Ñ"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sma-SE", "default", { + name: "sma-SE", + englishName: "Sami, Southern (Sweden)", + nativeName: "Ã¥arjelsaemiengiele (Sveerje)", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["aejlege","mÃ¥anta","dæjsta","gaskevÃ¥hkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","mÃ¥a","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-OM", "default", { + name: "ar-OM", + englishName: "Arabic (Oman)", + nativeName: "العربية (عمان)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "ر.ع.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-JM", "default", { + name: "en-JM", + englishName: "English (Jamaica)", + nativeName: "English (Jamaica)", + numberFormat: { + currency: { + pattern: ["-$n","$n"], + symbol: "J$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "es-VE", "default", { + name: "es-VE", + englishName: "Spanish (Bolivarian Republic of Venezuela)", + nativeName: "Español (Republica Bolivariana de Venezuela)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": ".", + ".": ",", + symbol: "Bs. F." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bs-Cyrl-BA", "default", { + name: "bs-Cyrl-BA", + englishName: "Bosnian (Cyrillic, Bosnia and Herzegovina)", + nativeName: "боÑанÑки (БоÑна и Херцеговина)", + language: "bs-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недјеља","понедјељак","уторак","Ñриједа","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["н","п","у","Ñ","ч","п","Ñ"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "sms-FI", "default", { + name: "sms-FI", + englishName: "Sami, Skolt (Finland)", + nativeName: "sääm´ǩiõll (Lää´ddjânnam)", + language: "sms", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], + namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], + namesShort: ["p","v","m","s","n","p","s"] + }, + months: { + names: ["oÄ‘Ä‘ee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhÄÄmään","vue´ssmään","Ç©ie´ssmään","suei´nnmään","på´rǧǧmään","ÄõhÄÄmään","kÃ¥lggmään","skamm´mään","rosttovmään",""], + namesAbbr: ["oÄ‘jm","tä´lvv","pâzl","njuh","vue","Ç©ie","suei","på´r","Äõh","kÃ¥lg","ska","rost",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhÄÄmannu","vue´ssmannu","Ç©ie´ssmannu","suei´nnmannu","på´rǧǧmannu","ÄõhÄÄmannu","kÃ¥lggmannu","skamm´mannu","rosttovmannu",""], + namesAbbr: ["oÄ‘jm","tä´lvv","pâzl","njuh","vue","Ç©ie","suei","på´r","Äõh","kÃ¥lg","ska","rost",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-YE", "default", { + name: "ar-YE", + englishName: "Arabic (Yemen)", + nativeName: "العربية (اليمن)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.ÙŠ.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-029", "default", { + name: "en-029", + englishName: "English (Caribbean)", + nativeName: "English (Caribbean)", + numberFormat: { + currency: { + pattern: ["-$n","$n"] + } + }, + calendars: { + standard: { + firstDay: 1, + patterns: { + d: "MM/dd/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-CO", "default", { + name: "es-CO", + englishName: "Spanish (Colombia)", + nativeName: "Español (Colombia)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn-RS", "default", { + name: "sr-Latn-RS", + englishName: "Serbian (Latin, Serbia)", + nativeName: "srpski (Srbija)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "smn-FI", "default", { + name: "smn-FI", + englishName: "Sami, Inari (Finland)", + nativeName: "sämikielâ (Suomâ)", + language: "smn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], + namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], + namesShort: ["p","v","m","k","t","v","l"] + }, + months: { + names: ["uđđâivemáánu","kuovâmáánu","njuhÄâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","ÄohÄâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], + namesAbbr: ["uÄ‘iv","kuov","njuh","cuoÅ‹","vyes","kesi","syei","porg","Äoh","roov","ska","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-SY", "default", { + name: "ar-SY", + englishName: "Arabic (Syria)", + nativeName: "العربية (سوريا)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "Ù„.س.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-BZ", "default", { + name: "en-BZ", + englishName: "English (Belize)", + nativeName: "English (Belize)", + numberFormat: { + currency: { + groupSizes: [3,0], + symbol: "BZ$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd MMMM yyyy hh:mm tt", + F: "dddd, dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-PE", "default", { + name: "es-PE", + englishName: "Spanish (Peru)", + nativeName: "Español (Perú)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["$ -n","$ n"], + symbol: "S/." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl-RS", "default", { + name: "sr-Cyrl-RS", + englishName: "Serbian (Cyrillic, Serbia)", + nativeName: "ÑрпÑки (Србија)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["не","по","ут","ÑÑ€","че","пе","Ñу"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-JO", "default", { + name: "ar-JO", + englishName: "Arabic (Jordan)", + nativeName: "العربية (الأردن)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ا.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-TT", "default", { + name: "en-TT", + englishName: "English (Trinidad and Tobago)", + nativeName: "English (Trinidad y Tobago)", + numberFormat: { + currency: { + groupSizes: [3,0], + symbol: "TT$" + } + }, + calendars: { + standard: { + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd MMMM yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd MMMM yyyy hh:mm tt", + F: "dddd, dd MMMM yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-AR", "default", { + name: "es-AR", + englishName: "Spanish (Argentina)", + nativeName: "Español (Argentina)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["$-n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn-ME", "default", { + name: "sr-Latn-ME", + englishName: "Serbian (Latin, Montenegro)", + nativeName: "srpski (Crna Gora)", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-LB", "default", { + name: "ar-LB", + englishName: "Arabic (Lebanon)", + nativeName: "العربية (لبنان)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "Ù„.Ù„.\u200f" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 1, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_TransliteratedEnglish: { + name: "Gregorian_TransliteratedEnglish", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø£","ا","Ø«","Ø£","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 1, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-ZW", "default", { + name: "en-ZW", + englishName: "English (Zimbabwe)", + nativeName: "English (Zimbabwe)", + numberFormat: { + currency: { + symbol: "Z$" + } + } +}); + +Globalize.addCultureInfo( "es-EC", "default", { + name: "es-EC", + englishName: "Spanish (Ecuador)", + nativeName: "Español (Ecuador)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl-ME", "default", { + name: "sr-Cyrl-ME", + englishName: "Serbian (Cyrillic, Montenegro)", + nativeName: "ÑрпÑки (Црна Гора)", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["не","по","ут","ÑÑ€","че","пе","Ñу"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-KW", "default", { + name: "ar-KW", + englishName: "Arabic (Kuwait)", + nativeName: "العربية (الكويت)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.Ùƒ.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-PH", "default", { + name: "en-PH", + englishName: "English (Republic of the Philippines)", + nativeName: "English (Philippines)", + numberFormat: { + currency: { + symbol: "Php" + } + } +}); + +Globalize.addCultureInfo( "es-CL", "default", { + name: "es-CL", + englishName: "Spanish (Chile)", + nativeName: "Español (Chile)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-$ n","$ n"], + ",": ".", + ".": "," + } + }, + calendars: { + standard: { + "/": "-", + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: null, + PM: null, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd-MM-yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dddd, dd' de 'MMMM' de 'yyyy H:mm", + F: "dddd, dd' de 'MMMM' de 'yyyy H:mm:ss", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-AE", "default", { + name: "ar-AE", + englishName: "Arabic (U.A.E.)", + nativeName: "العربية (الإمارات العربية المتحدة)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "د.Ø¥.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "es-UY", "default", { + name: "es-UY", + englishName: "Spanish (Uruguay)", + nativeName: "Español (Uruguay)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$U" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-BH", "default", { + name: "ar-BH", + englishName: "Arabic (Bahrain)", + nativeName: "العربية (البحرين)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + decimals: 3, + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + percent: { + decimals: 3 + }, + currency: { + pattern: ["$n-","$ n"], + decimals: 3, + symbol: "د.ب.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "es-PY", "default", { + name: "es-PY", + englishName: "Spanish (Paraguay)", + nativeName: "Español (Paraguay)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "Gs" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "ar-QA", "default", { + name: "ar-QA", + englishName: "Arabic (Qatar)", + nativeName: "العربية (قطر)", + language: "ar", + isRTL: true, + numberFormat: { + pattern: ["n-"], + "NaN": "ليس برقم", + negativeInfinity: "-لا نهاية", + positiveInfinity: "+لا نهاية", + currency: { + pattern: ["$n-","$ n"], + symbol: "ر.Ù‚.\u200f" + } + }, + calendars: { + standard: { + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["يناير","Ùبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + patterns: { + d: "dd/MM/yyyy", + D: "dd MMMM, yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd MMMM, yyyy hh:mm tt", + F: "dd MMMM, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + UmAlQura: { + name: "UmAlQura", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MMMM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MMMM/yyyy hh:mm tt", + F: "dd/MMMM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + _yearInfo: [ + // MonthLengthFlags, Gregorian Date + [746, -2198707200000], + [1769, -2168121600000], + [3794, -2137449600000], + [3748, -2106777600000], + [3402, -2076192000000], + [2710, -2045606400000], + [1334, -2015020800000], + [2741, -1984435200000], + [3498, -1953763200000], + [2980, -1923091200000], + [2889, -1892505600000], + [2707, -1861920000000], + [1323, -1831334400000], + [2647, -1800748800000], + [1206, -1770076800000], + [2741, -1739491200000], + [1450, -1708819200000], + [3413, -1678233600000], + [3370, -1647561600000], + [2646, -1616976000000], + [1198, -1586390400000], + [2397, -1555804800000], + [748, -1525132800000], + [1749, -1494547200000], + [1706, -1463875200000], + [1365, -1433289600000], + [1195, -1402704000000], + [2395, -1372118400000], + [698, -1341446400000], + [1397, -1310860800000], + [2994, -1280188800000], + [1892, -1249516800000], + [1865, -1218931200000], + [1621, -1188345600000], + [683, -1157760000000], + [1371, -1127174400000], + [2778, -1096502400000], + [1748, -1065830400000], + [3785, -1035244800000], + [3474, -1004572800000], + [3365, -973987200000], + [2637, -943401600000], + [685, -912816000000], + [1389, -882230400000], + [2922, -851558400000], + [2898, -820886400000], + [2725, -790300800000], + [2635, -759715200000], + [1175, -729129600000], + [2359, -698544000000], + [694, -667872000000], + [1397, -637286400000], + [3434, -606614400000], + [3410, -575942400000], + [2710, -545356800000], + [2349, -514771200000], + [605, -484185600000], + [1245, -453600000000], + [2778, -422928000000], + [1492, -392256000000], + [3497, -361670400000], + [3410, -330998400000], + [2730, -300412800000], + [1238, -269827200000], + [2486, -239241600000], + [884, -208569600000], + [1897, -177984000000], + [1874, -147312000000], + [1701, -116726400000], + [1355, -86140800000], + [2731, -55555200000], + [1370, -24883200000], + [2773, 5702400000], + [3538, 36374400000], + [3492, 67046400000], + [3401, 97632000000], + [2709, 128217600000], + [1325, 158803200000], + [2653, 189388800000], + [1370, 220060800000], + [2773, 250646400000], + [1706, 281318400000], + [1685, 311904000000], + [1323, 342489600000], + [2647, 373075200000], + [1198, 403747200000], + [2422, 434332800000], + [1388, 465004800000], + [2901, 495590400000], + [2730, 526262400000], + [2645, 556848000000], + [1197, 587433600000], + [2397, 618019200000], + [730, 648691200000], + [1497, 679276800000], + [3506, 709948800000], + [2980, 740620800000], + [2890, 771206400000], + [2645, 801792000000], + [693, 832377600000], + [1397, 862963200000], + [2922, 893635200000], + [3026, 924307200000], + [3012, 954979200000], + [2953, 985564800000], + [2709, 1016150400000], + [1325, 1046736000000], + [1453, 1077321600000], + [2922, 1107993600000], + [1748, 1138665600000], + [3529, 1169251200000], + [3474, 1199923200000], + [2726, 1230508800000], + [2390, 1261094400000], + [686, 1291680000000], + [1389, 1322265600000], + [874, 1352937600000], + [2901, 1383523200000], + [2730, 1414195200000], + [2381, 1444780800000], + [1181, 1475366400000], + [2397, 1505952000000], + [698, 1536624000000], + [1461, 1567209600000], + [1450, 1597881600000], + [3413, 1628467200000], + [2714, 1659139200000], + [2350, 1689724800000], + [622, 1720310400000], + [1373, 1750896000000], + [2778, 1781568000000], + [1748, 1812240000000], + [1701, 1842825600000], + [0, 1873411200000] + ], + minDate: -2198707200000, + maxDate: 1873411199999, + toGregorian: function(hyear, hmonth, hday) { + var days = hday - 1, + gyear = hyear - 1318; + if (gyear < 0 || gyear >= this._yearInfo.length) return null; + var info = this._yearInfo[gyear], + gdate = new Date(info[1]), + monthLength = info[0]; + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the gregorian date in the same timezone, + // not what the gregorian date was at GMT time, so we adjust for the offset. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + for (var i = 0; i < hmonth; i++) { + days += 29 + (monthLength & 1); + monthLength = monthLength >> 1; + } + gdate.setDate(gdate.getDate() + days); + return gdate; + }, + fromGregorian: function(gdate) { + // Date's ticks in javascript are always from the GMT time, + // but we are interested in the hijri date in the same timezone, + // not what the hijri date was at GMT time, so we adjust for the offset. + var ticks = gdate - gdate.getTimezoneOffset() * 60000; + if (ticks < this.minDate || ticks > this.maxDate) return null; + var hyear = 0, + hmonth = 1; + // find the earliest gregorian date in the array that is greater than or equal to the given date + while (ticks > this._yearInfo[++hyear][1]) { } + if (ticks !== this._yearInfo[hyear][1]) { + hyear--; + } + var info = this._yearInfo[hyear], + // how many days has it been since the date we found in the array? + // 86400000 = ticks per day + days = Math.floor((ticks - info[1]) / 86400000), + monthLength = info[0]; + hyear += 1318; // the Nth array entry corresponds to hijri year 1318+N + // now increment day/month based on the total days, considering + // how many days are in each month. We cannot run past the year + // mark since we would have found a different array entry in that case. + var daysInMonth = 29 + (monthLength & 1); + while (days >= daysInMonth) { + days -= daysInMonth; + monthLength = monthLength >> 1; + daysInMonth = 29 + (monthLength & 1); + hmonth++; + } + // remaining days is less than is in one month, thus is the day of the month we landed on + // hmonth-1 because in javascript months are zero based, stay consistent with that. + return [hyear, hmonth - 1, days + 1]; + } + } + }, + Hijri: { + name: "Hijri", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""], + namesAbbr: ["محرم","صÙر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"بعد الهجرة","start":null,"offset":0}], + twoDigitYearMax: 1451, + patterns: { + d: "dd/MM/yy", + D: "dd/MM/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dd/MM/yyyy hh:mm tt", + F: "dd/MM/yyyy hh:mm:ss tt", + M: "dd MMMM" + }, + convert: { + // Adapted to Script from System.Globalization.HijriCalendar + ticks1970: 62135596800000, + // number of days leading up to each month + monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355], + minDate: -42521673600000, + maxDate: 253402300799999, + // The number of days to add or subtract from the calendar to accommodate the variances + // in the start and the end of Ramadan and to accommodate the date difference between + // countries/regions. May be dynamically adjusted based on user preference, but should + // remain in the range of -2 to 2, inclusive. + hijriAdjustment: 0, + toGregorian: function(hyear, hmonth, hday) { + var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.hijriAdjustment; + // 86400000 = ticks per day + var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970); + // adjust for timezone, because we are interested in the gregorian date for the same timezone + // but ticks in javascript is always from GMT, unlike the server were ticks counts from the base + // date in the current timezone. + gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset()); + return gdate; + }, + fromGregorian: function(gdate) { + if ((gdate < this.minDate) || (gdate > this.maxDate)) return null; + var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000, + daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.hijriAdjustment; + // very particular formula determined by someone smart, adapted from the server-side implementation. + // it approximates the hijri year. + var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1, + absDays = this.daysToYear(hyear), + daysInYear = this.isLeapYear(hyear) ? 355 : 354; + // hyear is just approximate, it may need adjustment up or down by 1. + if (daysSinceJan0101 < absDays) { + hyear--; + absDays -= daysInYear; + } + else if (daysSinceJan0101 === absDays) { + hyear--; + absDays = this.daysToYear(hyear); + } + else { + if (daysSinceJan0101 > (absDays + daysInYear)) { + absDays += daysInYear; + hyear++; + } + } + // determine month by looking at how many days into the hyear we are + // monthDays contains the number of days up to each month. + hmonth = 0; + var daysIntoYear = daysSinceJan0101 - absDays; + while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) { + hmonth++; + } + hmonth--; + hday = daysIntoYear - this.monthDays[hmonth]; + return [hyear, hmonth, hday]; + }, + daysToYear: function(year) { + // calculates how many days since Jan 1, 0001 + var yearsToYear30 = Math.floor((year - 1) / 30) * 30, + yearsInto30 = year - yearsToYear30 - 1, + days = Math.floor((yearsToYear30 * 10631) / 30) + 227013; + while (yearsInto30 > 0) { + days += (this.isLeapYear(yearsInto30) ? 355 : 354); + yearsInto30--; + } + return days; + }, + isLeapYear: function(year) { + return ((((year * 11) + 14) % 30) < 11); + } + } + }, + Gregorian_MiddleEastFrench: { + name: "Gregorian_MiddleEastFrench", + firstDay: 6, + days: { + names: ["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"], + namesAbbr: ["dim.","lun.","mar.","mer.","jeu.","ven.","sam."], + namesShort: ["di","lu","ma","me","je","ve","sa"] + }, + months: { + names: ["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""], + namesAbbr: ["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"ap. J.-C.","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt", + M: "dd MMMM" + } + }, + Gregorian_Arabic: { + name: "Gregorian_Arabic", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""], + namesAbbr: ["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + }, + Gregorian_TransliteratedFrench: { + name: "Gregorian_TransliteratedFrench", + firstDay: 6, + days: { + names: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesAbbr: ["الأحد","الإثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"], + namesShort: ["Ø­","Ù†","Ø«","ر","Ø®","ج","س"] + }, + months: { + names: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""], + namesAbbr: ["جانÙييه","ÙÙŠÙرييه","مارس","Ø£Ùريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوÙمبر","ديسمبر",""] + }, + AM: ["ص","ص","ص"], + PM: ["Ù…","Ù…","Ù…"], + eras: [{"name":"Ù…","start":null,"offset":0}], + patterns: { + d: "MM/dd/yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, MMMM dd, yyyy hh:mm tt", + F: "dddd, MMMM dd, yyyy hh:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "en-IN", "default", { + name: "en-IN", + englishName: "English (India)", + nativeName: "English (India)", + numberFormat: { + groupSizes: [3,2], + percent: { + groupSizes: [3,2] + }, + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,2], + symbol: "Rs." + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "dd MMMM yyyy HH:mm", + F: "dd MMMM yyyy HH:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "es-BO", "default", { + name: "es-BO", + englishName: "Spanish (Bolivia)", + nativeName: "Español (Bolivia)", + language: "es", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["($ n)","$ n"], + ",": ".", + ".": ",", + symbol: "$b" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-MY", "default", { + name: "en-MY", + englishName: "English (Malaysia)", + nativeName: "English (Malaysia)", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "RM" + } + }, + calendars: { + standard: { + days: { + namesShort: ["S","M","T","W","T","F","S"] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM, yyyy", + f: "dddd, d MMMM, yyyy h:mm tt", + F: "dddd, d MMMM, yyyy h:mm:ss tt", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "es-SV", "default", { + name: "es-SV", + englishName: "Spanish (El Salvador)", + nativeName: "Español (El Salvador)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "en-SG", "default", { + name: "en-SG", + englishName: "English (Singapore)", + nativeName: "English (Singapore)", + numberFormat: { + percent: { + pattern: ["-n%","n%"] + } + }, + calendars: { + standard: { + days: { + namesShort: ["S","M","T","W","T","F","S"] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd, d MMMM, yyyy", + f: "dddd, d MMMM, yyyy h:mm tt", + F: "dddd, d MMMM, yyyy h:mm:ss tt", + M: "d MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "es-HN", "default", { + name: "es-HN", + englishName: "Spanish (Honduras)", + nativeName: "Español (Honduras)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["$ -n","$ n"], + groupSizes: [3,0], + symbol: "L." + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-NI", "default", { + name: "es-NI", + englishName: "Spanish (Nicaragua)", + nativeName: "Español (Nicaragua)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + groupSizes: [3,0], + symbol: "C$" + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-PR", "default", { + name: "es-PR", + englishName: "Spanish (Puerto Rico)", + nativeName: "Español (Puerto Rico)", + language: "es", + numberFormat: { + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + currency: { + pattern: ["($ n)","$ n"], + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sá"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + AM: ["a.m.","a.m.","A.M."], + PM: ["p.m.","p.m.","P.M."], + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + d: "dd/MM/yyyy", + D: "dddd, dd' de 'MMMM' de 'yyyy", + t: "hh:mm tt", + T: "hh:mm:ss tt", + f: "dddd, dd' de 'MMMM' de 'yyyy hh:mm tt", + F: "dddd, dd' de 'MMMM' de 'yyyy hh:mm:ss tt", + M: "dd MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "es-US", "default", { + name: "es-US", + englishName: "Spanish (United States)", + nativeName: "Español (Estados Unidos)", + language: "es", + numberFormat: { + groupSizes: [3,0], + "NaN": "NeuN", + negativeInfinity: "-Infinito", + positiveInfinity: "Infinito", + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["domingo","lunes","martes","miércoles","jueves","viernes","sábado"], + namesAbbr: ["dom","lun","mar","mié","jue","vie","sáb"], + namesShort: ["do","lu","ma","mi","ju","vi","sa"] + }, + months: { + names: ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""], + namesAbbr: ["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""] + }, + eras: [{"name":"d.C.","start":null,"offset":0}], + patterns: { + M: "dd' de 'MMMM", + Y: "MMMM' de 'yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bs-Cyrl", "default", { + name: "bs-Cyrl", + englishName: "Bosnian (Cyrillic)", + nativeName: "боÑанÑки", + language: "bs-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "КМ" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недјеља","понедјељак","уторак","Ñриједа","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["н","п","у","Ñ","ч","п","Ñ"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "bs-Latn", "default", { + name: "bs-Latn", + englishName: "Bosnian (Latin)", + nativeName: "bosanski", + language: "bs-Latn", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Cyrl", "default", { + name: "sr-Cyrl", + englishName: "Serbian (Cyrillic)", + nativeName: "ÑрпÑки", + language: "sr-Cyrl", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-беÑконачноÑÑ‚", + positiveInfinity: "+беÑконачноÑÑ‚", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Дин." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["недеља","понедељак","уторак","Ñреда","четвртак","петак","Ñубота"], + namesAbbr: ["нед","пон","уто","Ñре","чет","пет","Ñуб"], + namesShort: ["не","по","ут","ÑÑ€","че","пе","Ñу"] + }, + months: { + names: ["јануар","фебруар","март","април","мај","јун","јул","авгуÑÑ‚","Ñептембар","октобар","новембар","децембар",""], + namesAbbr: ["јан","феб","мар","апр","мај","јун","јул","авг","Ñеп","окт","нов","дец",""] + }, + AM: null, + PM: null, + eras: [{"name":"н.е.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr-Latn", "default", { + name: "sr-Latn", + englishName: "Serbian (Latin)", + nativeName: "srpski", + language: "sr-Latn", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "smn", "default", { + name: "smn", + englishName: "Sami (Inari)", + nativeName: "sämikielâ", + language: "smn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pasepeivi","vuossargâ","majebargâ","koskokko","tuorâstâh","vástuppeivi","lávárdâh"], + namesAbbr: ["pa","vu","ma","ko","tu","vá","lá"], + namesShort: ["p","v","m","k","t","v","l"] + }, + months: { + names: ["uđđâivemáánu","kuovâmáánu","njuhÄâmáánu","cuáŋuimáánu","vyesimáánu","kesimáánu","syeinimáánu","porgemáánu","ÄohÄâmáánu","roovvâdmáánu","skammâmáánu","juovlâmáánu",""], + namesAbbr: ["uÄ‘iv","kuov","njuh","cuoÅ‹","vyes","kesi","syei","porg","Äoh","roov","ska","juov",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "az-Cyrl", "default", { + name: "az-Cyrl", + englishName: "Azeri (Cyrillic)", + nativeName: "Ðзәрбајҹан дили", + language: "az-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "ман." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Базар","Базар ертәÑи","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"], + namesAbbr: ["Б","Бе","Ча","Ч","Ҹа","Ò¸","Ш"], + namesShort: ["Б","Бе","Ча","Ч","Ҹа","Ò¸","Ш"] + }, + months: { + names: ["Јанвар","Феврал","Март","Ðпрел","Мај","Ијун","Ијул","ÐвгуÑÑ‚","Сентјабр","Октјабр","Ðојабр","Декабр",""], + namesAbbr: ["Јан","Фев","Мар","Ðпр","Мај","Ијун","Ијул","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["јанвар","феврал","март","апрел","мај","ијун","ијул","авгуÑÑ‚","Ñентјабр","октјабр","нојабр","декабр",""], + namesAbbr: ["Јан","Фев","Мар","Ðпр","маÑ","ијун","ијул","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sms", "default", { + name: "sms", + englishName: "Sami (Skolt)", + nativeName: "sääm´ǩiõll", + language: "sms", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["pâ´sspei´vv","vuõssargg","mââibargg","seärad","nelljdpei´vv","piâtnâc","sue´vet"], + namesAbbr: ["pâ","vu","mâ","se","ne","pi","su"], + namesShort: ["p","v","m","s","n","p","s"] + }, + months: { + names: ["oÄ‘Ä‘ee´jjmään","tä´lvvmään","pâ´zzlâšttammään","njuhÄÄmään","vue´ssmään","Ç©ie´ssmään","suei´nnmään","på´rǧǧmään","ÄõhÄÄmään","kÃ¥lggmään","skamm´mään","rosttovmään",""], + namesAbbr: ["oÄ‘jm","tä´lvv","pâzl","njuh","vue","Ç©ie","suei","på´r","Äõh","kÃ¥lg","ska","rost",""] + }, + monthsGenitive: { + names: ["oÄ‘Ä‘ee´jjmannu","tä´lvvmannu","pâ´zzlâšttammannu","njuhÄÄmannu","vue´ssmannu","Ç©ie´ssmannu","suei´nnmannu","på´rǧǧmannu","ÄõhÄÄmannu","kÃ¥lggmannu","skamm´mannu","rosttovmannu",""], + namesAbbr: ["oÄ‘jm","tä´lvv","pâzl","njuh","vue","Ç©ie","suei","på´r","Äõh","kÃ¥lg","ska","rost",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "MMMM d'. p. 'yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "MMMM d'. p. 'yyyy H:mm", + F: "MMMM d'. p. 'yyyy H:mm:ss", + M: "MMMM d'. p. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh", "default", { + name: "zh", + englishName: "Chinese", + nativeName: "中文", + language: "zh", + numberFormat: { + "NaN": "éžæ•°å­—", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "nn", "default", { + name: "nn", + englishName: "Norwegian (Nynorsk)", + nativeName: "norsk (nynorsk)", + language: "nn", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mÃ¥ndag","tysdag","onsdag","torsdag","fredag","laurdag"], + namesAbbr: ["sø","mÃ¥","ty","on","to","fr","la"], + namesShort: ["sø","mÃ¥","ty","on","to","fr","la"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "bs", "default", { + name: "bs", + englishName: "Bosnian", + nativeName: "bosanski", + language: "bs", + numberFormat: { + ",": ".", + ".": ",", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "KM" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedjelja","ponedjeljak","utorak","srijeda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sri","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","juni","juli","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "az-Latn", "default", { + name: "az-Latn", + englishName: "Azeri (Latin)", + nativeName: "AzÉ™rbaycan\xadılı", + language: "az-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "man." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Bazar","Bazar ertÉ™si","ÇərÅŸÉ™nbə axÅŸamı","ÇərÅŸÉ™nbÉ™","Cümə axÅŸamı","CümÉ™","ŞənbÉ™"], + namesAbbr: ["B","Be","Ça","Ç","Ca","C","Åž"], + namesShort: ["B","Be","Ça","Ç","Ca","C","Åž"] + }, + months: { + names: ["Yanvar","Fevral","Mart","Aprel","May","Ä°yun","Ä°yul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + monthsGenitive: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["Yan","Fev","Mar","Apr","May","Ä°yun","Ä°yul","Avg","Sen","Okt","Noy","Dek",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + M: "d MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sma", "default", { + name: "sma", + englishName: "Sami (Southern)", + nativeName: "Ã¥arjelsaemiengiele", + language: "sma", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["aejlege","mÃ¥anta","dæjsta","gaskevÃ¥hkoe","duarsta","bearjadahke","laavvardahke"], + namesAbbr: ["aej","mÃ¥a","dæj","gask","duar","bearj","laav"], + namesShort: ["a","m","d","g","d","b","l"] + }, + months: { + names: ["tsïengele","goevte","njoktje","voerhtje","suehpede","ruffie","snjaltje","mïetske","skïerede","golke","rahka","goeve",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + monthsGenitive: { + names: ["tsïengelen","goevten","njoktjen","voerhtjen","suehpeden","ruffien","snjaltjen","mïetsken","skïereden","golken","rahkan","goeven",""], + namesAbbr: ["tsïen","goevt","njok","voer","sueh","ruff","snja","mïet","skïer","golk","rahk","goev",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uz-Cyrl", "default", { + name: "uz-Cyrl", + englishName: "Uzbek (Cyrillic)", + nativeName: "Ўзбек", + language: "uz-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": " ", + ".": ",", + symbol: "Ñўм" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["Ñкшанба","душанба","Ñешанба","чоршанба","пайшанба","жума","шанба"], + namesAbbr: ["Ñкш","дш","Ñш","чш","пш","ж","ш"], + namesShort: ["Ñ","д","Ñ","ч","п","ж","ш"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвар","феврал","март","апрел","май","июн","июл","авгуÑÑ‚","ÑентÑбр","октÑбр","ноÑбр","декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","маÑ","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "yyyy 'йил' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'йил' d-MMMM HH:mm", + F: "yyyy 'йил' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "mn-Cyrl", "default", { + name: "mn-Cyrl", + englishName: "Mongolian (Cyrillic)", + nativeName: "Монгол хÑл", + language: "mn-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n$","n$"], + ",": " ", + ".": ",", + symbol: "â‚®" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["ÐÑм","Даваа","ÐœÑгмар","Лхагва","ПүрÑв","БааÑан","БÑмба"], + namesAbbr: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"], + namesShort: ["ÐÑ","Да","ÐœÑ","Лх","Пү","Ба","БÑ"] + }, + months: { + names: ["1 дүгÑÑр Ñар","2 дугаар Ñар","3 дугаар Ñар","4 дүгÑÑр Ñар","5 дугаар Ñар","6 дугаар Ñар","7 дугаар Ñар","8 дугаар Ñар","9 дүгÑÑр Ñар","10 дугаар Ñар","11 дүгÑÑр Ñар","12 дугаар Ñар",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + monthsGenitive: { + names: ["1 дүгÑÑр Ñарын","2 дугаар Ñарын","3 дугаар Ñарын","4 дүгÑÑр Ñарын","5 дугаар Ñарын","6 дугаар Ñарын","7 дугаар Ñарын","8 дугаар Ñарын","9 дүгÑÑр Ñарын","10 дугаар Ñарын","11 дүгÑÑр Ñарын","12 дугаар Ñарын",""], + namesAbbr: ["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""] + }, + AM: null, + PM: null, + patterns: { + d: "yy.MM.dd", + D: "yyyy 'оны' MMMM d", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy 'оны' MMMM d H:mm", + F: "yyyy 'оны' MMMM d H:mm:ss", + M: "d MMMM", + Y: "yyyy 'он' MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "iu-Cans", "default", { + name: "iu-Cans", + englishName: "Inuktitut (Syllabics)", + nativeName: "áƒá“„ᒃᑎá‘ᑦ", + language: "iu-Cans", + numberFormat: { + groupSizes: [3,0], + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["ᓈᑦá‘á–‘á”­","ᓇᒡá’ᔾᔭá…","áŠáƒá‘‰á±á–…","á±á–“ᑦᓯᖅ","ᓯᑕᒻᒥᖅ","ᑕᓪᓕá•á’¥á–…","ᓯᕙᑖá•á••á’ƒ"], + namesAbbr: ["ᓈᑦá‘","ᓇᒡá’","áŠáƒá‘‰á±","á±á–“ᑦᓯ","ᓯᑕ","ᑕᓪᓕ","ᓯᕙᑖá•á••á’ƒ"], + namesShort: ["ᓈ","ᓇ","áŠ","á±","ᓯ","á‘•","ᓯ"] + }, + months: { + names: ["á”®á“á“„áŠá•†","á•–á•á•—áŠá•†","ᒫᑦᓯ","á„á³á•†","á’ªáƒ","ᔫᓂ","ᔪᓚáƒ","á‹á’¡á’Œá“¯","ᓯᑎá±á•†","á…á‘á±á•†","á“„á••á±á•†","ᑎᓯá±á•†",""], + namesAbbr: ["á”®á“á“„","á•–á•á•—","ᒫᑦᓯ","á„á³á•†","á’ªáƒ","ᔫᓂ","ᔪᓚáƒ","á‹á’¡á’Œ","ᓯᑎá±","á…á‘á±","á“„á••á±","ᑎᓯá±",""] + }, + patterns: { + d: "d/M/yyyy", + D: "dddd,MMMM dd,yyyy", + f: "dddd,MMMM dd,yyyy h:mm tt", + F: "dddd,MMMM dd,yyyy h:mm:ss tt", + Y: "MMMM,yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh-Hant", "default", { + name: "zh-Hant", + englishName: "Chinese (Traditional)", + nativeName: "中文(ç¹é«”)", + language: "zh-Hant", + numberFormat: { + "NaN": "éžæ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "nb", "default", { + name: "nb", + englishName: "Norwegian (BokmÃ¥l)", + nativeName: "norsk (bokmÃ¥l)", + language: "nb", + numberFormat: { + ",": " ", + ".": ",", + negativeInfinity: "-INF", + positiveInfinity: "INF", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["$ -n","$ n"], + ",": " ", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"], + namesAbbr: ["sø","ma","ti","on","to","fr","lø"], + namesShort: ["sø","ma","ti","on","to","fr","lø"] + }, + months: { + names: ["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""], + namesAbbr: ["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yyyy", + D: "d. MMMM yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "d. MMMM yyyy HH:mm", + F: "d. MMMM yyyy HH:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "sr", "default", { + name: "sr", + englishName: "Serbian", + nativeName: "srpski", + language: "sr", + numberFormat: { + ",": ".", + ".": ",", + negativeInfinity: "-beskonaÄnost", + positiveInfinity: "+beskonaÄnost", + percent: { + pattern: ["-n%","n%"], + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "Din." + } + }, + calendars: { + standard: { + "/": ".", + firstDay: 1, + days: { + names: ["nedelja","ponedeljak","utorak","sreda","Äetvrtak","petak","subota"], + namesAbbr: ["ned","pon","uto","sre","Äet","pet","sub"], + namesShort: ["ne","po","ut","sr","Äe","pe","su"] + }, + months: { + names: ["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""], + namesAbbr: ["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"n.e.","start":null,"offset":0}], + patterns: { + d: "d.M.yyyy", + D: "d. MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d. MMMM yyyy H:mm", + F: "d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "tg-Cyrl", "default", { + name: "tg-Cyrl", + englishName: "Tajik (Cyrillic)", + nativeName: "Тоҷикӣ", + language: "tg-Cyrl", + numberFormat: { + ",": " ", + ".": ",", + groupSizes: [3,0], + negativeInfinity: "-беÑконечноÑÑ‚ÑŒ", + positiveInfinity: "беÑконечноÑÑ‚ÑŒ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + groupSizes: [3,0], + ",": " ", + ".": ";", + symbol: "Ñ‚.Ñ€." + } + }, + calendars: { + standard: { + "/": ".", + days: { + names: ["Яш","Душанбе","Сешанбе","Чоршанбе","Панҷшанбе","Ҷумъа","Шанбе"], + namesAbbr: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"], + namesShort: ["Яш","Дш","Сш","Чш","Пш","Ҷм","Шн"] + }, + months: { + names: ["Январ","Феврал","Март","Ðпрел","Май","Июн","Июл","ÐвгуÑÑ‚","СентÑбр","ОктÑбр","ÐоÑбр","Декабр",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + monthsGenitive: { + names: ["Ñнвари","феврали","марти","апрели","маи","июни","июли","авгуÑти","ÑентÑбри","октÑбри","ноÑбри","декабри",""], + namesAbbr: ["Янв","Фев","Мар","Ðпр","Май","Июн","Июл","Ðвг","Сен","Окт","ÐоÑ","Дек",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd.MM.yy", + D: "d MMMM yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "d MMMM yyyy H:mm", + F: "d MMMM yyyy H:mm:ss", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "dsb", "default", { + name: "dsb", + englishName: "Lower Sorbian", + nativeName: "dolnoserbšćina", + language: "dsb", + numberFormat: { + ",": ".", + ".": ",", + "NaN": "njedefinowane", + negativeInfinity: "-njekoÅ„cne", + positiveInfinity: "+njekoÅ„cne", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "€" + } + }, + calendars: { + standard: { + "/": ". ", + firstDay: 1, + days: { + names: ["njeźela","ponjeźele","waÅ‚tora","srjoda","stwortk","pÄ›tk","sobota"], + namesAbbr: ["nje","pon","waÅ‚","srj","stw","pÄ›t","sob"], + namesShort: ["n","p","w","s","s","p","s"] + }, + months: { + names: ["januar","februar","mÄ›rc","apryl","maj","junij","julij","awgust","september","oktober","nowember","december",""], + namesAbbr: ["jan","feb","mÄ›r","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + monthsGenitive: { + names: ["januara","februara","mÄ›rca","apryla","maja","junija","julija","awgusta","septembra","oktobra","nowembra","decembra",""], + namesAbbr: ["jan","feb","mÄ›r","apr","maj","jun","jul","awg","sep","okt","now","dec",""] + }, + AM: null, + PM: null, + eras: [{"name":"po Chr.","start":null,"offset":0}], + patterns: { + d: "d. M. yyyy", + D: "dddd, 'dnja' d. MMMM yyyy", + t: "H.mm 'goź.'", + T: "H:mm:ss", + f: "dddd, 'dnja' d. MMMM yyyy H.mm 'goź.'", + F: "dddd, 'dnja' d. MMMM yyyy H:mm:ss", + M: "d. MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "smj", "default", { + name: "smj", + englishName: "Sami (Lule)", + nativeName: "julevusámegiella", + language: "smj", + numberFormat: { + ",": " ", + ".": ",", + percent: { + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + ",": ".", + ".": ",", + symbol: "kr" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 1, + days: { + names: ["ájllek","mánnodahka","dijstahka","gasskavahkko","duorastahka","bierjjedahka","lávvodahka"], + namesAbbr: ["ájl","mán","dis","gas","duor","bier","láv"], + namesShort: ["á","m","d","g","d","b","l"] + }, + months: { + names: ["Ã¥dÃ¥jakmánno","guovvamánno","sjnjuktjamánno","vuoratjismánno","moarmesmánno","biehtsemánno","sjnjilltjamánno","bÃ¥rggemánno","ragátmánno","gÃ¥lgÃ¥dismánno","basádismánno","javllamánno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + monthsGenitive: { + names: ["Ã¥dÃ¥jakmáno","guovvamáno","sjnjuktjamáno","vuoratjismáno","moarmesmáno","biehtsemáno","sjnjilltjamáno","bÃ¥rggemáno","ragátmáno","gÃ¥lgÃ¥dismáno","basádismáno","javllamáno",""], + namesAbbr: ["Ã¥dÃ¥j","guov","snju","vuor","moar","bieh","snji","bÃ¥rg","ragá","gÃ¥lg","basá","javl",""] + }, + AM: null, + PM: null, + patterns: { + d: "yyyy-MM-dd", + D: "MMMM d'. b. 'yyyy", + t: "HH:mm", + T: "HH:mm:ss", + f: "MMMM d'. b. 'yyyy HH:mm", + F: "MMMM d'. b. 'yyyy HH:mm:ss", + M: "MMMM d'. b. '", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "uz-Latn", "default", { + name: "uz-Latn", + englishName: "Uzbek (Latin)", + nativeName: "U'zbek", + language: "uz-Latn", + numberFormat: { + ",": " ", + ".": ",", + percent: { + pattern: ["-n%","n%"], + ",": " ", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + decimals: 0, + ",": " ", + ".": ",", + symbol: "so'm" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"], + namesAbbr: ["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."], + namesShort: ["ya","d","s","ch","p","j","sh"] + }, + months: { + names: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""], + namesAbbr: ["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd/MM yyyy", + D: "yyyy 'yil' d-MMMM", + t: "HH:mm", + T: "HH:mm:ss", + f: "yyyy 'yil' d-MMMM HH:mm", + F: "yyyy 'yil' d-MMMM HH:mm:ss", + M: "d-MMMM", + Y: "MMMM yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "mn-Mong", "default", { + name: "mn-Mong", + englishName: "Mongolian (Traditional Mongolian)", + nativeName: "ᠮᠤᠨᠭᠭᠤᠯ ᠬᠡᠯᠡ", + language: "mn-Mong", + numberFormat: { + groupSizes: [3,0], + "NaN": "ᠲᠤᠭᠠᠠ ᠪᠤᠰᠤ", + negativeInfinity: "ᠰᠦᠬᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠡᠬᠡ", + positiveInfinity: "ᠡᠶ᠋ᠡᠷᠬᠦ ᠬᠢᠵᠠᠭᠠᠷᠭᠦᠢ ᠶᠠᠬᠡ", + percent: { + pattern: ["-n%","n%"], + groupSizes: [3,0] + }, + currency: { + pattern: ["$-n","$n"], + groupSizes: [3,0], + symbol: "Â¥" + } + }, + calendars: { + standard: { + firstDay: 1, + days: { + names: ["á ­á  á ·á  á ­\u202fᠤᠨ ᠡᠳᠦᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠨᠢᠭᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠬᠣᠶᠠᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠲᠠᠪᠤᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesAbbr: ["á ­á  á ·á  á ­\u202fᠤᠨ ᠡᠳᠦᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠨᠢᠭᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠬᠣᠶᠠᠷ","á ­á  á ·á  á ­\u202fᠤᠨ ᠭᠤᠷᠪᠠᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠳᠥᠷᠪᠡᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠲᠠᠪᠤᠨ","á ­á  á ·á  á ­\u202fᠤᠨ ᠵᠢᠷᠭᠤᠭᠠᠨ"], + namesShort: ["á ¡\u200d","ᠨᠢ\u200d","ᠬᠣ\u200d","á ­á ¤\u200d","ᠳᠥ\u200d","ᠲᠠ\u200d","ᠵᠢ\u200d"] + }, + months: { + names: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ",""], + namesAbbr: ["ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠭᠤᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠦᠷᠪᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠲᠠᠪᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠵᠢᠷᠭᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠲᠤᠯᠤᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠨᠠᠢᠮᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠶᠢᠰᠦᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠨᠢᠭᠡᠳᠦᠭᠡᠷ á °á  á ·á Žá  ","ᠠᠷᠪᠠᠨ ᠬᠤᠶ᠋ᠠᠳᠤᠭᠠᠷ á °á  á ·á Žá  ",""] + }, + AM: null, + PM: null, + eras: [{"name":"ᠣᠨ ᠲᠣᠭᠠᠯᠠᠯ ᠤᠨ","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm", + F: "yyyy'ᠣᠨ ᠤ᠋' M'á °á  á ·á Žá   \u202fᠢᠢᠨ 'd' ᠤ᠋ ᠡᠳᠦᠷ' H:mm:ss", + M: "M'á °á  á ·á Žá  ' d'ᠡᠳᠦᠷ'", + Y: "yyyy'ᠣᠨ' M'á °á  á ·á Žá  '" + } + } + } +}); + +Globalize.addCultureInfo( "iu-Latn", "default", { + name: "iu-Latn", + englishName: "Inuktitut (Latin)", + nativeName: "Inuktitut", + language: "iu-Latn", + numberFormat: { + groupSizes: [3,0], + percent: { + groupSizes: [3,0] + } + }, + calendars: { + standard: { + days: { + names: ["Naattiinguja","Naggajjau","Aippiq","Pingatsiq","Sitammiq","Tallirmiq","Sivataarvik"], + namesAbbr: ["Nat","Nag","Aip","Pi","Sit","Tal","Siv"], + namesShort: ["N","N","A","P","S","T","S"] + }, + months: { + names: ["Jaannuari","Viivvuari","Maatsi","Iipuri","Mai","Juuni","Julai","Aaggiisi","Sitipiri","Utupiri","Nuvipiri","Tisipiri",""], + namesAbbr: ["Jan","Viv","Mas","Ipu","Mai","Jun","Jul","Agi","Sii","Uut","Nuv","Tis",""] + }, + patterns: { + d: "d/MM/yyyy", + D: "ddd, MMMM dd,yyyy", + f: "ddd, MMMM dd,yyyy h:mm tt", + F: "ddd, MMMM dd,yyyy h:mm:ss tt" + } + } + } +}); + +Globalize.addCultureInfo( "tzm-Latn", "default", { + name: "tzm-Latn", + englishName: "Tamazight (Latin)", + nativeName: "Tamazight", + language: "tzm-Latn", + numberFormat: { + pattern: ["n-"], + ",": ".", + ".": ",", + "NaN": "Non Numérique", + negativeInfinity: "-Infini", + positiveInfinity: "+Infini", + percent: { + ",": ".", + ".": "," + }, + currency: { + pattern: ["-n $","n $"], + symbol: "DZD" + } + }, + calendars: { + standard: { + "/": "-", + firstDay: 6, + days: { + names: ["Acer","Arime","Aram","Ahad","Amhadh","Sem","Sedh"], + namesAbbr: ["Ace","Ari","Ara","Aha","Amh","Sem","Sed"], + namesShort: ["Ac","Ar","Ar","Ah","Am","Se","Se"] + }, + months: { + names: ["Yenayer","Furar","Maghres","Yebrir","Mayu","Yunyu","Yulyu","Ghuct","Cutenber","Ktuber","Wambir","Dujanbir",""], + namesAbbr: ["Yen","Fur","Mag","Yeb","May","Yun","Yul","Ghu","Cut","Ktu","Wam","Duj",""] + }, + AM: null, + PM: null, + patterns: { + d: "dd-MM-yyyy", + D: "dd MMMM, yyyy", + t: "H:mm", + T: "H:mm:ss", + f: "dd MMMM, yyyy H:mm", + F: "dd MMMM, yyyy H:mm:ss", + M: "dd MMMM" + } + } + } +}); + +Globalize.addCultureInfo( "ha-Latn", "default", { + name: "ha-Latn", + englishName: "Hausa (Latin)", + nativeName: "Hausa", + language: "ha-Latn", + numberFormat: { + currency: { + pattern: ["$-n","$ n"], + symbol: "N" + } + }, + calendars: { + standard: { + days: { + names: ["Lahadi","Litinin","Talata","Laraba","Alhamis","Juma'a","Asabar"], + namesAbbr: ["Lah","Lit","Tal","Lar","Alh","Jum","Asa"], + namesShort: ["L","L","T","L","A","J","A"] + }, + months: { + names: ["Januwaru","Febreru","Maris","Afrilu","Mayu","Yuni","Yuli","Agusta","Satumba","Oktocba","Nuwamba","Disamba",""], + namesAbbr: ["Jan","Feb","Mar","Afr","May","Yun","Yul","Agu","Sat","Okt","Nuw","Dis",""] + }, + AM: ["Safe","safe","SAFE"], + PM: ["Yamma","yamma","YAMMA"], + eras: [{"name":"AD","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy" + } + } + } +}); + +Globalize.addCultureInfo( "zh-CHS", "default", { + name: "zh-CHS", + englishName: "Chinese (Simplified) Legacy", + nativeName: "中文(简体) 旧版", + language: "zh-CHS", + numberFormat: { + "NaN": "éžæ•°å­—", + negativeInfinity: "负无穷大", + positiveInfinity: "正无穷大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + pattern: ["$-n","$n"], + symbol: "Â¥" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["周日","周一","周二","周三","周四","周五","周六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "yyyy/M/d", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +Globalize.addCultureInfo( "zh-CHT", "default", { + name: "zh-CHT", + englishName: "Chinese (Traditional) Legacy", + nativeName: "中文(ç¹é«”) 舊版", + language: "zh-CHT", + numberFormat: { + "NaN": "éžæ•¸å­—", + negativeInfinity: "負無窮大", + positiveInfinity: "正無窮大", + percent: { + pattern: ["-n%","n%"] + }, + currency: { + symbol: "HK$" + } + }, + calendars: { + standard: { + days: { + names: ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"], + namesAbbr: ["週日","週一","週二","週三","週四","週五","週六"], + namesShort: ["æ—¥","一","二","三","å››","五","å…­"] + }, + months: { + names: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""], + namesAbbr: ["一月","二月","三月","四月","五月","六月","七月","八月","ä¹æœˆ","å月","å一月","å二月",""] + }, + AM: ["上åˆ","上åˆ","上åˆ"], + PM: ["下åˆ","下åˆ","下åˆ"], + eras: [{"name":"公元","start":null,"offset":0}], + patterns: { + d: "d/M/yyyy", + D: "yyyy'å¹´'M'月'd'æ—¥'", + t: "H:mm", + T: "H:mm:ss", + f: "yyyy'å¹´'M'月'd'æ—¥' H:mm", + F: "yyyy'å¹´'M'月'd'æ—¥' H:mm:ss", + M: "M'月'd'æ—¥'", + Y: "yyyy'å¹´'M'月'" + } + } + } +}); + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/globalize.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/globalize.js new file mode 100644 index 000000000..6eb95f6e6 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/globalize/globalize.js @@ -0,0 +1,1581 @@ +/*! + * Globalize + * + * http://github.com/jquery/globalize + * + * Copyright Software Freedom Conservancy, Inc. + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + */ + +(function( window, undefined ) { + +var Globalize, + // private variables + regexHex, + regexInfinity, + regexParseFloat, + regexTrim, + // private JavaScript utility functions + arrayIndexOf, + endsWith, + extend, + isArray, + isFunction, + isObject, + startsWith, + trim, + truncate, + zeroPad, + // private Globalization utility functions + appendPreOrPostMatch, + expandFormat, + formatDate, + formatNumber, + getTokenRegExp, + getEra, + getEraYear, + parseExact, + parseNegativePattern; + +// Global variable (Globalize) or CommonJS module (globalize) +Globalize = function( cultureSelector ) { + return new Globalize.prototype.init( cultureSelector ); +}; + +if ( typeof require !== "undefined" && + typeof exports !== "undefined" && + typeof module !== "undefined" ) { + // Assume CommonJS + module.exports = Globalize; +} else { + // Export as global variable + window.Globalize = Globalize; +} + +Globalize.cultures = {}; + +Globalize.prototype = { + constructor: Globalize, + init: function( cultureSelector ) { + this.cultures = Globalize.cultures; + this.cultureSelector = cultureSelector; + + return this; + } +}; +Globalize.prototype.init.prototype = Globalize.prototype; + +// 1. When defining a culture, all fields are required except the ones stated as optional. +// 2. Each culture should have a ".calendars" object with at least one calendar named "standard" +// which serves as the default calendar in use by that culture. +// 3. Each culture should have a ".calendar" object which is the current calendar being used, +// it may be dynamically changed at any time to one of the calendars in ".calendars". +Globalize.cultures[ "default" ] = { + // A unique name for the culture in the form - + name: "en", + // the name of the culture in the english language + englishName: "English", + // the name of the culture in its own language + nativeName: "English", + // whether the culture uses right-to-left text + isRTL: false, + // "language" is used for so-called "specific" cultures. + // For example, the culture "es-CL" means "Spanish, in Chili". + // It represents the Spanish-speaking culture as it is in Chili, + // which might have different formatting rules or even translations + // than Spanish in Spain. A "neutral" culture is one that is not + // specific to a region. For example, the culture "es" is the generic + // Spanish culture, which may be a more generalized version of the language + // that may or may not be what a specific culture expects. + // For a specific culture like "es-CL", the "language" field refers to the + // neutral, generic culture information for the language it is using. + // This is not always a simple matter of the string before the dash. + // For example, the "zh-Hans" culture is netural (Simplified Chinese). + // And the "zh-SG" culture is Simplified Chinese in Singapore, whose lanugage + // field is "zh-CHS", not "zh". + // This field should be used to navigate from a specific culture to it's + // more general, neutral culture. If a culture is already as general as it + // can get, the language may refer to itself. + language: "en", + // numberFormat defines general number formatting rules, like the digits in + // each grouping, the group separator, and how negative numbers are displayed. + numberFormat: { + // [negativePattern] + // Note, numberFormat.pattern has no "positivePattern" unlike percent and currency, + // but is still defined as an array for consistency with them. + // negativePattern: one of "(n)|-n|- n|n-|n -" + pattern: [ "-n" ], + // number of decimal places normally shown + decimals: 2, + // string that separates number groups, as in 1,000,000 + ",": ",", + // string that separates a number from the fractional portion, as in 1.99 + ".": ".", + // array of numbers indicating the size of each number group. + // TODO: more detailed description and example + groupSizes: [ 3 ], + // symbol used for positive numbers + "+": "+", + // symbol used for negative numbers + "-": "-", + // symbol used for NaN (Not-A-Number) + "NaN": "NaN", + // symbol used for Negative Infinity + negativeInfinity: "-Infinity", + // symbol used for Positive Infinity + positiveInfinity: "Infinity", + percent: { + // [negativePattern, positivePattern] + // negativePattern: one of "-n %|-n%|-%n|%-n|%n-|n-%|n%-|-% n|n %-|% n-|% -n|n- %" + // positivePattern: one of "n %|n%|%n|% n" + pattern: [ "-n %", "n %" ], + // number of decimal places normally shown + decimals: 2, + // array of numbers indicating the size of each number group. + // TODO: more detailed description and example + groupSizes: [ 3 ], + // string that separates number groups, as in 1,000,000 + ",": ",", + // string that separates a number from the fractional portion, as in 1.99 + ".": ".", + // symbol used to represent a percentage + symbol: "%" + }, + currency: { + // [negativePattern, positivePattern] + // negativePattern: one of "($n)|-$n|$-n|$n-|(n$)|-n$|n-$|n$-|-n $|-$ n|n $-|$ n-|$ -n|n- $|($ n)|(n $)" + // positivePattern: one of "$n|n$|$ n|n $" + pattern: [ "($n)", "$n" ], + // number of decimal places normally shown + decimals: 2, + // array of numbers indicating the size of each number group. + // TODO: more detailed description and example + groupSizes: [ 3 ], + // string that separates number groups, as in 1,000,000 + ",": ",", + // string that separates a number from the fractional portion, as in 1.99 + ".": ".", + // symbol used to represent currency + symbol: "$" + } + }, + // calendars defines all the possible calendars used by this culture. + // There should be at least one defined with name "standard", and is the default + // calendar used by the culture. + // A calendar contains information about how dates are formatted, information about + // the calendar's eras, a standard set of the date formats, + // translations for day and month names, and if the calendar is not based on the Gregorian + // calendar, conversion functions to and from the Gregorian calendar. + calendars: { + standard: { + // name that identifies the type of calendar this is + name: "Gregorian_USEnglish", + // separator of parts of a date (e.g. "/" in 11/05/1955) + "/": "/", + // separator of parts of a time (e.g. ":" in 05:44 PM) + ":": ":", + // the first day of the week (0 = Sunday, 1 = Monday, etc) + firstDay: 0, + days: { + // full day names + names: [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], + // abbreviated day names + namesAbbr: [ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" ], + // shortest day names + namesShort: [ "Su", "Mo", "Tu", "We", "Th", "Fr", "Sa" ] + }, + months: { + // full month names (13 months for lunar calendards -- 13th month should be "" if not lunar) + names: [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", "" ], + // abbreviated month names + namesAbbr: [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "" ] + }, + // AM and PM designators in one of these forms: + // The usual view, and the upper and lower case versions + // [ standard, lowercase, uppercase ] + // The culture does not use AM or PM (likely all standard date formats use 24 hour time) + // null + AM: [ "AM", "am", "AM" ], + PM: [ "PM", "pm", "PM" ], + eras: [ + // eras in reverse chronological order. + // name: the name of the era in this culture (e.g. A.D., C.E.) + // start: when the era starts in ticks (gregorian, gmt), null if it is the earliest supported era. + // offset: offset in years from gregorian calendar + { + "name": "A.D.", + "start": null, + "offset": 0 + } + ], + // when a two digit year is given, it will never be parsed as a four digit + // year greater than this year (in the appropriate era for the culture) + // Set it as a full year (e.g. 2029) or use an offset format starting from + // the current year: "+19" would correspond to 2029 if the current year 2010. + twoDigitYearMax: 2029, + // set of predefined date and time patterns used by the culture + // these represent the format someone in this culture would expect + // to see given the portions of the date that are shown. + patterns: { + // short date pattern + d: "M/d/yyyy", + // long date pattern + D: "dddd, MMMM dd, yyyy", + // short time pattern + t: "h:mm tt", + // long time pattern + T: "h:mm:ss tt", + // long date, short time pattern + f: "dddd, MMMM dd, yyyy h:mm tt", + // long date, long time pattern + F: "dddd, MMMM dd, yyyy h:mm:ss tt", + // month/day pattern + M: "MMMM dd", + // month/year pattern + Y: "yyyy MMMM", + // S is a sortable format that does not vary by culture + S: "yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss" + } + // optional fields for each calendar: + /* + monthsGenitive: + Same as months but used when the day preceeds the month. + Omit if the culture has no genitive distinction in month names. + For an explaination of genitive months, see http://blogs.msdn.com/michkap/archive/2004/12/25/332259.aspx + convert: + Allows for the support of non-gregorian based calendars. This convert object is used to + to convert a date to and from a gregorian calendar date to handle parsing and formatting. + The two functions: + fromGregorian( date ) + Given the date as a parameter, return an array with parts [ year, month, day ] + corresponding to the non-gregorian based year, month, and day for the calendar. + toGregorian( year, month, day ) + Given the non-gregorian year, month, and day, return a new Date() object + set to the corresponding date in the gregorian calendar. + */ + } + }, + // For localized strings + messages: {} +}; + +Globalize.cultures[ "default" ].calendar = Globalize.cultures[ "default" ].calendars.standard; + +Globalize.cultures.en = Globalize.cultures[ "default" ]; + +Globalize.cultureSelector = "en"; + +// +// private variables +// + +regexHex = /^0x[a-f0-9]+$/i; +regexInfinity = /^[+\-]?infinity$/i; +regexParseFloat = /^[+\-]?\d*\.?\d*(e[+\-]?\d+)?$/; +regexTrim = /^\s+|\s+$/g; + +// +// private JavaScript utility functions +// + +arrayIndexOf = function( array, item ) { + if ( array.indexOf ) { + return array.indexOf( item ); + } + for ( var i = 0, length = array.length; i < length; i++ ) { + if ( array[i] === item ) { + return i; + } + } + return -1; +}; + +endsWith = function( value, pattern ) { + return value.substr( value.length - pattern.length ) === pattern; +}; + +extend = function() { + var options, name, src, copy, copyIsArray, clone, + target = arguments[0] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + target = arguments[1] || {}; + // skip the boolean and the target + i = 2; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !isFunction(target) ) { + target = {}; + } + + for ( ; i < length; i++ ) { + // Only deal with non-null/undefined values + if ( (options = arguments[ i ]) != null ) { + // Extend the base object + for ( name in options ) { + src = target[ name ]; + copy = options[ name ]; + + // Prevent never-ending loop + if ( target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( isObject(copy) || (copyIsArray = isArray(copy)) ) ) { + if ( copyIsArray ) { + copyIsArray = false; + clone = src && isArray(src) ? src : []; + + } else { + clone = src && isObject(src) ? src : {}; + } + + // Never move original objects, clone them + target[ name ] = extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +isArray = Array.isArray || function( obj ) { + return Object.prototype.toString.call( obj ) === "[object Array]"; +}; + +isFunction = function( obj ) { + return Object.prototype.toString.call( obj ) === "[object Function]"; +}; + +isObject = function( obj ) { + return Object.prototype.toString.call( obj ) === "[object Object]"; +}; + +startsWith = function( value, pattern ) { + return value.indexOf( pattern ) === 0; +}; + +trim = function( value ) { + return ( value + "" ).replace( regexTrim, "" ); +}; + +truncate = function( value ) { + if ( isNaN( value ) ) { + return NaN; + } + return Math[ value < 0 ? "ceil" : "floor" ]( value ); +}; + +zeroPad = function( str, count, left ) { + var l; + for ( l = str.length; l < count; l += 1 ) { + str = ( left ? ("0" + str) : (str + "0") ); + } + return str; +}; + +// +// private Globalization utility functions +// + +appendPreOrPostMatch = function( preMatch, strings ) { + // appends pre- and post- token match strings while removing escaped characters. + // Returns a single quote count which is used to determine if the token occurs + // in a string literal. + var quoteCount = 0, + escaped = false; + for ( var i = 0, il = preMatch.length; i < il; i++ ) { + var c = preMatch.charAt( i ); + switch ( c ) { + case "\'": + if ( escaped ) { + strings.push( "\'" ); + } + else { + quoteCount++; + } + escaped = false; + break; + case "\\": + if ( escaped ) { + strings.push( "\\" ); + } + escaped = !escaped; + break; + default: + strings.push( c ); + escaped = false; + break; + } + } + return quoteCount; +}; + +expandFormat = function( cal, format ) { + // expands unspecified or single character date formats into the full pattern. + format = format || "F"; + var pattern, + patterns = cal.patterns, + len = format.length; + if ( len === 1 ) { + pattern = patterns[ format ]; + if ( !pattern ) { + throw "Invalid date format string \'" + format + "\'."; + } + format = pattern; + } + else if ( len === 2 && format.charAt(0) === "%" ) { + // %X escape format -- intended as a custom format string that is only one character, not a built-in format. + format = format.charAt( 1 ); + } + return format; +}; + +formatDate = function( value, format, culture ) { + var cal = culture.calendar, + convert = cal.convert, + ret; + + if ( !format || !format.length || format === "i" ) { + if ( culture && culture.name.length ) { + if ( convert ) { + // non-gregorian calendar, so we cannot use built-in toLocaleString() + ret = formatDate( value, cal.patterns.F, culture ); + } + else { + var eraDate = new Date( value.getTime() ), + era = getEra( value, cal.eras ); + eraDate.setFullYear( getEraYear(value, cal, era) ); + ret = eraDate.toLocaleString(); + } + } + else { + ret = value.toString(); + } + return ret; + } + + var eras = cal.eras, + sortable = format === "s"; + format = expandFormat( cal, format ); + + // Start with an empty string + ret = []; + var hour, + zeros = [ "0", "00", "000" ], + foundDay, + checkedDay, + dayPartRegExp = /([^d]|^)(d|dd)([^d]|$)/g, + quoteCount = 0, + tokenRegExp = getTokenRegExp(), + converted; + + function padZeros( num, c ) { + var r, s = num + ""; + if ( c > 1 && s.length < c ) { + r = ( zeros[c - 2] + s); + return r.substr( r.length - c, c ); + } + else { + r = s; + } + return r; + } + + function hasDay() { + if ( foundDay || checkedDay ) { + return foundDay; + } + foundDay = dayPartRegExp.test( format ); + checkedDay = true; + return foundDay; + } + + function getPart( date, part ) { + if ( converted ) { + return converted[ part ]; + } + switch ( part ) { + case 0: + return date.getFullYear(); + case 1: + return date.getMonth(); + case 2: + return date.getDate(); + default: + throw "Invalid part value " + part; + } + } + + if ( !sortable && convert ) { + converted = convert.fromGregorian( value ); + } + + for ( ; ; ) { + // Save the current index + var index = tokenRegExp.lastIndex, + // Look for the next pattern + ar = tokenRegExp.exec( format ); + + // Append the text before the pattern (or the end of the string if not found) + var preMatch = format.slice( index, ar ? ar.index : format.length ); + quoteCount += appendPreOrPostMatch( preMatch, ret ); + + if ( !ar ) { + break; + } + + // do not replace any matches that occur inside a string literal. + if ( quoteCount % 2 ) { + ret.push( ar[0] ); + continue; + } + + var current = ar[ 0 ], + clength = current.length; + + switch ( current ) { + case "ddd": + //Day of the week, as a three-letter abbreviation + case "dddd": + // Day of the week, using the full name + var names = ( clength === 3 ) ? cal.days.namesAbbr : cal.days.names; + ret.push( names[value.getDay()] ); + break; + case "d": + // Day of month, without leading zero for single-digit days + case "dd": + // Day of month, with leading zero for single-digit days + foundDay = true; + ret.push( + padZeros( getPart(value, 2), clength ) + ); + break; + case "MMM": + // Month, as a three-letter abbreviation + case "MMMM": + // Month, using the full name + var part = getPart( value, 1 ); + ret.push( + ( cal.monthsGenitive && hasDay() ) ? + ( cal.monthsGenitive[ clength === 3 ? "namesAbbr" : "names" ][ part ] ) : + ( cal.months[ clength === 3 ? "namesAbbr" : "names" ][ part ] ) + ); + break; + case "M": + // Month, as digits, with no leading zero for single-digit months + case "MM": + // Month, as digits, with leading zero for single-digit months + ret.push( + padZeros( getPart(value, 1) + 1, clength ) + ); + break; + case "y": + // Year, as two digits, but with no leading zero for years less than 10 + case "yy": + // Year, as two digits, with leading zero for years less than 10 + case "yyyy": + // Year represented by four full digits + part = converted ? converted[ 0 ] : getEraYear( value, cal, getEra(value, eras), sortable ); + if ( clength < 4 ) { + part = part % 100; + } + ret.push( + padZeros( part, clength ) + ); + break; + case "h": + // Hours with no leading zero for single-digit hours, using 12-hour clock + case "hh": + // Hours with leading zero for single-digit hours, using 12-hour clock + hour = value.getHours() % 12; + if ( hour === 0 ) hour = 12; + ret.push( + padZeros( hour, clength ) + ); + break; + case "H": + // Hours with no leading zero for single-digit hours, using 24-hour clock + case "HH": + // Hours with leading zero for single-digit hours, using 24-hour clock + ret.push( + padZeros( value.getHours(), clength ) + ); + break; + case "m": + // Minutes with no leading zero for single-digit minutes + case "mm": + // Minutes with leading zero for single-digit minutes + ret.push( + padZeros( value.getMinutes(), clength ) + ); + break; + case "s": + // Seconds with no leading zero for single-digit seconds + case "ss": + // Seconds with leading zero for single-digit seconds + ret.push( + padZeros( value.getSeconds(), clength ) + ); + break; + case "t": + // One character am/pm indicator ("a" or "p") + case "tt": + // Multicharacter am/pm indicator + part = value.getHours() < 12 ? ( cal.AM ? cal.AM[0] : " " ) : ( cal.PM ? cal.PM[0] : " " ); + ret.push( clength === 1 ? part.charAt(0) : part ); + break; + case "f": + // Deciseconds + case "ff": + // Centiseconds + case "fff": + // Milliseconds + ret.push( + padZeros( value.getMilliseconds(), 3 ).substr( 0, clength ) + ); + break; + case "z": + // Time zone offset, no leading zero + case "zz": + // Time zone offset with leading zero + hour = value.getTimezoneOffset() / 60; + ret.push( + ( hour <= 0 ? "+" : "-" ) + padZeros( Math.floor(Math.abs(hour)), clength ) + ); + break; + case "zzz": + // Time zone offset with leading zero + hour = value.getTimezoneOffset() / 60; + ret.push( + ( hour <= 0 ? "+" : "-" ) + padZeros( Math.floor(Math.abs(hour)), 2 ) + + // Hard coded ":" separator, rather than using cal.TimeSeparator + // Repeated here for consistency, plus ":" was already assumed in date parsing. + ":" + padZeros( Math.abs(value.getTimezoneOffset() % 60), 2 ) + ); + break; + case "g": + case "gg": + if ( cal.eras ) { + ret.push( + cal.eras[ getEra(value, eras) ].name + ); + } + break; + case "/": + ret.push( cal["/"] ); + break; + default: + throw "Invalid date format pattern \'" + current + "\'."; + } + } + return ret.join( "" ); +}; + +// formatNumber +(function() { + var expandNumber; + + expandNumber = function( number, precision, formatInfo ) { + var groupSizes = formatInfo.groupSizes, + curSize = groupSizes[ 0 ], + curGroupIndex = 1, + factor = Math.pow( 10, precision ), + rounded = Math.round( number * factor ) / factor; + + if ( !isFinite(rounded) ) { + rounded = number; + } + number = rounded; + + var numberString = number+"", + right = "", + split = numberString.split( /e/i ), + exponent = split.length > 1 ? parseInt( split[1], 10 ) : 0; + numberString = split[ 0 ]; + split = numberString.split( "." ); + numberString = split[ 0 ]; + right = split.length > 1 ? split[ 1 ] : ""; + + var l; + if ( exponent > 0 ) { + right = zeroPad( right, exponent, false ); + numberString += right.slice( 0, exponent ); + right = right.substr( exponent ); + } + else if ( exponent < 0 ) { + exponent = -exponent; + numberString = zeroPad( numberString, exponent + 1, true ); + right = numberString.slice( -exponent, numberString.length ) + right; + numberString = numberString.slice( 0, -exponent ); + } + + if ( precision > 0 ) { + right = formatInfo[ "." ] + + ( (right.length > precision) ? right.slice(0, precision) : zeroPad(right, precision) ); + } + else { + right = ""; + } + + var stringIndex = numberString.length - 1, + sep = formatInfo[ "," ], + ret = ""; + + while ( stringIndex >= 0 ) { + if ( curSize === 0 || curSize > stringIndex ) { + return numberString.slice( 0, stringIndex + 1 ) + ( ret.length ? (sep + ret + right) : right ); + } + ret = numberString.slice( stringIndex - curSize + 1, stringIndex + 1 ) + ( ret.length ? (sep + ret) : "" ); + + stringIndex -= curSize; + + if ( curGroupIndex < groupSizes.length ) { + curSize = groupSizes[ curGroupIndex ]; + curGroupIndex++; + } + } + + return numberString.slice( 0, stringIndex + 1 ) + sep + ret + right; + }; + + formatNumber = function( value, format, culture ) { + if ( !isFinite(value) ) { + if ( value === Infinity ) { + return culture.numberFormat.positiveInfinity; + } + if ( value === -Infinity ) { + return culture.numberFormat.negativeInfinity; + } + return culture.numberFormat[ "NaN" ]; + } + if ( !format || format === "i" ) { + return culture.name.length ? value.toLocaleString() : value.toString(); + } + format = format || "D"; + + var nf = culture.numberFormat, + number = Math.abs( value ), + precision = -1, + pattern; + if ( format.length > 1 ) precision = parseInt( format.slice(1), 10 ); + + var current = format.charAt( 0 ).toUpperCase(), + formatInfo; + + switch ( current ) { + case "D": + pattern = "n"; + number = truncate( number ); + if ( precision !== -1 ) { + number = zeroPad( "" + number, precision, true ); + } + if ( value < 0 ) number = "-" + number; + break; + case "N": + formatInfo = nf; + /* falls through */ + case "C": + formatInfo = formatInfo || nf.currency; + /* falls through */ + case "P": + formatInfo = formatInfo || nf.percent; + pattern = value < 0 ? formatInfo.pattern[ 0 ] : ( formatInfo.pattern[1] || "n" ); + if ( precision === -1 ) precision = formatInfo.decimals; + number = expandNumber( number * (current === "P" ? 100 : 1), precision, formatInfo ); + break; + default: + throw "Bad number format specifier: " + current; + } + + var patternParts = /n|\$|-|%/g, + ret = ""; + for ( ; ; ) { + var index = patternParts.lastIndex, + ar = patternParts.exec( pattern ); + + ret += pattern.slice( index, ar ? ar.index : pattern.length ); + + if ( !ar ) { + break; + } + + switch ( ar[0] ) { + case "n": + ret += number; + break; + case "$": + ret += nf.currency.symbol; + break; + case "-": + // don't make 0 negative + if ( /[1-9]/.test(number) ) { + ret += nf[ "-" ]; + } + break; + case "%": + ret += nf.percent.symbol; + break; + } + } + + return ret; + }; + +}()); + +getTokenRegExp = function() { + // regular expression for matching date and time tokens in format strings. + return (/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g); +}; + +getEra = function( date, eras ) { + if ( !eras ) return 0; + var start, ticks = date.getTime(); + for ( var i = 0, l = eras.length; i < l; i++ ) { + start = eras[ i ].start; + if ( start === null || ticks >= start ) { + return i; + } + } + return 0; +}; + +getEraYear = function( date, cal, era, sortable ) { + var year = date.getFullYear(); + if ( !sortable && cal.eras ) { + // convert normal gregorian year to era-shifted gregorian + // year by subtracting the era offset + year -= cal.eras[ era ].offset; + } + return year; +}; + +// parseExact +(function() { + var expandYear, + getDayIndex, + getMonthIndex, + getParseRegExp, + outOfRange, + toUpper, + toUpperArray; + + expandYear = function( cal, year ) { + // expands 2-digit year into 4 digits. + if ( year < 100 ) { + var now = new Date(), + era = getEra( now ), + curr = getEraYear( now, cal, era ), + twoDigitYearMax = cal.twoDigitYearMax; + twoDigitYearMax = typeof twoDigitYearMax === "string" ? new Date().getFullYear() % 100 + parseInt( twoDigitYearMax, 10 ) : twoDigitYearMax; + year += curr - ( curr % 100 ); + if ( year > twoDigitYearMax ) { + year -= 100; + } + } + return year; + }; + + getDayIndex = function ( cal, value, abbr ) { + var ret, + days = cal.days, + upperDays = cal._upperDays; + if ( !upperDays ) { + cal._upperDays = upperDays = [ + toUpperArray( days.names ), + toUpperArray( days.namesAbbr ), + toUpperArray( days.namesShort ) + ]; + } + value = toUpper( value ); + if ( abbr ) { + ret = arrayIndexOf( upperDays[1], value ); + if ( ret === -1 ) { + ret = arrayIndexOf( upperDays[2], value ); + } + } + else { + ret = arrayIndexOf( upperDays[0], value ); + } + return ret; + }; + + getMonthIndex = function( cal, value, abbr ) { + var months = cal.months, + monthsGen = cal.monthsGenitive || cal.months, + upperMonths = cal._upperMonths, + upperMonthsGen = cal._upperMonthsGen; + if ( !upperMonths ) { + cal._upperMonths = upperMonths = [ + toUpperArray( months.names ), + toUpperArray( months.namesAbbr ) + ]; + cal._upperMonthsGen = upperMonthsGen = [ + toUpperArray( monthsGen.names ), + toUpperArray( monthsGen.namesAbbr ) + ]; + } + value = toUpper( value ); + var i = arrayIndexOf( abbr ? upperMonths[1] : upperMonths[0], value ); + if ( i < 0 ) { + i = arrayIndexOf( abbr ? upperMonthsGen[1] : upperMonthsGen[0], value ); + } + return i; + }; + + getParseRegExp = function( cal, format ) { + // converts a format string into a regular expression with groups that + // can be used to extract date fields from a date string. + // check for a cached parse regex. + var re = cal._parseRegExp; + if ( !re ) { + cal._parseRegExp = re = {}; + } + else { + var reFormat = re[ format ]; + if ( reFormat ) { + return reFormat; + } + } + + // expand single digit formats, then escape regular expression characters. + var expFormat = expandFormat( cal, format ).replace( /([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g, "\\\\$1" ), + regexp = [ "^" ], + groups = [], + index = 0, + quoteCount = 0, + tokenRegExp = getTokenRegExp(), + match; + + // iterate through each date token found. + while ( (match = tokenRegExp.exec(expFormat)) !== null ) { + var preMatch = expFormat.slice( index, match.index ); + index = tokenRegExp.lastIndex; + + // don't replace any matches that occur inside a string literal. + quoteCount += appendPreOrPostMatch( preMatch, regexp ); + if ( quoteCount % 2 ) { + regexp.push( match[0] ); + continue; + } + + // add a regex group for the token. + var m = match[ 0 ], + len = m.length, + add; + switch ( m ) { + case "dddd": case "ddd": + case "MMMM": case "MMM": + case "gg": case "g": + add = "(\\D+)"; + break; + case "tt": case "t": + add = "(\\D*)"; + break; + case "yyyy": + case "fff": + case "ff": + case "f": + add = "(\\d{" + len + "})"; + break; + case "dd": case "d": + case "MM": case "M": + case "yy": case "y": + case "HH": case "H": + case "hh": case "h": + case "mm": case "m": + case "ss": case "s": + add = "(\\d\\d?)"; + break; + case "zzz": + add = "([+-]?\\d\\d?:\\d{2})"; + break; + case "zz": case "z": + add = "([+-]?\\d\\d?)"; + break; + case "/": + add = "(\\/)"; + break; + default: + throw "Invalid date format pattern \'" + m + "\'."; + } + if ( add ) { + regexp.push( add ); + } + groups.push( match[0] ); + } + appendPreOrPostMatch( expFormat.slice(index), regexp ); + regexp.push( "$" ); + + // allow whitespace to differ when matching formats. + var regexpStr = regexp.join( "" ).replace( /\s+/g, "\\s+" ), + parseRegExp = { "regExp": regexpStr, "groups": groups }; + + // cache the regex for this format. + return re[ format ] = parseRegExp; + }; + + outOfRange = function( value, low, high ) { + return value < low || value > high; + }; + + toUpper = function( value ) { + // "he-IL" has non-breaking space in weekday names. + return value.split( "\u00A0" ).join( " " ).toUpperCase(); + }; + + toUpperArray = function( arr ) { + var results = []; + for ( var i = 0, l = arr.length; i < l; i++ ) { + results[ i ] = toUpper( arr[i] ); + } + return results; + }; + + parseExact = function( value, format, culture ) { + // try to parse the date string by matching against the format string + // while using the specified culture for date field names. + value = trim( value ); + var cal = culture.calendar, + // convert date formats into regular expressions with groupings. + // use the regexp to determine the input format and extract the date fields. + parseInfo = getParseRegExp( cal, format ), + match = new RegExp( parseInfo.regExp ).exec( value ); + if ( match === null ) { + return null; + } + // found a date format that matches the input. + var groups = parseInfo.groups, + era = null, year = null, month = null, date = null, weekDay = null, + hour = 0, hourOffset, min = 0, sec = 0, msec = 0, tzMinOffset = null, + pmHour = false; + // iterate the format groups to extract and set the date fields. + for ( var j = 0, jl = groups.length; j < jl; j++ ) { + var matchGroup = match[ j + 1 ]; + if ( matchGroup ) { + var current = groups[ j ], + clength = current.length, + matchInt = parseInt( matchGroup, 10 ); + switch ( current ) { + case "dd": case "d": + // Day of month. + date = matchInt; + // check that date is generally in valid range, also checking overflow below. + if ( outOfRange(date, 1, 31) ) return null; + break; + case "MMM": case "MMMM": + month = getMonthIndex( cal, matchGroup, clength === 3 ); + if ( outOfRange(month, 0, 11) ) return null; + break; + case "M": case "MM": + // Month. + month = matchInt - 1; + if ( outOfRange(month, 0, 11) ) return null; + break; + case "y": case "yy": + case "yyyy": + year = clength < 4 ? expandYear( cal, matchInt ) : matchInt; + if ( outOfRange(year, 0, 9999) ) return null; + break; + case "h": case "hh": + // Hours (12-hour clock). + hour = matchInt; + if ( hour === 12 ) hour = 0; + if ( outOfRange(hour, 0, 11) ) return null; + break; + case "H": case "HH": + // Hours (24-hour clock). + hour = matchInt; + if ( outOfRange(hour, 0, 23) ) return null; + break; + case "m": case "mm": + // Minutes. + min = matchInt; + if ( outOfRange(min, 0, 59) ) return null; + break; + case "s": case "ss": + // Seconds. + sec = matchInt; + if ( outOfRange(sec, 0, 59) ) return null; + break; + case "tt": case "t": + // AM/PM designator. + // see if it is standard, upper, or lower case PM. If not, ensure it is at least one of + // the AM tokens. If not, fail the parse for this format. + pmHour = cal.PM && ( matchGroup === cal.PM[0] || matchGroup === cal.PM[1] || matchGroup === cal.PM[2] ); + if ( + !pmHour && ( + !cal.AM || ( matchGroup !== cal.AM[0] && matchGroup !== cal.AM[1] && matchGroup !== cal.AM[2] ) + ) + ) return null; + break; + case "f": + // Deciseconds. + case "ff": + // Centiseconds. + case "fff": + // Milliseconds. + msec = matchInt * Math.pow( 10, 3 - clength ); + if ( outOfRange(msec, 0, 999) ) return null; + break; + case "ddd": + // Day of week. + case "dddd": + // Day of week. + weekDay = getDayIndex( cal, matchGroup, clength === 3 ); + if ( outOfRange(weekDay, 0, 6) ) return null; + break; + case "zzz": + // Time zone offset in +/- hours:min. + var offsets = matchGroup.split( /:/ ); + if ( offsets.length !== 2 ) return null; + hourOffset = parseInt( offsets[0], 10 ); + if ( outOfRange(hourOffset, -12, 13) ) return null; + var minOffset = parseInt( offsets[1], 10 ); + if ( outOfRange(minOffset, 0, 59) ) return null; + tzMinOffset = ( hourOffset * 60 ) + ( startsWith(matchGroup, "-") ? -minOffset : minOffset ); + break; + case "z": case "zz": + // Time zone offset in +/- hours. + hourOffset = matchInt; + if ( outOfRange(hourOffset, -12, 13) ) return null; + tzMinOffset = hourOffset * 60; + break; + case "g": case "gg": + var eraName = matchGroup; + if ( !eraName || !cal.eras ) return null; + eraName = trim( eraName.toLowerCase() ); + for ( var i = 0, l = cal.eras.length; i < l; i++ ) { + if ( eraName === cal.eras[i].name.toLowerCase() ) { + era = i; + break; + } + } + // could not find an era with that name + if ( era === null ) return null; + break; + } + } + } + var result = new Date(), defaultYear, convert = cal.convert; + defaultYear = convert ? convert.fromGregorian( result )[ 0 ] : result.getFullYear(); + if ( year === null ) { + year = defaultYear; + } + else if ( cal.eras ) { + // year must be shifted to normal gregorian year + // but not if year was not specified, its already normal gregorian + // per the main if clause above. + year += cal.eras[( era || 0 )].offset; + } + // set default day and month to 1 and January, so if unspecified, these are the defaults + // instead of the current day/month. + if ( month === null ) { + month = 0; + } + if ( date === null ) { + date = 1; + } + // now have year, month, and date, but in the culture's calendar. + // convert to gregorian if necessary + if ( convert ) { + result = convert.toGregorian( year, month, date ); + // conversion failed, must be an invalid match + if ( result === null ) return null; + } + else { + // have to set year, month and date together to avoid overflow based on current date. + result.setFullYear( year, month, date ); + // check to see if date overflowed for specified month (only checked 1-31 above). + if ( result.getDate() !== date ) return null; + // invalid day of week. + if ( weekDay !== null && result.getDay() !== weekDay ) { + return null; + } + } + // if pm designator token was found make sure the hours fit the 24-hour clock. + if ( pmHour && hour < 12 ) { + hour += 12; + } + result.setHours( hour, min, sec, msec ); + if ( tzMinOffset !== null ) { + // adjust timezone to utc before applying local offset. + var adjustedMin = result.getMinutes() - ( tzMinOffset + result.getTimezoneOffset() ); + // Safari limits hours and minutes to the range of -127 to 127. We need to use setHours + // to ensure both these fields will not exceed this range. adjustedMin will range + // somewhere between -1440 and 1500, so we only need to split this into hours. + result.setHours( result.getHours() + parseInt(adjustedMin / 60, 10), adjustedMin % 60 ); + } + return result; + }; +}()); + +parseNegativePattern = function( value, nf, negativePattern ) { + var neg = nf[ "-" ], + pos = nf[ "+" ], + ret; + switch ( negativePattern ) { + case "n -": + neg = " " + neg; + pos = " " + pos; + /* falls through */ + case "n-": + if ( endsWith(value, neg) ) { + ret = [ "-", value.substr(0, value.length - neg.length) ]; + } + else if ( endsWith(value, pos) ) { + ret = [ "+", value.substr(0, value.length - pos.length) ]; + } + break; + case "- n": + neg += " "; + pos += " "; + /* falls through */ + case "-n": + if ( startsWith(value, neg) ) { + ret = [ "-", value.substr(neg.length) ]; + } + else if ( startsWith(value, pos) ) { + ret = [ "+", value.substr(pos.length) ]; + } + break; + case "(n)": + if ( startsWith(value, "(") && endsWith(value, ")") ) { + ret = [ "-", value.substr(1, value.length - 2) ]; + } + break; + } + return ret || [ "", value ]; +}; + +// +// public instance functions +// + +Globalize.prototype.findClosestCulture = function( cultureSelector ) { + return Globalize.findClosestCulture.call( this, cultureSelector ); +}; + +Globalize.prototype.format = function( value, format, cultureSelector ) { + return Globalize.format.call( this, value, format, cultureSelector ); +}; + +Globalize.prototype.localize = function( key, cultureSelector ) { + return Globalize.localize.call( this, key, cultureSelector ); +}; + +Globalize.prototype.parseInt = function( value, radix, cultureSelector ) { + return Globalize.parseInt.call( this, value, radix, cultureSelector ); +}; + +Globalize.prototype.parseFloat = function( value, radix, cultureSelector ) { + return Globalize.parseFloat.call( this, value, radix, cultureSelector ); +}; + +Globalize.prototype.culture = function( cultureSelector ) { + return Globalize.culture.call( this, cultureSelector ); +}; + +// +// public singleton functions +// + +Globalize.addCultureInfo = function( cultureName, baseCultureName, info ) { + + var base = {}, + isNew = false; + + if ( typeof cultureName !== "string" ) { + // cultureName argument is optional string. If not specified, assume info is first + // and only argument. Specified info deep-extends current culture. + info = cultureName; + cultureName = this.culture().name; + base = this.cultures[ cultureName ]; + } else if ( typeof baseCultureName !== "string" ) { + // baseCultureName argument is optional string. If not specified, assume info is second + // argument. Specified info deep-extends specified culture. + // If specified culture does not exist, create by deep-extending default + info = baseCultureName; + isNew = ( this.cultures[ cultureName ] == null ); + base = this.cultures[ cultureName ] || this.cultures[ "default" ]; + } else { + // cultureName and baseCultureName specified. Assume a new culture is being created + // by deep-extending an specified base culture + isNew = true; + base = this.cultures[ baseCultureName ]; + } + + this.cultures[ cultureName ] = extend(true, {}, + base, + info + ); + // Make the standard calendar the current culture if it's a new culture + if ( isNew ) { + this.cultures[ cultureName ].calendar = this.cultures[ cultureName ].calendars.standard; + } +}; + +Globalize.findClosestCulture = function( name ) { + var match; + if ( !name ) { + return this.findClosestCulture( this.cultureSelector ) || this.cultures[ "default" ]; + } + if ( typeof name === "string" ) { + name = name.split( "," ); + } + if ( isArray(name) ) { + var lang, + cultures = this.cultures, + list = name, + i, l = list.length, + prioritized = []; + for ( i = 0; i < l; i++ ) { + name = trim( list[i] ); + var pri, parts = name.split( ";" ); + lang = trim( parts[0] ); + if ( parts.length === 1 ) { + pri = 1; + } + else { + name = trim( parts[1] ); + if ( name.indexOf("q=") === 0 ) { + name = name.substr( 2 ); + pri = parseFloat( name ); + pri = isNaN( pri ) ? 0 : pri; + } + else { + pri = 1; + } + } + prioritized.push({ lang: lang, pri: pri }); + } + prioritized.sort(function( a, b ) { + if ( a.pri < b.pri ) { + return 1; + } else if ( a.pri > b.pri ) { + return -1; + } + return 0; + }); + // exact match + for ( i = 0; i < l; i++ ) { + lang = prioritized[ i ].lang; + match = cultures[ lang ]; + if ( match ) { + return match; + } + } + + // neutral language match + for ( i = 0; i < l; i++ ) { + lang = prioritized[ i ].lang; + do { + var index = lang.lastIndexOf( "-" ); + if ( index === -1 ) { + break; + } + // strip off the last part. e.g. en-US => en + lang = lang.substr( 0, index ); + match = cultures[ lang ]; + if ( match ) { + return match; + } + } + while ( 1 ); + } + + // last resort: match first culture using that language + for ( i = 0; i < l; i++ ) { + lang = prioritized[ i ].lang; + for ( var cultureKey in cultures ) { + var culture = cultures[ cultureKey ]; + if ( culture.language == lang ) { + return culture; + } + } + } + } + else if ( typeof name === "object" ) { + return name; + } + return match || null; +}; + +Globalize.format = function( value, format, cultureSelector ) { + var culture = this.findClosestCulture( cultureSelector ); + if ( value instanceof Date ) { + value = formatDate( value, format, culture ); + } + else if ( typeof value === "number" ) { + value = formatNumber( value, format, culture ); + } + return value; +}; + +Globalize.localize = function( key, cultureSelector ) { + return this.findClosestCulture( cultureSelector ).messages[ key ] || + this.cultures[ "default" ].messages[ key ]; +}; + +Globalize.parseDate = function( value, formats, culture ) { + culture = this.findClosestCulture( culture ); + + var date, prop, patterns; + if ( formats ) { + if ( typeof formats === "string" ) { + formats = [ formats ]; + } + if ( formats.length ) { + for ( var i = 0, l = formats.length; i < l; i++ ) { + var format = formats[ i ]; + if ( format ) { + date = parseExact( value, format, culture ); + if ( date ) { + break; + } + } + } + } + } else { + patterns = culture.calendar.patterns; + for ( prop in patterns ) { + date = parseExact( value, patterns[prop], culture ); + if ( date ) { + break; + } + } + } + + return date || null; +}; + +Globalize.parseInt = function( value, radix, cultureSelector ) { + return truncate( Globalize.parseFloat(value, radix, cultureSelector) ); +}; + +Globalize.parseFloat = function( value, radix, cultureSelector ) { + // radix argument is optional + if ( typeof radix !== "number" ) { + cultureSelector = radix; + radix = 10; + } + + var culture = this.findClosestCulture( cultureSelector ); + var ret = NaN, + nf = culture.numberFormat; + + if ( value.indexOf(culture.numberFormat.currency.symbol) > -1 ) { + // remove currency symbol + value = value.replace( culture.numberFormat.currency.symbol, "" ); + // replace decimal seperator + value = value.replace( culture.numberFormat.currency["."], culture.numberFormat["."] ); + } + + // trim leading and trailing whitespace + value = trim( value ); + + // allow infinity or hexidecimal + if ( regexInfinity.test(value) ) { + ret = parseFloat( value ); + } + else if ( !radix && regexHex.test(value) ) { + ret = parseInt( value, 16 ); + } + else { + + // determine sign and number + var signInfo = parseNegativePattern( value, nf, nf.pattern[0] ), + sign = signInfo[ 0 ], + num = signInfo[ 1 ]; + + // #44 - try parsing as "(n)" + if ( sign === "" && nf.pattern[0] !== "(n)" ) { + signInfo = parseNegativePattern( value, nf, "(n)" ); + sign = signInfo[ 0 ]; + num = signInfo[ 1 ]; + } + + // try parsing as "-n" + if ( sign === "" && nf.pattern[0] !== "-n" ) { + signInfo = parseNegativePattern( value, nf, "-n" ); + sign = signInfo[ 0 ]; + num = signInfo[ 1 ]; + } + + sign = sign || "+"; + + // determine exponent and number + var exponent, + intAndFraction, + exponentPos = num.indexOf( "e" ); + if ( exponentPos < 0 ) exponentPos = num.indexOf( "E" ); + if ( exponentPos < 0 ) { + intAndFraction = num; + exponent = null; + } + else { + intAndFraction = num.substr( 0, exponentPos ); + exponent = num.substr( exponentPos + 1 ); + } + // determine decimal position + var integer, + fraction, + decSep = nf[ "." ], + decimalPos = intAndFraction.indexOf( decSep ); + if ( decimalPos < 0 ) { + integer = intAndFraction; + fraction = null; + } + else { + integer = intAndFraction.substr( 0, decimalPos ); + fraction = intAndFraction.substr( decimalPos + decSep.length ); + } + // handle groups (e.g. 1,000,000) + var groupSep = nf[ "," ]; + integer = integer.split( groupSep ).join( "" ); + var altGroupSep = groupSep.replace( /\u00A0/g, " " ); + if ( groupSep !== altGroupSep ) { + integer = integer.split( altGroupSep ).join( "" ); + } + // build a natively parsable number string + var p = sign + integer; + if ( fraction !== null ) { + p += "." + fraction; + } + if ( exponent !== null ) { + // exponent itself may have a number patternd + var expSignInfo = parseNegativePattern( exponent, nf, "-n" ); + p += "e" + ( expSignInfo[0] || "+" ) + expSignInfo[ 1 ]; + } + if ( regexParseFloat.test(p) ) { + ret = parseFloat( p ); + } + } + return ret; +}; + +Globalize.culture = function( cultureSelector ) { + // setter + if ( typeof cultureSelector !== "undefined" ) { + this.cultureSelector = cultureSelector; + } + // getter + return this.findClosestCulture( cultureSelector ) || this.cultures[ "default" ]; +}; + +}( this )); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jquery.observable.min.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jquery.observable.min.js new file mode 100644 index 000000000..32d307acf --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jquery.observable.min.js @@ -0,0 +1,2 @@ +/* JsObservable: http://github.com/BorisMoore/jsviews */ +(function(a,f){a.observable=function(b){return a.isArray(b)?new d(b):new c(b)};var g=[].splice;function c(a){if(!this.data)return new c(a);this._data=a;return this}a.observable.Object=c;c.prototype={_data:null,data:function(){return this._data},setProperty:function(b,e){if(a.isArray(b))for(var g=0,l=b.length;g1){c=a.isArray(c)?c:[c];if(c.length>0){g.apply(this._data,[d,0].concat(c));b(this._data,{change:"insert",index:d,items:c})}}return this},remove:function(c,a){e(c);a=a===f||a===null?1:a;if(a&&c>-1){var d=this._data.slice(c,c+a);a=d.length;if(a){this._data.splice(c,a);b(this._data,{change:"remove",index:c,items:d})}}return this},move:function(c,d,a){e(c);e(d);a=a===f||a===null?1:a;if(a){var g=this._data.slice(c,c+a);this._data.splice(c,a);this._data.splice.apply(this._data,[d,0].concat(g));b(this._data,{change:"move",oldIndex:c,index:d,items:g})}return this},refresh:function(a){var c=this._data.slice(0);g.apply(this._data,[0,this._data.length].concat(a));b(this._data,{change:"refresh",oldItems:c});return this}}})(jQuery); \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jquery.views.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jquery.views.js new file mode 100644 index 000000000..2bfdb84b3 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jquery.views.js @@ -0,0 +1,1053 @@ +/*! JsViews v1.0pre: http://github.com/BorisMoore/jsviews */ +/* + * jQuery plugin providing interactive data-driven views, based on integration between jQuery Templates and jQuery Data Link. + * Requires jquery.render.js (optimized version of jQuery Templates, for rendering to string) + * See JsRender at http://github.com/BorisMoore/jsrender + * and jquery.observable.js also at http://github.com/BorisMoore/jsviews + * + * Copyright 2011, Boris Moore + * Released under the MIT License. + */ +(function( $, undefined ) { + +//=============== +// event handlers +//=============== + +// var TEST_EVENTS = { total:0, change:0, arrayChange:0, propertyChange:0 }; +var FALSE = false, TRUE = true, + topView, viewsNs, decl, + oldCleanData = $.cleanData, + fnSetters = { + value: "val", + html: "html", + text: "text" + }, + jsvData = "_jsvData"; + +function elemChangeHandler( ev ) { + var setter, cancel, fromAttr, toPath, linkToInfo, linkContext, sourceValue, link, cnvt, target, + data = this.target, + source = ev.target, + $source = $( source ), + view = $.view( source ), + links = this.links, + context = view.ctx, + beforeChange = context.beforeChange, + l = links.length; + + while ( l-- && !cancel ) { + link = links[ l ]; + if ( !link.filter || (link.filter && $source.is( link.filter ))) { + fromAttr = link.fromAttr; + if ( !fromAttr ) { + // Merge in the default attribute bindings for this source element + fromAttr = viewsNs.merge[ source.nodeName.toLowerCase() ]; + fromAttr = fromAttr ? fromAttr.from.fromAttr : "text"; + } + setter = fnSetters[ fromAttr ]; + sourceValue = $.isFunction( fromAttr ) ? fromAttr( source ) : setter ? $source[setter]() : $source.attr( fromAttr ); + if ((!beforeChange || !(cancel = beforeChange.call( view, ev ) === FALSE )) && sourceValue !== undefined ) { + // Find linkToInfo using link.to, or if not specified, use declarative specification + // provided by decl.applyLinkToInfo, applied to source element + linkToInfo = link.to || $.trim( source.getAttribute( viewsNs.linkToAttr )); + // linkTo does not support multiple targets - use imperative linking for that scenario... + if ( linkToInfo ) { + cnvt = link.convert; + linkToInfo = splitParams( linkToInfo ); + target = linkToInfo[ 0 ].slice( 0, -1 ); + data = (view && view.data) || data; + // data is the current view data, or the top-level target of linkTo. + // get the target object + target = getTargetObject( data, view, target ); + cnvt = linkToInfo[ 3 ]; + toPath = $.trim( linkToInfo[ 1 ].slice( 0, -1 )); + linkContext = { + source: source, + target: target, + convert: cnvt, + path: toPath + }; + if ( cnvt ) { + sourceValue = getConvertedValue( linkContext, data, view, cnvt, sourceValue ); + } + if ( sourceValue !== undefined && target ) { + $.observable( target ).setProperty( toPath, sourceValue ); + if ( context.afterChange ) { //TODO only call this if the target property changed + context.afterChange.call( linkContext, ev ); + } + } + ev.stopPropagation(); // Stop bubbling + } + } + if ( cancel ) { + ev.stopImmediatePropagation(); + } + } + } +} + +function propertyChangeHandler( ev, eventArgs ) { + var pathInfo, setter, cancel, changed, attr, sourceValue, css, + link = this, + target = link.target, + $target = $( target ), + source = ev.target, + sourcePath = (eventArgs && eventArgs.path) || ev.path, + view = $.view( target ), + context = view.ctx, + beforeChange = context.beforeChange, + pathInfos = getLinkFromDataInfo( target, source ).paths[ sourcePath ], + l = pathInfos && pathInfos.length; + + while ( l-- ) { + pathInfo = pathInfos[ l ]; + if ((!beforeChange || !(eventArgs && (cancel = beforeChange.call( this, ev, eventArgs ) === FALSE ))) + && (!view || view.onDataChanged( eventArgs ) !== FALSE )) { + + attr = pathInfo.attr; + + sourceValue = getConvertedValue( link, link.source, view, pathInfo.expr, eventArgs && eventArgs.value ); + + if ( $.isFunction( sourceValue )) { + sourceValue = sourceValue.call( source ); + } + + if ( !attr ) { + // Merge in the default attribute bindings for this target element + attr = viewsNs.merge[ target.nodeName.toLowerCase() ]; + attr = attr ? attr.to.toAttr : "text"; + } + + if ( css = attr.indexOf( "css-" ) === 0 && attr.substr( 4 )) { + if ( changed = $target.css( css ) !== sourceValue ) { + $target.css( css, sourceValue ); + } + } else { + setter = fnSetters[ attr ]; + if ( setter ) { + if ( changed = $target[setter]() !== sourceValue ) { + $target[setter]( sourceValue ); + } + } else if ( changed = $target.attr( attr ) !== sourceValue ) { + $target.attr( attr, sourceValue ); + } + } + + if ( eventArgs && changed && context.afterChange ) { + context.afterChange.call( link, ev, eventArgs ); + } + } + } +} + +function arrayChangeHandler( ev, eventArgs ) { + var cancel, + context = this.ctx, + beforeChange = context.beforeChange, + sourceValue = eventArgs ? eventArgs.change : viewsNs.linkToAttr; // linkToAttr used as a marker of trigger events + + if ((!beforeChange || !(cancel = beforeChange.call( this, ev, eventArgs ) === FALSE )) + && sourceValue !== undefined ) { + this.onDataChanged( eventArgs ); + if ( context.afterChange ) { + context.afterChange.call( this, ev, eventArgs ); + } + } +} + +function setArrayChangeLink( view ) { + var handler, + data = view.data, + onArrayChange = view._onArrayChange; + + if ( onArrayChange ) { + if ( onArrayChange[ 1 ] === data ) { + return; + } + $([ onArrayChange[ 1 ]]).unbind( "arrayChange", onArrayChange[ 0 ]); +// $( "#console" ).append( --TEST_EVENTS.total + " - arrayChange " + --(TEST_EVENTS.arrayChange) + "
"); + } + + if ( $.isArray( data )) { + handler = function() { + arrayChangeHandler.apply( view, arguments ); + }; + $([ data ]).bind( "arrayChange", handler ); + view._onArrayChange = [ handler, data ]; +// $( "#console" ).append( ++TEST_EVENTS.total + " + arrayChange " + ++(TEST_EVENTS.arrayChange) + "
"); + } +} + +//=============== +// view hierarchy +//=============== + +function setViewContext( view, context, merge ) { + var parentContext = view.parent && view.parent.ctx, + viewContext = view._ctx; + // Propagate inherited context through children + view.ctx = merge + ? (viewContext && parentContext ? $.extend( {}, parentContext, viewContext ) : parentContext || viewContext) + : context && context !== parentContext + // Set additional context on this view (which will modify the context inherited from the parent, and be inherited by child views) + ? (view._ctx = context, (parentContext ? $.extend( {}, parentContext, context ) : context)) + : parentContext; +} + +function View( context, node, path, template, parentView, parentElViews, data ) { + var views, index, viewCount, tagInfo, ctx, presenter, options, + self = this; + + $.extend( self, { + views: [], + nodes: node ? [] : [ document.body ], + tmpl: template || (parentView && parentView.tmpl), + path: path, + parent: parentView, + prevNode: node + }); + if ( parentView ) { + views = parentView.views; + parentElViews.push( self ); + data = data || parentView.data; + if ( $.isArray( parentView.data )) { + self.index = index = path; + views.splice( index, 0, self ); + viewCount = views.length; + data = data[ index ]; + while ( index++ < viewCount-1 ) { + $.observable( views[ index ] ).setProperty( "index", index ); + } + self.tag = parentView.tag; + } else { + if ( path ) { + // TODO getDataAndContext and passing of context and data from tags needs work. + // Also, consider more 'codeless' approach, and more consistent syntax with codeless tag markup + data = getDataAndContext( data, parentView, path ); + context = context || data[ 1 ]; + data = data[ 0 ]; + } + self.index = views.length; + views.push( self ); + if ( context.tag ) { + self.tag = [context.tag]; + } else { + template = template.split( "=" ); + if ( template.shift() === "tag" ) { + self.tag = template; + } + } + } + } + self.data = data; + setViewContext( self, context ); + setArrayChangeLink( self ); + + if ( (tagInfo = self.tag) && !$.isArray( data )) { + // This view is from a registered presenter + presenter = viewsNs.tags[ tagInfo[ 0 ]]; + if ( presenter && presenter.presenter ) { + ctx = presenter.ctx || {}; + options = tagInfo[1] + ? getTargetObject( parentView.data, parentView, "{" + tagInfo[ 1 ] + "}" ) + // Declarative presenter {{foo}} + : parentView.ctx; + // Imperative: link( data, foo ) + $.extend( options, presenter.options || {} ); + // attach plugin to content of view + + ctx[ tagInfo[ 0 ]] = new presenter.presenter( options, self ); + // Make presenter available off the ctx object + self.context( ctx ); + } + } +} + +function createNestedViews( node, parent, nextNode, depth, data, context, prevNode, index ) { + var tokens, parentElViews, view, existing, parentNode, elem, elem2, params, presenter, tagInfo, ctx, + currentView = parent, + viewDepth = depth; + context = context || {}; + index = index || 0; + node = prevNode || node; + + if ( !prevNode && node.nodeType === 1 ) { + if ( viewDepth++ === 0 ) { + // Add top-level element nodes to view.nodes + currentView.nodes.push( node ); + } + var linkFromInfo = node.getAttribute( viewsNs.linkFromAttr ), + getFromInfo = node.getAttribute( viewsNs.getFromAttr ); + + if ( linkFromInfo || getFromInfo ) { + addLinksFromData( data || parent.data, node, getFromInfo, linkFromInfo, TRUE ); + } + node = node.firstChild; + } else { + node = node.nextSibling; + } + + while ( node && node !== nextNode ) { + if ( node.nodeType === 1 ) { + createNestedViews( node, currentView, nextNode, viewDepth, data, context ); + } else if ( node.nodeType === 8 && (tokens = /^(\/?)(?:(item)|(?:(tmpl)(?:\((.*)\))?(?:\s+([^\s]+))?))$/.exec( node.nodeValue ))) { + // tokens: [ commentText, "/", "item", dataParams, tmplParam ] + + parentNode = node.parentNode; + if ( tokens[ 1 ]) { + // or + currentView.nextNode = node; + if (( tagInfo = currentView.tag ) && ( ctx = currentView.ctx[ tagInfo[ 0 ]]) && ctx.onAfterCreate ) { + // This view is from a registered presenter which has registered an onAfterCreate callback + ctx.onAfterCreate(); + } + if ( currentView.ctx.onAfterCreate ) { + currentView.ctx.onAfterCreate.call( currentView, currentView ); + } + if ( tokens[ 2 ]) { + // An item close tag: + currentView = parent; + } else { + // A tmpl close tag: + return node; + } + } else { + // or + parentElViews = parentElViews || jsViewsData( parentNode, "view", TRUE ); + if ( tokens[ 2 ]) { + // An item open tag: + currentView = new View( context, node, index++, undefined, currentView, parentElViews ); + } else { + // A tmpl open tag: + view = $.view( node ); + if ( view && view.prevNode === node ) { + if ( view.data === data ) { + existing = view.nextNode; + } else { + view.data = data; + view.render( context ); + return view.nextNode; + } + } else { + view = new View( context, node, tokens[ 4 ], tokens[ 5 ], currentView, parentElViews, data ); + } + // Jump to the nextNode of the tmpl view + node = existing || createNestedViews( node, view, nextNode, 0 ); + } + } + } else if ( viewDepth === 0 ) { + // Add top-level non-element nodes to view.nodes + currentView.nodes.push( node ); + } + node = node.nextSibling; + } +} + +//======================= +// Expression evaluation +//======================= + +function getDataAndContext( source, view, paramString ) { + return Function( "$", "$data", "$view", "$ctx", + "with($data){return [" + paramString + "];}")( $, source, view, view.ctx ); +} + +function getConvertedValue( context, source, view, expression, value ) { + try { + return Function( "$", "$data", "$view", "$ctx", "$value", + "with($data){return " + expression + ";}") + .call( context, $, source, view, view.ctx, value ); + } catch(e) { + // in debug mode, throw 'bad syntax error'; + throw e.message; + } +} + +function getTargetObject( source, view, expression ) { + try { + return expression + ? Function( "$", "$data", "$view", "$ctx", + "with($data){return " + expression + ";}")( $, source, view, view.ctx ) + : source; + } catch(e) { + // in debug mode, throw 'bad syntax error'; + throw e.message; + } +} + +//=============== +// data linking +//=============== + +function link( from, to, links, context ) { + var lnk, filter, targetElems, toLinks, fromLinks, linksToData, i; + + if ( links ) { + + links = $.isArray( links ) ? links : [ links ]; + + toLinks = []; + fromLinks = []; + i = links.length; + + while ( i-- ) { + lnk = links[ i ]; + if ( lnk.to ) { + toLinks.push({ to: lnk.to, filter: lnk.filter }); + } + if ( lnk.from || lnk.getFrom ) { + fromLinks.push( lnk ); + } + } + i = fromLinks.length; + while ( i-- ) { + lnk = fromLinks[ i ]; + filter = lnk.filter; + targetElems = filter ? from.find( filter ).add( $( this ).filter( filter )) : from; // Use future findFilter method in jQuery 1.7? + + targetElems.each( function() { + // If 'from' path points to a property of a descendant 'leaf object', + // link not only from leaf object, but also from intermediate objects + addLinksFromData( to, this, lnk.getFrom, lnk.from ); + }); + } + } + if ( !links || toLinks.length ) { + from.each( function() { + if ( !links ) { + // DECLARATIVE DATA LINKING + + // Linking HTML to object or array + linksToData = jsViewsData( this, "to" ); + i = linksToData.length; + while ( i-- ) { + lnk = linksToData[ i ]; + if ( lnk.links === declLinkTo ) { + if ( lnk.target === to ) { + // Already declaratively linked to the same object + return; + } + // Already linked to a different object, so unlink from previous object + removeLinksToData( this, declLinkTo ); + linksToData.splice( i, 1 ); + } + } + toLinks = declLinkTo; // For declarative case + + // Linking object or array to HTML + createNestedViews( this, $.view( this ), undefined, undefined, to, context ); + } + addLinksToData( this, to, toLinks ); + }); + } + return from; +} + +//function unlink( from, to, links ) { // TODO +//} + +function addLinksFromData( source, target, getFrom, linkFrom ) { + var param, cnvtParam, i, l, lastChar, attr, openParenIndex, get, object, cnvtParams, view, + triggers = [], + cnvt = ""; + + linkFrom = splitParams( (linkFrom ? linkFrom + "," : "") + (getFrom ? "|," + getFrom + ",": ""), TRUE ); + while ( param = linkFrom.shift() ) { + l = param.length; + lastChar = param.charAt( l - 1 ); + param = param.slice( 0, -1 ); + switch ( lastChar ) { + case ':': + attr = $.trim( param ); + break; + case '[': + cnvt = $.trim( param ); + break; + case ')': + cnvt = cnvt || param; + break; + case ']': + triggers = [[ cnvt, param ]]; + cnvt = cnvt ? (cnvt + "." + param) : param; + cnvt += $.isFunction( source[ param ]) ? "()": ""; + break; + case '\r': + openParenIndex = ++param; // Convert to integer and increment + break; + case ',': + if ( param === '|') { + get = TRUE; + } else { + // Apply binding + if ( openParenIndex ) { + cnvtParams = cnvt.slice( openParenIndex ); + cnvtParams = splitParams( cnvtParams ); + for ( i = 0, l = cnvtParams.length; i < l; i++ ) { + cnvtParam = $.trim(cnvtParams[ i ]); + lastChar = cnvtParam.charAt( cnvtParam.length - 1 ); + cnvtParam = cnvtParam.slice( 0, -1 ); + if ( lastChar === '[') { + cnvtParams[ i ] = object = cnvtParam; + } else if ( lastChar === ']') { + triggers.push([ object, cnvtParam ]); + cnvtParams[ i ] = object ? ("." + cnvtParam) : cnvtParam; + cnvtParams[ i ] += $.isFunction( source[ cnvtParam ]) ? "()": ""; + object = ""; + } + } + cnvt = cnvt.slice( 0, openParenIndex ) + cnvtParams.join("") + ")"; + } + + cnvt += param; + view = $.view( target ); + l = triggers.length; + while ( l-- ) { + var trigger = triggers[ l ], + path = trigger[ 1 ], + fromOb = getTargetObject( source, view, trigger[ 0 ]), + link = { source: source, target: target }, + innerPath = path.split("."), + innerOb = fromOb; + + // If 'from' path points to a property of a descendant 'leaf object', + // link not only from leaf object, but also from intermediate objects + while ( innerPath.length > 1 ) { + innerOb = innerOb[ innerPath.shift() ]; + if ( innerOb ) { + addLinkFromData( innerOb, link, innerPath.join( "." ), cnvt, attr ); + } + } + // The last trigger of get bindings will be called on adding the link (to get/initialize the value) + addLinkFromData( fromOb, link, path, cnvt, attr, !l && get ); + } + openParenIndex = 0; + triggers = []; + attr = cnvt = ""; + } + } + } +} + +function addLinkFromData( source, link, path, expr, attr, get ) { + var paths, pathInfos, handler, + target = link.target, + linkInfo = getLinkFromDataInfo( target, source ), + pathInfo = { attr: attr, expr: expr}; + + if ( linkInfo ) { + // Set path info for this path + pathInfos = linkInfo.paths[ path ] = linkInfo.paths[ path ] || []; + pathInfos.push( pathInfo ); + // get handler + handler = linkInfo.handler; + } else { + handler = function() { + propertyChangeHandler.apply( link, arguments ); + }; + + // Store handler for unlinking + if ( target ) { + paths = {}; + paths[ path ] = [ pathInfo ]; + jsViewsData( target, "from", TRUE ).push({ source: source, paths: paths, handler: handler }); + } + $( source ).bind( "propertyChange", handler ); + } +// $( "#console" ).append( ++TEST_EVENTS.total + " + propertyChange " + ++(TEST_EVENTS.propertyChange) + "
"); + if ( get ) { + handler({ target: source, path: path }); + } +} + +function addLinksToData( source, target, links ) { + var handler = function() { + elemChangeHandler.apply( { target: target, links: links }, arguments ); + }; + + // Store handler for unlinking + jsViewsData( source, "to", TRUE ).push({ target: target, links: links, handler: handler }); + $( source ).bind( "change", handler ); +} + +function removeLinksToData( source, links ) { + var prevLinkInfo, + prevLinkInfos = jsViewsData( source, "to" ), + l = prevLinkInfos.length; + while( l-- ) { + prevLinkInfo = prevLinkInfos[ l ]; + if ( prevLinkInfo.links === links ) { + $( source ).unbind( "change", prevLinkInfo.handler); + prevLinkInfos.splice( l, 1 ); +// $( "#console" ).append( --TEST_EVENTS.total + " - change " + --(TEST_EVENTS.change) + "
"); + } + } +} + +function getLinkFromDataInfo( target, source ) { + var link, + links = jsViewsData( target, "from" ), + l = links.length; + while( l-- ) { + link = links[ l ]; + if ( link.source === source ) { + // Set path info for this path + return link; + } + } +} + +//=============== +// helpers +//=============== + +function clean( i, el ) { // TODO optimize for perf + var link, links , l, views, parentView, view; + + if ( jsViewsData( el, "to" ).length ) { + $( el ).unbind( "change" ); +// $( "#console" ).append( --TEST_EVENTS.total + " - change " + --(TEST_EVENTS.change) + "
"); + } + + links = jsViewsData( el, "from" ); + l = links.length; + + while( l-- ) { + link = links[ l ]; + $( link.source ).unbind( "propertyChange", link.handler ); +// $( "#console" ).append( --TEST_EVENTS.total + " - propertyChange " + --(TEST_EVENTS.propertyChange) + "
"); + } + + views = jsViewsData( el, "view" ); + if ( l = views.length ) { + parentView = $.view( el ); + while( l-- ) { + view = views[ l ]; + if ( view.parent === parentView ) { + parentView.removeViews( view.index, 1 ); // NO - ONLY remove view if its top-level nodes are all.. (TODO) + } + } + } +} + +function jsViewsData( el, type, create ) { + var jqData = $.data( el, jsvData ) || (create && $.data( el, jsvData, { "view": [], "from": [], "to": [] })); + return jqData ? jqData[ type ] : []; +} + +function splitParams( paramString, markParen ) { + // Split into params (or values in an array literal, or keys and values in an object literal) + // (Achieved by splitting before top-level ':' or ',' chars) + var openParenIndex, + startIndex = 0, + parenDepth = 0, + quoted = FALSE, // boolean for string content in double qoutes + aposed = FALSE; // boolean for string content in single qoutes + + paramString = paramString.replace( /\s+/g, " " ); + + return paramString + .replace( /(\))|([\:\,])|(\')|(\")|([\(\[\{])|([\}\]])/g, function( all, cnvt, colon, apos, quot, leftParen, rightParen, index ) { + if ( aposed ) { + // within single-quoted string + aposed = !apos; + return all; + } + if ( quoted ) { + // within double-quoted string + quoted = !quot; + return all; + } + if ( cnvt ) { + // follow top-level ':' or ',' with '\t' + return --parenDepth + ? all + : (markParen && paramString.charAt( index + 1 ) === ',' ) + ? (openParenIndex -= startIndex, startIndex = index, + all + "\t" + openParenIndex + "\r\t") + :all; + } + if ( colon ) { + // follow top-level ':' or ',' with '\t' + return parenDepth + ? all + : (startIndex = index+1, all + "\t"); + } + if ( leftParen ) { + if ( parenDepth++ ) { + return all; + } + if ( all === '(' ) { + openParenIndex = index; + } + // follow top-level '[' by '\t' + return all !== '[' ? all : "[\t"; + } + if ( rightParen ) { + // follow top-level ']' by '\t' + return ( --parenDepth || all !== ']' ) ? all : "]\t"; + } + aposed = apos; + quoted = quot; + return all; + }) + .split( "\t" ); +} + +function inputAttrib( elem ) { + return elem.type === "checkbox" ? elem.checked : $( elem ).val(); +} + +$.extend({ + + //======================= + // jQuery $.view() plugin + //======================= + + view: function( node, inner ) { + // $.view() returns top node + // $.view( node ) returns view that contains node + var returnView, view, parentElViews, i, finish, + startTagReg = /^item|^tmpl(\(\$?[\w\.]*\))?(\s+[^\s]+)?$/, + topNode = document.body, + startNode = node; + + if ( inner ) { + // Treat supplied node as a container element, step through content, and return the first view encountered. + finish = node.nextSibling || node.parentNode; // + while ( finish !== (node = node.firstChild || node.nextSibling || node.parentNode.nextSibling )) { + if ( node.nodeType === 8 && startTagReg.test( node.nodeValue )) { + view = $.view( node ); + if ( view.prevNode === node ) { + return view; + } + } + } + return; + } + + node = node || topNode; + if ( topView && !topView.views.length ) { + returnView = topView; // Perf optimization for common case + } else { + // Step up through parents to find an element which is a views container, or if none found, create the top-level view for the page + while( !(parentElViews = jsViewsData( finish = node.parentNode || topNode, "view" )).length ) { + if ( !finish || node === topNode ) { + jsViewsData( topNode.parentNode, "view", TRUE ).push( returnView = topView = new View()); + topView.ctx = {}; + break; + } + node = finish; + } + if ( !returnView && node === topNode ) { + returnView = parentElViews[0]; + } + while ( !returnView && node ) { + // Step back through the nodes, until we find an item or tmpl open tag - in which case that is the view we want + if ( node.nodeType === 8 ) { + if ( /^\/item|^\/tmpl$/.test( node.nodeValue )) { + // A tmpl or item close tag: or + i = parentElViews.length; + while ( i-- ) { + view = parentElViews[ i ]; + if ( view.nextNode === node ) { + // If this was the node originally passed in, this is the view we want. + returnView = (node === startNode && view); + // If not, jump to the beginning of this item/tmpl and continue from there + node = view.prevNode; + break; + } + } + } else if ( startTagReg.test( node.nodeValue )) { + // A tmpl or item open tag: or + i = parentElViews.length; + while ( i-- ) { + view = parentElViews[ i ]; + if ( view.prevNode === node ) { + returnView = view; + break; + } + } + } + } + node = node.previousSibling; + } + // If not within any of the views in the current parentElViews collection, move up through parent nodes to find next parentElViews collection + returnView = returnView || $.view( finish ); + } + return returnView; + }, + + //======================= + // override cleanData + //======================= + + cleanData: function( elems ) { + $( elems ).each( clean ); // TODO - look at perf optimization on this + oldCleanData.call( $, elems ); + } +}); + +//======================= +// $.views (namespace) +//======================= + +viewsNs = $.views = $.views || {}; + +$.extend( viewsNs, { + presenters: {}, + activeViews: true, + getProperty: function( data, value ) { + // support for property getter on data + return $.isFunction( value ) ? value.call(data) : value; + }, + linkToAttr: "data-to", + linkFromAttr: "data-from", + getFromAttr: "data-getfrom", + merge: { + input: { + from: { + fromAttr: inputAttrib + }, + to: { + toAttr: "value" + } + } + }, + + //=============== + // registerPresenters + //=============== + + // Register a 'control' - which associates a Presenter object with a template + // Optionally associate with a tag, for declarative use. (Rendering of template and instantiation/attaching of presenter). + registerPresenters: registerPresenters = function( name, presenter ) { + var key, tag; + + if ( typeof name === "object" ) { + for ( key in name ) { + registerPresenters( key, name[ key ]); + } + } else { + // Simple single property case. + presenter.ctx = presenter.ctx || {}; + + tag = (tag = presenter.tag) === undefined ? name : tag; + // If tag not set to null or empty string, then register a tag for this control + if ( tag ) { + presenter.tag = tag; + viewsNs.tags[ tag ] = presenter; + } + + plugin = (plugin = presenter.plugin) === undefined ? name : plugin; + // If plugin not set to null or empty string, then register create a generated jQuery plugin for this control + if ( plugin ) { + //Generated jQuery plugin + $.fn[ plugin ] = $.fn[ plugin ] || function( data, options ) { + return this.link( data, presenter, options ); + } + presenter.plugin = plugin; + } + viewsNs.presenters[ name ] = presenter; + } + return this; + }, + + //======================= + // view prototype + //======================= + + view: { + onDataChanged: function( eventArgs ) { + if ( eventArgs ) { + // This is an observable action (not a trigger/handler call from pushValues, or similar, for which eventArgs will be null) + var self = this, + action = eventArgs.change, + index = eventArgs.index, + items = eventArgs.items; + switch ( action ) { + case "insert": + self.addViews( index, items ); + break; + case "remove": + self.removeViews( index, items.length ); + break; + case "move": + self.render(); // Could optimize this + break; + case "refresh": + self.render(); + // Othercases: (e.g.undefined, for setProperty on observable object) etc. do nothing + } + } + return TRUE; + }, + render: function() { + var prevNode = this.prevNode, + nextNode = this.nextNode, + parentNode = prevNode.parentNode; + + $( this.nodes ).remove(); + this.removeViews( 0, this.views.length ); + this.nodes = []; + $( prevNode ).after( $.render( this.data, this.tmpl, this.ctx ) ); + parentNode.removeChild( prevNode.nextSibling ); + parentNode.removeChild( nextNode.previousSibling ); + createNestedViews( parentNode, this, nextNode, 0, undefined, undefined, prevNode, 0 ); //this.index + setArrayChangeLink( this ); + return this; + }, + addViews: function( index, dataItems, tmpl ) { + var parent, + itemsCount = dataItems.length, + context = this.ctx, + views = this.views; + + if ( index && !views[index-1] ) { + return; // If subview for provided index does not exist, do nothing + } + if ( itemsCount ) { + if ( this.path ) { + parent = this.parent; + context = getDataAndContext( parent.data, parent, this.path )[1]; + } + var html = $.render( dataItems, tmpl || this.tmpl, context, this, TRUE ), + // Use passed-in template if provided, since this added view may use a different template than the original one used to render the array. + + prevNode = index ? views[ index-1 ].nextNode : this.prevNode, + nextNode = prevNode.nextSibling, + parentNode = prevNode.parentNode; + $( prevNode ).after( html ); + parentNode.removeChild( prevNode.nextSibling ); + parentNode.removeChild( nextNode.previousSibling ); + createNestedViews( parentNode, this, nextNode, 0, undefined, undefined, prevNode, index ); + } + return this; + }, + removeViews: function( index, itemsCount, keepHtml ) { + if ( itemsCount ) { + var parentElViews, parentViewsIndex, viewCount, + views = this.views, + current = index + itemsCount; + + while ( current-- > index ) { + var view = views[ current ], + i = view.views.length, + node = view.prevNode, + nextNode = view.nextNode, + nodes = [ node ]; + + if ( i ) { + view.removeViews( 0, i, keepHtml ); + } + + // Remove this view from the parentElViews collection + parentElViews = parentElViews || jsViewsData( view.nextNode.parentNode, "view" ); + i = parentElViews.length; + while ( i-- && parentViewsIndex === undefined ) { + if ( parentElViews[ i ] === view ) { + parentViewsIndex = i; + } + } + parentElViews.splice( parentViewsIndex, 1 ); + + if ( !keepHtml ) { + while ( node !== nextNode ) { + node = node.nextSibling; + nodes.push( node ); + } + $( nodes ).remove(); + } + view.data = undefined; + setArrayChangeLink( view ); + } + views.splice( index, itemsCount ); + viewCount = views.length; + + while ( index < viewCount ) { + $.observable( views[ index ] ).setProperty( "index", index++ ); + } + } + return this; + }, + context: function( context ) { + var self = this, + parent = self.parent, + parentCtx = parent ? parent.ctx : {}; + if ( !context ) { + // Clear context + self.each( function( view ) { + view.ctx = parentCtx; + view._ctx = undefined; + }); + } else if ( context !== self.ctx ) { + self.each( function( view ) { + setViewContext( view, context, view !== self ); + }); + } + return this; + }, + each: function( callback ) { + callback( this ); + var l = this.views.length; + while ( l-- ) { + this.views[ l ].each( callback ); + } + return this; + }, + content: function( select ) { + return select ? $( select, this.nodes ) : $( this.nodes ); + } + } +}); + +//======================= +// jQuery plugins +//======================= + +$.fn.extend({ + view: function( inner ) { + return $.view( this[0], inner ); + }, + addLinks: function( data, links, context ) { + // Explicit Linking + return link( this, data, links, context ); + }, +// removeLinks: function( data, links, context ) { //TODO +// return unlink( this, data, links, context ); +// }, + link: function( data, tmpl, context ) { + // Declarative Linking + // If context is a function, cb - shorthand for { beforeChange: cb } + // if tmpl not a map, corresponds to $("#container").html( $.render( data, tmpl )).link( data ); + if ( !this.length ) { + return this; + } + + if ( tmpl ) { + tmpl = tmpl.tag && tmpl === $.views.tags[ tmpl.tag ] + ? (context.tag = tmpl.tag, context.tmpl || tmpl.tmpl) + // Special case: tmpl is a presenter + : $.isPlainObject( tmpl ) + ? (context = tmpl, FALSE) + // Linking only. (context was passed in as second parameter, no template parameter passed) + : tmpl; + // Linking and rendering (passing a template) + + if ( tmpl && (tmpl = $.template( tmpl ))) { + removeLinksToData( this[0], declLinkTo ); + this.empty(); + if ( data ) { + this.append( $.render( data, tmpl, context )); + // Using append, rather than html, as workaround for issues in IE compat mode. (Using innerHTML leads to initial comments being stripped) + } + } + } + return link( this, data, undefined, context ); + } +}); + +View.prototype = viewsNs.view; +decl = viewsNs.decl; +declLinkTo = [{ filter: "input[" + viewsNs.linkToAttr + "]" }]; +})( jQuery ); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jsrender.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jsrender.js new file mode 100644 index 000000000..5998650c3 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/jsrender.js @@ -0,0 +1,573 @@ +/*! JsRender v1.0pre - (jsrender.js version: does not require jQuery): http://github.com/BorisMoore/jsrender */ +/* + * Optimized version of jQuery Templates, fosr rendering to string, using 'codeless' markup. + * + * Copyright 2011, Boris Moore + * Released under the MIT License. + */ +window.JsViews || window.jQuery && jQuery.views || (function( window, undefined ) { + +var $, _$, JsViews, viewsNs, tmplEncode, render, rTag, registerTags, registerHelpers, extend, + FALSE = false, TRUE = true, + jQuery = window.jQuery, document = window.document, + htmlExpr = /^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /, + rPath = /^(true|false|null|[\d\.]+)|(\w+|\$(view|data|ctx|(\w+)))([\w\.]*)|((['"])(?:\\\1|.)*\7)$/g, + rParams = /(\$?[\w\.\[\]]+)(?:(\()|\s*(===|!==|==|!=|<|>|<=|>=)\s*|\s*(\=)\s*)?|(\,\s*)|\\?(\')|\\?(\")|(\))|(\s+)/g, + rNewLine = /\r?\n/g, + rUnescapeQuotes = /\\(['"])/g, + rEscapeQuotes = /\\?(['"])/g, + rBuildHash = /\x08([^\x08]+)\x08/g, + autoName = 0, + escapeMapForHtml = { + "&": "&", + "<": "<", + ">": ">" + }, + htmlSpecialChar = /[\x00"&'<>]/g, + slice = Array.prototype.slice; + +if ( jQuery ) { + + //////////////////////////////////////////////////////////////////////////////////////////////// + // jQuery is loaded, so make $ the jQuery object + $ = jQuery; + + $.fn.extend({ + // Use first wrapped element as template markup. + // Return string obtained by rendering the template against data. + render: function( data, context, parentView, path ) { + return render( data, this[0], context, parentView, path ); + }, + + // Consider the first wrapped element as a template declaration, and get the compiled template or store it as a named template. + template: function( name, context ) { + return $.template( name, this[0], context ); + } + }); + +} else { + + //////////////////////////////////////////////////////////////////////////////////////////////// + // jQuery is not loaded. Make $ the JsViews object + + // Map over the $ in case of overwrite + _$ = window.$; + + window.JsViews = JsViews = window.$ = $ = { + extend: function( target, source ) { + var name; + for ( name in source ) { + target[ name ] = source[ name ]; + } + return target; + }, + isArray: Array.isArray || function( obj ) { + return Object.prototype.toString.call( obj ) === "[object Array]"; + }, + noConflict: function() { + if ( window.$ === JsViews ) { + window.$ = _$; + } + return JsViews; + } + }; +} + +extend = $.extend; + +//================= +// View constructor +//================= + +function View( context, path, parentView, data, template ) { + // Returns a view data structure for a new rendered instance of a template. + // The content field is a hierarchical array of strings and nested views. + + parentView = parentView || { viewsCount:0, ctx: viewsNs.helpers }; + + var parentContext = parentView && parentView.ctx; + + return { + jsViews: "v1.0pre", + path: path || "", + // inherit context from parentView, merged with new context. + itemNumber: ++parentView.viewsCount || 1, + viewsCount: 0, + tmpl: template, + data: data || parentView.data || {}, + // Set additional context on this view (which will modify the context inherited from the parent, and be inherited by child views) + ctx : context && context === parentContext + ? parentContext + : (parentContext ? extend( extend( {}, parentContext ), context ) : context||{}), + // If no jQuery, extend does not support chained copies - so limit to two parameters + parent: parentView + }; +} +extend( $, { + views: viewsNs = { + templates: {}, + tags: { + "if": function() { + var ifTag = this, + view = ifTag._view; + view.onElse = function( presenter, args ) { + var i = 0, + l = args.length; + while ( l && !args[ i++ ]) { + // Only render content if args.length === 0 (i.e. this is an else with no condition) or if a condition argument is truey + if ( i === l ) { + return ""; + } + } + view.onElse = undefined; // If condition satisfied, so won't run 'else'. + return render( view.data, presenter.tmpl, view.ctx, view); + }; + return view.onElse( this, arguments ); + }, + "else": function() { + var view = this._view; + return view.onElse ? view.onElse( this, arguments ) : ""; + }, + each: function() { + var i, + self = this, + result = "", + args = arguments, + l = args.length, + content = self.tmpl, + view = self._view; + for ( i = 0; i < l; i++ ) { + result += args[ i ] ? render( args[ i ], content, self.ctx || view.ctx, view, self._path, self._ctor ) : ""; + } + return l ? result + // If no data parameter, use the current $data from view, and render once + : result + render( view.data, content, view.ctx, view, self._path, self.tag ); + }, + "=": function( value ) { + return value; + }, + "*": function( value ) { + return value; + } + }, + helpers: { + not: function( value ) { + return !value; + } + }, + allowCode: FALSE, + debugMode: TRUE, + err: function( e ) { + return viewsNs.debugMode ? ("
Error: " + (e.message || e) + ". "): '""'; + }, + +//=============== +// setDelimiters +//=============== + + setDelimiters: function( openTag, closeTag ) { + // Set or modify the delimiter characters for tags: "{{" and "}}" + var firstCloseChar = closeTag.charAt( 0 ), + secondCloseChar = closeTag.charAt( 1 ); + openTag = "\\" + openTag.charAt( 0 ) + "\\" + openTag.charAt( 1 ); + closeTag = "\\" + firstCloseChar + "\\" + secondCloseChar; + + // Build regex with new delimiters + // {{ + rTag = openTag + // # tag (followed by space,! or }) or equals or code + + "(?:(?:(\\#)?(\\w+(?=[!\\s\\" + firstCloseChar + "]))" + "|(?:(\\=)|(\\*)))" + // params + + "\\s*((?:[^\\" + firstCloseChar + "]|\\" + firstCloseChar + "(?!\\" + secondCloseChar + "))*?)" + // encoding + + "(!(\\w*))?" + // closeBlock + + "|(?:\\/([\\w\\$\\.\\[\\]]+)))" + // }} + + closeTag; + + // Default rTag: # tag equals code params encoding closeBlock + // /\{\{(?:(?:(\#)?(\w+(?=[\s\}!]))|(?:(\=)|(\*)))((?:[^\}]|\}(?!\}))*?)(!(\w*))?|(?:\/([\w\$\.\[\]]+)))\}\}/g; + + rTag = new RegExp( rTag, "g" ); + }, + + +//=============== +// registerTags +//=============== + + // Register declarative tag. + registerTags: registerTags = function( name, tagFn ) { + var key; + if ( typeof name === "object" ) { + for ( key in name ) { + registerTags( key, name[ key ]); + } + } else { + // Simple single property case. + viewsNs.tags[ name ] = tagFn; + } + return this; + }, + +//=============== +// registerHelpers +//=============== + + // Register helper function for use in markup. + registerHelpers: registerHelpers = function( name, helper ) { + if ( typeof name === "object" ) { + // Object representation where property name is path and property value is value. + // TODO: We've discussed an "objectchange" event to capture all N property updates here. See TODO note above about propertyChanges. + var key; + for ( key in name ) { + registerHelpers( key, name[ key ]); + } + } else { + // Simple single property case. + viewsNs.helpers[ name ] = helper; + } + return this; + }, + +//=============== +// tmpl.encode +//=============== + + encode: function( encoding, text ) { + return text + ? ( tmplEncode[ encoding || "html" ] || tmplEncode.html)( text ) // HTML encoding is the default + : ""; + }, + + encoders: tmplEncode = { + "none": function( text ) { + return text; + }, + "html": function( text ) { + // HTML encoding helper: Replace < > & and ' and " by corresponding entities. + // Implementation, from Mike Samuel + return String( text ).replace( htmlSpecialChar, replacerForHtml ); + } + //TODO add URL encoding, and perhaps other encoding helpers... + }, + +//=============== +// renderTag +//=============== + + renderTag: function( tag, view, encode, content, tagProperties ) { + // This is a tag call, with arguments: "tag", view, encode, content, presenter [, params...] + var ret, ctx, name, + args = arguments, + presenters = viewsNs.presenters; + hash = tagProperties._hash, + tagFn = viewsNs.tags[ tag ]; + + if ( !tagFn ) { + return ""; + } + + content = content && view.tmpl.nested[ content - 1 ]; + tagProperties.tmpl = tagProperties.tmpl || content || undefined; + // Set the tmpl property to the content of the block tag, unless set as an override property on the tag + + if ( presenters && presenters[ tag ]) { + ctx = extend( extend( {}, tagProperties.ctx ), tagProperties ); + delete ctx.ctx; + delete ctx._path; + delete ctx.tmpl; + tagProperties.ctx = ctx; + tagProperties._ctor = tag + (hash ? "=" + hash.slice( 0, -1 ) : ""); + + tagProperties = extend( extend( {}, tagFn ), tagProperties ); + tagFn = viewsNs.tags.each; // Use each to render the layout template against the data + } + + tagProperties._encode = encode; + tagProperties._view = view; + ret = tagFn.apply( tagProperties, args.length > 5 ? slice.call( args, 5 ) : [view.data] ); + return ret || (ret === undefined ? "" : ret.toString()); // (If ret is the value 0 or false or null, will render to string) + } + }, + +//=============== +// render +//=============== + + render: render = function( data, tmpl, context, parentView, path, tagName ) { + // Render template against data as a tree of subviews (nested template), or as a string (top-level template). + // tagName parameter for internal use only. Used for rendering templates registered as tags (which may have associated presenter objects) + var i, l, dataItem, arrayView, content, result = ""; + + if ( arguments.length === 2 && data.jsViews ) { + parentView = data; + context = parentView.ctx; + data = parentView.data; + } + tmpl = $.template( tmpl ); + if ( !tmpl ) { + return ""; // Could throw... + } + + if ( $.isArray( data )) { + // Create a view item for the array, whose child views correspond to each data item. + arrayView = new View( context, path, parentView, data); + l = data.length; + for ( i = 0, l = data.length; i < l; i++ ) { + dataItem = data[ i ]; + content = dataItem ? tmpl( dataItem, new View( context, path, arrayView, dataItem, tmpl, this )) : ""; + result += viewsNs.activeViews ? "" + content + "" : content; + } + } else { + result += tmpl( data, new View( context, path, parentView, data, tmpl )); + } + + return viewsNs.activeViews + // If in activeView mode, include annotations + ? "" + result + "" + // else return just the string result + : result; + }, + +//=============== +// template +//=============== + + template: function( name, tmpl ) { + // Set: + // Use $.template( name, tmpl ) to cache a named template, + // where tmpl is a template string, a script element or a jQuery instance wrapping a script element, etc. + // Use $( "selector" ).template( name ) to provide access by name to a script block template declaration. + + // Get: + // Use $.template( name ) to access a cached template. + // Also $( selectorToScriptBlock ).template(), or $.template( null, templateString ) + // will return the compiled template, without adding a name reference. + // If templateString is not a selector, $.template( templateString ) is equivalent + // to $.template( null, templateString ). To ensure a string is treated as a template, + // include an HTML element, an HTML comment, or a template comment tag. + + if (tmpl) { + // Compile template and associate with name + if ( "" + tmpl === tmpl ) { // type string + // This is an HTML string being passed directly in. + tmpl = compile( tmpl ); + } else if ( jQuery && tmpl instanceof $ ) { + tmpl = tmpl[0]; + } + if ( tmpl ) { + if ( jQuery && tmpl.nodeType ) { + // If this is a template block, use cached copy, or generate tmpl function and cache. + tmpl = $.data( tmpl, "tmpl" ) || $.data( tmpl, "tmpl", compile( tmpl.innerHTML )); + } + viewsNs.templates[ tmpl._name = tmpl._name || name || "_" + autoName++ ] = tmpl; + } + return tmpl; + } + // Return named compiled template + return name + ? "" + name !== name // not type string + ? (name._name + ? name // already compiled + : $.template( null, name )) + : viewsNs.templates[ name ] || + // If not in map, treat as a selector. (If integrated with core, use quickExpr.exec) + $.template( null, htmlExpr.test( name ) ? name : try$( name )) + : null; + } +}); + +viewsNs.setDelimiters( "{{", "}}" ); + +//================= +// compile template +//================= + +// Generate a reusable function that will serve to render a template against data +// (Compile AST then build template function) + +function parsePath( all, comp, object, viewDataCtx, viewProperty, path, string, quot ) { + return object + ? ((viewDataCtx + ? viewProperty + ? ("$view." + viewProperty) + : object + :("$data." + object) + ) + ( path || "" )) + : string || (comp || ""); +} + +function compile( markup ) { + var newNode, + loc = 0, + stack = [], + topNode = [], + content = topNode, + current = [,,topNode]; + + function pushPreceedingContent( shift ) { + shift -= loc; + if ( shift ) { + content.push( markup.substr( loc, shift ).replace( rNewLine,"\\n")); + } + } + + function parseTag( all, isBlock, tagName, equals, code, params, useEncode, encode, closeBlock, index ) { + // rTag : # tagName equals code params encode closeBlock + // /\{\{(?:(?:(\#)?(\w+(?=[\s\}!]))|(?:(\=)|(\*)))((?:[^\}]|\}(?!\}))*?)(!(\w*))?|(?:\/([\w\$\.\[\]]+)))\}\}/g; + + // Build abstract syntax tree: [ tagName, params, content, encode ] + var named, + hash = "", + parenDepth = 0, + quoted = FALSE, // boolean for string content in double qoutes + aposed = FALSE; // or in single qoutes + + function parseParams( all, path, paren, comp, eq, comma, apos, quot, rightParen, space, index ) { + // path paren eq comma apos quot rtPrn space + // /(\$?[\w\.\[\]]+)(?:(\()|(===)|(\=))?|(\,\s*)|\\?(\')|\\?(\")|(\))|(\s+)/g + + return aposed + // within single-quoted string + ? ( aposed = !apos, (aposed ? all : '"')) + : quoted + // within double-quoted string + ? ( quoted = !quot, (quoted ? all : '"')) + : comp + // comparison + ? ( path.replace( rPath, parsePath ) + comp) + : eq + // named param + ? parenDepth ? "" :( named = TRUE, '\b' + path + ':') + : paren + // function + ? (parenDepth++, path.replace( rPath, parsePath ) + '(') + : rightParen + // function + ? (parenDepth--, ")") + : path + // path + ? path.replace( rPath, parsePath ) + : comma + ? "," + : space + ? (parenDepth + ? "" + : named + ? ( named = FALSE, "\b") + : "," + ) + : (aposed = apos, quoted = quot, '"'); + } + + tagName = tagName || equals; + pushPreceedingContent( index ); + if ( code ) { + if ( viewsNs.allowCode ) { + content.push([ "*", params.replace( rUnescapeQuotes, "$1" )]); + } + } else if ( tagName ) { + if ( tagName === "else" ) { + current = stack.pop(); + content = current[ 2 ]; + isBlock = TRUE; + } + params = (params + ? (params + " ") + .replace( rParams, parseParams ) + .replace( rBuildHash, function( all, keyValue, index ) { + hash += keyValue + ","; + return ""; + }) + : ""); + params = params.slice( 0, -1 ); + newNode = [ + tagName, + useEncode ? encode || "none" : "", + isBlock && [], + "{" + hash + "_hash:'" + hash + "',_path:'" + params + "'}", + params + ]; + + if ( isBlock ) { + stack.push( current ); + current = newNode; + } + content.push( newNode ); + } else if ( closeBlock ) { + current = stack.pop(); + } + loc = index + all.length; // location marker - parsed up to here + if ( !current ) { + throw "Expected block tag"; + } + content = current[ 2 ]; + } + markup = markup.replace( rEscapeQuotes, "\\$1" ); + markup.replace( rTag, parseTag ); + pushPreceedingContent( markup.length ); + return buildTmplFunction( topNode ); +} + +// Build javascript compiled template function, from AST +function buildTmplFunction( nodes ) { + var ret, node, i, + nested = [], + l = nodes.length, + code = "try{var views=" + + (jQuery ? "jQuery" : "JsViews") + + '.views,tag=views.renderTag,enc=views.encode,html=views.encoders.html,$ctx=$view && $view.ctx,result=""+\n\n'; + + for ( i = 0; i < l; i++ ) { + node = nodes[ i ]; + if ( node[ 0 ] === "*" ) { + code = code.slice( 0, i ? -1 : -3 ) + ";" + node[ 1 ] + ( i + 1 < l ? "result+=" : "" ); + } else if ( "" + node === node ) { // type string + code += '"' + node + '"+'; + } else { + var tag = node[ 0 ], + encode = node[ 1 ], + content = node[ 2 ], + obj = node[ 3 ], + params = node[ 4 ], + paramsOrEmptyString = params + '||"")+'; + + if( content ) { + nested.push( buildTmplFunction( content )); + } + code += tag === "=" + ? (!encode || encode === "html" + ? "html(" + paramsOrEmptyString + : encode === "none" + ? ("(" + paramsOrEmptyString) + : ('enc("' + encode + '",' + paramsOrEmptyString) + ) + : 'tag("' + tag + '",$view,"' + ( encode || "" ) + '",' + + (content ? nested.length : '""') // For block tags, pass in the key (nested.length) to the nested content template + + "," + obj + (params ? "," : "") + params + ")+"; + } + } + ret = new Function( "$data, $view", code.slice( 0, -1) + ";return result;\n\n}catch(e){return views.err(e);}" ); + ret.nested = nested; + return ret; +} + +//========================== Private helper functions, used by code above ========================== + +function replacerForHtml( ch ) { + // Original code from Mike Samuel + return escapeMapForHtml[ ch ] + // Intentional assignment that caches the result of encoding ch. + || ( escapeMapForHtml[ ch ] = "&#" + ch.charCodeAt( 0 ) + ";" ); +} + +function try$( selector ) { + // If selector is valid, return jQuery object, otherwise return (invalid) selector string + try { + return $( selector ); + } catch( e) {} + return selector; +} +})( window ); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/menu_left.png b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/menu_left.png new file mode 100644 index 000000000..1183b4b6d Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/menu_left.png differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/menu_right.png b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/menu_right.png new file mode 100644 index 000000000..b69e637f3 Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/menu_right.png differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/mifos.jpg b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/mifos.jpg new file mode 100644 index 000000000..d110d9586 Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/mifos.jpg differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/oauth/OAuthSimple.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/oauth/OAuthSimple.js new file mode 100644 index 000000000..f2b9c9438 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/oauth/OAuthSimple.js @@ -0,0 +1,477 @@ +/* OAuthSimple + * A simpler version of OAuth + * + * author: jr conlin + * mail: src@anticipatr.com + * copyright: unitedHeroes.net + * version: 1.2 + * url: http://unitedHeroes.net/OAuthSimple + * + * Copyright (c) 2011, unitedHeroes.net + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of the unitedHeroes.net nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY UNITEDHEROES.NET ''AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL UNITEDHEROES.NET BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +var OAuthSimple; + +if (OAuthSimple === undefined) +{ + /* Simple OAuth + * + * This class only builds the OAuth elements, it does not do the actual + * transmission or reception of the tokens. It does not validate elements + * of the token. It is for client use only. + * + * api_key is the API key, also known as the OAuth consumer key + * shared_secret is the shared secret (duh). + * + * Both the api_key and shared_secret are generally provided by the site + * offering OAuth services. You need to specify them at object creation + * because nobody ing uses OAuth without that minimal set of + * signatures. + * + * If you want to use the higher order security that comes from the + * OAuth token (sorry, I don't provide the functions to fetch that because + * sites aren't horribly consistent about how they offer that), you need to + * pass those in either with .signatures() or as an argument to the + * .sign() or .getHeaderString() functions. + * + * Example: + + var oauthObject = OAuthSimple().sign({path:'http://example.com/rest/', + parameters: 'foo=bar&gorp=banana', + signatures:{ + api_key:'12345abcd', + shared_secret:'xyz-5309' + }}); + document.getElementById('someLink').href=oauthObject.signed_url; + + * + * that will sign as a "GET" using "SHA1-MAC" the url. If you need more than + * that, read on, McDuff. + */ + + /** OAuthSimple creator + * + * Create an instance of OAuthSimple + * + * @param api_key {string} The API Key (sometimes referred to as the consumer key) This value is usually supplied by the site you wish to use. + * @param shared_secret (string) The shared secret. This value is also usually provided by the site you wish to use. + */ + OAuthSimple = function (consumer_key,shared_secret) + { +/* if (api_key == undefined) + throw("Missing argument: api_key (oauth_consumer_key) for OAuthSimple. This is usually provided by the hosting site."); + if (shared_secret == undefined) + throw("Missing argument: shared_secret (shared secret) for OAuthSimple. This is usually provided by the hosting site."); +*/ var self = {}; + self._secrets={}; + + + // General configuration options. + if (consumer_key !== undefined) { + self._secrets['consumer_key'] = consumer_key; + } + if (shared_secret !== undefined) { + self._secrets['shared_secret'] = shared_secret; + } + self._default_signature_method= "HMAC-SHA1"; + self._action = "GET"; + self._nonce_chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; + self._parameters={}; + + + self.reset = function() { + this._parameters={}; + this._path=undefined; + this.sbs=undefined; + return this; + }; + + /** set the parameters either from a hash or a string + * + * @param {string,object} List of parameters for the call, this can either be a URI string (e.g. "foo=bar&gorp=banana" or an object/hash) + */ + self.setParameters = function (parameters) { + if (parameters === undefined) { + parameters = {}; + } + if (typeof(parameters) == 'string') { + parameters=this._parseParameterString(parameters); + } + this._parameters = this._merge(parameters,this._parameters); + if (this._parameters['oauth_nonce'] === undefined) { + this._getNonce(); + } + if (this._parameters['oauth_timestamp'] === undefined) { + this._getTimestamp(); + } + if (this._parameters['oauth_method'] === undefined) { + this.setSignatureMethod(); + } + if (this._parameters['oauth_consumer_key'] === undefined) { + this._getApiKey(); + } + if(this._parameters['oauth_token'] === undefined) { + this._getAccessToken(); + } + if(this._parameters['oauth_version'] === undefined) { + this._parameters['oauth_version']=='1.0'; + } + + return this; + }; + + /** convienence method for setParameters + * + * @param parameters {string,object} See .setParameters + */ + self.setQueryString = function (parameters) { + return this.setParameters(parameters); + }; + + /** Set the target URL (does not include the parameters) + * + * @param path {string} the fully qualified URI (excluding query arguments) (e.g "http://example.org/foo") + */ + self.setURL = function (path) { + if (path == '') { + throw ('No path specified for OAuthSimple.setURL'); + } + this._path = path; + return this; + }; + + /** convienence method for setURL + * + * @param path {string} see .setURL + */ + self.setPath = function(path){ + return this.setURL(path); + }; + + /** set the "action" for the url, (e.g. GET,POST, DELETE, etc.) + * + * @param action {string} HTTP Action word. + */ + self.setAction = function(action) { + if (action === undefined) { + action="GET"; + } + action = action.toUpperCase(); + if (action.match('[^A-Z]')) { + throw ('Invalid action specified for OAuthSimple.setAction'); + } + this._action = action; + return this; + }; + + /** set the signatures (as well as validate the ones you have) + * + * @param signatures {object} object/hash of the token/signature pairs {api_key:, shared_secret:, oauth_token: oauth_secret:} + */ + self.signatures = function(signatures) { + if (signatures) + { + this._secrets = this._merge(signatures,this._secrets); + } + // Aliases + if (this._secrets['api_key']) { + this._secrets.consumer_key = this._secrets.api_key; + } + if (this._secrets['access_token']) { + this._secrets.oauth_token = this._secrets.access_token; + } + if (this._secrets['access_secret']) { + this._secrets.oauth_secret = this._secrets.access_secret; + } + if (this._secrets['oauth_token_secret']) { + this._secrets.oauth_secret = this._secrets.oauth_token_secret; + } + // Gauntlet + if (this._secrets.consumer_key === undefined) { + throw('Missing required consumer_key in OAuthSimple.signatures'); + } + if (this._secrets.shared_secret === undefined) { + throw('Missing required shared_secret in OAuthSimple.signatures'); + } + if ((this._secrets.oauth_token !== undefined) && (this._secrets.oauth_secret === undefined)) { + throw('Missing oauth_secret for supplied oauth_token in OAuthSimple.signatures'); + } + return this; + }; + + self.setTokensAndSecrets = function(signatures) { + return this.signatures(signatures); + }; + + /** set the signature method (currently only Plaintext or SHA-MAC1) + * + * @param method {string} Method of signing the transaction (only PLAINTEXT and SHA-MAC1 allowed for now) + */ + self.setSignatureMethod = function(method) { + if (method === undefined) { + method = this._default_signature_method; + } + //TODO: accept things other than PlainText or SHA-MAC1 + if (method.toUpperCase().match(/(PLAINTEXT|HMAC-SHA1)/) === undefined) { + throw ('Unknown signing method specified for OAuthSimple.setSignatureMethod'); + } + this._parameters['oauth_signature_method']= method.toUpperCase(); + return this; + }; + + /** sign the request + * + * note: all arguments are optional, provided you've set them using the + * other helper functions. + * + * @param args {object} hash of arguments for the call + * {action:, path:, parameters:, method:, signatures:} + * all arguments are optional. + */ + self.sign = function (args) { + if (args === undefined) { + args = {}; + } + // Set any given parameters + if(args['action'] !== undefined) { + this.setAction(args['action']); + } + if (args['path'] !== undefined) { + this.setPath(args['path']); + } + if (args['method'] !== undefined) { + this.setSignatureMethod(args['method']); + } + this.signatures(args['signatures']); + this.setParameters(args['parameters']); + // check the parameters + var normParams = this._normalizedParameters(); + this._parameters['oauth_signature']=this._generateSignature(normParams); + return { + parameters: this._parameters, + signature: this._oauthEscape(this._parameters['oauth_signature']), + signed_url: this._path + '?' + this._normalizedParameters(), + header: this.getHeaderString() + }; + }; + + /** Return a formatted "header" string + * + * NOTE: This doesn't set the "Authorization: " prefix, which is required. + * I don't set it because various set header functions prefer different + * ways to do that. + * + * @param args {object} see .sign + */ + self.getHeaderString = function(args) { + if (this._parameters['oauth_signature'] === undefined) { + this.sign(args); + } + + var j,pName,pLength,result = 'OAuth '; + for (pName in this._parameters) + { + if (pName.match(/^oauth/) === undefined) { + continue; + } + if ((this._parameters[pName]) instanceof Array) + { + pLength = this._parameters[pName].length; + for (j=0;j>16)+(y>>16)+(l>>16);return(m<<16)|(l&0xFFFF);}function _r(n,c){return(n<>>(32-c));}function _c(x,l){x[l>>5]|=0x80<<(24-l%32);x[((l+64>>9)<<4)+15]=l;var w=[80],a=1732584193,b=-271733879,c=-1732584194,d=271733878,e=-1009589776;for(var i=0;i>5]|=(s.charCodeAt(i/8)&m)<<(32-_z-i%32);}return b;}function _h(k,d){var b=_b(k);if(b.length>16){b=_c(b,k.length*_z);}var p=[16],o=[16];for(var i=0;i<16;i++){p[i]=b[i]^0x36363636;o[i]=b[i]^0x5C5C5C5C;}var h=_c(p.concat(_b(d)),512+d.length*_z);return _c(o.concat(h),512+160);}function _n(b){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s='';for(var i=0;i>2]>>8*(3-i%4))&0xFF)<<16)|(((b[i+1>>2]>>8*(3-(i+1)%4))&0xFF)<<8)|((b[i+2>>2]>>8*(3-(i+2)%4))&0xFF);for(var j=0;j<4;j++){if(i*8+j*6>b.length*32){s+=_p;}else{s+=t.charAt((r>>6*(3-j))&0x3F);}}}return s;}function _x(k,d){return _n(_h(k,d));}return _x(k,d); + } + + + self._normalizedParameters = function() { + var elements = new Array(), + paramNames = [], + i=0, + ra =0; + for (var paramName in this._parameters) + { + if (ra++ > 1000) { + throw('runaway 1'); + } + paramNames.unshift(paramName); + } + paramNames = paramNames.sort(); + pLen = paramNames.length; + for (;i 1000) { + throw('runaway 1'); + } + elements.push(this._oauthEscape(paramName) + '=' + + this._oauthEscape(sorted[j])); + } + continue; + } + elements.push(this._oauthEscape(paramName) + '=' + + this._oauthEscape(this._parameters[paramName])); + } + return elements.join('&'); + }; + + self._generateSignature = function() { + + var secretKey = this._oauthEscape(this._secrets.shared_secret)+'&'+ + this._oauthEscape(this._secrets.oauth_secret); + if (this._parameters['oauth_signature_method'] == 'PLAINTEXT') + { + return secretKey; + } + if (this._parameters['oauth_signature_method'] == 'HMAC-SHA1') + { + var sigString = this._oauthEscape(this._action)+'&'+this._oauthEscape(this._path)+'&'+this._oauthEscape(this._normalizedParameters()); + return this.b64_hmac_sha1(secretKey,sigString); + } + return null; + }; + + self._merge = function(source,target) { + if (source == undefined) + source = {}; + if (target == undefined) + target = {}; + for (var key in source) { + target[key] = source[key]; + } + return target; + } + + return self; + }; +} diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchydata-0.89.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchydata-0.89.js new file mode 100644 index 000000000..49a7daa1d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchydata-0.89.js @@ -0,0 +1,512 @@ +(function($) { + + $.stretchyData = {}; + + $.stretchyData.displayAllExtraData = function(params) { + + if (!(params.url)) { + alert(doI18N("reportingInitError - url parameter")); + return; + } + if (!(params.datasetType)) { + alert(doI18N("reportingInitError - datasetType parameter")); + return; + } + if (!(params.datasetPKValue)) { + alert(doI18N("reportingInitError - datasetPKValue parameter")); + return; + } + if (!(params.datasetTypeDiv)) { + alert(doI18N("reportingInitError - datasetTypeDiv parameter")); + return; + } + var headingPrefix = ""; + if (params.headingPrefix) + headingPrefix = params.headingPrefix; + var headingClass = ""; + if (params.headingClass) + headingClass = params.headingClass; + var labelClass = ""; + if (params.labelClass) + labelClass = params.labelClass; + var valueClass = ""; + if (params.valueClass) + valueClass = params.valueClass; + displayAllExtraData(params.url, params.datasetType, + params.datasetPKValue, params.datasetTypeDiv, headingPrefix, + headingClass, labelClass, valueClass); + }; + + $.stretchyData.popupEditDialog = function(url, datasetType, datasetName, + datasetPKValue, dsnDivName, title, width, height) { + popupEditDialog(url, datasetType, datasetName, datasetPKValue, + dsnDivName, title, width, height); + }; + + displayAllSuccessFunction = function(data, textStatus, jqXHR) { + + var headingClassStr = ""; + if (displayAllVars.headingClass > "") + headingClassStr = ' class="' + displayAllVars.headingClass + '" '; + + var extraDataNamesVar = ""; + for ( var i in data.names) { + var dsnDivName = generateDsnDivName(displayAllVars.datasetType, i); + extraDataNamesVar += '
' + + doI18N(displayAllVars.headingPrefix) + + doI18N(data.names[i]) + ' - '; + + extraDataNamesVar += editExtraDataLink(displayAllVars.url, + displayAllVars.datasetType, data.names[i], + displayAllVars.datasetPKValue, dsnDivName); + extraDataNamesVar += '
'; + extraDataNamesVar += '
'; + } + $('#' + displayAllVars.datasetTypeDiv).html(extraDataNamesVar); + for ( var i in data.names) { + var dsnDivName = generateDsnDivName(displayAllVars.datasetType, i); + viewExtraData(displayAllVars.url, displayAllVars.datasetType, + data.names[i], displayAllVars.datasetPKValue, dsnDivName); + } + + }; + + displayAllErrorFunction = function(jqXHR, textStatus, errorThrown) { + alert(jqXHR.responseText); + }; + + function displayAllExtraData(url, datasetType, datasetPKValue, + datasetTypeDiv, headingPrefix, headingClass, labelClass, valueClass) { + + displayAllVars = { + url : url, + datasetType : datasetType, + datasetPKValue : datasetPKValue, + datasetTypeDiv : datasetTypeDiv, + headingPrefix : headingPrefix, + headingClass : headingClass, + labelClass : labelClass, + valueClass : valueClass + }; + + displayAllUrl = url + "extradata/datasets/" + + encodeURIComponent(datasetType); + getData(displayAllUrl, displayAllSuccessFunction, + displayAllErrorFunction); + } + + function editExtraDataLink(url, datasetType, datasetName, datasetPKValue, + dsnDivName) { + + var popupVar = "jQuery.stretchyData.popupEditDialog('" + url + "', '" + + datasetType + "', '" + datasetName + "', " + datasetPKValue + + ", '" + dsnDivName + "', '" + doI18N("Edit") + " " + + doI18N(datasetName) + "', 900, 500)"; + var editLink = '' + + doI18N("Edit") + '
'; + // alert(editLink); + return editLink; + } + + function viewExtraDataset(data, dsnDivName) { + + var dataLength = data.data.length; + var extraDataViewVar = ''; + + var colsPerRow = 2; + var colsPerRowCount = 0; + var labelClassStr = ""; + var valueClassStr = ""; + if (displayAllVars.labelClass > "") + labelClassStr = ' class="' + displayAllVars.labelClass + '" '; + if (displayAllVars.valueClass > "") + valueClassStr = ' class="' + displayAllVars.valueClass + '" '; + + for ( var i in data.columnHeaders) { + if (!(data.columnHeaders[i].columnName == "id")) { + colsPerRowCount += 1; + if (colsPerRowCount > colsPerRow) { + extraDataViewVar += ''; + colsPerRowCount = 1; + } + var colVal = ""; + if (dataLength > 0) + colVal = data.data[0].row[i]; + if (colVal == null) + colVal = ""; + + if (colVal > "" && data.columnHeaders[i].columnType == "Text") + colVal = ''; + extraDataViewVar += ''; + } + } + extraDataViewVar += '
' + doI18N(data.columnHeaders[i].columnName) + + ':' + colVal + '
'; + $('#' + dsnDivName).html(extraDataViewVar); + // alert(dsnDivName + ": " + dsnDivName + extraDataViewVar); + } + ; + viewExtraDataErrorFunction = function(jqXHR, textStatus, errorThrown) { + alert(jqXHR.responseText); + }; + + function viewExtraData(url, datasetType, datasetName, datasetPKValue, + dsnDivName) { + var viewExtraDataUrl = url + "extradata/" + encodeURIComponent(datasetType) + + "/" + encodeURIComponent(datasetName) + "/" + + encodeURIComponent(datasetPKValue); + + var evalViewExtraDataSuccessFunction = "var viewExtraDataSuccessFunction = function(data, textStatus, jqXHR){ viewExtraDataset(data, '" + + dsnDivName + "'); };" + eval(evalViewExtraDataSuccessFunction); + getData(viewExtraDataUrl, viewExtraDataSuccessFunction, + viewExtraDataErrorFunction); + } + + popupEditErrorFunction = function(jqXHR, textStatus, errorThrown) { + alert("error"); + handleXhrError(jqXHR, textStatus, errorThrown, "#formErrorsTemplate", + "#formerrors"); + }; + popupEditSuccessFunction = function(data, textStatus, jqXHR) { + currentEditPopup.dialogDiv.append(extraDataBuildTemplate(data)); + extraDataOpenDialog(currentEditPopup.url); + extraDataFormatDates(data.columnHeaders); + }; + function popupEditDialog(url, datasetType, datasetName, datasetPKValue, + dsnDivName, title, width, height) { + + currentEditPopup = { + dialogDiv : $("
"), + dsnDivName : dsnDivName, + title : title, + width : width, + height : height, + datasetType : datasetType, + datasetName : datasetName, + datasetPKValue : datasetPKValue, + baseUrl : url, + url : url + "extradata/" + encodeURIComponent(datasetType) + "/" + + encodeURIComponent(datasetName) + "/" + + encodeURIComponent(datasetPKValue) + }; + getData(currentEditPopup.url, popupEditSuccessFunction, + popupEditErrorFunction); + } + + function generateDsnDivName(datasetType, i) { + return extraDataUnderscore(datasetType) + "_" + i; + } + + /* start of code to fill data in edit form */ + + function extraDataUnderscore(colName) { + return colName.replace(/ /g, "_") + } + + function extraDataColDisplayHTML(colName, colType, colLength, + colDisplayType, colAllowedValues, colVal) { + var displayHTML = ''; + var valueAttr = "" + if (colVal != null) + valueAttr = 'value="' + colVal.replace(/"/g, """) + '"'; + var colNameUnderscore = extraDataUnderscore(colName); + + switch (colType) { + case "String": + var colAllowedValuesLength = colAllowedValues.length; + if (colDisplayType != "List") { + var colSize = 40; + if (colLength < colSize) + colSize = colLength; + displayHTML += '' + } else + displayHTML += extraDataSelectTag(colNameUnderscore, + colAllowedValues, colVal); + break; + case "Text": + var textVal = ""; + if (colVal != null) + textVal = colVal; + displayHTML += ''; + break; + case "Date": + displayHTML += ''; + break; + case "Decimal": + displayHTML += ''; + break; + case "Integer": + displayHTML += ''; + break; + default: + displayHTML += "'" + colType + "'"; + } + displayHTML += ''; + return displayHTML; + } + + function extraDataSelectTag(colName, colAllowedValues, colVal) { + + var selectedVal = ""; + var selectHtml = ''; + // alert(selectHtml); + return selectHtml; + } + + function extraDataBuildTemplate(data) { + + var dataLength = data.data.length; + var transType = 'E'; + if (dataLength == 0) + transType = 'A'; + + var extraDataTemplateVar = '
'; + extraDataTemplateVar += ''; + + extraDataTemplateVar += ''; + + var colsPerRow = 2; + var colsPerRowCount = 0; + + for ( var i in data.columnHeaders) { + + if (!(data.columnHeaders[i].columnName == "id")) { + colsPerRowCount += 1; + if (colsPerRowCount > colsPerRow) { + extraDataTemplateVar += ''; + colsPerRowCount = 1; + } + var colVal = ""; + if (dataLength > 0) + colVal = data.data[0].row[i]; + extraDataTemplateVar += extraDataColDisplayHTML( + data.columnHeaders[i].columnName, + data.columnHeaders[i].columnType, + data.columnHeaders[i].columnLength, + data.columnHeaders[i].columnDisplayType, + data.columnHeaders[i].columnValues, colVal); + } + } + extraDataTemplateVar += ''; + return extraDataTemplateVar += '
'; + } + + function extraDataFormatDates(columnHeaders) { + + for ( var i in columnHeaders) { + // alert("in loop: " + + // extraDataUnderscore(columnHeaders[i].columnName) + " Type: " + + // columnHeaders[i].columnType); + switch (columnHeaders[i].columnType) { + case "Date": + $('#' + extraDataUnderscore(columnHeaders[i].columnName)) + .datepicker({ + + changeMonth : true, + changeYear : true, + dateFormat : 'yy-mm-dd' + }); + + break; + default: + } + } + } + + function extraDataOpenDialog(url) { + + // var saveButton = jQuery.i18n.prop('dialog.button.save'); + // var cancelButton = jQuery.i18n.prop('dialog.button.cancel'); + var saveButton = "save"; + var cancelButton = "cancel" + + var buttonsOpts = {}; + buttonsOpts[saveButton] = function() { + $('.multiSelectedItems option').each(function(i) { + $(this).attr("selected", "selected"); + }); + + var form_data = $('#entityform').serialize(); + + var jqxhr = $.ajax({ + url : url, + type : 'POST', + data : form_data, + success : function(data, textStatus, jqXHR) { + currentEditPopup.dialogDiv.dialog("close"); + viewExtraData(currentEditPopup.baseUrl, + currentEditPopup.datasetType, + currentEditPopup.datasetName, + currentEditPopup.datasetPKValue, + currentEditPopup.dsnDivName) + }, + error : function(jqXHR, textStatus, errorThrown) { + handleXhrError(jqXHR, textStatus, errorThrown, + "#formErrorsTemplate", "#formerrors"); + } + }); + }; + + buttonsOpts[cancelButton] = function() { + $(this).dialog("close"); + }; + + currentEditPopup.dialogDiv + .dialog( + { + // title: jQuery.i18n.prop(titleCode), + title : currentEditPopup.title, + width : currentEditPopup.width, + height : currentEditPopup.height, + modal : true, + buttons : buttonsOpts, + close : function() { + // if i dont do this, theres a problem with + // errors being appended to dialog view second + // time round + $(this).remove(); + }, + open : function(event, ui) { + $('.multiadd') + .click( + function() { + return !$( + '.multiNotSelectedItems option:selected') + .remove() + .appendTo( + '#selectedItems'); + }); + + $('.multiremove') + .click( + function() { + return !$( + '.multiSelectedItems option:selected') + .remove() + .appendTo( + '#notSelectedItems'); + }); + } + }).dialog('open'); + } + + /* end of code to fill data in edit form and display it */ + + function getData(url, successFunction, errorFunction) { + + $.ajax({ + url : url, + cache : false, + type : 'GET', + contentType : "application/json; charset=utf-8", + // dataType : 'jsonp', + // crossDomain : true, + dataType : 'json', + crossDomain : false, + success : successFunction, + error : errorFunction + }); + } + + function handleXhrError(jqXHR, textStatus, errorThrown, templateSelector, + placeholderDiv) { + if (jqXHR.status === 0) { + alert('Not connect.\n Verify Network.'); + } else if (jqXHR.status == 404) { + alert('Requested page not found. [404]'); + } else if (jqXHR.status == 500) { + alert('Internal Server Error [500].'); + } else if (errorThrown === 'parsererror') { + alert('Requested JSON parse failed.'); + } else if (errorThrown === 'timeout') { + alert('Time out error.'); + } else if (errorThrown === 'abort') { + alert('Ajax request aborted.'); + } else { + // remove error class from all input fields + var $inputs = $('#entityform :input'); + + $inputs.each(function() { + $(this).removeClass("ui-state-error"); + }); + + $(placeholderDiv).html(""); + + var jsonErrors = JSON.parse(jqXHR.responseText); + + var errorArray = new Array(); + var arrayIndex = 0; + $.each(jsonErrors, function() { + var fieldId = '#' + this.field; + $(fieldId).addClass("ui-state-error"); + + var errorObj = new Object(); + errorObj.field = this.field; + errorObj.code = this.code; + errorObj.message = this.code; + errorObj.value = this.value; + + errorArray[arrayIndex] = errorObj; + arrayIndex++ + }); + + var templateArray = new Array(); + var templateErrorObj = new Object(); + templateErrorObj.title = "You have the following errors:"; + templateErrorObj.errors = errorArray; + + templateArray[0] = templateErrorObj; + + var formErrorsHtml = $(templateSelector).render(templateArray); + + $(placeholderDiv).append(formErrorsHtml); + } + } + + function doI18N(xlateStr, params) { + /* + * if (I18N_Needed == "Y") { if (highlightMissingXlations == "Y") return + * jQuery.i18n.prop(xlateStr, params) else { var xlated = + * jQuery.i18n.prop(xlateStr, params); if (xlated.substr(0,1) == "[" && + * xlated.substr(xlated.length - 1, 1) == "]") return xlated.substr(1, + * xlated.length - 2) else return xlated; } } else { var retStr = + * xlateStr; if (retStr == 'rpt_select_one') retStr = 'Select One'; if + * (retStr == 'rpt_select_all') retStr = 'Select All'; return retStr; } + */ + return xlateStr; + } + +})(jQuery); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/Readme.txt b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/Readme.txt new file mode 100644 index 000000000..b56ab6edb --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/Readme.txt @@ -0,0 +1,11 @@ +This DataTables plugin (v1.8.x) for jQuery was developed out of the desire to allow highly configurable access to HTML tables with advanced access features. + +For detailed installation, usage and API instructions, please refer to the DataTables web-pages: http://www.datatables.net + +Questions, feature requests and bug reports (etc) can all be asked on the DataTables forums: http://www.datatables.net/forums/ + +The DataTables source can be found in the media/js/ directory of this archive. + +DataTables is released with dual licensing, using the GPL v2 (license-gpl2.txt) and an BSD style license (license-bsd.txt). Please see the corresponding license file for details of these licenses. You are free to use, modify and distribute this software, but all copyright information must remain. + +If you discover any bugs in DataTables, have any suggestions for improvements or even if you just like using it, please free to get in touch with me: www.datatables.net/contact \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/callbacks.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/callbacks.html new file mode 100644 index 000000000..b27659307 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/callbacks.html @@ -0,0 +1,552 @@ + + + + + + + AutoFill example + + + + + + + +
+
+ AutoFill example +
+ +

Preamble

+

+ AutoFill provides a number of customisable callback functions so you can tailor it's + actions to exactly what you need. This specific example shows fnCallback, which is fired when the mouse is released. Further documentation is below. +

+ +
    +
  • + fnRead - Called when a cell is read for it's value. This allows you to override the default of reading the HTML value (or 'input' elements value if there is one present). For example reading the value from a select list. +
      +
    • Parameter 1: Node - TD element to be read from
    • +
    • Returns: String - read value
    • +
    +
  • +
  • + fnWrite - Called when a cell is to read to. This allows you to write in a specific format, or perhaps to an element within the cell. +
      +
    • Parameter 1: Node - TD element to be written to
    • +
    • Parameter 2: String - Value to write
    • +
    • Parameter 3: Boolean - Last cell to be written (useful for speeding up DataTables' fnUpdate)
    • +
    • Returns: void
    • +
    +
  • +
  • + fnStep - Called to calculate the new value to give to a cell +
      +
    • Parameter 1: Node - TD element to be written to
    • +
    • Parameter 2: String - Statement with a token to be replace with the calculated value
    • +
    • Parameter 3: Int - Step counter
    • +
    • Parameter 4: Boolean - increment (true), or decrement (false)
    • +
    • Parameter 5: String - Token to replace
    • +
    • Returns: String - string to write into the cell
    • +
    +
  • +
  • + fnCallback - Called when the AutoFill is complete, with information about the fill. This can be useful for updating a server database for example. +
      +
    • Parameter 1: Array - An array of objects with information about each cell that was written to. Object parameters are: "td", "newValue" and "oldValue".
    • +
    • Returns: void
    • +
    +
  • +
+ + +

Live example

+
+
+ Information about each update will appear here.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable();
+	new AutoFill( oTable, {
+		"aoColumnDefs": [ {
+			"fnCallback": function ( ao ) {
+				var n = document.getElementById('output');
+				for ( var i=0, iLen=ao.length ; i<iLen ; i++ ) {
+					n.innerHTML += "Update: old value: {"+
+						ao[i].oldValue+"} - new value: {"+ao[i].newValue+"}<br>";
+				}
+				n.scrollTop = n.scrollHeight;
+			},
+			"aTargets": [ "_all" ]
+		} ]
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/columns.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/columns.html new file mode 100644 index 000000000..2d7ad1d5c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/columns.html @@ -0,0 +1,503 @@ + + + + + + + AutoFill example + + + + + + + +
+
+ AutoFill example with column selection options +
+ +

Preamble

+

+ Columns can be enabled (default) and disabled from providing the end user the AutoFill option + by using either aoColumns or aoColumnDefs and the bEnable option. These two arrays work in + exactly the same way has for DataTables. +

+

+ This example shows how disabling columns counting from the right hand side of the table + can be achieved. In this case, the last three columns. +

+ + +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable();
+	new AutoFill( oTable, {
+		"aoColumnDefs": [ {
+			"bEnable": false,
+			"aTargets": [ -1, -2, -3 ]
+		} ]
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/index.html new file mode 100644 index 000000000..c9e955705 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/index.html @@ -0,0 +1,489 @@ + + + + + + + AutoFill example + + + + + + + +
+
+ AutoFill example +
+ +

Preamble

+

+ AutoFill gives an Excel like option to a DataTable to click and drag over multiple + cells, filling in information over the selected cells and incrementing numbers as needed. +

+

Thanks to Phoniax AS for their sponsorship of this plug-in for DataTables.

+ + + +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable();
+	new AutoFill( oTable );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/inputs.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/inputs.html new file mode 100644 index 000000000..bdb91400c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/inputs.html @@ -0,0 +1,519 @@ + + + + + + + AutoFill example + + + + + + + +
+
+ AutoFill example with input elements +
+ +

Preamble

+

+ AutoFill works with Input elements and Select elements, as well as plain HTML cells. This + example shows all inputs cells, combined with DataTables' DOM sorting plug-in. You can + even combine input and plain HTML cells if you wanted (useful from something like jEditable). +

+ + + +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$.fn.dataTableExt.afnSortData['dom-text'] = function ( oSettings, iColumn )
+{
+	var aData = [];
+	$( 'td:eq('+iColumn+') input', oSettings.oApi._fnGetTrNodes(oSettings) ).each( function () {
+		aData.push( this.value );
+	} );
+	return aData;
+}
+
+$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"aoColumnDefs": [
+			{ "sSortDataType": "dom-text", "aTargets": [ "_all" ] },
+			{ "sType": "numeric", "aTargets": [ -2 ] }
+		]
+	} );
+	new AutoFill( oTable );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/css/AutoFill.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/css/AutoFill.css new file mode 100644 index 000000000..cab59b3a0 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/css/AutoFill.css @@ -0,0 +1,24 @@ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * AutoFill styles + */ + +div.AutoFill_filler { + display: none; + position: absolute; + height: 14px; + width: 14px; + background: url(../images/filler.png) no-repeat center center; + z-index: 1002; +} + +div.AutoFill_border { + display: none; + position: absolute; + background-color: #0063dc; + z-index: 1001; + + box-shadow: 0px 0px 5px #76b4ff; + -moz-box-shadow: 0px 0px 5px #76b4ff; + -webkit-box-shadow: 0px 0px 5px #76b4ff; +} + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/css/default.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/css/default.css new file mode 100644 index 000000000..b9dde3b14 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/css/default.css @@ -0,0 +1,418 @@ +/* + * TABLE OF CONTENTS: + * - Browser reset + * - HTML elements + * - JsDoc styling + */ + + + + + + +/* + * BEGIN BROWSER RESET + */ + +body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,p,pre,form,fieldset,input,textarea,p,blockquote,th,td { + margin:0; + padding:0 +} +html { + height:100%; + overflow:-moz-scrollbars-vertical; + overflow-x:auto +} +table { + border:0; + border-collapse:collapse; + border-spacing:0 +} +fieldset,img { + border:0 +} +address,caption,cite,code,dfn,em,strong,th,var { + font-style:normal; + font-weight:normal +} +em,cite { + font-style:italic +} +strong { + font-weight:bold +} +ol,ul { + list-style:none +} +caption,th { + text-align:left +} +h1,h2,h3,h4,h5,h6 { + font-size:100%; + font-weight:normal; + margin:0; + padding:0 +} +q:before,q:after { + content:'' +} +abbr,acronym { + border:0 +} + +/* + * END BROWSER RESET + */ + + + + + + +/* + * HTML ELEMENTS + */ + +* { + line-height: 1.4em; +} + +html { + font-size: 100%; +} + +body { + font-size: 0.75em !important; + padding: 15px 0; + background: #eee; + background-image: -moz-linear-gradient(left, #dddddd, #f9f9f9); + background-image: -webkit-gradient(linear,left bottom,right bottom,color-stop(0, #dddddd),color-stop(1, #f9f9f9)); + } + +body, +input, +select, +textarea { + color: #000; + font-family: Arial, Geneva, sans-serif; +} + +a:link, +a:hover, +a:active, +a:visited { + color: #19199e; +} +a:hover, +a:focus { + color: #00f; + text-decoration: none; +} + +p { + margin: 0 0 1.5em 0; +} + +/* + * END HTML ELEMENTS + */ + + + +/* + * BEGIN HACK + */ + +div.containerMain:after, +div.safeBox:after { + content:""; + display:block; + height:0; + clear:both; +} + +/* + * END HACK + */ + + + +/* + * BEGIN JSDOC + */ + +div.index *.heading1 { + margin-bottom: 0.5em; + border-bottom: 1px solid #999999; + padding: 0.5em 0 0.1em 0; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.3em; + letter-spacing: 1px; +} + +div.index { + float: left; + width: 30%; + min-width: 100px; + max-width: 250px; +} +div.index div.menu { + margin: 0 15px 0 -15px; + -moz-border-radius: 15px; + -webkit-border-radius: 15px; + border-radius: 15px; + padding: 15px 15px 15px 30px; + background-color: #FFFFFF; + background-color: rgba(255, 255, 255, 0.5); + -moz-box-shadow: 0px 0px 10px #c4c4c4; + -webkit-box-shadow: 0px 0px 10px #c4c4c4; + box-shadow: 0px 0px 10px #c4c4c4; +} +*+html div.index div.menu { + background-color: #FFFFFF; +} +* html div.index div.menu { + background-color: #FFFFFF; +} + +div.index div.menu div { + text-align: left; +} + +div.index div.menu a { + text-decoration: none; +} +div.index div.menu a:hover { + text-decoration: underline; +} + +div.index ul.classList a { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.index div.fineprint { + padding: 15px 30px 15px 15px; + color: #777; + font-size: 0.9em; +} +div.index div.fineprint a { + color: #777; +} + + + +div.content { + float: left; + width: 70%; + min-width: 300px; + max-width: 600px; +} +div.innerContent { + padding: 0 0 0 2.5em; +} + +div.content ul, +div.content ol { + margin-bottom: 3em; +} + +div.content *.classTitle { + margin-bottom: 0.5em; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 2.5em; + letter-spacing: 2px; +} + +div.content *.classTitle span { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.content p.summary { + font-size: 1.2em; +} + +div.content ul *.classname a, +div.content ul *.filename a { + font-family: Consolas, "Courier New", Courier, monospace; + text-decoration: none; + font-weight: bold; +} +div.content ul *.classname a:hover, +div.content ul *.filename a:hover { + text-decoration: underline; +} + +div.content div.props { + position: relative; + left: -10px; + margin-bottom: 2.5em; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + padding: 10px 15px 15px 15px; + overflow: hidden; + background: #fff; + background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2)); /* FF3.6 */ + background: -webkit-gradient(linear,left top,left bottom,color-stop(0, rgba(255, 255, 255, 0.7)),color-stop(1, rgba(255, 255, 255, 0.2))); + -moz-box-shadow: 0px 0px 10px #ccc; + -webkit-box-shadow: 0px 0px 5px #bbb; + box-shadow: 0px 0px 5px #bbb; +} + +div.content div.props div.sectionTitle { + padding-bottom: 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +div.content div.hr { + margin: 0 10px 0 0; + height: 4em; +} + + + +table.summaryTable { + position: relative; + left: -10px; + width: 100%; + border-collapse: collapse; + box-sizing: content-box; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + -ms-box-sizing: content-box; + -o-box-sizing: content-box; + -icab-box-sizing: content-box; + -khtml-box-sizing: content-box; +} + +table.summaryTable caption { + padding: 0 10px 10px 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +table.summaryTable td, +table.summaryTable th { + padding: 0px 10px 10px 10px; + vertical-align: top; +} +table.summaryTable tr:last-child td { + padding-bottom: 0; +} + +table.summaryTable th { + font-weight: bold; +} + +table.summaryTable td.attributes { + width: 35%; + font-family: Consolas, "Courier New", Courier, monospace; + color: #666; +} + +table.summaryTable td.nameDescription { + width: 65% +} + +table.summaryTable td.nameDescription div.fixedFont { + font-weight: bold; +} + +table.summaryTable div.description { + color: #333; +} + + + +dl.detailList { + margin-top: 0.5em; +} + +dl.detailList.nomargin + dl.detailList.nomargin { + margin-top: 0; +} + +dl.detailList dt { + display: inline; + margin-right: 5px; + font-weight: bold; +} + +dl.detailList dt:before { + display: block; + content: ""; +} + +dl.detailList dd { + display: inline; +} + +dl.detailList.params dt { + display: block; +} +dl.detailList.params dd { + display: block; + padding-left: 2em; + padding-bottom: 0.4em; +} + + + + +ul.fileList li { + margin-bottom: 1.5em; +} + + + +.fixedFont { + font-family: Consolas, "Courier New", Courier, monospace; +} + +.fixedFont.heading { + margin-bottom: 0.5em; + font-size: 1.25em; + line-height: 1.1em +} + +.fixedFont.heading + .description { + font-size: 1.2em; +} + +.fixedFont.heading .light, +.fixedFont.heading .lighter { + font-weight: bold; +} + +pre.code { + margin: 10px 0 10px 0; + padding: 10px; + border: 1px solid #ccc; + -moz-border-radius: 2px; + -webkit-border-radius: 2px; + border-radius: 2px; + overflow: auto; + font-family: Consolas, "Courier New", Courier, monospace; + background: #eee; +} + +.light { + color: #666; +} + +.lighter { + color: #999; +} + +.clear { + clear: both; + width: 100%; + min-height: 0; +} + +/* + * END JSDOC + */ \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/files.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/files.html new file mode 100644 index 000000000..e1ab121cf --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/files.html @@ -0,0 +1,79 @@ + + + + + + JsDoc Reference - File Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

File Index

+ + +
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/index.html new file mode 100644 index 000000000..b653c770b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/index.html @@ -0,0 +1,115 @@ + + + + + JsDoc Reference - Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

Class Index

+ +
    + +
  • +

    _global_

    +

    +
  • + +
  • +

    AutoFill

    +

    AutoFill

    +
  • + +
  • +

    AutoFill#dom

    +

    Common and useful DOM elements for the class instance

    +
  • + +
  • +

    AutoFill#s

    +

    Settings object which contains customisable information for AutoFill instance

    +
  • + +
  • +

    AutoFill#s.border

    +

    Cached information about the border display

    +
  • + +
  • +

    AutoFill#s.columns

    +

    Information stored for each column.

    +
  • + +
  • +

    AutoFill#s.drag

    +

    Store for live information for the current drag

    +
  • + +
  • +

    AutoFill#s.filler

    +

    Cached information about the little dragging icon (the filler)

    +
  • + +
  • +

    AutoFill#s.screen

    +

    Data cache for information that we need for scrolling the screen when we near + the edges

    +
  • + +
  • +

    AutoFill#s.scroller

    +

    Data cache for the position of the DataTables scrolling element (when scrolling + is enabled)

    +
  • + +
+
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#dom.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#dom.html new file mode 100644 index 000000000..784556d5d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#dom.html @@ -0,0 +1,159 @@ + + + + + + + JsDoc Reference - AutoFill#dom + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace AutoFill#dom +

+ +

+ + + + + Common and useful DOM elements for the class instance + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ AutoFill#dom +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.border.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.border.html new file mode 100644 index 000000000..9a276477d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.border.html @@ -0,0 +1,159 @@ + + + + + + + JsDoc Reference - AutoFill#s.border + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace AutoFill#s.border +

+ +

+ + + + + Cached information about the border display + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ AutoFill#s.border +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.columns.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.columns.html new file mode 100644 index 000000000..d36f90363 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.columns.html @@ -0,0 +1,159 @@ + + + + + + + JsDoc Reference - AutoFill#s.columns + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace AutoFill#s.columns +

+ +

+ + + + + Information stored for each column. An array of objects + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ AutoFill#s.columns +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.drag.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.drag.html new file mode 100644 index 000000000..15dd0ba9b --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.drag.html @@ -0,0 +1,159 @@ + + + + + + + JsDoc Reference - AutoFill#s.drag + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace AutoFill#s.drag +

+ +

+ + + + + Store for live information for the current drag + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ AutoFill#s.drag +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.filler.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.filler.html new file mode 100644 index 000000000..28120d945 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.filler.html @@ -0,0 +1,159 @@ + + + + + + + JsDoc Reference - AutoFill#s.filler + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace AutoFill#s.filler +

+ +

+ + + + + Cached information about the little dragging icon (the filler) + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ AutoFill#s.filler +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.html new file mode 100644 index 000000000..92e3a0335 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.html @@ -0,0 +1,164 @@ + + + + + + + JsDoc Reference - AutoFill#s + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace AutoFill#s +

+ +

+ + + + + Settings object which contains customisable information for AutoFill instance + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ AutoFill#s +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.screen.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.screen.html new file mode 100644 index 000000000..697cc2a33 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.screen.html @@ -0,0 +1,160 @@ + + + + + + + JsDoc Reference - AutoFill#s.screen + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace AutoFill#s.screen +

+ +

+ + + + + Data cache for information that we need for scrolling the screen when we near + the edges + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ AutoFill#s.screen +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.scroller.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.scroller.html new file mode 100644 index 000000000..abd87e010 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill#s.scroller.html @@ -0,0 +1,160 @@ + + + + + + + JsDoc Reference - AutoFill#s.scroller + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:26 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace AutoFill#s.scroller +

+ +

+ + + + + Data cache for the position of the DataTables scrolling element (when scrolling + is enabled) + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ AutoFill#s.scroller +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill.html new file mode 100644 index 000000000..80704a7c3 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/AutoFill.html @@ -0,0 +1,1470 @@ + + + + + + + JsDoc Reference - AutoFill + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:25 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Class AutoFill +

+ +

+ + + + + AutoFill + + +
Defined in: AutoFill.js. + +

+ + +
+ + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ AutoFill(DataTables, Configuration) +
+
AutoFill provides Excel like auto fill features for a DataTable
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<constant>   +
+ CLASS +
+
Name of this class
+
<static> <constant>   +
+ AutoFill.VERSION +
+
AutoFill version
+
+
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<private>   + +
+
<private>   +
_fnColumnDefs(aoColumnDefs) +
+
+
<private>   +
_fnColumnOptions(i, opts) +
+
+
<private>   +
_fnColumnsAll(aoColumns) +
+
+
<private>   + +
Display the drag handle on mouse over cell
+
<private>   + +
Mouse move event handler for during a move.
+
<private>   + +
Mouse down event handler for starting a drag
+
<private>   + +
Mouse release handler - end the drag and take action to update the cells with the needed values
+
<private>   + +
Position the filler icon over a cell
+
<private>   +
_fnInit(oDT, oConfig) +
+
Initialisation
+
<private>   +
_fnPrep(sStr) +
+
Chunk a string such that it can be filled in by the stepper function
+
<private>   +
_fnReadCell(nTd) +
+
Read informaiton from a cell, possibly using live DOM elements if suitable
+
<private>   +
_fnStep(nTd, oPrepped, iDiff, bIncrement, sToken) +
+
Render a string for it's position in the table after the drag (incrememt numbers)
+
<private>   + +
Find out the coordinates of a given TD cell in a table
+
<private>   +
_fnUpdateBorder(nStart, nEnd) +
+
Display the border around one or more cells (from start to end)
+
<private>   +
_fnWriteCell(nTd, sVal, bLast) +
+
Write informaiton to a cell, possibly using live DOM elements if suitable
+
  + +
Retreieve the settings object from an instance
+
+
+ + + + + + + + + + +
+
+ + +
+ Class Detail +
+ +
+ AutoFill(DataTables, Configuration) +
+ +
+ AutoFill provides Excel like auto fill features for a DataTable + +
+ + + + +
+
Parameters:
+ +
+ {object} DataTables + +
+
settings object
+ +
+ {object} Configuration + +
+
object for AutoFill
+ +
+ + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <constant> + + + {String} + + CLASS +
+ +
+ Name of this class + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ AutoFill +
+ +
+ + +
+ + + +
+ + <static> <constant> + + + {String} + + AutoFill.VERSION +
+ +
+ AutoFill version + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ 1.1.1 +
+ +
+ + + + +
+
+ + + + +
+
+
+ Method Detail +
+ + + + +
+ + <private> + + + + + _fnAddColumn(i) +
+ +
+ + + + + +
+ + + + +
+
Parameters:
+ +
+ i + +
+
+ +
+ + + + +
+ + + +
+ + <private> + + + + + _fnColumnDefs(aoColumnDefs) +
+ +
+ + + + + +
+ + + + +
+
Parameters:
+ +
+ aoColumnDefs + +
+
+ +
+ + + + +
+ + + +
+ + <private> + + + + + _fnColumnOptions(i, opts) +
+ +
+ + + + + +
+ + + + +
+
Parameters:
+ +
+ i + +
+
+ +
+ opts + +
+
+ +
+ + + + +
+ + + +
+ + <private> + + + + + _fnColumnsAll(aoColumns) +
+ +
+ + + + + +
+ + + + +
+
Parameters:
+ +
+ aoColumns + +
+
+ +
+ + + + +
+ + + +
+ + <private> + + + + + _fnFillerDisplay(e) +
+ +
+ Display the drag handle on mouse over cell + + + + +
+ + + + +
+
Parameters:
+ +
+ {Object} e + +
+
Event object
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnFillerDragMove(e) +
+ +
+ Mouse move event handler for during a move. See if we want to update the display based on the +new cursor position + + + + +
+ + + + +
+
Parameters:
+ +
+ {Object} e + +
+
Event object
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnFillerDragStart(e) +
+ +
+ Mouse down event handler for starting a drag + + + + +
+ + + + +
+
Parameters:
+ +
+ {Object} e + +
+
Event object
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnFillerFinish(e) +
+ +
+ Mouse release handler - end the drag and take action to update the cells with the needed values + + + + +
+ + + + +
+
Parameters:
+ +
+ {Object} e + +
+
Event object
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnFillerPosition(nTd) +
+ +
+ Position the filler icon over a cell + + + + +
+ + + + +
+
Parameters:
+ +
+ {Node} nTd + +
+
Cell to position filler icon over
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnInit(oDT, oConfig) +
+ +
+ Initialisation + + + + +
+ + + + +
+
Parameters:
+ +
+ {object} oDT + +
+
DataTables settings object
+ +
+ {object} oConfig + +
+
Configuration object for AutoFill
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {Object} + + _fnPrep(sStr) +
+ +
+ Chunk a string such that it can be filled in by the stepper function + + + + +
+ + + + +
+
Parameters:
+ +
+ {String} sStr + +
+
String to prep
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
{Object} with parameters, iStart, sStr and sPostFix
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {String} + + _fnReadCell(nTd) +
+ +
+ Read informaiton from a cell, possibly using live DOM elements if suitable + + + + +
+ + + + +
+
Parameters:
+ +
+ {Node} nTd + +
+
Cell to read
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
{String} Read value
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {String} + + _fnStep(nTd, oPrepped, iDiff, bIncrement, sToken) +
+ +
+ Render a string for it's position in the table after the drag (incrememt numbers) + + + + +
+ + + + +
+
Parameters:
+ +
+ {Node} nTd + +
+
Cell being written to
+ +
+ {Object} oPrepped + +
+
Prepared object for the stepper (from _fnPrep)
+ +
+ {Int} iDiff + +
+
Step difference
+ +
+ {Boolean} bIncrement + +
+
Increment (true) or decriment (false)
+ +
+ {String} sToken + +
+
Token to replace
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
{String} Rendered information
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {Object} + + _fnTargetCoords(nTd) +
+ +
+ Find out the coordinates of a given TD cell in a table + + + + +
+ + + + +
+
Parameters:
+ +
+ {Node} nTd + +
+
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
{Object} x and y properties, for the position of the cell in the tables DOM
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnUpdateBorder(nStart, nEnd) +
+ +
+ Display the border around one or more cells (from start to end) + + + + +
+ + + + +
+
Parameters:
+ +
+ {Node} nStart + +
+
Starting cell
+ +
+ {Node} nEnd + +
+
Ending cell
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnWriteCell(nTd, sVal, bLast) +
+ +
+ Write informaiton to a cell, possibly using live DOM elements if suitable + + + + +
+ + + + +
+
Parameters:
+ +
+ {Node} nTd + +
+
Cell to write
+ +
+ {String} sVal + +
+
Value to write
+ +
+ {Boolean} bLast + +
+
Flag to show if this is that last update
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + + + + {object} + + fnSettings() +
+ +
+ Retreieve the settings object from an instance + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
{object} AutoFill settings object
+ + + + + + + +
+ + + + +
+
+ + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/_global_.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/_global_.html new file mode 100644 index 000000000..672a4fb16 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/_global_.html @@ -0,0 +1,109 @@ + + + + + + + JsDoc Reference - _global_ + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:25 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Built-In Namespace _global_ +

+ +

+ + + + + + + +

+ + + + + + + + + + + + + + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/src/js_AutoFill.js.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/src/js_AutoFill.js.html new file mode 100644 index 000000000..e294a5634 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/docs/symbols/src/js_AutoFill.js.html @@ -0,0 +1,821 @@ +
  1 /*
+  2  * File:        AutoFill.js
+  3  * Version:     1.1.1
+  4  * CVS:         $Id$
+  5  * Description: AutoFill for DataTables
+  6  * Author:      Allan Jardine (www.sprymedia.co.uk)
+  7  * Created:     Mon  6 Sep 2010 16:54:41 BST
+  8  * Modified:    $Date$ by $Author$
+  9  * Language:    Javascript
+ 10  * License:     GPL v2 or BSD 3 point
+ 11  * Project:     DataTables
+ 12  * Contact:     www.sprymedia.co.uk/contact
+ 13  * 
+ 14  * Copyright 2010 Allan Jardine, all rights reserved.
+ 15  *
+ 16  */
+ 17 
+ 18 /* Global scope for AutoFill */
+ 19 var AutoFill;
+ 20 
+ 21 (function($) {
+ 22 
+ 23 /** 
+ 24  * AutoFill provides Excel like auto fill features for a DataTable
+ 25  * @class AutoFill
+ 26  * @constructor
+ 27  * @param {object} DataTables settings object
+ 28  * @param {object} Configuration object for AutoFill
+ 29  */
+ 30 AutoFill = function( oDT, oConfig )
+ 31 {
+ 32 	/* Santiy check that we are a new instance */
+ 33 	if ( !this.CLASS || this.CLASS != "AutoFill" )
+ 34 	{
+ 35 		alert( "Warning: AutoFill must be initialised with the keyword 'new'" );
+ 36 		return;
+ 37 	}
+ 38 
+ 39 	if ( !$.fn.dataTableExt.fnVersionCheck('1.7.0') )
+ 40 	{
+ 41 		alert( "Warning: AutoFill requires DataTables 1.7 or greater - www.datatables.net/download");
+ 42 		return;
+ 43 	}
+ 44 	
+ 45 	
+ 46 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ 47 	 * Public class variables
+ 48 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+ 49 	
+ 50 	/**
+ 51 	 * @namespace Settings object which contains customisable information for AutoFill instance
+ 52 	 */
+ 53 	this.s = {
+ 54 		/**
+ 55 		 * @namespace Cached information about the little dragging icon (the filler)
+ 56 		 */
+ 57 		filler: {
+ 58 			height: 0,
+ 59 			width: 0
+ 60 		},
+ 61 		
+ 62 		/**
+ 63 		 * @namespace Cached information about the border display
+ 64 		 */
+ 65 		border: {
+ 66 			width: 2
+ 67 		},
+ 68 		
+ 69 		/**
+ 70 		 * @namespace Store for live information for the current drag
+ 71 		 */
+ 72 		drag: {
+ 73 			startX: -1,
+ 74 			startY: -1,
+ 75 			startTd: null,
+ 76 			endTd: null,
+ 77 			dragging: false
+ 78 		},
+ 79 		
+ 80 		/**
+ 81 		 * @namespace Data cache for information that we need for scrolling the screen when we near
+ 82 		 *   the edges
+ 83 		 */
+ 84 		screen: {
+ 85 			interval: null,
+ 86 			y: 0,
+ 87 			height: 0,
+ 88 			scrollTop: 0
+ 89 		},
+ 90 		
+ 91 		/**
+ 92 		 * @namespace Data cache for the position of the DataTables scrolling element (when scrolling
+ 93 		 *   is enabled)
+ 94 		 */
+ 95 		scroller: {
+ 96 			top: 0,
+ 97 			bottom: 0
+ 98 		},
+ 99 		
+100 		
+101 		/**
+102 		 * @namespace Information stored for each column. An array of objects
+103 		 */
+104 		columns: []
+105 	};
+106 	
+107 	
+108 	/**
+109 	 * @namespace Common and useful DOM elements for the class instance
+110 	 */
+111 	this.dom = {
+112 		table: null,
+113 		filler: null,
+114 		borderTop: null,
+115 		borderRight: null,
+116 		borderBottom: null,
+117 		borderLeft: null,
+118 		currentTarget: null
+119 	};
+120 	
+121 	
+122 	
+123 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+124 	 * Public class methods
+125 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+126 	
+127 	/**
+128 	 * Retreieve the settings object from an instance
+129 	 *  @method fnSettings
+130 	 *  @returns {object} AutoFill settings object
+131 	 */
+132 	this.fnSettings = function () {
+133 		return this.s;
+134 	};
+135 	
+136 	
+137 	/* Constructor logic */
+138 	this._fnInit( oDT, oConfig );
+139 	return this;
+140 };
+141 
+142 
+143 
+144 AutoFill.prototype = {
+145 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+146 	 * Private methods (they are of course public in JS, but recommended as private)
+147 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+148 	
+149 	/**
+150 	 * Initialisation
+151 	 *  @method _fnInit
+152  	 *  @param {object} oDT DataTables settings object
+153  	 *  @param {object} oConfig Configuration object for AutoFill
+154 	 *  @returns void
+155 	 */
+156 	_fnInit: function ( oDT, oConfig )
+157 	{
+158 		var
+159 			that = this,
+160 			i, iLen;
+161 		
+162 		/*
+163 		 * Settings
+164 		 */
+165 		this.s.dt = oDT.fnSettings();
+166 		
+167 		this.dom.table = this.s.dt.nTable;
+168 		
+169 		/* Add and configure the columns */
+170 		for ( i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+171 		{
+172 			this._fnAddColumn( i );
+173 		}
+174 		
+175 		if ( typeof oConfig != 'undefined' && typeof oConfig.aoColumnDefs != 'undefined' )
+176 		{
+177 			this._fnColumnDefs( oConfig.aoColumnDefs );
+178 		}
+179 		
+180 		if ( typeof oConfig != 'undefined' && typeof oConfig.aoColumns != 'undefined' )
+181 		{
+182 			this._fnColumnsAll( oConfig.aoColumns );
+183 		}
+184 		
+185 		
+186 		/*
+187 		 * DOM
+188 		 */
+189 		
+190 		/* Auto Fill click and drag icon */
+191 		var filler = document.createElement('div');
+192 		filler.className = "AutoFill_filler";
+193 		document.body.appendChild( filler );
+194 		this.dom.filler = filler;
+195 		
+196 		filler.style.display = "block";
+197 		this.s.filler.height = $(filler).height();
+198 		this.s.filler.width = $(filler).width();
+199 		filler.style.display = "none";
+200 		
+201 		/* Border display - one div for each side. We can't just use a single one with a border, as
+202 		 * we want the events to effectively pass through the transparent bit of the box
+203 		 */
+204 		var border;
+205 		var appender = document.body;
+206 		if ( that.s.dt.oScroll.sY !== "" )
+207 		{
+208 			that.s.dt.nTable.parentNode.style.position = "relative";
+209 			appender = that.s.dt.nTable.parentNode;
+210 		}
+211 		
+212 		border = document.createElement('div');
+213 		border.className = "AutoFill_border";
+214 		appender.appendChild( border );
+215 		this.dom.borderTop = border;
+216 		
+217 		border = document.createElement('div');
+218 		border.className = "AutoFill_border";
+219 		appender.appendChild( border );
+220 		this.dom.borderRight = border;
+221 		
+222 		border = document.createElement('div');
+223 		border.className = "AutoFill_border";
+224 		appender.appendChild( border );
+225 		this.dom.borderBottom = border;
+226 		
+227 		border = document.createElement('div');
+228 		border.className = "AutoFill_border";
+229 		appender.appendChild( border );
+230 		this.dom.borderLeft = border;
+231 		
+232 		/*
+233 		 * Events
+234 		 */
+235 		
+236 		$(filler).mousedown( function (e) {
+237 			this.onselectstart = function() { return false; };
+238 			that._fnFillerDragStart.call( that, e );
+239 			return false;
+240 		} );
+241 		
+242 		$('tbody>tr>td', this.dom.table).live( 'mouseover mouseout', function (e) {
+243 			that._fnFillerDisplay.call( that, e );
+244 		} );
+245 	},
+246 	
+247 	
+248 	_fnColumnDefs: function ( aoColumnDefs )
+249 	{
+250 		var
+251 			i, j, k, iLen, jLen, kLen,
+252 			aTargets;
+253 		
+254 		/* Loop over the column defs array - loop in reverse so first instace has priority */
+255 		for ( i=aoColumnDefs.length-1 ; i>=0 ; i-- )
+256 		{
+257 			/* Each column def can target multiple columns, as it is an array */
+258 			aTargets = aoColumnDefs[i].aTargets;
+259 			for ( j=0, jLen=aTargets.length ; j<jLen ; j++ )
+260 			{
+261 				if ( typeof aTargets[j] == 'number' && aTargets[j] >= 0 )
+262 				{
+263 					/* 0+ integer, left to right column counting. */
+264 					this._fnColumnOptions( aTargets[j], aoColumnDefs[i] );
+265 				}
+266 				else if ( typeof aTargets[j] == 'number' && aTargets[j] < 0 )
+267 				{
+268 					/* Negative integer, right to left column counting */
+269 					this._fnColumnOptions( this.s.dt.aoColumns.length+aTargets[j], aoColumnDefs[i] );
+270 				}
+271 				else if ( typeof aTargets[j] == 'string' )
+272 				{
+273 					/* Class name matching on TH element */
+274 					for ( k=0, kLen=this.s.dt.aoColumns.length ; k<kLen ; k++ )
+275 					{
+276 						if ( aTargets[j] == "_all" ||
+277 						     this.s.dt.aoColumns[k].nTh.className.indexOf( aTargets[j] ) != -1 )
+278 						{
+279 							this._fnColumnOptions( k, aoColumnDefs[i] );
+280 						}
+281 					}
+282 				}
+283 			}
+284 		}
+285 	},
+286 		
+287 		
+288 	_fnColumnsAll: function ( aoColumns )
+289 	{
+290 		for ( var i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+291 		{
+292 			this._fnColumnOptions( i, aoColumns[i] );
+293 		}
+294 	},
+295 	
+296 	
+297 	_fnAddColumn: function ( i )
+298 	{
+299 		this.s.columns[i] = {
+300 			enable: true,
+301 			read: this._fnReadCell,
+302 			write: this._fnWriteCell,
+303 			step: this._fnStep,
+304 			complete: null
+305 		};
+306 	},
+307 	
+308 	_fnColumnOptions: function ( i, opts )
+309 	{
+310 		if ( typeof opts.bEnable != 'undefined' )
+311 		{
+312 			this.s.columns[i].enable = opts.bEnable;
+313 		}
+314 		
+315 		if ( typeof opts.fnRead != 'undefined' )
+316 		{
+317 			this.s.columns[i].read = opts.fnRead;
+318 		}
+319 		
+320 		if ( typeof opts.fnWrite != 'undefined' )
+321 		{
+322 			this.s.columns[i].write = opts.fnWrite;
+323 		}
+324 		
+325 		if ( typeof opts.fnStep != 'undefined' )
+326 		{
+327 			this.s.columns[i].step = opts.fnStep;
+328 		}
+329 		
+330 		if ( typeof opts.fnCallback != 'undefined' )
+331 		{
+332 			this.s.columns[i].complete = opts.fnCallback;
+333 		}
+334 	},
+335 	
+336 	
+337 	/**
+338 	 * Find out the coordinates of a given TD cell in a table
+339 	 *  @method  _fnTargetCoords
+340 	 *  @param   {Node} nTd
+341 	 *  @returns {Object} x and y properties, for the position of the cell in the tables DOM
+342 	 */
+343 	_fnTargetCoords: function ( nTd )
+344 	{
+345 		var nTr = nTd.parentNode;
+346 		
+347 		return {
+348 			x: $('td', nTr).index(nTd),
+349 			y: $('tr', nTr.parentNode).index(nTr)
+350 		};
+351 	},
+352 	
+353 	
+354 	/**
+355 	 * Display the border around one or more cells (from start to end)
+356 	 *  @method  _fnUpdateBorder
+357 	 *  @param   {Node} nStart Starting cell
+358 	 *  @param   {Node} nEnd Ending cell
+359 	 *  @returns void
+360 	 */
+361 	_fnUpdateBorder: function ( nStart, nEnd )
+362 	{
+363 		var
+364 			border = this.s.border.width,
+365 			offsetStart = $(nStart).offset(),
+366 			offsetEnd = $(nEnd).offset(),
+367 			x1 = offsetStart.left - border,
+368 			x2 = offsetEnd.left + $(nEnd).outerWidth(),
+369 			y1 = offsetStart.top - border,
+370 			y2 = offsetEnd.top + $(nEnd).outerHeight(),
+371 			width = offsetEnd.left + $(nEnd).outerWidth() - offsetStart.left + (2*border),
+372 			height = offsetEnd.top + $(nEnd).outerHeight() - offsetStart.top + (2*border),
+373 			oStyle;
+374 		
+375 		if ( this.s.dt.oScroll.sY !== "" )
+376 		{
+377 			/* The border elements are inside the DT scroller - so position relative to that */
+378 			var
+379 				offsetScroll = $(this.s.dt.nTable.parentNode).offset(),
+380 				scrollTop = $(this.s.dt.nTable.parentNode).scrollTop(),
+381 				scrollLeft = $(this.s.dt.nTable.parentNode).scrollLeft();
+382 			
+383 			x1 -= offsetScroll.left - scrollLeft;
+384 			x2 -= offsetScroll.left - scrollLeft;
+385 			y1 -= offsetScroll.top - scrollTop;
+386 			y2 -= offsetScroll.top - scrollTop;
+387 		}
+388 		
+389 		/* Top */
+390 		oStyle = this.dom.borderTop.style;
+391 		oStyle.top = y1+"px";
+392 		oStyle.left = x1+"px";
+393 		oStyle.height = this.s.border.width+"px";
+394 		oStyle.width = width+"px";
+395 		
+396 		/* Bottom */
+397 		oStyle = this.dom.borderBottom.style;
+398 		oStyle.top = y2+"px";
+399 		oStyle.left = x1+"px";
+400 		oStyle.height = this.s.border.width+"px";
+401 		oStyle.width = width+"px";
+402 		
+403 		/* Left */
+404 		oStyle = this.dom.borderLeft.style;
+405 		oStyle.top = y1+"px";
+406 		oStyle.left = x1+"px";
+407 		oStyle.height = height+"px";
+408 		oStyle.width = this.s.border.width+"px";
+409 		
+410 		/* Right */
+411 		oStyle = this.dom.borderRight.style;
+412 		oStyle.top = y1+"px";
+413 		oStyle.left = x2+"px";
+414 		oStyle.height = height+"px";
+415 		oStyle.width = this.s.border.width+"px";
+416 	},
+417 	
+418 	
+419 	/**
+420 	 * Mouse down event handler for starting a drag
+421 	 *  @method  _fnFillerDragStart
+422 	 *  @param   {Object} e Event object
+423 	 *  @returns void
+424 	 */
+425 	_fnFillerDragStart: function (e)
+426 	{
+427 		var that = this;
+428 		var startingTd = this.dom.currentTarget;
+429 		
+430 		this.s.drag.dragging = true;
+431 		
+432 		that.dom.borderTop.style.display = "block";
+433 		that.dom.borderRight.style.display = "block";
+434 		that.dom.borderBottom.style.display = "block";
+435 		that.dom.borderLeft.style.display = "block";
+436 		
+437 		var coords = this._fnTargetCoords( startingTd );
+438 		this.s.drag.startX = coords.x;
+439 		this.s.drag.startY = coords.y;
+440 		
+441 		this.s.drag.startTd = startingTd;
+442 		this.s.drag.endTd = startingTd;
+443 		
+444 		this._fnUpdateBorder( startingTd, startingTd );
+445 		
+446 		$(document).bind('mousemove.AutoFill', function (e) {
+447 			that._fnFillerDragMove.call( that, e );
+448 		} );
+449 		
+450 		$(document).bind('mouseup.AutoFill', function (e) {
+451 			that._fnFillerFinish.call( that, e );
+452 		} );
+453 		
+454 		/* Scrolling information cache */
+455 		this.s.screen.y = e.pageY;
+456 		this.s.screen.height = $(window).height();
+457 		this.s.screen.scrollTop = $(document).scrollTop();
+458 		
+459 		if ( this.s.dt.oScroll.sY !== "" )
+460 		{
+461 			this.s.scroller.top = $(this.s.dt.nTable.parentNode).offset().top;
+462 			this.s.scroller.bottom = this.s.scroller.top + $(this.s.dt.nTable.parentNode).height();
+463 		}
+464 		
+465 		/* Scrolling handler - we set an interval (which is cancelled on mouse up) which will fire
+466 		 * regularly and see if we need to do any scrolling
+467 		 */
+468 		this.s.screen.interval = setInterval( function () {
+469 			var iScrollTop = $(document).scrollTop();
+470 			var iScrollDelta = iScrollTop - that.s.screen.scrollTop;
+471 			that.s.screen.y += iScrollDelta;
+472 			
+473 			if ( that.s.screen.height - that.s.screen.y + iScrollTop < 50 )
+474 			{
+475 				$('html, body').animate( {
+476 					scrollTop: iScrollTop + 50
+477 				}, 240, 'linear' );
+478 			}
+479 			else if ( that.s.screen.y - iScrollTop < 50 )
+480 			{
+481 				$('html, body').animate( {
+482 					scrollTop: iScrollTop - 50
+483 				}, 240, 'linear' );
+484 			}
+485 			
+486 			if ( that.s.dt.oScroll.sY !== "" )
+487 			{
+488 				if ( that.s.screen.y > that.s.scroller.bottom - 50 )
+489 				{
+490 					$(that.s.dt.nTable.parentNode).animate( {
+491 						scrollTop: $(that.s.dt.nTable.parentNode).scrollTop() + 50
+492 					}, 240, 'linear' );
+493 				}
+494 				else if ( that.s.screen.y < that.s.scroller.top + 50 )
+495 				{
+496 					$(that.s.dt.nTable.parentNode).animate( {
+497 						scrollTop: $(that.s.dt.nTable.parentNode).scrollTop() - 50
+498 					}, 240, 'linear' );
+499 				}
+500 			}
+501 		}, 250 );
+502 	},
+503 	
+504 	
+505 	/**
+506 	 * Mouse move event handler for during a move. See if we want to update the display based on the
+507 	 * new cursor position
+508 	 *  @method  _fnFillerDragMove
+509 	 *  @param   {Object} e Event object
+510 	 *  @returns void
+511 	 */
+512 	_fnFillerDragMove: function (e)
+513 	{
+514 		if ( e.target && e.target.nodeName.toUpperCase() == "TD" &&
+515 		 	e.target != this.s.drag.endTd )
+516 		{
+517 			var coords = this._fnTargetCoords( e.target );
+518 			
+519 			if ( coords.x != this.s.drag.startX )
+520 			{
+521 				e.target = $('tbody>tr:eq('+coords.y+')>td:eq('+this.s.drag.startX+')', this.dom.table)[0];
+522 			 	coords = this._fnTargetCoords( e.target );
+523 			}
+524 			
+525 			if ( coords.x == this.s.drag.startX )
+526 			{
+527 				var drag = this.s.drag;
+528 				drag.endTd = e.target;
+529 				
+530 				if ( coords.y >= this.s.drag.startY )
+531 				{
+532 					this._fnUpdateBorder( drag.startTd, drag.endTd );
+533 				}
+534 				else
+535 				{
+536 					this._fnUpdateBorder( drag.endTd, drag.startTd );
+537 				}
+538 				this._fnFillerPosition( e.target );
+539 			}
+540 		}
+541 		
+542 		/* Update the screen information so we can perform scrolling */
+543 		this.s.screen.y = e.pageY;
+544 		this.s.screen.scrollTop = $(document).scrollTop();
+545 		
+546 		if ( this.s.dt.oScroll.sY !== "" )
+547 		{
+548 			this.s.scroller.scrollTop = $(this.s.dt.nTable.parentNode).scrollTop();
+549 			this.s.scroller.top = $(this.s.dt.nTable.parentNode).offset().top;
+550 			this.s.scroller.bottom = this.s.scroller.top + $(this.s.dt.nTable.parentNode).height();
+551 		}
+552 	},
+553 	
+554 	
+555 	/**
+556 	 * Mouse release handler - end the drag and take action to update the cells with the needed values
+557 	 *  @method  _fnFillerFinish
+558 	 *  @param   {Object} e Event object
+559 	 *  @returns void
+560 	 */
+561 	_fnFillerFinish: function (e)
+562 	{
+563 		var that = this;
+564 		
+565 		$(document).unbind('mousemove.AutoFill');
+566 		$(document).unbind('mouseup.AutoFill');
+567 		
+568 		this.dom.borderTop.style.display = "none";
+569 		this.dom.borderRight.style.display = "none";
+570 		this.dom.borderBottom.style.display = "none";
+571 		this.dom.borderLeft.style.display = "none";
+572 		
+573 		this.s.drag.dragging = false;
+574 		
+575 		clearInterval( this.s.screen.interval );
+576 		
+577 		var coordsStart = this._fnTargetCoords( this.s.drag.startTd );
+578 		var coordsEnd = this._fnTargetCoords( this.s.drag.endTd );
+579 		var aTds = [];
+580 		var bIncrement;
+581 		
+582 		if ( coordsStart.y <= coordsEnd.y )
+583 		{
+584 			bIncrement = true;
+585 			for ( i=coordsStart.y ; i<=coordsEnd.y ; i++ )
+586 			{
+587 				aTds.push( $('tbody>tr:eq('+i+')>td:eq('+coordsStart.x+')', this.dom.table)[0] );
+588 			}
+589 		}
+590 		else
+591 		{
+592 			bIncrement = false;
+593 			for ( i=coordsStart.y ; i>=coordsEnd.y ; i-- )
+594 			{
+595 				aTds.push( $('tbody>tr:eq('+i+')>td:eq('+coordsStart.x+')', this.dom.table)[0] );
+596 			}
+597 		}
+598 		
+599 		
+600 		var iColumn = coordsStart.x;
+601 		var bLast = false;
+602 		var aoEdited = [];
+603 		var sStart = this.s.columns[iColumn].read.call( this, this.s.drag.startTd );
+604 		var oPrepped = this._fnPrep( sStart );
+605 		
+606 		for ( i=0, iLen=aTds.length ; i<iLen ; i++ )
+607 		{
+608 			if ( i==iLen-1 )
+609 			{
+610 				bLast = true;
+611 			}
+612 			
+613 			var original = this.s.columns[iColumn].read.call( this, aTds[i] );
+614 			var step = this.s.columns[iColumn].step.call( this, aTds[i], oPrepped, i, bIncrement, 
+615 				'SPRYMEDIA_AUTOFILL_STEPPER' );
+616 			this.s.columns[iColumn].write.call( this, aTds[i], step, bLast );
+617 			
+618 			aoEdited.push( {
+619 				td: aTds[i],
+620 				newValue: step,
+621 				oldValue: original
+622 			} );
+623 		}
+624 		
+625 		if ( this.s.columns[iColumn].complete !== null )
+626 		{
+627 			this.s.columns[iColumn].complete.call( this, aoEdited );
+628 		}
+629 	},
+630 	
+631 	
+632 	/**
+633 	 * Chunk a string such that it can be filled in by the stepper function
+634 	 *  @method  _fnPrep
+635 	 *  @param   {String} sStr String to prep
+636 	 *  @returns {Object} with parameters, iStart, sStr and sPostFix
+637 	 */
+638 	_fnPrep: function ( sStr )
+639 	{
+640 		var aMatch = sStr.match(/[\d\.]+/g);
+641 		if ( !aMatch || aMatch.length === 0 )
+642 		{
+643 			return {
+644 				iStart: 0,
+645 				sStr: sStr,
+646 				sPostFix: ""
+647 			};
+648 		}
+649 		
+650 		var sLast = aMatch[ aMatch.length-1 ];
+651 		var num = parseInt(sLast, 10);
+652 		var regex = new RegExp( '^(.*)'+sLast+'(.*?)$' );
+653 		var decimal = sLast.match(/\./) ? "."+sLast.split('.')[1] : "";
+654 		
+655 		return {
+656 			iStart: num,
+657 			sStr: sStr.replace(regex, "$1SPRYMEDIA_AUTOFILL_STEPPER$2"),
+658 			sPostFix: decimal
+659 		};
+660 	},
+661 	
+662 	
+663 	/**
+664 	 * Render a string for it's position in the table after the drag (incrememt numbers)
+665 	 *  @method  _fnStep
+666 	 *  @param   {Node} nTd Cell being written to
+667 	 *  @param   {Object} oPrepped Prepared object for the stepper (from _fnPrep)
+668 	 *  @param   {Int} iDiff Step difference
+669 	 *  @param   {Boolean} bIncrement Increment (true) or decriment (false)
+670 	 *  @param   {String} sToken Token to replace
+671 	 *  @returns {String} Rendered information
+672 	 */
+673 	_fnStep: function ( nTd, oPrepped, iDiff, bIncrement, sToken )
+674 	{
+675 		var iReplace = bIncrement ? (oPrepped.iStart+iDiff) : (oPrepped.iStart-iDiff);
+676 		if ( isNaN(iReplace) )
+677 		{
+678 			iReplace = "";
+679 		}
+680 		return oPrepped.sStr.replace( sToken, iReplace+oPrepped.sPostFix );
+681 	},
+682 	
+683 	
+684 	/**
+685 	 * Read informaiton from a cell, possibly using live DOM elements if suitable
+686 	 *  @method  _fnReadCell
+687 	 *  @param   {Node} nTd Cell to read
+688 	 *  @returns {String} Read value
+689 	 */
+690 	_fnReadCell: function ( nTd )
+691 	{
+692 		var jq = $('input', nTd);
+693 		if ( jq.length > 0 )
+694 		{
+695 			return $(jq).val();
+696 		}
+697 		
+698 		jq = $('select', nTd);
+699 		if ( jq.length > 0 )
+700 		{
+701 			return $(jq).val();
+702 		}
+703 		
+704 		return nTd.innerHTML;
+705 	},
+706 	
+707 	
+708 	/**
+709 	 * Write informaiton to a cell, possibly using live DOM elements if suitable
+710 	 *  @method  _fnWriteCell
+711 	 *  @param   {Node} nTd Cell to write
+712 	 *  @param   {String} sVal Value to write
+713 	 *  @param   {Boolean} bLast Flag to show if this is that last update
+714 	 *  @returns void
+715 	 */
+716 	_fnWriteCell: function ( nTd, sVal, bLast )
+717 	{
+718 		var jq = $('input', nTd);
+719 		if ( jq.length > 0 )
+720 		{
+721 			$(jq).val( sVal );
+722 			return;
+723 		}
+724 		
+725 		jq = $('select', nTd);
+726 		if ( jq.length > 0 )
+727 		{
+728 			$(jq).val( sVal );
+729 			return;
+730 		}
+731 		
+732 		var pos = this.s.dt.oInstance.fnGetPosition( nTd );
+733 		this.s.dt.oInstance.fnUpdate( sVal, pos[0], pos[2], bLast );
+734 	},
+735 	
+736 	
+737 	/**
+738 	 * Display the drag handle on mouse over cell
+739 	 *  @method  _fnFillerDisplay
+740 	 *  @param   {Object} e Event object
+741 	 *  @returns void
+742 	 */
+743 	_fnFillerDisplay: function (e)
+744 	{
+745 		/* Don't display automatically when dragging */
+746 		if ( this.s.drag.dragging)
+747 		{
+748 			return;
+749 		}
+750 		
+751 		/* Check that we are allowed to AutoFill this column or not */
+752 		var iX = this._fnTargetCoords(e.target).x;
+753 		if ( !this.s.columns[iX].enable )
+754 		{
+755 			return;
+756 		}
+757 		
+758 		var filler = this.dom.filler;
+759 		if (e.type == 'mouseover')
+760 		{
+761 			this.dom.currentTarget = e.target;
+762 			this._fnFillerPosition( e.target );
+763 			
+764 			filler.style.display = "block";
+765 		}
+766 		else if ( !e.relatedTarget || !e.relatedTarget.className.match(/AutoFill/) )
+767 		{
+768 			filler.style.display = "none";
+769 		}
+770 	},
+771 	
+772 	
+773 	/**
+774 	 * Position the filler icon over a cell
+775 	 *  @method  _fnFillerPosition
+776 	 *  @param   {Node} nTd Cell to position filler icon over
+777 	 *  @returns void
+778 	 */
+779 	_fnFillerPosition: function ( nTd )
+780 	{
+781 		var offset = $(nTd).offset();
+782 		var filler = this.dom.filler;
+783 		filler.style.top = (offset.top - (this.s.filler.height / 2)-1 + $(nTd).outerHeight())+"px";
+784 		filler.style.left = (offset.left - (this.s.filler.width / 2)-1 + $(nTd).outerWidth())+"px";
+785 	}
+786 };
+787 
+788 
+789 
+790 
+791 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+792  * Constants
+793  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+794 
+795 /**
+796  * Name of this class
+797  *  @constant CLASS
+798  *  @type     String
+799  *  @default  AutoFill
+800  */
+801 AutoFill.prototype.CLASS = "AutoFill";
+802 
+803 
+804 /**
+805  * AutoFill version
+806  *  @constant  VERSION
+807  *  @type      String
+808  *  @default   1.1.1
+809  */
+810 AutoFill.VERSION = "1.1.1";
+811 AutoFill.prototype.VERSION = "1.1.1";
+812 
+813 
+814 })(jQuery);
\ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/images/filler.png b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/images/filler.png new file mode 100644 index 000000000..f2af65d8c Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/images/filler.png differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.js new file mode 100644 index 000000000..cd012f6be --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.js @@ -0,0 +1,814 @@ +/* + * File: AutoFill.js + * Version: 1.1.1 + * CVS: $Id$ + * Description: AutoFill for DataTables + * Author: Allan Jardine (www.sprymedia.co.uk) + * Created: Mon 6 Sep 2010 16:54:41 BST + * Modified: $Date$ by $Author$ + * Language: Javascript + * License: GPL v2 or BSD 3 point + * Project: DataTables + * Contact: www.sprymedia.co.uk/contact + * + * Copyright 2010 Allan Jardine, all rights reserved. + * + */ + +/* Global scope for AutoFill */ +var AutoFill; + +(function($) { + +/** + * AutoFill provides Excel like auto fill features for a DataTable + * @class AutoFill + * @constructor + * @param {object} DataTables settings object + * @param {object} Configuration object for AutoFill + */ +AutoFill = function( oDT, oConfig ) +{ + /* Santiy check that we are a new instance */ + if ( !this.CLASS || this.CLASS != "AutoFill" ) + { + alert( "Warning: AutoFill must be initialised with the keyword 'new'" ); + return; + } + + if ( !$.fn.dataTableExt.fnVersionCheck('1.7.0') ) + { + alert( "Warning: AutoFill requires DataTables 1.7 or greater - www.datatables.net/download"); + return; + } + + + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Public class variables + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + + /** + * @namespace Settings object which contains customisable information for AutoFill instance + */ + this.s = { + /** + * @namespace Cached information about the little dragging icon (the filler) + */ + "filler": { + "height": 0, + "width": 0 + }, + + /** + * @namespace Cached information about the border display + */ + "border": { + "width": 2 + }, + + /** + * @namespace Store for live information for the current drag + */ + "drag": { + "startX": -1, + "startY": -1, + "startTd": null, + "endTd": null, + "dragging": false + }, + + /** + * @namespace Data cache for information that we need for scrolling the screen when we near + * the edges + */ + "screen": { + "interval": null, + "y": 0, + "height": 0, + "scrollTop": 0 + }, + + /** + * @namespace Data cache for the position of the DataTables scrolling element (when scrolling + * is enabled) + */ + "scroller": { + "top": 0, + "bottom": 0 + }, + + + /** + * @namespace Information stored for each column. An array of objects + */ + "columns": [] + }; + + + /** + * @namespace Common and useful DOM elements for the class instance + */ + this.dom = { + "table": null, + "filler": null, + "borderTop": null, + "borderRight": null, + "borderBottom": null, + "borderLeft": null, + "currentTarget": null + }; + + + + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Public class methods + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + + /** + * Retreieve the settings object from an instance + * @method fnSettings + * @returns {object} AutoFill settings object + */ + this.fnSettings = function () { + return this.s; + }; + + + /* Constructor logic */ + this._fnInit( oDT, oConfig ); + return this; +}; + + + +AutoFill.prototype = { + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Private methods (they are of course public in JS, but recommended as private) + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + + /** + * Initialisation + * @method _fnInit + * @param {object} oDT DataTables settings object + * @param {object} oConfig Configuration object for AutoFill + * @returns void + */ + "_fnInit": function ( oDT, oConfig ) + { + var + that = this, + i, iLen; + + /* + * Settings + */ + this.s.dt = oDT.fnSettings(); + + this.dom.table = this.s.dt.nTable; + + /* Add and configure the columns */ + for ( i=0, iLen=this.s.dt.aoColumns.length ; itr>td', this.dom.table).live( 'mouseover mouseout', function (e) { + that._fnFillerDisplay.call( that, e ); + } ); + }, + + + "_fnColumnDefs": function ( aoColumnDefs ) + { + var + i, j, k, iLen, jLen, kLen, + aTargets; + + /* Loop over the column defs array - loop in reverse so first instace has priority */ + for ( i=aoColumnDefs.length-1 ; i>=0 ; i-- ) + { + /* Each column def can target multiple columns, as it is an array */ + aTargets = aoColumnDefs[i].aTargets; + for ( j=0, jLen=aTargets.length ; j= 0 ) + { + /* 0+ integer, left to right column counting. */ + this._fnColumnOptions( aTargets[j], aoColumnDefs[i] ); + } + else if ( typeof aTargets[j] == 'number' && aTargets[j] < 0 ) + { + /* Negative integer, right to left column counting */ + this._fnColumnOptions( this.s.dt.aoColumns.length+aTargets[j], aoColumnDefs[i] ); + } + else if ( typeof aTargets[j] == 'string' ) + { + /* Class name matching on TH element */ + for ( k=0, kLen=this.s.dt.aoColumns.length ; k that.s.scroller.bottom - 50 ) + { + $(that.s.dt.nTable.parentNode).animate( { + "scrollTop": $(that.s.dt.nTable.parentNode).scrollTop() + 50 + }, 240, 'linear' ); + } + else if ( that.s.screen.y < that.s.scroller.top + 50 ) + { + $(that.s.dt.nTable.parentNode).animate( { + "scrollTop": $(that.s.dt.nTable.parentNode).scrollTop() - 50 + }, 240, 'linear' ); + } + } + }, 250 ); + }, + + + /** + * Mouse move event handler for during a move. See if we want to update the display based on the + * new cursor position + * @method _fnFillerDragMove + * @param {Object} e Event object + * @returns void + */ + "_fnFillerDragMove": function (e) + { + if ( e.target && e.target.nodeName.toUpperCase() == "TD" && + e.target != this.s.drag.endTd ) + { + var coords = this._fnTargetCoords( e.target ); + + if ( coords.x != this.s.drag.startX ) + { + e.target = $('tbody>tr:eq('+coords.y+')>td:eq('+this.s.drag.startX+')', this.dom.table)[0]; + coords = this._fnTargetCoords( e.target ); + } + + if ( coords.x == this.s.drag.startX ) + { + var drag = this.s.drag; + drag.endTd = e.target; + + if ( coords.y >= this.s.drag.startY ) + { + this._fnUpdateBorder( drag.startTd, drag.endTd ); + } + else + { + this._fnUpdateBorder( drag.endTd, drag.startTd ); + } + this._fnFillerPosition( e.target ); + } + } + + /* Update the screen information so we can perform scrolling */ + this.s.screen.y = e.pageY; + this.s.screen.scrollTop = $(document).scrollTop(); + + if ( this.s.dt.oScroll.sY !== "" ) + { + this.s.scroller.scrollTop = $(this.s.dt.nTable.parentNode).scrollTop(); + this.s.scroller.top = $(this.s.dt.nTable.parentNode).offset().top; + this.s.scroller.bottom = this.s.scroller.top + $(this.s.dt.nTable.parentNode).height(); + } + }, + + + /** + * Mouse release handler - end the drag and take action to update the cells with the needed values + * @method _fnFillerFinish + * @param {Object} e Event object + * @returns void + */ + "_fnFillerFinish": function (e) + { + var that = this; + + $(document).unbind('mousemove.AutoFill'); + $(document).unbind('mouseup.AutoFill'); + + this.dom.borderTop.style.display = "none"; + this.dom.borderRight.style.display = "none"; + this.dom.borderBottom.style.display = "none"; + this.dom.borderLeft.style.display = "none"; + + this.s.drag.dragging = false; + + clearInterval( this.s.screen.interval ); + + var coordsStart = this._fnTargetCoords( this.s.drag.startTd ); + var coordsEnd = this._fnTargetCoords( this.s.drag.endTd ); + var aTds = []; + var bIncrement; + + if ( coordsStart.y <= coordsEnd.y ) + { + bIncrement = true; + for ( i=coordsStart.y ; i<=coordsEnd.y ; i++ ) + { + aTds.push( $('tbody>tr:eq('+i+')>td:eq('+coordsStart.x+')', this.dom.table)[0] ); + } + } + else + { + bIncrement = false; + for ( i=coordsStart.y ; i>=coordsEnd.y ; i-- ) + { + aTds.push( $('tbody>tr:eq('+i+')>td:eq('+coordsStart.x+')', this.dom.table)[0] ); + } + } + + + var iColumn = coordsStart.x; + var bLast = false; + var aoEdited = []; + var sStart = this.s.columns[iColumn].read.call( this, this.s.drag.startTd ); + var oPrepped = this._fnPrep( sStart ); + + for ( i=0, iLen=aTds.length ; i 0 ) + { + return $(jq).val(); + } + + jq = $('select', nTd); + if ( jq.length > 0 ) + { + return $(jq).val(); + } + + return nTd.innerHTML; + }, + + + /** + * Write informaiton to a cell, possibly using live DOM elements if suitable + * @method _fnWriteCell + * @param {Node} nTd Cell to write + * @param {String} sVal Value to write + * @param {Boolean} bLast Flag to show if this is that last update + * @returns void + */ + "_fnWriteCell": function ( nTd, sVal, bLast ) + { + var jq = $('input', nTd); + if ( jq.length > 0 ) + { + $(jq).val( sVal ); + return; + } + + jq = $('select', nTd); + if ( jq.length > 0 ) + { + $(jq).val( sVal ); + return; + } + + var pos = this.s.dt.oInstance.fnGetPosition( nTd ); + this.s.dt.oInstance.fnUpdate( sVal, pos[0], pos[2], bLast ); + }, + + + /** + * Display the drag handle on mouse over cell + * @method _fnFillerDisplay + * @param {Object} e Event object + * @returns void + */ + "_fnFillerDisplay": function (e) + { + /* Don't display automatically when dragging */ + if ( this.s.drag.dragging) + { + return; + } + + /* Check that we are allowed to AutoFill this column or not */ + var iX = this._fnTargetCoords(e.target).x; + if ( !this.s.columns[iX].enable ) + { + return; + } + + var filler = this.dom.filler; + if (e.type == 'mouseover') + { + this.dom.currentTarget = e.target; + this._fnFillerPosition( e.target ); + + filler.style.display = "block"; + } + else if ( !e.relatedTarget || !e.relatedTarget.className.match(/AutoFill/) ) + { + filler.style.display = "none"; + } + }, + + + /** + * Position the filler icon over a cell + * @method _fnFillerPosition + * @param {Node} nTd Cell to position filler icon over + * @returns void + */ + "_fnFillerPosition": function ( nTd ) + { + var offset = $(nTd).offset(); + var filler = this.dom.filler; + filler.style.top = (offset.top - (this.s.filler.height / 2)-1 + $(nTd).outerHeight())+"px"; + filler.style.left = (offset.left - (this.s.filler.width / 2)-1 + $(nTd).outerWidth())+"px"; + } +}; + + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Constants + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + +/** + * Name of this class + * @constant CLASS + * @type String + * @default AutoFill + */ +AutoFill.prototype.CLASS = "AutoFill"; + + +/** + * AutoFill version + * @constant VERSION + * @type String + * @default 1.1.1 + */ +AutoFill.VERSION = "1.1.1"; +AutoFill.prototype.VERSION = "1.1.1"; + + +})(jQuery); \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.min.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.min.js new file mode 100644 index 000000000..8b85c2c44 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.min.js @@ -0,0 +1,33 @@ +/* + * File: AutoFill.min.js + * Version: 1.1.1 + * Author: Allan Jardine (www.sprymedia.co.uk) + * + * Copyright 2010-2011 Allan Jardine, all rights reserved. + * + * This source file is free software, under either the GPL v2 license or a + * BSD (3 point) style license, as supplied with this software. + * + * This source file is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the license files for details. + */ +var AutoFill; +(function(d){AutoFill=function(b,a){if(!this.CLASS||this.CLASS!="AutoFill")alert("Warning: AutoFill must be initialised with the keyword 'new'");else if(d.fn.dataTableExt.fnVersionCheck("1.7.0")){this.s={filler:{height:0,width:0},border:{width:2},drag:{startX:-1,startY:-1,startTd:null,endTd:null,dragging:false},screen:{interval:null,y:0,height:0,scrollTop:0},scroller:{top:0,bottom:0},columns:[]};this.dom={table:null,filler:null,borderTop:null,borderRight:null,borderBottom:null,borderLeft:null,currentTarget:null}; +this.fnSettings=function(){return this.s};this._fnInit(b,a);return this}else alert("Warning: AutoFill requires DataTables 1.7 or greater - www.datatables.net/download")};AutoFill.prototype={_fnInit:function(b,a){var c=this,e;this.s.dt=b.fnSettings();this.dom.table=this.s.dt.nTable;b=0;for(e=this.s.dt.aoColumns.length;btr>td",this.dom.table).live("mouseover mouseout",function(f){c._fnFillerDisplay.call(c,f)})},_fnColumnDefs:function(b){var a,c,e,f, +h,g;for(a=b.length-1;a>=0;a--){g=b[a].aTargets;c=0;for(f=g.length;c=0)this._fnColumnOptions(g[c],b[a]);else if(typeof g[c]=="number"&&g[c]<0)this._fnColumnOptions(this.s.dt.aoColumns.length+g[c],b[a]);else if(typeof g[c]=="string"){e=0;for(h=this.s.dt.aoColumns.length;ea.s.scroller.bottom-50)d(a.s.dt.nTable.parentNode).animate({scrollTop:d(a.s.dt.nTable.parentNode).scrollTop()+50},240,"linear");else a.s.screen.ytr:eq("+a.y+")>td:eq("+this.s.drag.startX+")",this.dom.table)[0];a=this._fnTargetCoords(b.target)}if(a.x==this.s.drag.startX){var c=this.s.drag;c.endTd=b.target;a.y>=this.s.drag.startY?this._fnUpdateBorder(c.startTd,c.endTd):this._fnUpdateBorder(c.endTd,c.startTd);this._fnFillerPosition(b.target)}}this.s.screen.y=b.pageY;this.s.screen.scrollTop=d(document).scrollTop();if(this.s.dt.oScroll.sY!==""){this.s.scroller.scrollTop= +d(this.s.dt.nTable.parentNode).scrollTop();this.s.scroller.top=d(this.s.dt.nTable.parentNode).offset().top;this.s.scroller.bottom=this.s.scroller.top+d(this.s.dt.nTable.parentNode).height()}},_fnFillerFinish:function(){d(document).unbind("mousemove.AutoFill");d(document).unbind("mouseup.AutoFill");this.dom.borderTop.style.display="none";this.dom.borderRight.style.display="none";this.dom.borderBottom.style.display="none";this.dom.borderLeft.style.display="none";this.s.drag.dragging=false;clearInterval(this.s.screen.interval); +var b=this._fnTargetCoords(this.s.drag.startTd),a=this._fnTargetCoords(this.s.drag.endTd),c=[],e;if(b.y<=a.y){e=true;for(i=b.y;i<=a.y;i++)c.push(d("tbody>tr:eq("+i+")>td:eq("+b.x+")",this.dom.table)[0])}else{e=false;for(i=b.y;i>=a.y;i--)c.push(d("tbody>tr:eq("+i+")>td:eq("+b.x+")",this.dom.table)[0])}b=b.x;a=false;var f=[],h=this._fnPrep(this.s.columns[b].read.call(this,this.s.drag.startTd));i=0;for(iLen=c.length;i0)return d(a).val();a=d("select",b);if(a.length>0)return d(a).val();return b.innerHTML},_fnWriteCell:function(b,a,c){var e=d("input",b);if(e.length>0)d(e).val(a);else{e=d("select",b);if(e.length>0)d(e).val(a);else{b=this.s.dt.oInstance.fnGetPosition(b);this.s.dt.oInstance.fnUpdate(a,b[0],b[2],c)}}},_fnFillerDisplay:function(b){if(!this.s.drag.dragging)if(this.s.columns[this._fnTargetCoords(b.target).x].enable){var a= +this.dom.filler;if(b.type=="mouseover"){this.dom.currentTarget=b.target;this._fnFillerPosition(b.target);a.style.display="block"}else if(!b.relatedTarget||!b.relatedTarget.className.match(/AutoFill/))a.style.display="none"}},_fnFillerPosition:function(b){var a=d(b).offset(),c=this.dom.filler;c.style.top=a.top-this.s.filler.height/2-1+d(b).outerHeight()+"px";c.style.left=a.left-this.s.filler.width/2-1+d(b).outerWidth()+"px"}};AutoFill.prototype.CLASS="AutoFill";AutoFill.VERSION="1.1.1";AutoFill.prototype.VERSION= +"1.1.1"})(jQuery); diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.min.js.gz b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.min.js.gz new file mode 100644 index 000000000..d09135a0d Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/media/js/AutoFill.min.js.gz differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/scrolling.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/scrolling.html new file mode 100644 index 000000000..ee65a5131 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/AutoFill/scrolling.html @@ -0,0 +1,496 @@ + + + + + + + AutoFill example + + + + + + + +
+
+ AutoFill example with scrolling +
+ +

Preamble

+

+ When dragging an AutoFill handle, the table (if DataTables scrolling is enabled) or the window will be automatically scrolled, as you approach the edge of the scrolling component. The example below shows the effect with DataTables scrolling (and also window if needed). +

+ + + +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable({
+		"sScrollY": 200,
+		"bScrollCollapse": true,
+		"bPaginate": false
+	});
+	new AutoFill( oTable );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/alt_insert.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/alt_insert.html new file mode 100644 index 000000000..4f04fa481 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/alt_insert.html @@ -0,0 +1,495 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with alternative insert styling +
+ +

Preamble

+

Using CSS it is relatively easy to modify the insert bar to suit your web-site. This + example shows how an arrow can be used to show the insert point rather than the straight + bar used in the other examples.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip'
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/col_filter.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/col_filter.html new file mode 100644 index 000000000..ec783091c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/col_filter.html @@ -0,0 +1,586 @@ + + + + + + + ColReorder example + + + + + + + + +
+
+ ColReorder example with individual column filtering +
+ +

Preamble

+

This example of how to use ColReorder shows quite a number of different interesting + properties. Firstly, there is integration with ColVis, then there is the fact that there + is more than one row in the table header with the second being used for the input + elements, and finally of course the filtering itself. Note that it is important to use + the _fnVisibleToColumnIndex() internal function to calculate which column index should + be given to fnFilter (or you could employ your own methods).

+

Please note that this demo requires DataTables 1.7.5 or later.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready(function() {
+	var oTable;
+	
+	/* Add the events etc before DataTables hides a column */
+	$("thead input").keyup( function () {
+		/* Filter on the column (the index) of this element */
+		oTable.fnFilter( this.value, oTable.oApi._fnVisibleToColumnIndex( 
+			oTable.fnSettings(), $("thead input").index(this) ) );
+	} );
+	
+	/*
+	 * Support functions to provide a little bit of 'user friendlyness' to the textboxes
+	 */
+	$("thead input").each( function (i) {
+		this.initVal = this.value;
+	} );
+	
+	$("thead input").focus( function () {
+		if ( this.className == "search_init" )
+		{
+			this.className = "";
+			this.value = "";
+		}
+	} );
+	
+	$("thead input").blur( function (i) {
+		if ( this.value == "" )
+		{
+			this.className = "search_init";
+			this.value = this.initVal;
+		}
+	} );
+	
+	oTable = $('#example').dataTable( {
+		"sDom": 'RC<"clear">lfrtip',
+		"aoColumnDefs": [
+			{ "bVisible": false, "aTargets": [ 2 ] }
+		],
+		"oLanguage": {
+			"sSearch": "Search all columns:"
+		}
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/colvis.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/colvis.html new file mode 100644 index 000000000..b7b15e65e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/colvis.html @@ -0,0 +1,503 @@ + + + + + + + ColReorder example + + + + + + + + +
+
+ ColReorder example with ColVis +
+ +

Preamble

+

The ColReorder plug-in interacts with the ColVis plug-in for DataTables by updating the + order of the list of columns whenever a reorder is done. This is shown in the example + below, where one column has been hidden by default to add extra emphasis to ColVis.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'RC<"clear">lfrtip',
+		"aoColumnDefs": [
+			{ "bVisible": false, "aTargets": [ 1 ] }
+		]
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/fixedcolumns.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/fixedcolumns.html new file mode 100644 index 000000000..bd993f63c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/fixedcolumns.html @@ -0,0 +1,603 @@ + + + + + + + ColReorder example + + + + + + + + +
+
+ ColReorder example with FixedColumns +
+ +

Preamble

+

While ColReorder works great with scrolling in DataTables (and thus FixedColumns), + it also presents an additional option called 'iFixedColumns' which allows you to not + let the user reorder certain columns (specific the number given, counting left to + right). So in the case of FixedColumns this is useful because you typically won't want + to let your fixed column be reordered. This is shown below in the FixedColumns index column + example.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 Rendering engineBrowserPlatform(s)Engine versionCSS grade
1TridentInternet + Explorer 4.0Win 95+4X
2TridentInternet + Explorer 5.0Win 95+5C
3TridentInternet + Explorer 5.5Win 95+5.5A
4TridentInternet + Explorer 6Win 98+6A
5TridentInternet Explorer 7Win XP SP2+7A
6TridentAOL browser (AOL desktop)Win XP6A
7GeckoFirefox 1.0Win 98+ / OSX.2+1.7A
8GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
9GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
10GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
11GeckoCamino 1.0OSX.2+1.8A
12GeckoCamino 1.5OSX.3+1.8A
13GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
14GeckoNetscape Browser 8Win 98SE+1.7A
15GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
16GeckoMozilla 1.0Win 95+ / OSX.1+1A
17GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
18GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
19GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
20GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
21GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
22GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
23GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
24GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
25GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
26GeckoEpiphany 2.20Gnome1.8A
27WebkitSafari 1.2OSX.3125.5A
28WebkitSafari 1.3OSX.3312.8A
29WebkitSafari 2.0OSX.4+419.3A
30WebkitSafari 3.0OSX.4+522.1A
31WebkitOmniWeb 5.5OSX.4+420A
32WebkitiPod Touch / iPhoneiPod420.1A
33WebkitS60S60413A
34PrestoOpera 7.0Win 95+ / OSX.1+-A
35PrestoOpera 7.5Win 95+ / OSX.2+-A
36PrestoOpera 8.0Win 95+ / OSX.2+-A
37PrestoOpera 8.5Win 95+ / OSX.2+-A
38PrestoOpera 9.0Win 95+ / OSX.3+-A
39PrestoOpera 9.2Win 88+ / OSX.3+-A
40PrestoOpera 9.5Win 88+ / OSX.3+-A
41PrestoOpera for WiiWii-A
42PrestoNokia N800N800-A
43PrestoNintendo DS browserNintendo DS8.5C/A1
44KHTMLKonqureror 3.1KDE 3.13.1C
45KHTMLKonqureror 3.3KDE 3.33.3A
46KHTMLKonqureror 3.5KDE 3.53.5A
47TasmanInternet Explorer 4.5Mac OS 8-9-X
48TasmanInternet Explorer 5.1Mac OS 7.6-91C
49TasmanInternet Explorer 5.2Mac OS 8-X1C
50MiscNetFront 3.1Embedded devices-C
51MiscNetFront 3.4Embedded devices-A
52MiscDillo 0.8Embedded devices-X
53MiscLinksText only-X
54MiscLynxText only-X
55MiscIE MobileWindows Mobile 6-C
56MiscPSP browserPSP-C
57Other browsersAll others--U
 Rendering engineBrowserPlatform(s)Engine versionCSS grade
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"sScrollX": "100%",
+		"sScrollXInner": "150%",
+		"bScrollCollapse": true,
+		"fnDrawCallback": function ( oSettings ) {
+			/* Need to redo the counters if filtered or sorted */
+			if ( oSettings.bSorted || oSettings.bFiltered ) {
+				for ( var i=0, iLen=oSettings.aiDisplay.length ; i<iLen ; i++ ) {
+					$('td:eq(0)', oSettings.aoData[ oSettings.aiDisplay[i] ].nTr ).html( i+1 );
+				}
+			}
+		},
+		"aoColumnDefs": [
+			{ "bSortable": false, "sClass": "index", "aTargets": [ 0 ] }
+		],
+		"aaSorting": [[ 1, 'asc' ]],
+		"oColReorder": {
+			"iFixedColumns": 1
+		}
+	} );
+	new FixedColumns( oTable );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/fixedheader.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/fixedheader.html new file mode 100644 index 000000000..6e172c8b8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/fixedheader.html @@ -0,0 +1,499 @@ + + + + + + + ColReorder example + + + + + + + + +
+
+ ColReorder example with FixedHeader +
+ +

Preamble

+

FixedHeader is a particularly useful plug-in for DataTables, allowing a table header + to float at the top of a scrolling window. ColReorder works well with FixedHeader, allowing + you to reorder columns even using the floating header, as shown in the example below.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		 "sDom": 'RC<"clear">lfrtip'
+	} );
+	new FixedHeader( oTable );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/index.html new file mode 100644 index 000000000..7b67205a9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/index.html @@ -0,0 +1,496 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example +
+ +

Preamble

+

This example shows the basic use case of the ColReorder plug-in. With ColReorder enabled + for a table, the user has the ability to click and drag any table header cell, and drop + it where they wish the column to be inserted. The insert point is shown visually, and + the column reordering is done as soon as the mouse button is released.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip'
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/css/ColReorder.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/css/ColReorder.css new file mode 100644 index 000000000..9c597e348 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/css/ColReorder.css @@ -0,0 +1,21 @@ +/* + * Namespace DTCR - "DataTables ColReorder" plug-in + */ + +table.DTCR_clonedTable { + background-color: white; + z-index: 202; +} + +div.DTCR_pointer { + width: 1px; + background-color: #0259C4; + z-index: 201; +} + +body.alt div.DTCR_pointer { + margin-top: -15px; + margin-left: -9px; + width: 18px; + background: url('../images/insert.png') no-repeat top left; +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/css/default.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/css/default.css new file mode 100644 index 000000000..b9dde3b14 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/css/default.css @@ -0,0 +1,418 @@ +/* + * TABLE OF CONTENTS: + * - Browser reset + * - HTML elements + * - JsDoc styling + */ + + + + + + +/* + * BEGIN BROWSER RESET + */ + +body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,p,pre,form,fieldset,input,textarea,p,blockquote,th,td { + margin:0; + padding:0 +} +html { + height:100%; + overflow:-moz-scrollbars-vertical; + overflow-x:auto +} +table { + border:0; + border-collapse:collapse; + border-spacing:0 +} +fieldset,img { + border:0 +} +address,caption,cite,code,dfn,em,strong,th,var { + font-style:normal; + font-weight:normal +} +em,cite { + font-style:italic +} +strong { + font-weight:bold +} +ol,ul { + list-style:none +} +caption,th { + text-align:left +} +h1,h2,h3,h4,h5,h6 { + font-size:100%; + font-weight:normal; + margin:0; + padding:0 +} +q:before,q:after { + content:'' +} +abbr,acronym { + border:0 +} + +/* + * END BROWSER RESET + */ + + + + + + +/* + * HTML ELEMENTS + */ + +* { + line-height: 1.4em; +} + +html { + font-size: 100%; +} + +body { + font-size: 0.75em !important; + padding: 15px 0; + background: #eee; + background-image: -moz-linear-gradient(left, #dddddd, #f9f9f9); + background-image: -webkit-gradient(linear,left bottom,right bottom,color-stop(0, #dddddd),color-stop(1, #f9f9f9)); + } + +body, +input, +select, +textarea { + color: #000; + font-family: Arial, Geneva, sans-serif; +} + +a:link, +a:hover, +a:active, +a:visited { + color: #19199e; +} +a:hover, +a:focus { + color: #00f; + text-decoration: none; +} + +p { + margin: 0 0 1.5em 0; +} + +/* + * END HTML ELEMENTS + */ + + + +/* + * BEGIN HACK + */ + +div.containerMain:after, +div.safeBox:after { + content:""; + display:block; + height:0; + clear:both; +} + +/* + * END HACK + */ + + + +/* + * BEGIN JSDOC + */ + +div.index *.heading1 { + margin-bottom: 0.5em; + border-bottom: 1px solid #999999; + padding: 0.5em 0 0.1em 0; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.3em; + letter-spacing: 1px; +} + +div.index { + float: left; + width: 30%; + min-width: 100px; + max-width: 250px; +} +div.index div.menu { + margin: 0 15px 0 -15px; + -moz-border-radius: 15px; + -webkit-border-radius: 15px; + border-radius: 15px; + padding: 15px 15px 15px 30px; + background-color: #FFFFFF; + background-color: rgba(255, 255, 255, 0.5); + -moz-box-shadow: 0px 0px 10px #c4c4c4; + -webkit-box-shadow: 0px 0px 10px #c4c4c4; + box-shadow: 0px 0px 10px #c4c4c4; +} +*+html div.index div.menu { + background-color: #FFFFFF; +} +* html div.index div.menu { + background-color: #FFFFFF; +} + +div.index div.menu div { + text-align: left; +} + +div.index div.menu a { + text-decoration: none; +} +div.index div.menu a:hover { + text-decoration: underline; +} + +div.index ul.classList a { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.index div.fineprint { + padding: 15px 30px 15px 15px; + color: #777; + font-size: 0.9em; +} +div.index div.fineprint a { + color: #777; +} + + + +div.content { + float: left; + width: 70%; + min-width: 300px; + max-width: 600px; +} +div.innerContent { + padding: 0 0 0 2.5em; +} + +div.content ul, +div.content ol { + margin-bottom: 3em; +} + +div.content *.classTitle { + margin-bottom: 0.5em; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 2.5em; + letter-spacing: 2px; +} + +div.content *.classTitle span { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.content p.summary { + font-size: 1.2em; +} + +div.content ul *.classname a, +div.content ul *.filename a { + font-family: Consolas, "Courier New", Courier, monospace; + text-decoration: none; + font-weight: bold; +} +div.content ul *.classname a:hover, +div.content ul *.filename a:hover { + text-decoration: underline; +} + +div.content div.props { + position: relative; + left: -10px; + margin-bottom: 2.5em; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + padding: 10px 15px 15px 15px; + overflow: hidden; + background: #fff; + background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2)); /* FF3.6 */ + background: -webkit-gradient(linear,left top,left bottom,color-stop(0, rgba(255, 255, 255, 0.7)),color-stop(1, rgba(255, 255, 255, 0.2))); + -moz-box-shadow: 0px 0px 10px #ccc; + -webkit-box-shadow: 0px 0px 5px #bbb; + box-shadow: 0px 0px 5px #bbb; +} + +div.content div.props div.sectionTitle { + padding-bottom: 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +div.content div.hr { + margin: 0 10px 0 0; + height: 4em; +} + + + +table.summaryTable { + position: relative; + left: -10px; + width: 100%; + border-collapse: collapse; + box-sizing: content-box; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + -ms-box-sizing: content-box; + -o-box-sizing: content-box; + -icab-box-sizing: content-box; + -khtml-box-sizing: content-box; +} + +table.summaryTable caption { + padding: 0 10px 10px 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +table.summaryTable td, +table.summaryTable th { + padding: 0px 10px 10px 10px; + vertical-align: top; +} +table.summaryTable tr:last-child td { + padding-bottom: 0; +} + +table.summaryTable th { + font-weight: bold; +} + +table.summaryTable td.attributes { + width: 35%; + font-family: Consolas, "Courier New", Courier, monospace; + color: #666; +} + +table.summaryTable td.nameDescription { + width: 65% +} + +table.summaryTable td.nameDescription div.fixedFont { + font-weight: bold; +} + +table.summaryTable div.description { + color: #333; +} + + + +dl.detailList { + margin-top: 0.5em; +} + +dl.detailList.nomargin + dl.detailList.nomargin { + margin-top: 0; +} + +dl.detailList dt { + display: inline; + margin-right: 5px; + font-weight: bold; +} + +dl.detailList dt:before { + display: block; + content: ""; +} + +dl.detailList dd { + display: inline; +} + +dl.detailList.params dt { + display: block; +} +dl.detailList.params dd { + display: block; + padding-left: 2em; + padding-bottom: 0.4em; +} + + + + +ul.fileList li { + margin-bottom: 1.5em; +} + + + +.fixedFont { + font-family: Consolas, "Courier New", Courier, monospace; +} + +.fixedFont.heading { + margin-bottom: 0.5em; + font-size: 1.25em; + line-height: 1.1em +} + +.fixedFont.heading + .description { + font-size: 1.2em; +} + +.fixedFont.heading .light, +.fixedFont.heading .lighter { + font-weight: bold; +} + +pre.code { + margin: 10px 0 10px 0; + padding: 10px; + border: 1px solid #ccc; + -moz-border-radius: 2px; + -webkit-border-radius: 2px; + border-radius: 2px; + overflow: auto; + font-family: Consolas, "Courier New", Courier, monospace; + background: #eee; +} + +.light { + color: #666; +} + +.lighter { + color: #999; +} + +.clear { + clear: both; + width: 100%; + min-height: 0; +} + +/* + * END JSDOC + */ \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/files.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/files.html new file mode 100644 index 000000000..5ea39b4cf --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/files.html @@ -0,0 +1,69 @@ + + + + + + JsDoc Reference - File Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:46 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

File Index

+ + +
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/index.html new file mode 100644 index 000000000..6373ae662 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/index.html @@ -0,0 +1,78 @@ + + + + + JsDoc Reference - Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:46 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

Class Index

+ + +
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#dom.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#dom.html new file mode 100644 index 000000000..31288edb3 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#dom.html @@ -0,0 +1,278 @@ + + + + + + + JsDoc Reference - ColReorder#dom + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:46 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColReorder#dom +

+ +

+ + + + + Common and useful DOM elements for the class instance + + +
Defined in: ColReorder.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColReorder#dom.drag +
+
Dragging element (the one the mouse is moving)
+
<static>   +
+ ColReorder#dom.pointer +
+
The insert cursor
+
+
+ + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColReorder#dom +
+ +
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {element} + + ColReorder#dom.drag +
+ +
+ Dragging element (the one the mouse is moving) + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {element} + + ColReorder#dom.pointer +
+ +
+ The insert cursor + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + + + +
+
+ + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#s.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#s.html new file mode 100644 index 000000000..2e268a011 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#s.html @@ -0,0 +1,413 @@ + + + + + + + JsDoc Reference - ColReorder#s + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:46 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColReorder#s +

+ +

+ + + + + Settings object which contains customisable information for ColReorder instance + + +
Defined in: ColReorder.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColReorder#s.aoTargets +
+
Information which is used for positioning the insert cusor and knowing where to do the +insert.
+
<static>   +
+ ColReorder#s.dropCallback +
+
Callback function for once the reorder has been done
+
<static>   +
+ ColReorder#s.dt +
+
DataTables settings object
+
<static>   +
+ ColReorder#s.fixed +
+
Number of columns to fix (not allow to be reordered)
+
<static>   +
+ ColReorder#s.init +
+
Initialisation object used for this instance
+
+
+ + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColReorder#s +
+ +
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {array} + + ColReorder#s.aoTargets +
+ +
+ Information which is used for positioning the insert cusor and knowing where to do the +insert. Array of objects with the properties: + x: x-axis position + to: insert point + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {function} + + ColReorder#s.dropCallback +
+ +
+ Callback function for once the reorder has been done + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Object} + + ColReorder#s.dt +
+ +
+ DataTables settings object + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {int} + + ColReorder#s.fixed +
+ +
+ Number of columns to fix (not allow to be reordered) + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ 0 +
+ +
+ + +
+ + + +
+ + <static> + + + {object} + + ColReorder#s.init +
+ +
+ Initialisation object used for this instance + + + +
+ + + + + + + +
+
+ + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#s.mouse.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#s.mouse.html new file mode 100644 index 000000000..95161532d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder#s.mouse.html @@ -0,0 +1,149 @@ + + + + + + + JsDoc Reference - ColReorder#s.mouse + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:46 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColReorder#s.mouse +

+ +

+ + + + + Information used for the mouse drag + + +
Defined in: ColReorder.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColReorder#s.mouse +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder.html new file mode 100644 index 000000000..1c8a1980e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/ColReorder.html @@ -0,0 +1,1030 @@ + + + + + + + JsDoc Reference - ColReorder + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:46 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Class ColReorder +

+ +

+ + + + + ColReorder + + +
Defined in: ColReorder.js. + +

+ + +
+ + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ ColReorder(DataTables, ColReorder) +
+
ColReorder provides column visiblity control for DataTables
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColReorder.aoInstances +
+
Array of all ColReorder instances for later reference
+
<constant>   +
+ CLASS +
+
Name of this class
+
<static> <constant>   +
+ ColReorder.VERSION +
+
ColReorder version
+
+
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<private>   + +
Constructor logic
+
<private>   + +
Copy the TH element that is being drags so the user has the idea that they are actually +moving it around the page.
+
<private>   +
_fnMouseDown(event, element) +
+
Mouse down on a TH element in the table header
+
<private>   +
_fnMouseListener(int, element) +
+
Add a mouse down listener to a particluar TH element
+
<private>   +
_fnMouseMove(event) +
+
Deal with a mouse move event while dragging a node
+
<private>   +
_fnMouseUp(event) +
+
Finish off the mouse drag and insert the column where needed
+
<private>   +
_fnOrderColumns(array) +
+
Set the column order from an array
+
<private>   +
_fnStateSave(string) +
+
This function effectively replaces the state saving function in DataTables (this is needed +because otherwise DataTables would state save the columns in their reordered state, not the +original which is needed on first draw).
+
<static>   +
ColReorder.fnReset(object) +
+
Reset the column ordering for a DataTables instance
+
  +
fnReset() +
+
+
+
+ + + + + + + + + + +
+
+ + +
+ Class Detail +
+ +
+ ColReorder(DataTables, ColReorder) +
+ +
+ ColReorder provides column visiblity control for DataTables + +
+ + + + +
+
Parameters:
+ +
+ {object} DataTables + +
+
object
+ +
+ {object} ColReorder + +
+
options
+ +
+ + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {array} + + ColReorder.aoInstances +
+ +
+ Array of all ColReorder instances for later reference + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <constant> + + + {String} + + CLASS +
+ +
+ Name of this class + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ ColReorder +
+ +
+ + +
+ + + +
+ + <static> <constant> + + + {String} + + ColReorder.VERSION +
+ +
+ ColReorder version + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ As code +
+ +
+ + + + +
+
+ + + + +
+
+
+ Method Detail +
+ + + + +
+ + <private> + + + + + _fnConstruct() +
+ +
+ Constructor logic + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnCreateDragNode() +
+ +
+ Copy the TH element that is being drags so the user has the idea that they are actually +moving it around the page. + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnMouseDown(event, element) +
+ +
+ Mouse down on a TH element in the table header + + + + +
+ + + + +
+
Parameters:
+ +
+ event + +
+
e Mouse event
+ +
+ element + +
+
nTh TH element to be dragged
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnMouseListener(int, element) +
+ +
+ Add a mouse down listener to a particluar TH element + + + + +
+ + + + +
+
Parameters:
+ +
+ int + +
+
i Column index
+ +
+ element + +
+
nTh TH element clicked on
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnMouseMove(event) +
+ +
+ Deal with a mouse move event while dragging a node + + + + +
+ + + + +
+
Parameters:
+ +
+ event + +
+
e Mouse event
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnMouseUp(event) +
+ +
+ Finish off the mouse drag and insert the column where needed + + + + +
+ + + + +
+
Parameters:
+ +
+ event + +
+
e Mouse event
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnOrderColumns(array) +
+ +
+ Set the column order from an array + + + + +
+ + + + +
+
Parameters:
+ +
+ array + +
+
a An array of integers which dictate the column order that should be applied
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnStateSave(string) +
+ +
+ This function effectively replaces the state saving function in DataTables (this is needed +because otherwise DataTables would state save the columns in their reordered state, not the +original which is needed on first draw). This is sensitive to any changes in the DataTables +state saving method! + + + + +
+ + + + +
+
Parameters:
+ +
+ string + +
+
sCurrentVal
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
string JSON encoded cookie string for DataTables
+ + + + + + + +
+ + +
+ + + +
+ + <static> + + + + + ColReorder.fnReset(object) +
+ +
+ Reset the column ordering for a DataTables instance + + + + +
+ + + + +
+
Parameters:
+ +
+ object + +
+
oTable DataTables instance to consider
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + + + + + + fnReset() +
+ +
+ + + + + +
+ + + + + + + + + +
+
+ + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/_global_.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/_global_.html new file mode 100644 index 000000000..b30a33198 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/_global_.html @@ -0,0 +1,99 @@ + + + + + + + JsDoc Reference - _global_ + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:47:46 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Built-In Namespace _global_ +

+ +

+ + + + + + + +

+ + + + + + + + + + + + + + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/src/js_ColReorder.js.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/src/js_ColReorder.js.html new file mode 100644 index 000000000..0fb2dffae --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/docs/symbols/src/js_ColReorder.js.html @@ -0,0 +1,995 @@ +
  1 /*
+  2  * File:        ColReorder.js
+  3  * Version:     1.0.4
+  4  * CVS:         $Id$
+  5  * Description: Controls for column visiblity in DataTables
+  6  * Author:      Allan Jardine (www.sprymedia.co.uk)
+  7  * Created:     Wed Sep 15 18:23:29 BST 2010
+  8  * Modified:    $Date$ by $Author$
+  9  * Language:    Javascript
+ 10  * License:     GPL v2 or BSD 3 point style
+ 11  * Project:     DataTables
+ 12  * Contact:     www.sprymedia.co.uk/contact
+ 13  * 
+ 14  * Copyright 2010-2011 Allan Jardine, all rights reserved.
+ 15  *
+ 16  * This source file is free software, under either the GPL v2 license or a
+ 17  * BSD style license, available at:
+ 18  *   http://datatables.net/license_gpl2
+ 19  *   http://datatables.net/license_bsd
+ 20  *
+ 21  */
+ 22 
+ 23 
+ 24 (function($, window, document) {
+ 25 
+ 26 
+ 27 /**
+ 28  * Switch the key value pairing of an index array to be value key (i.e. the old value is now the
+ 29  * key). For example consider [ 2, 0, 1 ] this would be returned as [ 1, 2, 0 ].
+ 30  *  @method  fnInvertKeyValues
+ 31  *  @param   array aIn Array to switch around
+ 32  *  @returns array
+ 33  */
+ 34 function fnInvertKeyValues( aIn )
+ 35 {
+ 36 	var aRet=[];
+ 37 	for ( var i=0, iLen=aIn.length ; i<iLen ; i++ )
+ 38 	{
+ 39 		aRet[ aIn[i] ] = i;
+ 40 	}
+ 41 	return aRet;
+ 42 }
+ 43 
+ 44 
+ 45 /**
+ 46  * Modify an array by switching the position of two elements
+ 47  *  @method  fnArraySwitch
+ 48  *  @param   array aArray Array to consider, will be modified by reference (i.e. no return)
+ 49  *  @param   int iFrom From point
+ 50  *  @param   int iTo Insert point
+ 51  *  @returns void
+ 52  */
+ 53 function fnArraySwitch( aArray, iFrom, iTo )
+ 54 {
+ 55 	var mStore = aArray.splice( iFrom, 1 )[0];
+ 56 	aArray.splice( iTo, 0, mStore );
+ 57 }
+ 58 
+ 59 
+ 60 /**
+ 61  * Switch the positions of nodes in a parent node (note this is specifically designed for 
+ 62  * table rows). Note this function considers all element nodes under the parent!
+ 63  *  @method  fnDomSwitch
+ 64  *  @param   string sTag Tag to consider
+ 65  *  @param   int iFrom Element to move
+ 66  *  @param   int Point to element the element to (before this point), can be null for append
+ 67  *  @returns void
+ 68  */
+ 69 function fnDomSwitch( nParent, iFrom, iTo )
+ 70 {
+ 71 	var anTags = [];
+ 72 	for ( var i=0, iLen=nParent.childNodes.length ; i<iLen ; i++ )
+ 73 	{
+ 74 		if ( nParent.childNodes[i].nodeType == 1 )
+ 75 		{
+ 76 			anTags.push( nParent.childNodes[i] );
+ 77 		}
+ 78 	}
+ 79 	var nStore = anTags[ iFrom ];
+ 80 	
+ 81 	if ( iTo !== null )
+ 82 	{
+ 83 		nParent.insertBefore( nStore, anTags[iTo] );
+ 84 	}
+ 85 	else
+ 86 	{
+ 87 		nParent.appendChild( nStore );
+ 88 	}
+ 89 }
+ 90 
+ 91 
+ 92 
+ 93 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ 94  * DataTables plug-in API functions
+ 95  *
+ 96  * This are required by ColReorder in order to perform the tasks required, and also keep this
+ 97  * code portable, to be used for other column reordering projects with DataTables, if needed.
+ 98  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+ 99 
+100 
+101 /**
+102  * Plug-in for DataTables which will reorder the internal column structure by taking the column
+103  * from one position (iFrom) and insert it into a given point (iTo).
+104  *  @method  $.fn.dataTableExt.oApi.fnColReorder
+105  *  @param   object oSettings DataTables settings object - automatically added by DataTables! 
+106  *  @param   int iFrom Take the column to be repositioned from this point
+107  *  @param   int iTo and insert it into this point
+108  *  @returns void
+109  */
+110 $.fn.dataTableExt.oApi.fnColReorder = function ( oSettings, iFrom, iTo )
+111 {
+112 	var i, iLen, j, jLen, iCols=oSettings.aoColumns.length, nTrs, oCol;
+113 	
+114 	/* Sanity check in the input */
+115 	if ( iFrom == iTo )
+116 	{
+117 		/* Pointless reorder */
+118 		return;
+119 	}
+120 	
+121 	if ( iFrom < 0 || iFrom >= iCols )
+122 	{
+123 		this.oApi._fnLog( oSettings, 1, "ColReorder 'from' index is out of bounds: "+iFrom );
+124 		return;
+125 	}
+126 	
+127 	if ( iTo < 0 || iTo >= iCols )
+128 	{
+129 		this.oApi._fnLog( oSettings, 1, "ColReorder 'to' index is out of bounds: "+iTo );
+130 		return;
+131 	}
+132 	
+133 	/*
+134 	 * Calculate the new column array index, so we have a mapping between the old and new
+135 	 */
+136 	var aiMapping = [];
+137 	for ( i=0, iLen=iCols ; i<iLen ; i++ )
+138 	{
+139 		aiMapping[i] = i;
+140 	}
+141 	fnArraySwitch( aiMapping, iFrom, iTo );
+142 	var aiInvertMapping = fnInvertKeyValues( aiMapping );
+143 	
+144 	
+145 	/*
+146 	 * Convert all internal indexing to the new column order indexes
+147 	 */
+148 	/* Sorting */
+149 	for ( i=0, iLen=oSettings.aaSorting.length ; i<iLen ; i++ )
+150 	{
+151 		oSettings.aaSorting[i][0] = aiInvertMapping[ oSettings.aaSorting[i][0] ];
+152 	}
+153 	
+154 	/* Fixed sorting */
+155 	if ( oSettings.aaSortingFixed !== null )
+156 	{
+157 		for ( i=0, iLen=oSettings.aaSortingFixed.length ; i<iLen ; i++ )
+158 		{
+159 			oSettings.aaSortingFixed[i][0] = aiInvertMapping[ oSettings.aaSortingFixed[i][0] ];
+160 		}
+161 	}
+162 	
+163 	/* Data column sorting (the column which the sort for a given column should take place on) */
+164 	for ( i=0, iLen=iCols ; i<iLen ; i++ )
+165 	{
+166 		oSettings.aoColumns[i].iDataSort = aiInvertMapping[ oSettings.aoColumns[i].iDataSort ];
+167 	}
+168 	
+169 	/* Update the Get and Set functions for each column */
+170 	for ( i=0, iLen=iCols ; i<iLen ; i++ )
+171 	{
+172 		oCol = oSettings.aoColumns[i];
+173 		if ( typeof oCol.mDataProp == 'number' ) {
+174 			oCol.mDataProp = aiInvertMapping[ oCol.mDataProp ];
+175 			oCol.fnGetData = oSettings.oApi._fnGetObjectDataFn( oCol.mDataProp );
+176 			oCol.fnSetData = oSettings.oApi._fnSetObjectDataFn( oCol.mDataProp );
+177 		}
+178 	}
+179 	
+180 	
+181 	/*
+182 	 * Move the DOM elements
+183 	 */
+184 	if ( oSettings.aoColumns[iFrom].bVisible )
+185 	{
+186 		/* Calculate the current visible index and the point to insert the node before. The insert
+187 		 * before needs to take into account that there might not be an element to insert before,
+188 		 * in which case it will be null, and an appendChild should be used
+189 		 */
+190 		var iVisibleIndex = this.oApi._fnColumnIndexToVisible( oSettings, iFrom );
+191 		var iInsertBeforeIndex = null;
+192 		
+193 		i = iTo < iFrom ? iTo : iTo + 1;
+194 		while ( iInsertBeforeIndex === null && i < iCols )
+195 		{
+196 			iInsertBeforeIndex = this.oApi._fnColumnIndexToVisible( oSettings, i );
+197 			i++;
+198 		}
+199 		
+200 		/* Header */
+201 		nTrs = oSettings.nTHead.getElementsByTagName('tr');
+202 		for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
+203 		{
+204 			fnDomSwitch( nTrs[i], iVisibleIndex, iInsertBeforeIndex );
+205 		}
+206 		
+207 		/* Footer */
+208 		if ( oSettings.nTFoot !== null )
+209 		{
+210 			nTrs = oSettings.nTFoot.getElementsByTagName('tr');
+211 			for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
+212 			{
+213 				fnDomSwitch( nTrs[i], iVisibleIndex, iInsertBeforeIndex );
+214 			}
+215 		}
+216 		
+217 		/* Body */
+218 		for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
+219 		{
+220 			if ( oSettings.aoData[i].nTr !== null )
+221 			{
+222 				fnDomSwitch( oSettings.aoData[i].nTr, iVisibleIndex, iInsertBeforeIndex );
+223 			}
+224 		}
+225 	}
+226 	
+227 	
+228 	/* 
+229 	 * Move the internal array elements
+230 	 */
+231 	/* Columns */
+232 	fnArraySwitch( oSettings.aoColumns, iFrom, iTo );
+233 	
+234 	/* Search columns */
+235 	fnArraySwitch( oSettings.aoPreSearchCols, iFrom, iTo );
+236 	
+237 	/* Array array - internal data anodes cache */
+238 	for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
+239 	{
+240 		if ( $.isArray( oSettings.aoData[i]._aData ) ) {
+241 		  fnArraySwitch( oSettings.aoData[i]._aData, iFrom, iTo );
+242 		}
+243 		fnArraySwitch( oSettings.aoData[i]._anHidden, iFrom, iTo );
+244 	}
+245 	
+246 	/* Reposition the header elements in the header layout array */
+247 	for ( i=0, iLen=oSettings.aoHeader.length ; i<iLen ; i++ )
+248 	{
+249 		fnArraySwitch( oSettings.aoHeader[i], iFrom, iTo );
+250 	}
+251 	
+252 	if ( oSettings.aoFooter !== null )
+253 	{
+254 		for ( i=0, iLen=oSettings.aoFooter.length ; i<iLen ; i++ )
+255 		{
+256 			fnArraySwitch( oSettings.aoFooter[i], iFrom, iTo );
+257 		}
+258 	}
+259 	
+260 	
+261 	/*
+262 	 * Update DataTables' event handlers
+263 	 */
+264 	
+265 	/* Sort listener */
+266 	for ( i=0, iLen=iCols ; i<iLen ; i++ )
+267 	{
+268 		$(oSettings.aoColumns[i].nTh).unbind('click');
+269 		this.oApi._fnSortAttachListener( oSettings, oSettings.aoColumns[i].nTh, i );
+270 	}
+271 	
+272 	
+273 	/*
+274 	 * Any extra operations for the other plug-ins
+275 	 */
+276 	if ( typeof ColVis != 'undefined' )
+277 	{
+278 		ColVis.fnRebuild( oSettings.oInstance );
+279 	}
+280 	
+281 	if ( typeof oSettings.oInstance._oPluginFixedHeader != 'undefined' )
+282 	{
+283 		oSettings.oInstance._oPluginFixedHeader.fnUpdate();
+284 	}
+285 };
+286 
+287 
+288 
+289 
+290 /** 
+291  * ColReorder provides column visiblity control for DataTables
+292  * @class ColReorder
+293  * @constructor
+294  * @param {object} DataTables object
+295  * @param {object} ColReorder options
+296  */
+297 ColReorder = function( oTable, oOpts )
+298 {
+299 	/* Santiy check that we are a new instance */
+300 	if ( !this.CLASS || this.CLASS != "ColReorder" )
+301 	{
+302 		alert( "Warning: ColReorder must be initialised with the keyword 'new'" );
+303 	}
+304 	
+305 	if ( typeof oOpts == 'undefined' )
+306 	{
+307 		oOpts = {};
+308 	}
+309 	
+310 	
+311 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+312 	 * Public class variables
+313 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+314 	
+315 	/**
+316 	 * @namespace Settings object which contains customisable information for ColReorder instance
+317 	 */
+318 	this.s = {
+319 		/**
+320 		 * DataTables settings object
+321 		 *  @property dt
+322 		 *  @type     Object
+323 		 *  @default  null
+324 		 */
+325 		dt: null,
+326 		
+327 		/**
+328 		 * Initialisation object used for this instance
+329 		 *  @property init
+330 		 *  @type     object
+331 		 *  @default  {}
+332 		 */
+333 		init: oOpts,
+334 		
+335 		/**
+336 		 * Number of columns to fix (not allow to be reordered)
+337 		 *  @property fixed
+338 		 *  @type     int
+339 		 *  @default  0
+340 		 */
+341 		fixed: 0,
+342 		
+343 		/**
+344 		 * Callback function for once the reorder has been done
+345 		 *  @property dropcallback
+346 		 *  @type     function
+347 		 *  @default  null
+348 		 */
+349 		dropCallback: null,
+350 		
+351 		/**
+352 		 * @namespace Information used for the mouse drag
+353 		 */
+354 		mouse: {
+355 			startX: -1,
+356 			startY: -1,
+357 			offsetX: -1,
+358 			offsetY: -1,
+359 			target: -1,
+360 			targetIndex: -1,
+361 			fromIndex: -1
+362 		},
+363 		
+364 		/**
+365 		 * Information which is used for positioning the insert cusor and knowing where to do the
+366 		 * insert. Array of objects with the properties:
+367 		 *   x: x-axis position
+368 		 *   to: insert point
+369 		 *  @property aoTargets
+370 		 *  @type     array
+371 		 *  @default  []
+372 		 */
+373 		aoTargets: []
+374 	};
+375 	
+376 	
+377 	/**
+378 	 * @namespace Common and useful DOM elements for the class instance
+379 	 */
+380 	this.dom = {
+381 		/**
+382 		 * Dragging element (the one the mouse is moving)
+383 		 *  @property drag
+384 		 *  @type     element
+385 		 *  @default  null
+386 		 */
+387 		drag: null,
+388 		
+389 		/**
+390 		 * The insert cursor
+391 		 *  @property pointer
+392 		 *  @type     element
+393 		 *  @default  null
+394 		 */
+395 		pointer: null
+396 	};
+397 	
+398 	
+399 	/* Constructor logic */
+400 	this.s.dt = oTable.fnSettings();
+401 	this._fnConstruct();
+402 	
+403 	/* Store the instance for later use */
+404 	ColReorder.aoInstances.push( this );
+405 	return this;
+406 };
+407 
+408 
+409 
+410 ColReorder.prototype = {
+411 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+412 	 * Public methods
+413 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+414 	
+415 	fnReset: function ()
+416 	{
+417 		var a = [];
+418 		for ( var i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+419 		{
+420 			a.push( this.s.dt.aoColumns[i]._ColReorder_iOrigCol );
+421 		}
+422 		
+423 		this._fnOrderColumns( a );
+424 	},
+425 	
+426 	
+427 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+428 	 * Private methods (they are of course public in JS, but recommended as private)
+429 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+430 	
+431 	/**
+432 	 * Constructor logic
+433 	 *  @method  _fnConstruct
+434 	 *  @returns void
+435 	 *  @private 
+436 	 */
+437 	_fnConstruct: function ()
+438 	{
+439 		var that = this;
+440 		var i, iLen;
+441 		
+442 		/* Columns discounted from reordering - counting left to right */
+443 		if ( typeof this.s.init.iFixedColumns != 'undefined' )
+444 		{
+445 			this.s.fixed = this.s.init.iFixedColumns;
+446 		}
+447 		
+448 		/* Drop callback initialisation option */
+449 		if ( typeof this.s.init.fnReorderCallback != 'undefined' )
+450 		{
+451 			this.s.dropCallback = this.s.init.fnReorderCallback;
+452 		}
+453 		
+454 		/* Add event handlers for the drag and drop, and also mark the original column order */
+455 		for ( i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+456 		{
+457 			if ( i > this.s.fixed-1 )
+458 			{
+459 				this._fnMouseListener( i, this.s.dt.aoColumns[i].nTh );
+460 			}
+461 			
+462 			/* Mark the original column order for later reference */
+463 			this.s.dt.aoColumns[i]._ColReorder_iOrigCol = i;
+464 		}
+465 		
+466 		/* State saving */
+467 		this.s.dt.aoStateSave.push( {
+468 			fn: function (oS, sVal) {
+469 				return that._fnStateSave.call( that, sVal );
+470 			},
+471 			sName: "ColReorder_State"
+472 		} );
+473 		
+474 		/* An initial column order has been specified */
+475 		var aiOrder = null;
+476 		if ( typeof this.s.init.aiOrder != 'undefined' )
+477 		{
+478 			aiOrder = this.s.init.aiOrder.slice();
+479 		}
+480 		
+481 		/* State loading, overrides the column order given */
+482 		if ( this.s.dt.oLoadedState && typeof this.s.dt.oLoadedState.ColReorder != 'undefined' &&
+483 		  this.s.dt.oLoadedState.ColReorder.length == this.s.dt.aoColumns.length )
+484 		{
+485 			aiOrder = this.s.dt.oLoadedState.ColReorder;
+486 		}
+487 		
+488 		/* If we have an order to apply - do so */
+489 		if ( aiOrder )
+490 		{
+491 			/* We might be called during or after the DataTables initialisation. If before, then we need
+492 			 * to wait until the draw is done, if after, then do what we need to do right away
+493 			 */
+494 			if ( !that.s.dt._bInitComplete )
+495 			{
+496 				var bDone = false;
+497 				this.s.dt.aoDrawCallback.push( {
+498 					fn: function () {
+499 						if ( !that.s.dt._bInitComplete && !bDone )
+500 						{
+501 							bDone = true;
+502 							var resort = fnInvertKeyValues( aiOrder );
+503 							that._fnOrderColumns.call( that, resort );
+504 						}
+505 					},
+506 					sName: "ColReorder_Pre"
+507 				} );
+508 			}
+509 			else
+510 			{
+511 				var resort = fnInvertKeyValues( aiOrder );
+512 				that._fnOrderColumns.call( that, resort );
+513 			}
+514 		}
+515 	},
+516 	
+517 	
+518 	/**
+519 	 * Set the column order from an array
+520 	 *  @method  _fnOrderColumns
+521 	 *  @param   array a An array of integers which dictate the column order that should be applied
+522 	 *  @returns void
+523 	 *  @private 
+524 	 */
+525 	_fnOrderColumns: function ( a )
+526 	{
+527 		if ( a.length != this.s.dt.aoColumns.length )
+528 		{
+529 			this.s.dt.oInstance.oApi._fnLog( oDTSettings, 1, "ColReorder - array reorder does not "+
+530 			 	"match known number of columns. Skipping." );
+531 			return;
+532 		}
+533 		
+534 		for ( var i=0, iLen=a.length ; i<iLen ; i++ )
+535 		{
+536 			var currIndex = $.inArray( i, a );
+537 			if ( i != currIndex )
+538 			{
+539 				/* Reorder our switching array */
+540 				fnArraySwitch( a, currIndex, i );
+541 				
+542 				/* Do the column reorder in the table */
+543 				this.s.dt.oInstance.fnColReorder( currIndex, i );
+544 			}
+545 		}
+546 		
+547 		/* When scrolling we need to recalculate the column sizes to allow for the shift */
+548 		if ( this.s.dt.oScroll.sX !== "" || this.s.dt.oScroll.sY !== "" )
+549 		{
+550 			this.s.dt.oInstance.fnAdjustColumnSizing();
+551 		}
+552 			
+553 		/* Save the state */
+554 		this.s.dt.oInstance.oApi._fnSaveState( this.s.dt );
+555 	},
+556 	
+557 	
+558 	/**
+559 	 * This function effectively replaces the state saving function in DataTables (this is needed
+560 	 * because otherwise DataTables would state save the columns in their reordered state, not the
+561 	 * original which is needed on first draw). This is sensitive to any changes in the DataTables
+562 	 * state saving method!
+563 	 *  @method  _fnStateSave
+564 	 *  @param   string sCurrentVal 
+565 	 *  @returns string JSON encoded cookie string for DataTables
+566 	 *  @private 
+567 	 */
+568 	_fnStateSave: function ( sCurrentVal )
+569 	{
+570 		var i, iLen, sTmp;
+571 		var sValue = sCurrentVal.split('"aaSorting"')[0];
+572 		var a = [];
+573 		var oSettings = this.s.dt;
+574 		
+575 		/* Sorting */
+576 		sValue += '"aaSorting":[ ';
+577 		for ( i=0 ; i<oSettings.aaSorting.length ; i++ )
+578 		{
+579 			sValue += '['+oSettings.aoColumns[ oSettings.aaSorting[i][0] ]._ColReorder_iOrigCol+
+580 				',"'+oSettings.aaSorting[i][1]+'"],';
+581 		}
+582 		sValue = sValue.substring(0, sValue.length-1);
+583 		sValue += "],";
+584 		
+585 		/* Column filter */
+586 		for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
+587 		{
+588 			a[ oSettings.aoColumns[i]._ColReorder_iOrigCol ] = {
+589 				sSearch: encodeURIComponent(oSettings.aoPreSearchCols[i].sSearch),
+590 				bRegex: !oSettings.aoPreSearchCols[i].bRegex
+591 			};
+592 		}
+593 		
+594 		sValue += '"aaSearchCols":[ ';
+595 		for ( i=0 ; i<a.length ; i++ )
+596 		{
+597 			sValue += '["'+a[i].sSearch+'",'+a[i].bRegex+'],';
+598 		}
+599 		sValue = sValue.substring(0, sValue.length-1);
+600 		sValue += "],";
+601 		
+602 		/* Visibility */
+603 		a = [];
+604 		for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
+605 		{
+606 			a[ oSettings.aoColumns[i]._ColReorder_iOrigCol ] = oSettings.aoColumns[i].bVisible;
+607 		}
+608 		
+609 		sValue += '"abVisCols":[ ';
+610 		for ( i=0 ; i<a.length ; i++ )
+611 		{
+612 			sValue += a[i]+",";
+613 		}
+614 		sValue = sValue.substring(0, sValue.length-1);
+615 		sValue += "],";
+616 		
+617 		/* Column reordering */
+618 		a = [];
+619 		for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ ) {
+620 			a.push( oSettings.aoColumns[i]._ColReorder_iOrigCol );
+621 		}
+622 		sValue += '"ColReorder":['+a.join(',')+']';
+623 		
+624 		return sValue;
+625 	},
+626 	
+627 	
+628 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+629 	 * Mouse drop and drag
+630 	 */
+631 	
+632 	/**
+633 	 * Add a mouse down listener to a particluar TH element
+634 	 *  @method  _fnMouseListener
+635 	 *  @param   int i Column index
+636 	 *  @param   element nTh TH element clicked on
+637 	 *  @returns void
+638 	 *  @private 
+639 	 */
+640 	_fnMouseListener: function ( i, nTh )
+641 	{
+642 		var that = this;
+643 		$(nTh).bind( 'mousedown.ColReorder', function (e) {
+644 			that._fnMouseDown.call( that, e, nTh );
+645 			return false;
+646 		} );
+647 	},
+648 	
+649 	
+650 	/**
+651 	 * Mouse down on a TH element in the table header
+652 	 *  @method  _fnMouseDown
+653 	 *  @param   event e Mouse event
+654 	 *  @param   element nTh TH element to be dragged
+655 	 *  @returns void
+656 	 *  @private 
+657 	 */
+658 	_fnMouseDown: function ( e, nTh )
+659 	{
+660 		var
+661 			that = this,
+662 			aoColumns = this.s.dt.aoColumns;
+663 		
+664 		/* Store information about the mouse position */
+665 		var nThTarget = e.target.nodeName == "TH" ? e.target : $(e.target).parents('TH')[0];
+666 		var offset = $(nThTarget).offset();
+667 		this.s.mouse.startX = e.pageX;
+668 		this.s.mouse.startY = e.pageY;
+669 		this.s.mouse.offsetX = e.pageX - offset.left;
+670 		this.s.mouse.offsetY = e.pageY - offset.top;
+671 		this.s.mouse.target = nTh;
+672 		this.s.mouse.targetIndex = $('th', nTh.parentNode).index( nTh );
+673 		this.s.mouse.fromIndex = this.s.dt.oInstance.oApi._fnVisibleToColumnIndex( this.s.dt, 
+674 			this.s.mouse.targetIndex );
+675 		
+676 		/* Calculate a cached array with the points of the column inserts, and the 'to' points */
+677 		this.s.aoTargets.splice( 0, this.s.aoTargets.length );
+678 		
+679 		this.s.aoTargets.push( {
+680 			x:  $(this.s.dt.nTable).offset().left,
+681 			to: 0
+682 		} );
+683 		
+684 		var iToPoint = 0;
+685 		for ( var i=0, iLen=aoColumns.length ; i<iLen ; i++ )
+686 		{
+687 			/* For the column / header in question, we want it's position to remain the same if the 
+688 			 * position is just to it's immediate left or right, so we only incremement the counter for
+689 			 * other columns
+690 			 */
+691 			if ( i != this.s.mouse.fromIndex )
+692 			{
+693 				iToPoint++;
+694 			}
+695 			
+696 			if ( aoColumns[i].bVisible )
+697 			{
+698 				this.s.aoTargets.push( {
+699 					x:  $(aoColumns[i].nTh).offset().left + $(aoColumns[i].nTh).outerWidth(),
+700 					to: iToPoint
+701 				} );
+702 			}
+703 		}
+704 		
+705 		/* Disallow columns for being reordered by drag and drop, counting left to right */
+706 		if ( this.s.fixed !== 0 )
+707 		{
+708 			this.s.aoTargets.splice( 0, this.s.fixed );
+709 		}
+710 		
+711 		/* Add event handlers to the document */
+712 		$(document).bind( 'mousemove.ColReorder', function (e) {
+713 			that._fnMouseMove.call( that, e );
+714 		} );
+715 		
+716 		$(document).bind( 'mouseup.ColReorder', function (e) {
+717 			that._fnMouseUp.call( that, e );
+718 		} );
+719 	},
+720 	
+721 	
+722 	/**
+723 	 * Deal with a mouse move event while dragging a node
+724 	 *  @method  _fnMouseMove
+725 	 *  @param   event e Mouse event
+726 	 *  @returns void
+727 	 *  @private 
+728 	 */
+729 	_fnMouseMove: function ( e )
+730 	{
+731 		var that = this;
+732 		
+733 		if ( this.dom.drag === null )
+734 		{
+735 			/* Only create the drag element if the mouse has moved a specific distance from the start
+736 			 * point - this allows the user to make small mouse movements when sorting and not have a
+737 			 * possibly confusing drag element showing up
+738 			 */
+739 			if ( Math.pow(
+740 				Math.pow(e.pageX - this.s.mouse.startX, 2) + 
+741 				Math.pow(e.pageY - this.s.mouse.startY, 2), 0.5 ) < 5 )
+742 			{
+743 				return;
+744 			}
+745 			this._fnCreateDragNode();
+746 		}
+747 		
+748 		/* Position the element - we respect where in the element the click occured */
+749 		this.dom.drag.style.left = (e.pageX - this.s.mouse.offsetX) + "px";
+750 		this.dom.drag.style.top = (e.pageY - this.s.mouse.offsetY) + "px";
+751 		
+752 		/* Based on the current mouse position, calculate where the insert should go */
+753 		var bSet = false;
+754 		for ( var i=1, iLen=this.s.aoTargets.length ; i<iLen ; i++ )
+755 		{
+756 			if ( e.pageX < this.s.aoTargets[i-1].x + ((this.s.aoTargets[i].x-this.s.aoTargets[i-1].x)/2) )
+757 			{
+758 				this.dom.pointer.style.left = this.s.aoTargets[i-1].x +"px";
+759 				this.s.mouse.toIndex = this.s.aoTargets[i-1].to;
+760 				bSet = true;
+761 				break;
+762 			}
+763 		}
+764 		
+765 		/* The insert element wasn't positioned in the array (less than operator), so we put it at 
+766 		 * the end
+767 		 */
+768 		if ( !bSet )
+769 		{
+770 			this.dom.pointer.style.left = this.s.aoTargets[this.s.aoTargets.length-1].x +"px";
+771 			this.s.mouse.toIndex = this.s.aoTargets[this.s.aoTargets.length-1].to;
+772 		}
+773 	},
+774 	
+775 	
+776 	/**
+777 	 * Finish off the mouse drag and insert the column where needed
+778 	 *  @method  _fnMouseUp
+779 	 *  @param   event e Mouse event
+780 	 *  @returns void
+781 	 *  @private 
+782 	 */
+783 	_fnMouseUp: function ( e )
+784 	{
+785 		var that = this;
+786 		
+787 		$(document).unbind( 'mousemove.ColReorder' );
+788 		$(document).unbind( 'mouseup.ColReorder' );
+789 		
+790 		if ( this.dom.drag !== null )
+791 		{
+792 			/* Remove the guide elements */
+793 			document.body.removeChild( this.dom.drag );
+794 			document.body.removeChild( this.dom.pointer );
+795 			this.dom.drag = null;
+796 			this.dom.pointer = null;
+797 			
+798 			/* Actually do the reorder */
+799 			this.s.dt.oInstance.fnColReorder( this.s.mouse.fromIndex, this.s.mouse.toIndex );
+800 			
+801 			/* When scrolling we need to recalculate the column sizes to allow for the shift */
+802 			if ( this.s.dt.oScroll.sX !== "" || this.s.dt.oScroll.sY !== "" )
+803 			{
+804 				this.s.dt.oInstance.fnAdjustColumnSizing();
+805 			}
+806 			
+807 			if ( this.s.dropCallback !== null )
+808 			{
+809 				this.s.dropCallback.call( this );
+810 			}
+811 			
+812 			/* Save the state */
+813 			this.s.dt.oInstance.oApi._fnSaveState( this.s.dt );
+814 		}
+815 	},
+816 	
+817 	
+818 	/**
+819 	 * Copy the TH element that is being drags so the user has the idea that they are actually 
+820 	 * moving it around the page.
+821 	 *  @method  _fnCreateDragNode
+822 	 *  @returns void
+823 	 *  @private 
+824 	 */
+825 	_fnCreateDragNode: function ()
+826 	{
+827 		var that = this;
+828 		
+829 		this.dom.drag = $(this.s.dt.nTHead.parentNode).clone(true)[0];
+830 		this.dom.drag.className += " DTCR_clonedTable";
+831 		while ( this.dom.drag.getElementsByTagName('caption').length > 0 )
+832 		{
+833 			this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('caption')[0] );
+834 		}
+835 		while ( this.dom.drag.getElementsByTagName('tbody').length > 0 )
+836 		{
+837 			this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('tbody')[0] );
+838 		}
+839 		while ( this.dom.drag.getElementsByTagName('tfoot').length > 0 )
+840 		{
+841 			this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('tfoot')[0] );
+842 		}
+843 		
+844 		$('thead tr:eq(0)', this.dom.drag).each( function () {
+845 			$('th:not(:eq('+that.s.mouse.targetIndex+'))', this).remove();
+846 		} );
+847 		$('tr', this.dom.drag).height( $('tr:eq(0)', that.s.dt.nTHead).height() );
+848 		
+849 		$('thead tr:gt(0)', this.dom.drag).remove();
+850 		
+851 		$('thead th:eq(0)', this.dom.drag).each( function (i) {
+852 			this.style.width = $('th:eq('+that.s.mouse.targetIndex+')', that.s.dt.nTHead).width()+"px";
+853 		} );
+854 		
+855 		this.dom.drag.style.position = "absolute";
+856 		this.dom.drag.style.top = "0px";
+857 		this.dom.drag.style.left = "0px";
+858 		this.dom.drag.style.width = $('th:eq('+that.s.mouse.targetIndex+')', that.s.dt.nTHead).outerWidth()+"px";
+859 		
+860 		
+861 		this.dom.pointer = document.createElement( 'div' );
+862 		this.dom.pointer.className = "DTCR_pointer";
+863 		this.dom.pointer.style.position = "absolute";
+864 		
+865 		if ( this.s.dt.oScroll.sX === "" && this.s.dt.oScroll.sY === "" )
+866 		{
+867 			this.dom.pointer.style.top = $(this.s.dt.nTable).offset().top+"px";
+868 			this.dom.pointer.style.height = $(this.s.dt.nTable).height()+"px";
+869 		}
+870 		else
+871 		{
+872 			this.dom.pointer.style.top = $('div.dataTables_scroll', this.s.dt.nTableWrapper).offset().top+"px";
+873 			this.dom.pointer.style.height = $('div.dataTables_scroll', this.s.dt.nTableWrapper).height()+"px";
+874 		}
+875 	
+876 		document.body.appendChild( this.dom.pointer );
+877 		document.body.appendChild( this.dom.drag );
+878 	}
+879 };
+880 
+881 
+882 
+883 
+884 
+885 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+886  * Static parameters
+887  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+888 
+889 /**
+890  * Array of all ColReorder instances for later reference
+891  *  @property ColReorder.aoInstances
+892  *  @type     array
+893  *  @default  []
+894  *  @static
+895  */
+896 ColReorder.aoInstances = [];
+897 
+898 
+899 
+900 
+901 
+902 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+903  * Static functions
+904  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+905 
+906 /**
+907  * Reset the column ordering for a DataTables instance
+908  *  @method  ColReorder.fnReset
+909  *  @param   object oTable DataTables instance to consider
+910  *  @returns void
+911  *  @static
+912  */
+913 ColReorder.fnReset = function ( oTable )
+914 {
+915 	for ( var i=0, iLen=ColReorder.aoInstances.length ; i<iLen ; i++ )
+916 	{
+917 		if ( ColReorder.aoInstances[i].s.dt.oInstance == oTable )
+918 		{
+919 			ColReorder.aoInstances[i].fnReset();
+920 		}
+921 	}
+922 };
+923 
+924 
+925 
+926 
+927 
+928 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+929  * Constants
+930  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+931 
+932 /**
+933  * Name of this class
+934  *  @constant CLASS
+935  *  @type     String
+936  *  @default  ColReorder
+937  */
+938 ColReorder.prototype.CLASS = "ColReorder";
+939 
+940 
+941 /**
+942  * ColReorder version
+943  *  @constant  VERSION
+944  *  @type      String
+945  *  @default   As code
+946  */
+947 ColReorder.VERSION = "1.0.4";
+948 ColReorder.prototype.VERSION = ColReorder.VERSION;
+949 
+950 
+951 
+952 
+953 
+954 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+955  * Initialisation
+956  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+957 
+958 /*
+959  * Register a new feature with DataTables
+960  */
+961 if ( typeof $.fn.dataTable == "function" &&
+962      typeof $.fn.dataTableExt.fnVersionCheck == "function" &&
+963      $.fn.dataTableExt.fnVersionCheck('1.8.0') )
+964 {
+965 	$.fn.dataTableExt.aoFeatures.push( {
+966 		fnInit: function( oDTSettings ) {
+967 			var oTable = oDTSettings.oInstance;
+968 			if ( typeof oTable._oPluginColReorder == 'undefined' ) {
+969 				var opts = typeof oDTSettings.oInit.oColReorder != 'undefined' ? 
+970 					oDTSettings.oInit.oColReorder : {};
+971 				oTable._oPluginColReorder = new ColReorder( oDTSettings.oInstance, opts );
+972 			} else {
+973 				oTable.oApi._fnLog( oDTSettings, 1, "ColReorder attempted to initialise twice. Ignoring second" );
+974 			}
+975 			
+976 			return null; /* No node to insert */
+977 		},
+978 		cFeature: "R",
+979 		sFeature: "ColReorder"
+980 	} );
+981 }
+982 else
+983 {
+984 	alert( "Warning: ColReorder requires DataTables 1.8.0 or greater - www.datatables.net/download");
+985 }
+986 
+987 })(jQuery, window, document);
+988 
\ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/images/insert.png b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/images/insert.png new file mode 100644 index 000000000..15d5522da Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/images/insert.png differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/js/ColReorder.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/js/ColReorder.js new file mode 100644 index 000000000..832ede830 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/media/js/ColReorder.js @@ -0,0 +1,987 @@ +/* + * File: ColReorder.js + * Version: 1.0.4 + * CVS: $Id$ + * Description: Controls for column visiblity in DataTables + * Author: Allan Jardine (www.sprymedia.co.uk) + * Created: Wed Sep 15 18:23:29 BST 2010 + * Modified: $Date$ by $Author$ + * Language: Javascript + * License: GPL v2 or BSD 3 point style + * Project: DataTables + * Contact: www.sprymedia.co.uk/contact + * + * Copyright 2010-2011 Allan Jardine, all rights reserved. + * + * This source file is free software, under either the GPL v2 license or a + * BSD style license, available at: + * http://datatables.net/license_gpl2 + * http://datatables.net/license_bsd + * + */ + + +(function($, window, document) { + + +/** + * Switch the key value pairing of an index array to be value key (i.e. the old value is now the + * key). For example consider [ 2, 0, 1 ] this would be returned as [ 1, 2, 0 ]. + * @method fnInvertKeyValues + * @param array aIn Array to switch around + * @returns array + */ +function fnInvertKeyValues( aIn ) +{ + var aRet=[]; + for ( var i=0, iLen=aIn.length ; i= iCols ) + { + this.oApi._fnLog( oSettings, 1, "ColReorder 'from' index is out of bounds: "+iFrom ); + return; + } + + if ( iTo < 0 || iTo >= iCols ) + { + this.oApi._fnLog( oSettings, 1, "ColReorder 'to' index is out of bounds: "+iTo ); + return; + } + + /* + * Calculate the new column array index, so we have a mapping between the old and new + */ + var aiMapping = []; + for ( i=0, iLen=iCols ; i this.s.fixed-1 ) + { + this._fnMouseListener( i, this.s.dt.aoColumns[i].nTh ); + } + + /* Mark the original column order for later reference */ + this.s.dt.aoColumns[i]._ColReorder_iOrigCol = i; + } + + /* State saving */ + this.s.dt.aoStateSave.push( { + "fn": function (oS, sVal) { + return that._fnStateSave.call( that, sVal ); + }, + "sName": "ColReorder_State" + } ); + + /* An initial column order has been specified */ + var aiOrder = null; + if ( typeof this.s.init.aiOrder != 'undefined' ) + { + aiOrder = this.s.init.aiOrder.slice(); + } + + /* State loading, overrides the column order given */ + if ( this.s.dt.oLoadedState && typeof this.s.dt.oLoadedState.ColReorder != 'undefined' && + this.s.dt.oLoadedState.ColReorder.length == this.s.dt.aoColumns.length ) + { + aiOrder = this.s.dt.oLoadedState.ColReorder; + } + + /* If we have an order to apply - do so */ + if ( aiOrder ) + { + /* We might be called during or after the DataTables initialisation. If before, then we need + * to wait until the draw is done, if after, then do what we need to do right away + */ + if ( !that.s.dt._bInitComplete ) + { + var bDone = false; + this.s.dt.aoDrawCallback.push( { + "fn": function () { + if ( !that.s.dt._bInitComplete && !bDone ) + { + bDone = true; + var resort = fnInvertKeyValues( aiOrder ); + that._fnOrderColumns.call( that, resort ); + } + }, + "sName": "ColReorder_Pre" + } ); + } + else + { + var resort = fnInvertKeyValues( aiOrder ); + that._fnOrderColumns.call( that, resort ); + } + } + }, + + + /** + * Set the column order from an array + * @method _fnOrderColumns + * @param array a An array of integers which dictate the column order that should be applied + * @returns void + * @private + */ + "_fnOrderColumns": function ( a ) + { + if ( a.length != this.s.dt.aoColumns.length ) + { + this.s.dt.oInstance.oApi._fnLog( oDTSettings, 1, "ColReorder - array reorder does not "+ + "match known number of columns. Skipping." ); + return; + } + + for ( var i=0, iLen=a.length ; i 0 ) + { + this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('caption')[0] ); + } + while ( this.dom.drag.getElementsByTagName('tbody').length > 0 ) + { + this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('tbody')[0] ); + } + while ( this.dom.drag.getElementsByTagName('tfoot').length > 0 ) + { + this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('tfoot')[0] ); + } + + $('thead tr:eq(0)', this.dom.drag).each( function () { + $('th:not(:eq('+that.s.mouse.targetIndex+'))', this).remove(); + } ); + $('tr', this.dom.drag).height( $('tr:eq(0)', that.s.dt.nTHead).height() ); + + $('thead tr:gt(0)', this.dom.drag).remove(); + + $('thead th:eq(0)', this.dom.drag).each( function (i) { + this.style.width = $('th:eq('+that.s.mouse.targetIndex+')', that.s.dt.nTHead).width()+"px"; + } ); + + this.dom.drag.style.position = "absolute"; + this.dom.drag.style.top = "0px"; + this.dom.drag.style.left = "0px"; + this.dom.drag.style.width = $('th:eq('+that.s.mouse.targetIndex+')', that.s.dt.nTHead).outerWidth()+"px"; + + + this.dom.pointer = document.createElement( 'div' ); + this.dom.pointer.className = "DTCR_pointer"; + this.dom.pointer.style.position = "absolute"; + + if ( this.s.dt.oScroll.sX === "" && this.s.dt.oScroll.sY === "" ) + { + this.dom.pointer.style.top = $(this.s.dt.nTable).offset().top+"px"; + this.dom.pointer.style.height = $(this.s.dt.nTable).height()+"px"; + } + else + { + this.dom.pointer.style.top = $('div.dataTables_scroll', this.s.dt.nTableWrapper).offset().top+"px"; + this.dom.pointer.style.height = $('div.dataTables_scroll', this.s.dt.nTableWrapper).height()+"px"; + } + + document.body.appendChild( this.dom.pointer ); + document.body.appendChild( this.dom.drag ); + } +}; + + + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Static parameters + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + +/** + * Array of all ColReorder instances for later reference + * @property ColReorder.aoInstances + * @type array + * @default [] + * @static + */ +ColReorder.aoInstances = []; + + + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Static functions + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + +/** + * Reset the column ordering for a DataTables instance + * @method ColReorder.fnReset + * @param object oTable DataTables instance to consider + * @returns void + * @static + */ +ColReorder.fnReset = function ( oTable ) +{ + for ( var i=0, iLen=ColReorder.aoInstances.length ; i=h)this.oApi._fnLog(a,1,"ColReorder 'from' index is out of bounds: "+c);else if(d<0||d>= +h)this.oApi._fnLog(a,1,"ColReorder 'to' index is out of bounds: "+d);else{g=[];b=0;for(e=h;bthis.s.fixed-1&&this._fnMouseListener(c,this.s.dt.aoColumns[c].nTh);this.s.dt.aoColumns[c]._ColReorder_iOrigCol= +c}this.s.dt.aoStateSave.push({fn:function(h,g){return a._fnStateSave.call(a,g)},sName:"ColReorder_State"});var b=null;if(typeof this.s.init.aiOrder!="undefined")b=this.s.init.aiOrder.slice();if(this.s.dt.oLoadedState&&typeof this.s.dt.oLoadedState.ColReorder!="undefined"&&this.s.dt.oLoadedState.ColReorder.length==this.s.dt.aoColumns.length)b=this.s.dt.oLoadedState.ColReorder;if(b)if(a.s.dt._bInitComplete){c=m(b);a._fnOrderColumns.call(a,c)}else{var e=false;this.s.dt.aoDrawCallback.push({fn:function(){if(!a.s.dt._bInitComplete&& +!e){e=true;var h=m(b);a._fnOrderColumns.call(a,h)}},sName:"ColReorder_Pre"})}},_fnOrderColumns:function(a){if(a.length!=this.s.dt.aoColumns.length)this.s.dt.oInstance.oApi._fnLog(oDTSettings,1,"ColReorder - array reorder does not match known number of columns. Skipping.");else{for(var c=0,d=a.length;c0;)this.dom.drag.removeChild(this.dom.drag.getElementsByTagName("caption")[0]);for(;this.dom.drag.getElementsByTagName("tbody").length>0;)this.dom.drag.removeChild(this.dom.drag.getElementsByTagName("tbody")[0]);for(;this.dom.drag.getElementsByTagName("tfoot").length> +0;)this.dom.drag.removeChild(this.dom.drag.getElementsByTagName("tfoot")[0]);f("thead tr:eq(0)",this.dom.drag).each(function(){f("th:not(:eq("+a.s.mouse.targetIndex+"))",this).remove()});f("tr",this.dom.drag).height(f("tr:eq(0)",a.s.dt.nTHead).height());f("thead tr:gt(0)",this.dom.drag).remove();f("thead th:eq(0)",this.dom.drag).each(function(){this.style.width=f("th:eq("+a.s.mouse.targetIndex+")",a.s.dt.nTHead).width()+"px"});this.dom.drag.style.position="absolute";this.dom.drag.style.top="0px"; +this.dom.drag.style.left="0px";this.dom.drag.style.width=f("th:eq("+a.s.mouse.targetIndex+")",a.s.dt.nTHead).outerWidth()+"px";this.dom.pointer=i.createElement("div");this.dom.pointer.className="DTCR_pointer";this.dom.pointer.style.position="absolute";if(this.s.dt.oScroll.sX===""&&this.s.dt.oScroll.sY===""){this.dom.pointer.style.top=f(this.s.dt.nTable).offset().top+"px";this.dom.pointer.style.height=f(this.s.dt.nTable).height()+"px"}else{this.dom.pointer.style.top=f("div.dataTables_scroll",this.s.dt.nTableWrapper).offset().top+ +"px";this.dom.pointer.style.height=f("div.dataTables_scroll",this.s.dt.nTableWrapper).height()+"px"}i.body.appendChild(this.dom.pointer);i.body.appendChild(this.dom.drag)}};ColReorder.aoInstances=[];ColReorder.fnReset=function(a){for(var c=0,d=ColReorder.aoInstances.length;c + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with predefined column ordering +
+ +

Preamble

+

ColReorder provides the ability to specify a column ordering which is not that of the + HTML (which typically you will want) through the parameter oColReorder.aiOrder. This is + an array of integers with the column ordering you want.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"oColReorder": {
+			"aiOrder": [ 4, 3, 2, 1, 0 ]
+		}
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/reset.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/reset.html new file mode 100644 index 000000000..60dca5d99 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/reset.html @@ -0,0 +1,533 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with the ability to reset the ordering +
+ +

Preamble

+

One useful control option to present the end user when using ColReorder is the ability + to reset the column ordering to that which was found in the HTML. This can be done by + calling the fnReset API function. While ColReorder does not provide a visual element for + this itself (in order to provide maximum flexibility) it is easy to hook to an event + handler, as shown in this example.

+ +

Live example

+
+
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"oColReorder": {
+			"aiOrder": [ 4, 3, 2, 1, 0 ]
+		}
+	} );
+	
+	$('#reset').click( function () {
+		ColReorder.fnReset( oTable );
+		return false;
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/scrolling.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/scrolling.html new file mode 100644 index 000000000..b91577ab8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/scrolling.html @@ -0,0 +1,497 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with scrolling +
+ +

Preamble

+

This is a simple example to show ColReorder working with DataTables scrolling.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"sScrollY": "200px",
+		"bPaginate": false
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/server_side.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/server_side.html new file mode 100644 index 000000000..834773603 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/server_side.html @@ -0,0 +1,150 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with server-side processing +
+ +

Preamble

+

Server-side processing can be exceptionally useful in DataTables when dealing with + massive data sets, and ColReorder works with this as would be expected. There must be + special consideration for the column ordering on the server-side script since the + columns can be in an unexpected order. For this you can either choose to use the + sName parameter for each column and take this into account in the server-side + script (the parameter 'sColumns' is a comma separated string of these sName parameters).

+ +

Alternatively use the more flexible mDataProp + option for each column. This allows you to use JSON objects which DataTables, so order doesn't + matter like it would do in an array. Again the server-side script must take this into account + through the mDataProp_{i} which is sent for each column (so the server knows which + column is to be sorted on).

+ + +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"bProcessing": true,
+		"bServerSide": true,
+		"sAjaxSource": "../../examples/server_side/scripts/objects.php",
+		"aoColumns": [
+			{ "mDataProp": "engine" },
+			{ "mDataProp": "browser" },
+			{ "mDataProp": "platform" },
+			{ "mDataProp": "version" },
+			{ "mDataProp": "grade" }
+		]
+	} );
+} );
+ +

Example JSON return from the server

+
{
+"sEcho": 1,
+"iTotalRecords": "57",
+"iTotalDisplayRecords": "57",
+"aaData": [
+    {
+        "engine": "Gecko",
+        "browser": "Firefox 1.0",
+        "platform": "Win 98+ / OSX.2+",
+        "version": "1.7",
+        "grade": "A"
+    },
+    {
+        "engine": "Gecko",
+        "browser": "Firefox 1.5",
+        "platform": "Win 98+ / OSX.2+",
+        "version": "1.8",
+        "grade": "A"
+    },
+    ...
+  ]
+}
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/state_save.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/state_save.html new file mode 100644 index 000000000..bbfb425a1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/state_save.html @@ -0,0 +1,498 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with state saving +
+ +

Preamble

+

A useful interaction pattern to use in DataTables is state saving, so when the end user + reloads or revisits a page its previous state is retained. ColReorder works seamlessly + with state saving in DataTables, remembering and restoring the column positions, as well + as everything else such as sorting and filtering.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"bStateSave": true
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/theme.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/theme.html new file mode 100644 index 000000000..5efaab48e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/ColReorder/theme.html @@ -0,0 +1,500 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with jQuery UI theming +
+ +

Preamble

+

This example shows how the jQuery UI ThemeRoller option in DataTables can be used + with ColReorder. The important thing to node here is how sDom is set up in order to + include the required classes and elements.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'R<"H"lfr>t<"F"ip<',
+		"bJQueryUI": true,
+		"sPaginationType": "full_numbers"
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/alt_insert.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/alt_insert.html new file mode 100644 index 000000000..4f04fa481 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/alt_insert.html @@ -0,0 +1,495 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with alternative insert styling +
+ +

Preamble

+

Using CSS it is relatively easy to modify the insert bar to suit your web-site. This + example shows how an arrow can be used to show the insert point rather than the straight + bar used in the other examples.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip'
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/col_filter.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/col_filter.html new file mode 100644 index 000000000..ec783091c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/col_filter.html @@ -0,0 +1,586 @@ + + + + + + + ColReorder example + + + + + + + + +
+
+ ColReorder example with individual column filtering +
+ +

Preamble

+

This example of how to use ColReorder shows quite a number of different interesting + properties. Firstly, there is integration with ColVis, then there is the fact that there + is more than one row in the table header with the second being used for the input + elements, and finally of course the filtering itself. Note that it is important to use + the _fnVisibleToColumnIndex() internal function to calculate which column index should + be given to fnFilter (or you could employ your own methods).

+

Please note that this demo requires DataTables 1.7.5 or later.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready(function() {
+	var oTable;
+	
+	/* Add the events etc before DataTables hides a column */
+	$("thead input").keyup( function () {
+		/* Filter on the column (the index) of this element */
+		oTable.fnFilter( this.value, oTable.oApi._fnVisibleToColumnIndex( 
+			oTable.fnSettings(), $("thead input").index(this) ) );
+	} );
+	
+	/*
+	 * Support functions to provide a little bit of 'user friendlyness' to the textboxes
+	 */
+	$("thead input").each( function (i) {
+		this.initVal = this.value;
+	} );
+	
+	$("thead input").focus( function () {
+		if ( this.className == "search_init" )
+		{
+			this.className = "";
+			this.value = "";
+		}
+	} );
+	
+	$("thead input").blur( function (i) {
+		if ( this.value == "" )
+		{
+			this.className = "search_init";
+			this.value = this.initVal;
+		}
+	} );
+	
+	oTable = $('#example').dataTable( {
+		"sDom": 'RC<"clear">lfrtip',
+		"aoColumnDefs": [
+			{ "bVisible": false, "aTargets": [ 2 ] }
+		],
+		"oLanguage": {
+			"sSearch": "Search all columns:"
+		}
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/colvis.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/colvis.html new file mode 100644 index 000000000..b7b15e65e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/colvis.html @@ -0,0 +1,503 @@ + + + + + + + ColReorder example + + + + + + + + +
+
+ ColReorder example with ColVis +
+ +

Preamble

+

The ColReorder plug-in interacts with the ColVis plug-in for DataTables by updating the + order of the list of columns whenever a reorder is done. This is shown in the example + below, where one column has been hidden by default to add extra emphasis to ColVis.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'RC<"clear">lfrtip',
+		"aoColumnDefs": [
+			{ "bVisible": false, "aTargets": [ 1 ] }
+		]
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/fixedcolumns.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/fixedcolumns.html new file mode 100644 index 000000000..bd993f63c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/fixedcolumns.html @@ -0,0 +1,603 @@ + + + + + + + ColReorder example + + + + + + + + +
+
+ ColReorder example with FixedColumns +
+ +

Preamble

+

While ColReorder works great with scrolling in DataTables (and thus FixedColumns), + it also presents an additional option called 'iFixedColumns' which allows you to not + let the user reorder certain columns (specific the number given, counting left to + right). So in the case of FixedColumns this is useful because you typically won't want + to let your fixed column be reordered. This is shown below in the FixedColumns index column + example.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 Rendering engineBrowserPlatform(s)Engine versionCSS grade
1TridentInternet + Explorer 4.0Win 95+4X
2TridentInternet + Explorer 5.0Win 95+5C
3TridentInternet + Explorer 5.5Win 95+5.5A
4TridentInternet + Explorer 6Win 98+6A
5TridentInternet Explorer 7Win XP SP2+7A
6TridentAOL browser (AOL desktop)Win XP6A
7GeckoFirefox 1.0Win 98+ / OSX.2+1.7A
8GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
9GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
10GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
11GeckoCamino 1.0OSX.2+1.8A
12GeckoCamino 1.5OSX.3+1.8A
13GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
14GeckoNetscape Browser 8Win 98SE+1.7A
15GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
16GeckoMozilla 1.0Win 95+ / OSX.1+1A
17GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
18GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
19GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
20GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
21GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
22GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
23GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
24GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
25GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
26GeckoEpiphany 2.20Gnome1.8A
27WebkitSafari 1.2OSX.3125.5A
28WebkitSafari 1.3OSX.3312.8A
29WebkitSafari 2.0OSX.4+419.3A
30WebkitSafari 3.0OSX.4+522.1A
31WebkitOmniWeb 5.5OSX.4+420A
32WebkitiPod Touch / iPhoneiPod420.1A
33WebkitS60S60413A
34PrestoOpera 7.0Win 95+ / OSX.1+-A
35PrestoOpera 7.5Win 95+ / OSX.2+-A
36PrestoOpera 8.0Win 95+ / OSX.2+-A
37PrestoOpera 8.5Win 95+ / OSX.2+-A
38PrestoOpera 9.0Win 95+ / OSX.3+-A
39PrestoOpera 9.2Win 88+ / OSX.3+-A
40PrestoOpera 9.5Win 88+ / OSX.3+-A
41PrestoOpera for WiiWii-A
42PrestoNokia N800N800-A
43PrestoNintendo DS browserNintendo DS8.5C/A1
44KHTMLKonqureror 3.1KDE 3.13.1C
45KHTMLKonqureror 3.3KDE 3.33.3A
46KHTMLKonqureror 3.5KDE 3.53.5A
47TasmanInternet Explorer 4.5Mac OS 8-9-X
48TasmanInternet Explorer 5.1Mac OS 7.6-91C
49TasmanInternet Explorer 5.2Mac OS 8-X1C
50MiscNetFront 3.1Embedded devices-C
51MiscNetFront 3.4Embedded devices-A
52MiscDillo 0.8Embedded devices-X
53MiscLinksText only-X
54MiscLynxText only-X
55MiscIE MobileWindows Mobile 6-C
56MiscPSP browserPSP-C
57Other browsersAll others--U
 Rendering engineBrowserPlatform(s)Engine versionCSS grade
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"sScrollX": "100%",
+		"sScrollXInner": "150%",
+		"bScrollCollapse": true,
+		"fnDrawCallback": function ( oSettings ) {
+			/* Need to redo the counters if filtered or sorted */
+			if ( oSettings.bSorted || oSettings.bFiltered ) {
+				for ( var i=0, iLen=oSettings.aiDisplay.length ; i<iLen ; i++ ) {
+					$('td:eq(0)', oSettings.aoData[ oSettings.aiDisplay[i] ].nTr ).html( i+1 );
+				}
+			}
+		},
+		"aoColumnDefs": [
+			{ "bSortable": false, "sClass": "index", "aTargets": [ 0 ] }
+		],
+		"aaSorting": [[ 1, 'asc' ]],
+		"oColReorder": {
+			"iFixedColumns": 1
+		}
+	} );
+	new FixedColumns( oTable );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/fixedheader.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/fixedheader.html new file mode 100644 index 000000000..6e172c8b8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/fixedheader.html @@ -0,0 +1,499 @@ + + + + + + + ColReorder example + + + + + + + + +
+
+ ColReorder example with FixedHeader +
+ +

Preamble

+

FixedHeader is a particularly useful plug-in for DataTables, allowing a table header + to float at the top of a scrolling window. ColReorder works well with FixedHeader, allowing + you to reorder columns even using the floating header, as shown in the example below.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		 "sDom": 'RC<"clear">lfrtip'
+	} );
+	new FixedHeader( oTable );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/index.html new file mode 100644 index 000000000..7b67205a9 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/index.html @@ -0,0 +1,496 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example +
+ +

Preamble

+

This example shows the basic use case of the ColReorder plug-in. With ColReorder enabled + for a table, the user has the ability to click and drag any table header cell, and drop + it where they wish the column to be inserted. The insert point is shown visually, and + the column reordering is done as soon as the mouse button is released.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip'
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/css/ColReorder.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/css/ColReorder.css new file mode 100644 index 000000000..9c597e348 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/css/ColReorder.css @@ -0,0 +1,21 @@ +/* + * Namespace DTCR - "DataTables ColReorder" plug-in + */ + +table.DTCR_clonedTable { + background-color: white; + z-index: 202; +} + +div.DTCR_pointer { + width: 1px; + background-color: #0259C4; + z-index: 201; +} + +body.alt div.DTCR_pointer { + margin-top: -15px; + margin-left: -9px; + width: 18px; + background: url('../images/insert.png') no-repeat top left; +} \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/css/default.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/css/default.css new file mode 100644 index 000000000..b9dde3b14 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/css/default.css @@ -0,0 +1,418 @@ +/* + * TABLE OF CONTENTS: + * - Browser reset + * - HTML elements + * - JsDoc styling + */ + + + + + + +/* + * BEGIN BROWSER RESET + */ + +body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,p,pre,form,fieldset,input,textarea,p,blockquote,th,td { + margin:0; + padding:0 +} +html { + height:100%; + overflow:-moz-scrollbars-vertical; + overflow-x:auto +} +table { + border:0; + border-collapse:collapse; + border-spacing:0 +} +fieldset,img { + border:0 +} +address,caption,cite,code,dfn,em,strong,th,var { + font-style:normal; + font-weight:normal +} +em,cite { + font-style:italic +} +strong { + font-weight:bold +} +ol,ul { + list-style:none +} +caption,th { + text-align:left +} +h1,h2,h3,h4,h5,h6 { + font-size:100%; + font-weight:normal; + margin:0; + padding:0 +} +q:before,q:after { + content:'' +} +abbr,acronym { + border:0 +} + +/* + * END BROWSER RESET + */ + + + + + + +/* + * HTML ELEMENTS + */ + +* { + line-height: 1.4em; +} + +html { + font-size: 100%; +} + +body { + font-size: 0.75em !important; + padding: 15px 0; + background: #eee; + background-image: -moz-linear-gradient(left, #dddddd, #f9f9f9); + background-image: -webkit-gradient(linear,left bottom,right bottom,color-stop(0, #dddddd),color-stop(1, #f9f9f9)); + } + +body, +input, +select, +textarea { + color: #000; + font-family: Arial, Geneva, sans-serif; +} + +a:link, +a:hover, +a:active, +a:visited { + color: #19199e; +} +a:hover, +a:focus { + color: #00f; + text-decoration: none; +} + +p { + margin: 0 0 1.5em 0; +} + +/* + * END HTML ELEMENTS + */ + + + +/* + * BEGIN HACK + */ + +div.containerMain:after, +div.safeBox:after { + content:""; + display:block; + height:0; + clear:both; +} + +/* + * END HACK + */ + + + +/* + * BEGIN JSDOC + */ + +div.index *.heading1 { + margin-bottom: 0.5em; + border-bottom: 1px solid #999999; + padding: 0.5em 0 0.1em 0; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.3em; + letter-spacing: 1px; +} + +div.index { + float: left; + width: 30%; + min-width: 100px; + max-width: 250px; +} +div.index div.menu { + margin: 0 15px 0 -15px; + -moz-border-radius: 15px; + -webkit-border-radius: 15px; + border-radius: 15px; + padding: 15px 15px 15px 30px; + background-color: #FFFFFF; + background-color: rgba(255, 255, 255, 0.5); + -moz-box-shadow: 0px 0px 10px #c4c4c4; + -webkit-box-shadow: 0px 0px 10px #c4c4c4; + box-shadow: 0px 0px 10px #c4c4c4; +} +*+html div.index div.menu { + background-color: #FFFFFF; +} +* html div.index div.menu { + background-color: #FFFFFF; +} + +div.index div.menu div { + text-align: left; +} + +div.index div.menu a { + text-decoration: none; +} +div.index div.menu a:hover { + text-decoration: underline; +} + +div.index ul.classList a { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.index div.fineprint { + padding: 15px 30px 15px 15px; + color: #777; + font-size: 0.9em; +} +div.index div.fineprint a { + color: #777; +} + + + +div.content { + float: left; + width: 70%; + min-width: 300px; + max-width: 600px; +} +div.innerContent { + padding: 0 0 0 2.5em; +} + +div.content ul, +div.content ol { + margin-bottom: 3em; +} + +div.content *.classTitle { + margin-bottom: 0.5em; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 2.5em; + letter-spacing: 2px; +} + +div.content *.classTitle span { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.content p.summary { + font-size: 1.2em; +} + +div.content ul *.classname a, +div.content ul *.filename a { + font-family: Consolas, "Courier New", Courier, monospace; + text-decoration: none; + font-weight: bold; +} +div.content ul *.classname a:hover, +div.content ul *.filename a:hover { + text-decoration: underline; +} + +div.content div.props { + position: relative; + left: -10px; + margin-bottom: 2.5em; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + padding: 10px 15px 15px 15px; + overflow: hidden; + background: #fff; + background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2)); /* FF3.6 */ + background: -webkit-gradient(linear,left top,left bottom,color-stop(0, rgba(255, 255, 255, 0.7)),color-stop(1, rgba(255, 255, 255, 0.2))); + -moz-box-shadow: 0px 0px 10px #ccc; + -webkit-box-shadow: 0px 0px 5px #bbb; + box-shadow: 0px 0px 5px #bbb; +} + +div.content div.props div.sectionTitle { + padding-bottom: 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +div.content div.hr { + margin: 0 10px 0 0; + height: 4em; +} + + + +table.summaryTable { + position: relative; + left: -10px; + width: 100%; + border-collapse: collapse; + box-sizing: content-box; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + -ms-box-sizing: content-box; + -o-box-sizing: content-box; + -icab-box-sizing: content-box; + -khtml-box-sizing: content-box; +} + +table.summaryTable caption { + padding: 0 10px 10px 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +table.summaryTable td, +table.summaryTable th { + padding: 0px 10px 10px 10px; + vertical-align: top; +} +table.summaryTable tr:last-child td { + padding-bottom: 0; +} + +table.summaryTable th { + font-weight: bold; +} + +table.summaryTable td.attributes { + width: 35%; + font-family: Consolas, "Courier New", Courier, monospace; + color: #666; +} + +table.summaryTable td.nameDescription { + width: 65% +} + +table.summaryTable td.nameDescription div.fixedFont { + font-weight: bold; +} + +table.summaryTable div.description { + color: #333; +} + + + +dl.detailList { + margin-top: 0.5em; +} + +dl.detailList.nomargin + dl.detailList.nomargin { + margin-top: 0; +} + +dl.detailList dt { + display: inline; + margin-right: 5px; + font-weight: bold; +} + +dl.detailList dt:before { + display: block; + content: ""; +} + +dl.detailList dd { + display: inline; +} + +dl.detailList.params dt { + display: block; +} +dl.detailList.params dd { + display: block; + padding-left: 2em; + padding-bottom: 0.4em; +} + + + + +ul.fileList li { + margin-bottom: 1.5em; +} + + + +.fixedFont { + font-family: Consolas, "Courier New", Courier, monospace; +} + +.fixedFont.heading { + margin-bottom: 0.5em; + font-size: 1.25em; + line-height: 1.1em +} + +.fixedFont.heading + .description { + font-size: 1.2em; +} + +.fixedFont.heading .light, +.fixedFont.heading .lighter { + font-weight: bold; +} + +pre.code { + margin: 10px 0 10px 0; + padding: 10px; + border: 1px solid #ccc; + -moz-border-radius: 2px; + -webkit-border-radius: 2px; + border-radius: 2px; + overflow: auto; + font-family: Consolas, "Courier New", Courier, monospace; + background: #eee; +} + +.light { + color: #666; +} + +.lighter { + color: #999; +} + +.clear { + clear: both; + width: 100%; + min-height: 0; +} + +/* + * END JSDOC + */ \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/files.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/files.html new file mode 100644 index 000000000..9fb36dd72 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/files.html @@ -0,0 +1,69 @@ + + + + + + JsDoc Reference - File Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:44:06 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

File Index

+ + +
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/index.html new file mode 100644 index 000000000..47f24d693 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/index.html @@ -0,0 +1,78 @@ + + + + + JsDoc Reference - Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:44:06 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

Class Index

+ + +
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#dom.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#dom.html new file mode 100644 index 000000000..47a188499 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#dom.html @@ -0,0 +1,278 @@ + + + + + + + JsDoc Reference - ColReorder#dom + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:44:06 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColReorder#dom +

+ +

+ + + + + Common and useful DOM elements for the class instance + + +
Defined in: ColReorder.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColReorder#dom.drag +
+
Dragging element (the one the mouse is moving)
+
<static>   +
+ ColReorder#dom.pointer +
+
The insert cursor
+
+
+ + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColReorder#dom +
+ +
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {element} + + ColReorder#dom.drag +
+ +
+ Dragging element (the one the mouse is moving) + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {element} + + ColReorder#dom.pointer +
+ +
+ The insert cursor + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + + + +
+
+ + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#s.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#s.html new file mode 100644 index 000000000..fd3143f57 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#s.html @@ -0,0 +1,413 @@ + + + + + + + JsDoc Reference - ColReorder#s + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:44:06 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColReorder#s +

+ +

+ + + + + Settings object which contains customisable information for ColReorder instance + + +
Defined in: ColReorder.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColReorder#s.aoTargets +
+
Information which is used for positioning the insert cusor and knowing where to do the +insert.
+
<static>   +
+ ColReorder#s.dropCallback +
+
Callback function for once the reorder has been done
+
<static>   +
+ ColReorder#s.dt +
+
DataTables settings object
+
<static>   +
+ ColReorder#s.fixed +
+
Number of columns to fix (not allow to be reordered)
+
<static>   +
+ ColReorder#s.init +
+
Initialisation object used for this instance
+
+
+ + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColReorder#s +
+ +
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {array} + + ColReorder#s.aoTargets +
+ +
+ Information which is used for positioning the insert cusor and knowing where to do the +insert. Array of objects with the properties: + x: x-axis position + to: insert point + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {function} + + ColReorder#s.dropCallback +
+ +
+ Callback function for once the reorder has been done + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Object} + + ColReorder#s.dt +
+ +
+ DataTables settings object + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {int} + + ColReorder#s.fixed +
+ +
+ Number of columns to fix (not allow to be reordered) + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ 0 +
+ +
+ + +
+ + + +
+ + <static> + + + {object} + + ColReorder#s.init +
+ +
+ Initialisation object used for this instance + + + +
+ + + + + + + +
+
+ + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#s.mouse.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#s.mouse.html new file mode 100644 index 000000000..7e2c2ddf7 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder#s.mouse.html @@ -0,0 +1,149 @@ + + + + + + + JsDoc Reference - ColReorder#s.mouse + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:44:06 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColReorder#s.mouse +

+ +

+ + + + + Information used for the mouse drag + + +
Defined in: ColReorder.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColReorder#s.mouse +
+ +
+ + +
+ + + + + + +
+
+ + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder.html new file mode 100644 index 000000000..db1e6ad32 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/ColReorder.html @@ -0,0 +1,1030 @@ + + + + + + + JsDoc Reference - ColReorder + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:44:06 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Class ColReorder +

+ +

+ + + + + ColReorder + + +
Defined in: ColReorder.js. + +

+ + +
+ + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ ColReorder(DataTables, ColReorder) +
+
ColReorder provides column visiblity control for DataTables
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColReorder.aoInstances +
+
Array of all ColReorder instances for later reference
+
<constant>   +
+ CLASS +
+
Name of this class
+
<static> <constant>   +
+ ColReorder.VERSION +
+
ColReorder version
+
+
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<private>   + +
Constructor logic
+
<private>   + +
Copy the TH element that is being drags so the user has the idea that they are actually +moving it around the page.
+
<private>   +
_fnMouseDown(event, element) +
+
Mouse down on a TH element in the table header
+
<private>   +
_fnMouseListener(int, element) +
+
Add a mouse down listener to a particluar TH element
+
<private>   +
_fnMouseMove(event) +
+
Deal with a mouse move event while dragging a node
+
<private>   +
_fnMouseUp(event) +
+
Finish off the mouse drag and insert the column where needed
+
<private>   +
_fnOrderColumns(array) +
+
Set the column order from an array
+
<private>   +
_fnStateSave(string) +
+
This function effectively replaces the state saving function in DataTables (this is needed +because otherwise DataTables would state save the columns in their reordered state, not the +original which is needed on first draw).
+
<static>   +
ColReorder.fnReset(object) +
+
Reset the column ordering for a DataTables instance
+
  +
fnReset() +
+
+
+
+ + + + + + + + + + +
+
+ + +
+ Class Detail +
+ +
+ ColReorder(DataTables, ColReorder) +
+ +
+ ColReorder provides column visiblity control for DataTables + +
+ + + + +
+
Parameters:
+ +
+ {object} DataTables + +
+
object
+ +
+ {object} ColReorder + +
+
options
+ +
+ + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {array} + + ColReorder.aoInstances +
+ +
+ Array of all ColReorder instances for later reference + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <constant> + + + {String} + + CLASS +
+ +
+ Name of this class + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ ColReorder +
+ +
+ + +
+ + + +
+ + <static> <constant> + + + {String} + + ColReorder.VERSION +
+ +
+ ColReorder version + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ As code +
+ +
+ + + + +
+
+ + + + +
+
+
+ Method Detail +
+ + + + +
+ + <private> + + + + + _fnConstruct() +
+ +
+ Constructor logic + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnCreateDragNode() +
+ +
+ Copy the TH element that is being drags so the user has the idea that they are actually +moving it around the page. + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnMouseDown(event, element) +
+ +
+ Mouse down on a TH element in the table header + + + + +
+ + + + +
+
Parameters:
+ +
+ event + +
+
e Mouse event
+ +
+ element + +
+
nTh TH element to be dragged
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnMouseListener(int, element) +
+ +
+ Add a mouse down listener to a particluar TH element + + + + +
+ + + + +
+
Parameters:
+ +
+ int + +
+
i Column index
+ +
+ element + +
+
nTh TH element clicked on
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnMouseMove(event) +
+ +
+ Deal with a mouse move event while dragging a node + + + + +
+ + + + +
+
Parameters:
+ +
+ event + +
+
e Mouse event
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnMouseUp(event) +
+ +
+ Finish off the mouse drag and insert the column where needed + + + + +
+ + + + +
+
Parameters:
+ +
+ event + +
+
e Mouse event
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnOrderColumns(array) +
+ +
+ Set the column order from an array + + + + +
+ + + + +
+
Parameters:
+ +
+ array + +
+
a An array of integers which dictate the column order that should be applied
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnStateSave(string) +
+ +
+ This function effectively replaces the state saving function in DataTables (this is needed +because otherwise DataTables would state save the columns in their reordered state, not the +original which is needed on first draw). This is sensitive to any changes in the DataTables +state saving method! + + + + +
+ + + + +
+
Parameters:
+ +
+ string + +
+
sCurrentVal
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
string JSON encoded cookie string for DataTables
+ + + + + + + +
+ + +
+ + + +
+ + <static> + + + + + ColReorder.fnReset(object) +
+ +
+ Reset the column ordering for a DataTables instance + + + + +
+ + + + +
+
Parameters:
+ +
+ object + +
+
oTable DataTables instance to consider
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + + + + + + fnReset() +
+ +
+ + + + + +
+ + + + + + + + + +
+
+ + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/_global_.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/_global_.html new file mode 100644 index 000000000..298261613 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/_global_.html @@ -0,0 +1,99 @@ + + + + + + + JsDoc Reference - _global_ + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:44:06 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Built-In Namespace _global_ +

+ +

+ + + + + + + +

+ + + + + + + + + + + + + + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/src/js_ColReorder.js.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/src/js_ColReorder.js.html new file mode 100644 index 000000000..0fb2dffae --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/docs/symbols/src/js_ColReorder.js.html @@ -0,0 +1,995 @@ +
  1 /*
+  2  * File:        ColReorder.js
+  3  * Version:     1.0.4
+  4  * CVS:         $Id$
+  5  * Description: Controls for column visiblity in DataTables
+  6  * Author:      Allan Jardine (www.sprymedia.co.uk)
+  7  * Created:     Wed Sep 15 18:23:29 BST 2010
+  8  * Modified:    $Date$ by $Author$
+  9  * Language:    Javascript
+ 10  * License:     GPL v2 or BSD 3 point style
+ 11  * Project:     DataTables
+ 12  * Contact:     www.sprymedia.co.uk/contact
+ 13  * 
+ 14  * Copyright 2010-2011 Allan Jardine, all rights reserved.
+ 15  *
+ 16  * This source file is free software, under either the GPL v2 license or a
+ 17  * BSD style license, available at:
+ 18  *   http://datatables.net/license_gpl2
+ 19  *   http://datatables.net/license_bsd
+ 20  *
+ 21  */
+ 22 
+ 23 
+ 24 (function($, window, document) {
+ 25 
+ 26 
+ 27 /**
+ 28  * Switch the key value pairing of an index array to be value key (i.e. the old value is now the
+ 29  * key). For example consider [ 2, 0, 1 ] this would be returned as [ 1, 2, 0 ].
+ 30  *  @method  fnInvertKeyValues
+ 31  *  @param   array aIn Array to switch around
+ 32  *  @returns array
+ 33  */
+ 34 function fnInvertKeyValues( aIn )
+ 35 {
+ 36 	var aRet=[];
+ 37 	for ( var i=0, iLen=aIn.length ; i<iLen ; i++ )
+ 38 	{
+ 39 		aRet[ aIn[i] ] = i;
+ 40 	}
+ 41 	return aRet;
+ 42 }
+ 43 
+ 44 
+ 45 /**
+ 46  * Modify an array by switching the position of two elements
+ 47  *  @method  fnArraySwitch
+ 48  *  @param   array aArray Array to consider, will be modified by reference (i.e. no return)
+ 49  *  @param   int iFrom From point
+ 50  *  @param   int iTo Insert point
+ 51  *  @returns void
+ 52  */
+ 53 function fnArraySwitch( aArray, iFrom, iTo )
+ 54 {
+ 55 	var mStore = aArray.splice( iFrom, 1 )[0];
+ 56 	aArray.splice( iTo, 0, mStore );
+ 57 }
+ 58 
+ 59 
+ 60 /**
+ 61  * Switch the positions of nodes in a parent node (note this is specifically designed for 
+ 62  * table rows). Note this function considers all element nodes under the parent!
+ 63  *  @method  fnDomSwitch
+ 64  *  @param   string sTag Tag to consider
+ 65  *  @param   int iFrom Element to move
+ 66  *  @param   int Point to element the element to (before this point), can be null for append
+ 67  *  @returns void
+ 68  */
+ 69 function fnDomSwitch( nParent, iFrom, iTo )
+ 70 {
+ 71 	var anTags = [];
+ 72 	for ( var i=0, iLen=nParent.childNodes.length ; i<iLen ; i++ )
+ 73 	{
+ 74 		if ( nParent.childNodes[i].nodeType == 1 )
+ 75 		{
+ 76 			anTags.push( nParent.childNodes[i] );
+ 77 		}
+ 78 	}
+ 79 	var nStore = anTags[ iFrom ];
+ 80 	
+ 81 	if ( iTo !== null )
+ 82 	{
+ 83 		nParent.insertBefore( nStore, anTags[iTo] );
+ 84 	}
+ 85 	else
+ 86 	{
+ 87 		nParent.appendChild( nStore );
+ 88 	}
+ 89 }
+ 90 
+ 91 
+ 92 
+ 93 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ 94  * DataTables plug-in API functions
+ 95  *
+ 96  * This are required by ColReorder in order to perform the tasks required, and also keep this
+ 97  * code portable, to be used for other column reordering projects with DataTables, if needed.
+ 98  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+ 99 
+100 
+101 /**
+102  * Plug-in for DataTables which will reorder the internal column structure by taking the column
+103  * from one position (iFrom) and insert it into a given point (iTo).
+104  *  @method  $.fn.dataTableExt.oApi.fnColReorder
+105  *  @param   object oSettings DataTables settings object - automatically added by DataTables! 
+106  *  @param   int iFrom Take the column to be repositioned from this point
+107  *  @param   int iTo and insert it into this point
+108  *  @returns void
+109  */
+110 $.fn.dataTableExt.oApi.fnColReorder = function ( oSettings, iFrom, iTo )
+111 {
+112 	var i, iLen, j, jLen, iCols=oSettings.aoColumns.length, nTrs, oCol;
+113 	
+114 	/* Sanity check in the input */
+115 	if ( iFrom == iTo )
+116 	{
+117 		/* Pointless reorder */
+118 		return;
+119 	}
+120 	
+121 	if ( iFrom < 0 || iFrom >= iCols )
+122 	{
+123 		this.oApi._fnLog( oSettings, 1, "ColReorder 'from' index is out of bounds: "+iFrom );
+124 		return;
+125 	}
+126 	
+127 	if ( iTo < 0 || iTo >= iCols )
+128 	{
+129 		this.oApi._fnLog( oSettings, 1, "ColReorder 'to' index is out of bounds: "+iTo );
+130 		return;
+131 	}
+132 	
+133 	/*
+134 	 * Calculate the new column array index, so we have a mapping between the old and new
+135 	 */
+136 	var aiMapping = [];
+137 	for ( i=0, iLen=iCols ; i<iLen ; i++ )
+138 	{
+139 		aiMapping[i] = i;
+140 	}
+141 	fnArraySwitch( aiMapping, iFrom, iTo );
+142 	var aiInvertMapping = fnInvertKeyValues( aiMapping );
+143 	
+144 	
+145 	/*
+146 	 * Convert all internal indexing to the new column order indexes
+147 	 */
+148 	/* Sorting */
+149 	for ( i=0, iLen=oSettings.aaSorting.length ; i<iLen ; i++ )
+150 	{
+151 		oSettings.aaSorting[i][0] = aiInvertMapping[ oSettings.aaSorting[i][0] ];
+152 	}
+153 	
+154 	/* Fixed sorting */
+155 	if ( oSettings.aaSortingFixed !== null )
+156 	{
+157 		for ( i=0, iLen=oSettings.aaSortingFixed.length ; i<iLen ; i++ )
+158 		{
+159 			oSettings.aaSortingFixed[i][0] = aiInvertMapping[ oSettings.aaSortingFixed[i][0] ];
+160 		}
+161 	}
+162 	
+163 	/* Data column sorting (the column which the sort for a given column should take place on) */
+164 	for ( i=0, iLen=iCols ; i<iLen ; i++ )
+165 	{
+166 		oSettings.aoColumns[i].iDataSort = aiInvertMapping[ oSettings.aoColumns[i].iDataSort ];
+167 	}
+168 	
+169 	/* Update the Get and Set functions for each column */
+170 	for ( i=0, iLen=iCols ; i<iLen ; i++ )
+171 	{
+172 		oCol = oSettings.aoColumns[i];
+173 		if ( typeof oCol.mDataProp == 'number' ) {
+174 			oCol.mDataProp = aiInvertMapping[ oCol.mDataProp ];
+175 			oCol.fnGetData = oSettings.oApi._fnGetObjectDataFn( oCol.mDataProp );
+176 			oCol.fnSetData = oSettings.oApi._fnSetObjectDataFn( oCol.mDataProp );
+177 		}
+178 	}
+179 	
+180 	
+181 	/*
+182 	 * Move the DOM elements
+183 	 */
+184 	if ( oSettings.aoColumns[iFrom].bVisible )
+185 	{
+186 		/* Calculate the current visible index and the point to insert the node before. The insert
+187 		 * before needs to take into account that there might not be an element to insert before,
+188 		 * in which case it will be null, and an appendChild should be used
+189 		 */
+190 		var iVisibleIndex = this.oApi._fnColumnIndexToVisible( oSettings, iFrom );
+191 		var iInsertBeforeIndex = null;
+192 		
+193 		i = iTo < iFrom ? iTo : iTo + 1;
+194 		while ( iInsertBeforeIndex === null && i < iCols )
+195 		{
+196 			iInsertBeforeIndex = this.oApi._fnColumnIndexToVisible( oSettings, i );
+197 			i++;
+198 		}
+199 		
+200 		/* Header */
+201 		nTrs = oSettings.nTHead.getElementsByTagName('tr');
+202 		for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
+203 		{
+204 			fnDomSwitch( nTrs[i], iVisibleIndex, iInsertBeforeIndex );
+205 		}
+206 		
+207 		/* Footer */
+208 		if ( oSettings.nTFoot !== null )
+209 		{
+210 			nTrs = oSettings.nTFoot.getElementsByTagName('tr');
+211 			for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
+212 			{
+213 				fnDomSwitch( nTrs[i], iVisibleIndex, iInsertBeforeIndex );
+214 			}
+215 		}
+216 		
+217 		/* Body */
+218 		for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
+219 		{
+220 			if ( oSettings.aoData[i].nTr !== null )
+221 			{
+222 				fnDomSwitch( oSettings.aoData[i].nTr, iVisibleIndex, iInsertBeforeIndex );
+223 			}
+224 		}
+225 	}
+226 	
+227 	
+228 	/* 
+229 	 * Move the internal array elements
+230 	 */
+231 	/* Columns */
+232 	fnArraySwitch( oSettings.aoColumns, iFrom, iTo );
+233 	
+234 	/* Search columns */
+235 	fnArraySwitch( oSettings.aoPreSearchCols, iFrom, iTo );
+236 	
+237 	/* Array array - internal data anodes cache */
+238 	for ( i=0, iLen=oSettings.aoData.length ; i<iLen ; i++ )
+239 	{
+240 		if ( $.isArray( oSettings.aoData[i]._aData ) ) {
+241 		  fnArraySwitch( oSettings.aoData[i]._aData, iFrom, iTo );
+242 		}
+243 		fnArraySwitch( oSettings.aoData[i]._anHidden, iFrom, iTo );
+244 	}
+245 	
+246 	/* Reposition the header elements in the header layout array */
+247 	for ( i=0, iLen=oSettings.aoHeader.length ; i<iLen ; i++ )
+248 	{
+249 		fnArraySwitch( oSettings.aoHeader[i], iFrom, iTo );
+250 	}
+251 	
+252 	if ( oSettings.aoFooter !== null )
+253 	{
+254 		for ( i=0, iLen=oSettings.aoFooter.length ; i<iLen ; i++ )
+255 		{
+256 			fnArraySwitch( oSettings.aoFooter[i], iFrom, iTo );
+257 		}
+258 	}
+259 	
+260 	
+261 	/*
+262 	 * Update DataTables' event handlers
+263 	 */
+264 	
+265 	/* Sort listener */
+266 	for ( i=0, iLen=iCols ; i<iLen ; i++ )
+267 	{
+268 		$(oSettings.aoColumns[i].nTh).unbind('click');
+269 		this.oApi._fnSortAttachListener( oSettings, oSettings.aoColumns[i].nTh, i );
+270 	}
+271 	
+272 	
+273 	/*
+274 	 * Any extra operations for the other plug-ins
+275 	 */
+276 	if ( typeof ColVis != 'undefined' )
+277 	{
+278 		ColVis.fnRebuild( oSettings.oInstance );
+279 	}
+280 	
+281 	if ( typeof oSettings.oInstance._oPluginFixedHeader != 'undefined' )
+282 	{
+283 		oSettings.oInstance._oPluginFixedHeader.fnUpdate();
+284 	}
+285 };
+286 
+287 
+288 
+289 
+290 /** 
+291  * ColReorder provides column visiblity control for DataTables
+292  * @class ColReorder
+293  * @constructor
+294  * @param {object} DataTables object
+295  * @param {object} ColReorder options
+296  */
+297 ColReorder = function( oTable, oOpts )
+298 {
+299 	/* Santiy check that we are a new instance */
+300 	if ( !this.CLASS || this.CLASS != "ColReorder" )
+301 	{
+302 		alert( "Warning: ColReorder must be initialised with the keyword 'new'" );
+303 	}
+304 	
+305 	if ( typeof oOpts == 'undefined' )
+306 	{
+307 		oOpts = {};
+308 	}
+309 	
+310 	
+311 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+312 	 * Public class variables
+313 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+314 	
+315 	/**
+316 	 * @namespace Settings object which contains customisable information for ColReorder instance
+317 	 */
+318 	this.s = {
+319 		/**
+320 		 * DataTables settings object
+321 		 *  @property dt
+322 		 *  @type     Object
+323 		 *  @default  null
+324 		 */
+325 		dt: null,
+326 		
+327 		/**
+328 		 * Initialisation object used for this instance
+329 		 *  @property init
+330 		 *  @type     object
+331 		 *  @default  {}
+332 		 */
+333 		init: oOpts,
+334 		
+335 		/**
+336 		 * Number of columns to fix (not allow to be reordered)
+337 		 *  @property fixed
+338 		 *  @type     int
+339 		 *  @default  0
+340 		 */
+341 		fixed: 0,
+342 		
+343 		/**
+344 		 * Callback function for once the reorder has been done
+345 		 *  @property dropcallback
+346 		 *  @type     function
+347 		 *  @default  null
+348 		 */
+349 		dropCallback: null,
+350 		
+351 		/**
+352 		 * @namespace Information used for the mouse drag
+353 		 */
+354 		mouse: {
+355 			startX: -1,
+356 			startY: -1,
+357 			offsetX: -1,
+358 			offsetY: -1,
+359 			target: -1,
+360 			targetIndex: -1,
+361 			fromIndex: -1
+362 		},
+363 		
+364 		/**
+365 		 * Information which is used for positioning the insert cusor and knowing where to do the
+366 		 * insert. Array of objects with the properties:
+367 		 *   x: x-axis position
+368 		 *   to: insert point
+369 		 *  @property aoTargets
+370 		 *  @type     array
+371 		 *  @default  []
+372 		 */
+373 		aoTargets: []
+374 	};
+375 	
+376 	
+377 	/**
+378 	 * @namespace Common and useful DOM elements for the class instance
+379 	 */
+380 	this.dom = {
+381 		/**
+382 		 * Dragging element (the one the mouse is moving)
+383 		 *  @property drag
+384 		 *  @type     element
+385 		 *  @default  null
+386 		 */
+387 		drag: null,
+388 		
+389 		/**
+390 		 * The insert cursor
+391 		 *  @property pointer
+392 		 *  @type     element
+393 		 *  @default  null
+394 		 */
+395 		pointer: null
+396 	};
+397 	
+398 	
+399 	/* Constructor logic */
+400 	this.s.dt = oTable.fnSettings();
+401 	this._fnConstruct();
+402 	
+403 	/* Store the instance for later use */
+404 	ColReorder.aoInstances.push( this );
+405 	return this;
+406 };
+407 
+408 
+409 
+410 ColReorder.prototype = {
+411 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+412 	 * Public methods
+413 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+414 	
+415 	fnReset: function ()
+416 	{
+417 		var a = [];
+418 		for ( var i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+419 		{
+420 			a.push( this.s.dt.aoColumns[i]._ColReorder_iOrigCol );
+421 		}
+422 		
+423 		this._fnOrderColumns( a );
+424 	},
+425 	
+426 	
+427 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+428 	 * Private methods (they are of course public in JS, but recommended as private)
+429 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+430 	
+431 	/**
+432 	 * Constructor logic
+433 	 *  @method  _fnConstruct
+434 	 *  @returns void
+435 	 *  @private 
+436 	 */
+437 	_fnConstruct: function ()
+438 	{
+439 		var that = this;
+440 		var i, iLen;
+441 		
+442 		/* Columns discounted from reordering - counting left to right */
+443 		if ( typeof this.s.init.iFixedColumns != 'undefined' )
+444 		{
+445 			this.s.fixed = this.s.init.iFixedColumns;
+446 		}
+447 		
+448 		/* Drop callback initialisation option */
+449 		if ( typeof this.s.init.fnReorderCallback != 'undefined' )
+450 		{
+451 			this.s.dropCallback = this.s.init.fnReorderCallback;
+452 		}
+453 		
+454 		/* Add event handlers for the drag and drop, and also mark the original column order */
+455 		for ( i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+456 		{
+457 			if ( i > this.s.fixed-1 )
+458 			{
+459 				this._fnMouseListener( i, this.s.dt.aoColumns[i].nTh );
+460 			}
+461 			
+462 			/* Mark the original column order for later reference */
+463 			this.s.dt.aoColumns[i]._ColReorder_iOrigCol = i;
+464 		}
+465 		
+466 		/* State saving */
+467 		this.s.dt.aoStateSave.push( {
+468 			fn: function (oS, sVal) {
+469 				return that._fnStateSave.call( that, sVal );
+470 			},
+471 			sName: "ColReorder_State"
+472 		} );
+473 		
+474 		/* An initial column order has been specified */
+475 		var aiOrder = null;
+476 		if ( typeof this.s.init.aiOrder != 'undefined' )
+477 		{
+478 			aiOrder = this.s.init.aiOrder.slice();
+479 		}
+480 		
+481 		/* State loading, overrides the column order given */
+482 		if ( this.s.dt.oLoadedState && typeof this.s.dt.oLoadedState.ColReorder != 'undefined' &&
+483 		  this.s.dt.oLoadedState.ColReorder.length == this.s.dt.aoColumns.length )
+484 		{
+485 			aiOrder = this.s.dt.oLoadedState.ColReorder;
+486 		}
+487 		
+488 		/* If we have an order to apply - do so */
+489 		if ( aiOrder )
+490 		{
+491 			/* We might be called during or after the DataTables initialisation. If before, then we need
+492 			 * to wait until the draw is done, if after, then do what we need to do right away
+493 			 */
+494 			if ( !that.s.dt._bInitComplete )
+495 			{
+496 				var bDone = false;
+497 				this.s.dt.aoDrawCallback.push( {
+498 					fn: function () {
+499 						if ( !that.s.dt._bInitComplete && !bDone )
+500 						{
+501 							bDone = true;
+502 							var resort = fnInvertKeyValues( aiOrder );
+503 							that._fnOrderColumns.call( that, resort );
+504 						}
+505 					},
+506 					sName: "ColReorder_Pre"
+507 				} );
+508 			}
+509 			else
+510 			{
+511 				var resort = fnInvertKeyValues( aiOrder );
+512 				that._fnOrderColumns.call( that, resort );
+513 			}
+514 		}
+515 	},
+516 	
+517 	
+518 	/**
+519 	 * Set the column order from an array
+520 	 *  @method  _fnOrderColumns
+521 	 *  @param   array a An array of integers which dictate the column order that should be applied
+522 	 *  @returns void
+523 	 *  @private 
+524 	 */
+525 	_fnOrderColumns: function ( a )
+526 	{
+527 		if ( a.length != this.s.dt.aoColumns.length )
+528 		{
+529 			this.s.dt.oInstance.oApi._fnLog( oDTSettings, 1, "ColReorder - array reorder does not "+
+530 			 	"match known number of columns. Skipping." );
+531 			return;
+532 		}
+533 		
+534 		for ( var i=0, iLen=a.length ; i<iLen ; i++ )
+535 		{
+536 			var currIndex = $.inArray( i, a );
+537 			if ( i != currIndex )
+538 			{
+539 				/* Reorder our switching array */
+540 				fnArraySwitch( a, currIndex, i );
+541 				
+542 				/* Do the column reorder in the table */
+543 				this.s.dt.oInstance.fnColReorder( currIndex, i );
+544 			}
+545 		}
+546 		
+547 		/* When scrolling we need to recalculate the column sizes to allow for the shift */
+548 		if ( this.s.dt.oScroll.sX !== "" || this.s.dt.oScroll.sY !== "" )
+549 		{
+550 			this.s.dt.oInstance.fnAdjustColumnSizing();
+551 		}
+552 			
+553 		/* Save the state */
+554 		this.s.dt.oInstance.oApi._fnSaveState( this.s.dt );
+555 	},
+556 	
+557 	
+558 	/**
+559 	 * This function effectively replaces the state saving function in DataTables (this is needed
+560 	 * because otherwise DataTables would state save the columns in their reordered state, not the
+561 	 * original which is needed on first draw). This is sensitive to any changes in the DataTables
+562 	 * state saving method!
+563 	 *  @method  _fnStateSave
+564 	 *  @param   string sCurrentVal 
+565 	 *  @returns string JSON encoded cookie string for DataTables
+566 	 *  @private 
+567 	 */
+568 	_fnStateSave: function ( sCurrentVal )
+569 	{
+570 		var i, iLen, sTmp;
+571 		var sValue = sCurrentVal.split('"aaSorting"')[0];
+572 		var a = [];
+573 		var oSettings = this.s.dt;
+574 		
+575 		/* Sorting */
+576 		sValue += '"aaSorting":[ ';
+577 		for ( i=0 ; i<oSettings.aaSorting.length ; i++ )
+578 		{
+579 			sValue += '['+oSettings.aoColumns[ oSettings.aaSorting[i][0] ]._ColReorder_iOrigCol+
+580 				',"'+oSettings.aaSorting[i][1]+'"],';
+581 		}
+582 		sValue = sValue.substring(0, sValue.length-1);
+583 		sValue += "],";
+584 		
+585 		/* Column filter */
+586 		for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
+587 		{
+588 			a[ oSettings.aoColumns[i]._ColReorder_iOrigCol ] = {
+589 				sSearch: encodeURIComponent(oSettings.aoPreSearchCols[i].sSearch),
+590 				bRegex: !oSettings.aoPreSearchCols[i].bRegex
+591 			};
+592 		}
+593 		
+594 		sValue += '"aaSearchCols":[ ';
+595 		for ( i=0 ; i<a.length ; i++ )
+596 		{
+597 			sValue += '["'+a[i].sSearch+'",'+a[i].bRegex+'],';
+598 		}
+599 		sValue = sValue.substring(0, sValue.length-1);
+600 		sValue += "],";
+601 		
+602 		/* Visibility */
+603 		a = [];
+604 		for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
+605 		{
+606 			a[ oSettings.aoColumns[i]._ColReorder_iOrigCol ] = oSettings.aoColumns[i].bVisible;
+607 		}
+608 		
+609 		sValue += '"abVisCols":[ ';
+610 		for ( i=0 ; i<a.length ; i++ )
+611 		{
+612 			sValue += a[i]+",";
+613 		}
+614 		sValue = sValue.substring(0, sValue.length-1);
+615 		sValue += "],";
+616 		
+617 		/* Column reordering */
+618 		a = [];
+619 		for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ ) {
+620 			a.push( oSettings.aoColumns[i]._ColReorder_iOrigCol );
+621 		}
+622 		sValue += '"ColReorder":['+a.join(',')+']';
+623 		
+624 		return sValue;
+625 	},
+626 	
+627 	
+628 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+629 	 * Mouse drop and drag
+630 	 */
+631 	
+632 	/**
+633 	 * Add a mouse down listener to a particluar TH element
+634 	 *  @method  _fnMouseListener
+635 	 *  @param   int i Column index
+636 	 *  @param   element nTh TH element clicked on
+637 	 *  @returns void
+638 	 *  @private 
+639 	 */
+640 	_fnMouseListener: function ( i, nTh )
+641 	{
+642 		var that = this;
+643 		$(nTh).bind( 'mousedown.ColReorder', function (e) {
+644 			that._fnMouseDown.call( that, e, nTh );
+645 			return false;
+646 		} );
+647 	},
+648 	
+649 	
+650 	/**
+651 	 * Mouse down on a TH element in the table header
+652 	 *  @method  _fnMouseDown
+653 	 *  @param   event e Mouse event
+654 	 *  @param   element nTh TH element to be dragged
+655 	 *  @returns void
+656 	 *  @private 
+657 	 */
+658 	_fnMouseDown: function ( e, nTh )
+659 	{
+660 		var
+661 			that = this,
+662 			aoColumns = this.s.dt.aoColumns;
+663 		
+664 		/* Store information about the mouse position */
+665 		var nThTarget = e.target.nodeName == "TH" ? e.target : $(e.target).parents('TH')[0];
+666 		var offset = $(nThTarget).offset();
+667 		this.s.mouse.startX = e.pageX;
+668 		this.s.mouse.startY = e.pageY;
+669 		this.s.mouse.offsetX = e.pageX - offset.left;
+670 		this.s.mouse.offsetY = e.pageY - offset.top;
+671 		this.s.mouse.target = nTh;
+672 		this.s.mouse.targetIndex = $('th', nTh.parentNode).index( nTh );
+673 		this.s.mouse.fromIndex = this.s.dt.oInstance.oApi._fnVisibleToColumnIndex( this.s.dt, 
+674 			this.s.mouse.targetIndex );
+675 		
+676 		/* Calculate a cached array with the points of the column inserts, and the 'to' points */
+677 		this.s.aoTargets.splice( 0, this.s.aoTargets.length );
+678 		
+679 		this.s.aoTargets.push( {
+680 			x:  $(this.s.dt.nTable).offset().left,
+681 			to: 0
+682 		} );
+683 		
+684 		var iToPoint = 0;
+685 		for ( var i=0, iLen=aoColumns.length ; i<iLen ; i++ )
+686 		{
+687 			/* For the column / header in question, we want it's position to remain the same if the 
+688 			 * position is just to it's immediate left or right, so we only incremement the counter for
+689 			 * other columns
+690 			 */
+691 			if ( i != this.s.mouse.fromIndex )
+692 			{
+693 				iToPoint++;
+694 			}
+695 			
+696 			if ( aoColumns[i].bVisible )
+697 			{
+698 				this.s.aoTargets.push( {
+699 					x:  $(aoColumns[i].nTh).offset().left + $(aoColumns[i].nTh).outerWidth(),
+700 					to: iToPoint
+701 				} );
+702 			}
+703 		}
+704 		
+705 		/* Disallow columns for being reordered by drag and drop, counting left to right */
+706 		if ( this.s.fixed !== 0 )
+707 		{
+708 			this.s.aoTargets.splice( 0, this.s.fixed );
+709 		}
+710 		
+711 		/* Add event handlers to the document */
+712 		$(document).bind( 'mousemove.ColReorder', function (e) {
+713 			that._fnMouseMove.call( that, e );
+714 		} );
+715 		
+716 		$(document).bind( 'mouseup.ColReorder', function (e) {
+717 			that._fnMouseUp.call( that, e );
+718 		} );
+719 	},
+720 	
+721 	
+722 	/**
+723 	 * Deal with a mouse move event while dragging a node
+724 	 *  @method  _fnMouseMove
+725 	 *  @param   event e Mouse event
+726 	 *  @returns void
+727 	 *  @private 
+728 	 */
+729 	_fnMouseMove: function ( e )
+730 	{
+731 		var that = this;
+732 		
+733 		if ( this.dom.drag === null )
+734 		{
+735 			/* Only create the drag element if the mouse has moved a specific distance from the start
+736 			 * point - this allows the user to make small mouse movements when sorting and not have a
+737 			 * possibly confusing drag element showing up
+738 			 */
+739 			if ( Math.pow(
+740 				Math.pow(e.pageX - this.s.mouse.startX, 2) + 
+741 				Math.pow(e.pageY - this.s.mouse.startY, 2), 0.5 ) < 5 )
+742 			{
+743 				return;
+744 			}
+745 			this._fnCreateDragNode();
+746 		}
+747 		
+748 		/* Position the element - we respect where in the element the click occured */
+749 		this.dom.drag.style.left = (e.pageX - this.s.mouse.offsetX) + "px";
+750 		this.dom.drag.style.top = (e.pageY - this.s.mouse.offsetY) + "px";
+751 		
+752 		/* Based on the current mouse position, calculate where the insert should go */
+753 		var bSet = false;
+754 		for ( var i=1, iLen=this.s.aoTargets.length ; i<iLen ; i++ )
+755 		{
+756 			if ( e.pageX < this.s.aoTargets[i-1].x + ((this.s.aoTargets[i].x-this.s.aoTargets[i-1].x)/2) )
+757 			{
+758 				this.dom.pointer.style.left = this.s.aoTargets[i-1].x +"px";
+759 				this.s.mouse.toIndex = this.s.aoTargets[i-1].to;
+760 				bSet = true;
+761 				break;
+762 			}
+763 		}
+764 		
+765 		/* The insert element wasn't positioned in the array (less than operator), so we put it at 
+766 		 * the end
+767 		 */
+768 		if ( !bSet )
+769 		{
+770 			this.dom.pointer.style.left = this.s.aoTargets[this.s.aoTargets.length-1].x +"px";
+771 			this.s.mouse.toIndex = this.s.aoTargets[this.s.aoTargets.length-1].to;
+772 		}
+773 	},
+774 	
+775 	
+776 	/**
+777 	 * Finish off the mouse drag and insert the column where needed
+778 	 *  @method  _fnMouseUp
+779 	 *  @param   event e Mouse event
+780 	 *  @returns void
+781 	 *  @private 
+782 	 */
+783 	_fnMouseUp: function ( e )
+784 	{
+785 		var that = this;
+786 		
+787 		$(document).unbind( 'mousemove.ColReorder' );
+788 		$(document).unbind( 'mouseup.ColReorder' );
+789 		
+790 		if ( this.dom.drag !== null )
+791 		{
+792 			/* Remove the guide elements */
+793 			document.body.removeChild( this.dom.drag );
+794 			document.body.removeChild( this.dom.pointer );
+795 			this.dom.drag = null;
+796 			this.dom.pointer = null;
+797 			
+798 			/* Actually do the reorder */
+799 			this.s.dt.oInstance.fnColReorder( this.s.mouse.fromIndex, this.s.mouse.toIndex );
+800 			
+801 			/* When scrolling we need to recalculate the column sizes to allow for the shift */
+802 			if ( this.s.dt.oScroll.sX !== "" || this.s.dt.oScroll.sY !== "" )
+803 			{
+804 				this.s.dt.oInstance.fnAdjustColumnSizing();
+805 			}
+806 			
+807 			if ( this.s.dropCallback !== null )
+808 			{
+809 				this.s.dropCallback.call( this );
+810 			}
+811 			
+812 			/* Save the state */
+813 			this.s.dt.oInstance.oApi._fnSaveState( this.s.dt );
+814 		}
+815 	},
+816 	
+817 	
+818 	/**
+819 	 * Copy the TH element that is being drags so the user has the idea that they are actually 
+820 	 * moving it around the page.
+821 	 *  @method  _fnCreateDragNode
+822 	 *  @returns void
+823 	 *  @private 
+824 	 */
+825 	_fnCreateDragNode: function ()
+826 	{
+827 		var that = this;
+828 		
+829 		this.dom.drag = $(this.s.dt.nTHead.parentNode).clone(true)[0];
+830 		this.dom.drag.className += " DTCR_clonedTable";
+831 		while ( this.dom.drag.getElementsByTagName('caption').length > 0 )
+832 		{
+833 			this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('caption')[0] );
+834 		}
+835 		while ( this.dom.drag.getElementsByTagName('tbody').length > 0 )
+836 		{
+837 			this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('tbody')[0] );
+838 		}
+839 		while ( this.dom.drag.getElementsByTagName('tfoot').length > 0 )
+840 		{
+841 			this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('tfoot')[0] );
+842 		}
+843 		
+844 		$('thead tr:eq(0)', this.dom.drag).each( function () {
+845 			$('th:not(:eq('+that.s.mouse.targetIndex+'))', this).remove();
+846 		} );
+847 		$('tr', this.dom.drag).height( $('tr:eq(0)', that.s.dt.nTHead).height() );
+848 		
+849 		$('thead tr:gt(0)', this.dom.drag).remove();
+850 		
+851 		$('thead th:eq(0)', this.dom.drag).each( function (i) {
+852 			this.style.width = $('th:eq('+that.s.mouse.targetIndex+')', that.s.dt.nTHead).width()+"px";
+853 		} );
+854 		
+855 		this.dom.drag.style.position = "absolute";
+856 		this.dom.drag.style.top = "0px";
+857 		this.dom.drag.style.left = "0px";
+858 		this.dom.drag.style.width = $('th:eq('+that.s.mouse.targetIndex+')', that.s.dt.nTHead).outerWidth()+"px";
+859 		
+860 		
+861 		this.dom.pointer = document.createElement( 'div' );
+862 		this.dom.pointer.className = "DTCR_pointer";
+863 		this.dom.pointer.style.position = "absolute";
+864 		
+865 		if ( this.s.dt.oScroll.sX === "" && this.s.dt.oScroll.sY === "" )
+866 		{
+867 			this.dom.pointer.style.top = $(this.s.dt.nTable).offset().top+"px";
+868 			this.dom.pointer.style.height = $(this.s.dt.nTable).height()+"px";
+869 		}
+870 		else
+871 		{
+872 			this.dom.pointer.style.top = $('div.dataTables_scroll', this.s.dt.nTableWrapper).offset().top+"px";
+873 			this.dom.pointer.style.height = $('div.dataTables_scroll', this.s.dt.nTableWrapper).height()+"px";
+874 		}
+875 	
+876 		document.body.appendChild( this.dom.pointer );
+877 		document.body.appendChild( this.dom.drag );
+878 	}
+879 };
+880 
+881 
+882 
+883 
+884 
+885 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+886  * Static parameters
+887  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+888 
+889 /**
+890  * Array of all ColReorder instances for later reference
+891  *  @property ColReorder.aoInstances
+892  *  @type     array
+893  *  @default  []
+894  *  @static
+895  */
+896 ColReorder.aoInstances = [];
+897 
+898 
+899 
+900 
+901 
+902 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+903  * Static functions
+904  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+905 
+906 /**
+907  * Reset the column ordering for a DataTables instance
+908  *  @method  ColReorder.fnReset
+909  *  @param   object oTable DataTables instance to consider
+910  *  @returns void
+911  *  @static
+912  */
+913 ColReorder.fnReset = function ( oTable )
+914 {
+915 	for ( var i=0, iLen=ColReorder.aoInstances.length ; i<iLen ; i++ )
+916 	{
+917 		if ( ColReorder.aoInstances[i].s.dt.oInstance == oTable )
+918 		{
+919 			ColReorder.aoInstances[i].fnReset();
+920 		}
+921 	}
+922 };
+923 
+924 
+925 
+926 
+927 
+928 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+929  * Constants
+930  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+931 
+932 /**
+933  * Name of this class
+934  *  @constant CLASS
+935  *  @type     String
+936  *  @default  ColReorder
+937  */
+938 ColReorder.prototype.CLASS = "ColReorder";
+939 
+940 
+941 /**
+942  * ColReorder version
+943  *  @constant  VERSION
+944  *  @type      String
+945  *  @default   As code
+946  */
+947 ColReorder.VERSION = "1.0.4";
+948 ColReorder.prototype.VERSION = ColReorder.VERSION;
+949 
+950 
+951 
+952 
+953 
+954 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+955  * Initialisation
+956  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+957 
+958 /*
+959  * Register a new feature with DataTables
+960  */
+961 if ( typeof $.fn.dataTable == "function" &&
+962      typeof $.fn.dataTableExt.fnVersionCheck == "function" &&
+963      $.fn.dataTableExt.fnVersionCheck('1.8.0') )
+964 {
+965 	$.fn.dataTableExt.aoFeatures.push( {
+966 		fnInit: function( oDTSettings ) {
+967 			var oTable = oDTSettings.oInstance;
+968 			if ( typeof oTable._oPluginColReorder == 'undefined' ) {
+969 				var opts = typeof oDTSettings.oInit.oColReorder != 'undefined' ? 
+970 					oDTSettings.oInit.oColReorder : {};
+971 				oTable._oPluginColReorder = new ColReorder( oDTSettings.oInstance, opts );
+972 			} else {
+973 				oTable.oApi._fnLog( oDTSettings, 1, "ColReorder attempted to initialise twice. Ignoring second" );
+974 			}
+975 			
+976 			return null; /* No node to insert */
+977 		},
+978 		cFeature: "R",
+979 		sFeature: "ColReorder"
+980 	} );
+981 }
+982 else
+983 {
+984 	alert( "Warning: ColReorder requires DataTables 1.8.0 or greater - www.datatables.net/download");
+985 }
+986 
+987 })(jQuery, window, document);
+988 
\ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/images/insert.png b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/images/insert.png new file mode 100644 index 000000000..15d5522da Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/images/insert.png differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/js/ColReorder.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/js/ColReorder.js new file mode 100644 index 000000000..832ede830 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/media/js/ColReorder.js @@ -0,0 +1,987 @@ +/* + * File: ColReorder.js + * Version: 1.0.4 + * CVS: $Id$ + * Description: Controls for column visiblity in DataTables + * Author: Allan Jardine (www.sprymedia.co.uk) + * Created: Wed Sep 15 18:23:29 BST 2010 + * Modified: $Date$ by $Author$ + * Language: Javascript + * License: GPL v2 or BSD 3 point style + * Project: DataTables + * Contact: www.sprymedia.co.uk/contact + * + * Copyright 2010-2011 Allan Jardine, all rights reserved. + * + * This source file is free software, under either the GPL v2 license or a + * BSD style license, available at: + * http://datatables.net/license_gpl2 + * http://datatables.net/license_bsd + * + */ + + +(function($, window, document) { + + +/** + * Switch the key value pairing of an index array to be value key (i.e. the old value is now the + * key). For example consider [ 2, 0, 1 ] this would be returned as [ 1, 2, 0 ]. + * @method fnInvertKeyValues + * @param array aIn Array to switch around + * @returns array + */ +function fnInvertKeyValues( aIn ) +{ + var aRet=[]; + for ( var i=0, iLen=aIn.length ; i= iCols ) + { + this.oApi._fnLog( oSettings, 1, "ColReorder 'from' index is out of bounds: "+iFrom ); + return; + } + + if ( iTo < 0 || iTo >= iCols ) + { + this.oApi._fnLog( oSettings, 1, "ColReorder 'to' index is out of bounds: "+iTo ); + return; + } + + /* + * Calculate the new column array index, so we have a mapping between the old and new + */ + var aiMapping = []; + for ( i=0, iLen=iCols ; i this.s.fixed-1 ) + { + this._fnMouseListener( i, this.s.dt.aoColumns[i].nTh ); + } + + /* Mark the original column order for later reference */ + this.s.dt.aoColumns[i]._ColReorder_iOrigCol = i; + } + + /* State saving */ + this.s.dt.aoStateSave.push( { + "fn": function (oS, sVal) { + return that._fnStateSave.call( that, sVal ); + }, + "sName": "ColReorder_State" + } ); + + /* An initial column order has been specified */ + var aiOrder = null; + if ( typeof this.s.init.aiOrder != 'undefined' ) + { + aiOrder = this.s.init.aiOrder.slice(); + } + + /* State loading, overrides the column order given */ + if ( this.s.dt.oLoadedState && typeof this.s.dt.oLoadedState.ColReorder != 'undefined' && + this.s.dt.oLoadedState.ColReorder.length == this.s.dt.aoColumns.length ) + { + aiOrder = this.s.dt.oLoadedState.ColReorder; + } + + /* If we have an order to apply - do so */ + if ( aiOrder ) + { + /* We might be called during or after the DataTables initialisation. If before, then we need + * to wait until the draw is done, if after, then do what we need to do right away + */ + if ( !that.s.dt._bInitComplete ) + { + var bDone = false; + this.s.dt.aoDrawCallback.push( { + "fn": function () { + if ( !that.s.dt._bInitComplete && !bDone ) + { + bDone = true; + var resort = fnInvertKeyValues( aiOrder ); + that._fnOrderColumns.call( that, resort ); + } + }, + "sName": "ColReorder_Pre" + } ); + } + else + { + var resort = fnInvertKeyValues( aiOrder ); + that._fnOrderColumns.call( that, resort ); + } + } + }, + + + /** + * Set the column order from an array + * @method _fnOrderColumns + * @param array a An array of integers which dictate the column order that should be applied + * @returns void + * @private + */ + "_fnOrderColumns": function ( a ) + { + if ( a.length != this.s.dt.aoColumns.length ) + { + this.s.dt.oInstance.oApi._fnLog( oDTSettings, 1, "ColReorder - array reorder does not "+ + "match known number of columns. Skipping." ); + return; + } + + for ( var i=0, iLen=a.length ; i 0 ) + { + this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('caption')[0] ); + } + while ( this.dom.drag.getElementsByTagName('tbody').length > 0 ) + { + this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('tbody')[0] ); + } + while ( this.dom.drag.getElementsByTagName('tfoot').length > 0 ) + { + this.dom.drag.removeChild( this.dom.drag.getElementsByTagName('tfoot')[0] ); + } + + $('thead tr:eq(0)', this.dom.drag).each( function () { + $('th:not(:eq('+that.s.mouse.targetIndex+'))', this).remove(); + } ); + $('tr', this.dom.drag).height( $('tr:eq(0)', that.s.dt.nTHead).height() ); + + $('thead tr:gt(0)', this.dom.drag).remove(); + + $('thead th:eq(0)', this.dom.drag).each( function (i) { + this.style.width = $('th:eq('+that.s.mouse.targetIndex+')', that.s.dt.nTHead).width()+"px"; + } ); + + this.dom.drag.style.position = "absolute"; + this.dom.drag.style.top = "0px"; + this.dom.drag.style.left = "0px"; + this.dom.drag.style.width = $('th:eq('+that.s.mouse.targetIndex+')', that.s.dt.nTHead).outerWidth()+"px"; + + + this.dom.pointer = document.createElement( 'div' ); + this.dom.pointer.className = "DTCR_pointer"; + this.dom.pointer.style.position = "absolute"; + + if ( this.s.dt.oScroll.sX === "" && this.s.dt.oScroll.sY === "" ) + { + this.dom.pointer.style.top = $(this.s.dt.nTable).offset().top+"px"; + this.dom.pointer.style.height = $(this.s.dt.nTable).height()+"px"; + } + else + { + this.dom.pointer.style.top = $('div.dataTables_scroll', this.s.dt.nTableWrapper).offset().top+"px"; + this.dom.pointer.style.height = $('div.dataTables_scroll', this.s.dt.nTableWrapper).height()+"px"; + } + + document.body.appendChild( this.dom.pointer ); + document.body.appendChild( this.dom.drag ); + } +}; + + + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Static parameters + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + +/** + * Array of all ColReorder instances for later reference + * @property ColReorder.aoInstances + * @type array + * @default [] + * @static + */ +ColReorder.aoInstances = []; + + + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Static functions + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + +/** + * Reset the column ordering for a DataTables instance + * @method ColReorder.fnReset + * @param object oTable DataTables instance to consider + * @returns void + * @static + */ +ColReorder.fnReset = function ( oTable ) +{ + for ( var i=0, iLen=ColReorder.aoInstances.length ; i=h)this.oApi._fnLog(a,1,"ColReorder 'from' index is out of bounds: "+c);else if(d<0||d>= +h)this.oApi._fnLog(a,1,"ColReorder 'to' index is out of bounds: "+d);else{g=[];b=0;for(e=h;bthis.s.fixed-1&&this._fnMouseListener(c,this.s.dt.aoColumns[c].nTh);this.s.dt.aoColumns[c]._ColReorder_iOrigCol= +c}this.s.dt.aoStateSave.push({fn:function(h,g){return a._fnStateSave.call(a,g)},sName:"ColReorder_State"});var b=null;if(typeof this.s.init.aiOrder!="undefined")b=this.s.init.aiOrder.slice();if(this.s.dt.oLoadedState&&typeof this.s.dt.oLoadedState.ColReorder!="undefined"&&this.s.dt.oLoadedState.ColReorder.length==this.s.dt.aoColumns.length)b=this.s.dt.oLoadedState.ColReorder;if(b)if(a.s.dt._bInitComplete){c=m(b);a._fnOrderColumns.call(a,c)}else{var e=false;this.s.dt.aoDrawCallback.push({fn:function(){if(!a.s.dt._bInitComplete&& +!e){e=true;var h=m(b);a._fnOrderColumns.call(a,h)}},sName:"ColReorder_Pre"})}},_fnOrderColumns:function(a){if(a.length!=this.s.dt.aoColumns.length)this.s.dt.oInstance.oApi._fnLog(oDTSettings,1,"ColReorder - array reorder does not match known number of columns. Skipping.");else{for(var c=0,d=a.length;c0;)this.dom.drag.removeChild(this.dom.drag.getElementsByTagName("caption")[0]);for(;this.dom.drag.getElementsByTagName("tbody").length>0;)this.dom.drag.removeChild(this.dom.drag.getElementsByTagName("tbody")[0]);for(;this.dom.drag.getElementsByTagName("tfoot").length> +0;)this.dom.drag.removeChild(this.dom.drag.getElementsByTagName("tfoot")[0]);f("thead tr:eq(0)",this.dom.drag).each(function(){f("th:not(:eq("+a.s.mouse.targetIndex+"))",this).remove()});f("tr",this.dom.drag).height(f("tr:eq(0)",a.s.dt.nTHead).height());f("thead tr:gt(0)",this.dom.drag).remove();f("thead th:eq(0)",this.dom.drag).each(function(){this.style.width=f("th:eq("+a.s.mouse.targetIndex+")",a.s.dt.nTHead).width()+"px"});this.dom.drag.style.position="absolute";this.dom.drag.style.top="0px"; +this.dom.drag.style.left="0px";this.dom.drag.style.width=f("th:eq("+a.s.mouse.targetIndex+")",a.s.dt.nTHead).outerWidth()+"px";this.dom.pointer=i.createElement("div");this.dom.pointer.className="DTCR_pointer";this.dom.pointer.style.position="absolute";if(this.s.dt.oScroll.sX===""&&this.s.dt.oScroll.sY===""){this.dom.pointer.style.top=f(this.s.dt.nTable).offset().top+"px";this.dom.pointer.style.height=f(this.s.dt.nTable).height()+"px"}else{this.dom.pointer.style.top=f("div.dataTables_scroll",this.s.dt.nTableWrapper).offset().top+ +"px";this.dom.pointer.style.height=f("div.dataTables_scroll",this.s.dt.nTableWrapper).height()+"px"}i.body.appendChild(this.dom.pointer);i.body.appendChild(this.dom.drag)}};ColReorder.aoInstances=[];ColReorder.fnReset=function(a){for(var c=0,d=ColReorder.aoInstances.length;c + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with predefined column ordering +
+ +

Preamble

+

ColReorder provides the ability to specify a column ordering which is not that of the + HTML (which typically you will want) through the parameter oColReorder.aiOrder. This is + an array of integers with the column ordering you want.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"oColReorder": {
+			"aiOrder": [ 4, 3, 2, 1, 0 ]
+		}
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/reset.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/reset.html new file mode 100644 index 000000000..60dca5d99 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/reset.html @@ -0,0 +1,533 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with the ability to reset the ordering +
+ +

Preamble

+

One useful control option to present the end user when using ColReorder is the ability + to reset the column ordering to that which was found in the HTML. This can be done by + calling the fnReset API function. While ColReorder does not provide a visual element for + this itself (in order to provide maximum flexibility) it is easy to hook to an event + handler, as shown in this example.

+ +

Live example

+
+
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"oColReorder": {
+			"aiOrder": [ 4, 3, 2, 1, 0 ]
+		}
+	} );
+	
+	$('#reset').click( function () {
+		ColReorder.fnReset( oTable );
+		return false;
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/scrolling.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/scrolling.html new file mode 100644 index 000000000..b91577ab8 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/scrolling.html @@ -0,0 +1,497 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with scrolling +
+ +

Preamble

+

This is a simple example to show ColReorder working with DataTables scrolling.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"sScrollY": "200px",
+		"bPaginate": false
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/server_side.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/server_side.html new file mode 100644 index 000000000..834773603 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/server_side.html @@ -0,0 +1,150 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with server-side processing +
+ +

Preamble

+

Server-side processing can be exceptionally useful in DataTables when dealing with + massive data sets, and ColReorder works with this as would be expected. There must be + special consideration for the column ordering on the server-side script since the + columns can be in an unexpected order. For this you can either choose to use the + sName parameter for each column and take this into account in the server-side + script (the parameter 'sColumns' is a comma separated string of these sName parameters).

+ +

Alternatively use the more flexible mDataProp + option for each column. This allows you to use JSON objects which DataTables, so order doesn't + matter like it would do in an array. Again the server-side script must take this into account + through the mDataProp_{i} which is sent for each column (so the server knows which + column is to be sorted on).

+ + +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"bProcessing": true,
+		"bServerSide": true,
+		"sAjaxSource": "../../examples/server_side/scripts/objects.php",
+		"aoColumns": [
+			{ "mDataProp": "engine" },
+			{ "mDataProp": "browser" },
+			{ "mDataProp": "platform" },
+			{ "mDataProp": "version" },
+			{ "mDataProp": "grade" }
+		]
+	} );
+} );
+ +

Example JSON return from the server

+
{
+"sEcho": 1,
+"iTotalRecords": "57",
+"iTotalDisplayRecords": "57",
+"aaData": [
+    {
+        "engine": "Gecko",
+        "browser": "Firefox 1.0",
+        "platform": "Win 98+ / OSX.2+",
+        "version": "1.7",
+        "grade": "A"
+    },
+    {
+        "engine": "Gecko",
+        "browser": "Firefox 1.5",
+        "platform": "Win 98+ / OSX.2+",
+        "version": "1.8",
+        "grade": "A"
+    },
+    ...
+  ]
+}
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/state_save.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/state_save.html new file mode 100644 index 000000000..bbfb425a1 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/state_save.html @@ -0,0 +1,498 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with state saving +
+ +

Preamble

+

A useful interaction pattern to use in DataTables is state saving, so when the end user + reloads or revisits a page its previous state is retained. ColReorder works seamlessly + with state saving in DataTables, remembering and restoring the column positions, as well + as everything else such as sorting and filtering.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'Rlfrtip',
+		"bStateSave": true
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/theme.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/theme.html new file mode 100644 index 000000000..5efaab48e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColReorder/theme.html @@ -0,0 +1,500 @@ + + + + + + + ColReorder example + + + + + + + +
+
+ ColReorder example with jQuery UI theming +
+ +

Preamble

+

This example shows how the jQuery UI ThemeRoller option in DataTables can be used + with ColReorder. The important thing to node here is how sDom is set up in order to + include the required classes and elements.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	var oTable = $('#example').dataTable( {
+		"sDom": 'R<"H"lfr>t<"F"ip<',
+		"bJQueryUI": true,
+		"sPaginationType": "full_numbers"
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/exclude_columns.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/exclude_columns.html new file mode 100644 index 000000000..bf6756c07 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/exclude_columns.html @@ -0,0 +1,500 @@ + + + + + + + ColVis example + + + + + + + +
+
+ ColVis example - exclude columns from list +
+ +

Preamble

+

It can at times be useful to exclude columns from being in the 'show / hide' list (for + example if you have hidden information that the end user shouldn't be able to make + visible. This can be done by the oColVis.aiExclude initialisation parameter when creating + the DataTable. This is simply an array of integers, indicating which columns should + be excluded. This example shows the first column being excluded.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	$('#example').dataTable( {
+		"sDom": 'C<"clear">lfrtip',
+		"oColVis": {
+			"aiExclude": [ 0 ]
+		}
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/index.html new file mode 100644 index 000000000..7d3107ceb --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/index.html @@ -0,0 +1,490 @@ + + + + + + + ColVis example + + + + + + + +
+
+ ColVis example +
+ +

Preamble

+

ColVis is a plug-in for DataTables which presents a list of all columns to a user and allows them to select which ones they wish to be visible. Click the 'Show / hide columns' button to be presented with a list of columns in the table, and click the buttons to show and hide them as you wish.

+ +

Live example

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Rendering engineBrowserPlatform(s)Engine versionCSS grade
Rendering engineBrowserPlatform(s)Engine versionCSS grade
TridentInternet Explorer 4.0Win 95+ (Entity: &)4X
TridentInternet Explorer 5.0Win 95+5C
TridentInternet Explorer 5.5Win 95+5.5A
TridentInternet Explorer 6Win 98+6A
TridentInternet Explorer 7Win XP SP2+7A
TridentAOL browser (AOL desktop)Win XP6A
Gecko (UTF-8: $¢€)Firefox 1.0Win 98+ / OSX.2+1.7A
GeckoFirefox 1.5Win 98+ / OSX.2+1.8A
GeckoFirefox 2.0Win 98+ / OSX.2+1.8A
GeckoFirefox 3.0Win 2k+ / OSX.3+1.9A
GeckoCamino 1.0OSX.2+1.8A
GeckoCamino 1.5OSX.3+1.8A
GeckoNetscape 7.2Win 95+ / Mac OS 8.6-9.21.7A
GeckoNetscape Browser 8Win 98SE+1.7A
GeckoNetscape Navigator 9Win 98+ / OSX.2+1.8A
GeckoMozilla 1.0Win 95+ / OSX.1+1A
GeckoMozilla 1.1Win 95+ / OSX.1+1.1A
GeckoMozilla 1.2Win 95+ / OSX.1+1.2A
GeckoMozilla 1.3Win 95+ / OSX.1+1.3A
GeckoMozilla 1.4Win 95+ / OSX.1+1.4A
GeckoMozilla 1.5Win 95+ / OSX.1+1.5A
GeckoMozilla 1.6Win 95+ / OSX.1+1.6A
GeckoMozilla 1.7Win 98+ / OSX.1+1.7A
GeckoMozilla 1.8Win 98+ / OSX.1+1.8A
GeckoSeamonkey 1.1Win 98+ / OSX.2+1.8A
GeckoEpiphany 2.20Gnome1.8A
WebkitSafari 1.2OSX.3125.5A
WebkitSafari 1.3OSX.3312.8A
WebkitSafari 2.0OSX.4+419.3A
WebkitSafari 3.0OSX.4+522.1A
WebkitOmniWeb 5.5OSX.4+420A
WebkitiPod Touch / iPhoneiPod420.1A
WebkitS60S60413A
PrestoOpera 7.0Win 95+ / OSX.1+-A
PrestoOpera 7.5Win 95+ / OSX.2+-A
PrestoOpera 8.0Win 95+ / OSX.2+-A
PrestoOpera 8.5Win 95+ / OSX.2+-A
PrestoOpera 9.0Win 95+ / OSX.3+-A
PrestoOpera 9.2Win 88+ / OSX.3+-A
PrestoOpera 9.5Win 88+ / OSX.3+-A
PrestoOpera for WiiWii-A
PrestoNokia N800N800-A
PrestoNintendo DS browserNintendo DS8.5C/A1
KHTMLKonqureror 3.1KDE 3.13.1C
KHTMLKonqureror 3.3KDE 3.33.3A
KHTMLKonqureror 3.5KDE 3.53.5A
TasmanInternet Explorer 4.5Mac OS 8-9-X
TasmanInternet Explorer 5.1Mac OS 7.6-91C
TasmanInternet Explorer 5.2Mac OS 8-X1C
MiscNetFront 3.1Embedded devices-C
MiscNetFront 3.4Embedded devices-A
MiscDillo 0.8Embedded devices-X
MiscLinksText only-X
MiscLynxText only-X
MiscIE MobileWindows Mobile 6-C
MiscPSP browserPSP-C
Other browsersAll others--U
+
+
+
+ + +

Examples

+ + + +

Initialisation code

+
$(document).ready( function () {
+	$('#example').dataTable( {
+		"sDom": 'C<"clear">lfrtip'
+	} );
+} );
+ + +
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/css/ColVis.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/css/ColVis.css new file mode 100644 index 000000000..a3bf8e209 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/css/ColVis.css @@ -0,0 +1,76 @@ + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * ColVis styles + */ +.ColVis { + float: right; + margin-bottom: 1em; +} + +.ColVis_Button { + position: relative; + float: left; + margin-right: 3px; + padding: 3px 5px; + height: 30px; + background-color: #fff; + border: 1px solid #d0d0d0; + cursor: pointer; + *cursor: hand; +} + +button.ColVis_Button::-moz-focus-inner { + border: none !important; + padding: 0; +} + +.ColVis_text_hover { + border: 1px solid #999; + background-color: #f0f0f0; +} + +div.ColVis_collectionBackground { + background-color: black; + z-index: 1100; +} + +div.ColVis_collection { + position: relative; + width: 150px; + background-color: #f3f3f3; + padding: 3px; + border: 1px solid #ccc; + z-index: 1102; +} + +div.ColVis_collection button.ColVis_Button { + background-color: white; + width: 100%; + float: none; + margin-bottom: 2px; +} + +div.ColVis_catcher { + position: absolute; + z-index: 1101; +} + +.disabled { + color: #999; +} + + + +button.ColVis_Button { + text-align: left; +} + +div.ColVis_collection button.ColVis_Button:hover { + border: 1px solid #999; + background-color: #f0f0f0; +} + +span.ColVis_radio { + display: inline-block; + width: 20px; +} diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/css/ColVisAlt.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/css/ColVisAlt.css new file mode 100644 index 000000000..93f35b61d --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/css/ColVisAlt.css @@ -0,0 +1,104 @@ +/* + * An alternative styling for ColVis + * Note you will likely have to change the path for the background image used by jQuery UI theming: + * ../../../../examples/examples_support/themes/smoothness + */ + +.ColVis { + position: absolute; + right: 0; + top: 0; + width: 15px; + height: 30px; +} + +.ColVis_MasterButton { + height: 100%; + width: 100%; + border-left-width: 0; + cursor: pointer; + *cursor: hand; + background: url('../images/button.png') no-repeat top left; +} + +button.ColVis_Button::-moz-focus-inner { + border: none !important; + padding: 0; +} + +.ColVis_text_hover { + border: 1px solid #999; + background-color: #f0f0f0; +} + +div.ColVis_collectionBackground { + background-color: black; + z-index: 1100; +} + +div.ColVis_collection { + position: relative; + width: 150px; + background-color: #f9f9f9; + padding: 3px; + border: 1px solid #ccc; + z-index: 1102; +} + +div.ColVis_collection button.ColVis_Button { + height: 30px; + width: 100%; + margin-right: 3px; + margin-bottom: 2px; + padding: 3px 5px; + cursor: pointer; + *cursor: hand; + text-align: left; +} + +div.ColVis_collection button.ColVis_Button:hover { + border: 1px solid #999; + background-color: #f0f0f0; +} + +div.ColVis_catcher { + position: absolute; + z-index: 1101; +} + +span.ColVis_radio { + display: inline-block; + width: 20px; +} + +button.ColVis_Restore { + margin-top: 15px; +} + +button.ColVis_Restore span { + display: inline-block; + padding-left: 10px; + text-align: left; +} + +.disabled { + color: #999; +} + + + +/* + * Styles needed for DataTables scrolling + */ +div.dataTables_scrollHead { + position: relative; + overflow: hidden; +} + +div.dataTables_scrollBody { + overflow-y: scroll; +} + +div.dataTables_scrollFoot { + overflow: hidden; +} diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/css/default.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/css/default.css new file mode 100644 index 000000000..b9dde3b14 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/css/default.css @@ -0,0 +1,418 @@ +/* + * TABLE OF CONTENTS: + * - Browser reset + * - HTML elements + * - JsDoc styling + */ + + + + + + +/* + * BEGIN BROWSER RESET + */ + +body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,p,pre,form,fieldset,input,textarea,p,blockquote,th,td { + margin:0; + padding:0 +} +html { + height:100%; + overflow:-moz-scrollbars-vertical; + overflow-x:auto +} +table { + border:0; + border-collapse:collapse; + border-spacing:0 +} +fieldset,img { + border:0 +} +address,caption,cite,code,dfn,em,strong,th,var { + font-style:normal; + font-weight:normal +} +em,cite { + font-style:italic +} +strong { + font-weight:bold +} +ol,ul { + list-style:none +} +caption,th { + text-align:left +} +h1,h2,h3,h4,h5,h6 { + font-size:100%; + font-weight:normal; + margin:0; + padding:0 +} +q:before,q:after { + content:'' +} +abbr,acronym { + border:0 +} + +/* + * END BROWSER RESET + */ + + + + + + +/* + * HTML ELEMENTS + */ + +* { + line-height: 1.4em; +} + +html { + font-size: 100%; +} + +body { + font-size: 0.75em !important; + padding: 15px 0; + background: #eee; + background-image: -moz-linear-gradient(left, #dddddd, #f9f9f9); + background-image: -webkit-gradient(linear,left bottom,right bottom,color-stop(0, #dddddd),color-stop(1, #f9f9f9)); + } + +body, +input, +select, +textarea { + color: #000; + font-family: Arial, Geneva, sans-serif; +} + +a:link, +a:hover, +a:active, +a:visited { + color: #19199e; +} +a:hover, +a:focus { + color: #00f; + text-decoration: none; +} + +p { + margin: 0 0 1.5em 0; +} + +/* + * END HTML ELEMENTS + */ + + + +/* + * BEGIN HACK + */ + +div.containerMain:after, +div.safeBox:after { + content:""; + display:block; + height:0; + clear:both; +} + +/* + * END HACK + */ + + + +/* + * BEGIN JSDOC + */ + +div.index *.heading1 { + margin-bottom: 0.5em; + border-bottom: 1px solid #999999; + padding: 0.5em 0 0.1em 0; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.3em; + letter-spacing: 1px; +} + +div.index { + float: left; + width: 30%; + min-width: 100px; + max-width: 250px; +} +div.index div.menu { + margin: 0 15px 0 -15px; + -moz-border-radius: 15px; + -webkit-border-radius: 15px; + border-radius: 15px; + padding: 15px 15px 15px 30px; + background-color: #FFFFFF; + background-color: rgba(255, 255, 255, 0.5); + -moz-box-shadow: 0px 0px 10px #c4c4c4; + -webkit-box-shadow: 0px 0px 10px #c4c4c4; + box-shadow: 0px 0px 10px #c4c4c4; +} +*+html div.index div.menu { + background-color: #FFFFFF; +} +* html div.index div.menu { + background-color: #FFFFFF; +} + +div.index div.menu div { + text-align: left; +} + +div.index div.menu a { + text-decoration: none; +} +div.index div.menu a:hover { + text-decoration: underline; +} + +div.index ul.classList a { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.index div.fineprint { + padding: 15px 30px 15px 15px; + color: #777; + font-size: 0.9em; +} +div.index div.fineprint a { + color: #777; +} + + + +div.content { + float: left; + width: 70%; + min-width: 300px; + max-width: 600px; +} +div.innerContent { + padding: 0 0 0 2.5em; +} + +div.content ul, +div.content ol { + margin-bottom: 3em; +} + +div.content *.classTitle { + margin-bottom: 0.5em; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 2.5em; + letter-spacing: 2px; +} + +div.content *.classTitle span { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.content p.summary { + font-size: 1.2em; +} + +div.content ul *.classname a, +div.content ul *.filename a { + font-family: Consolas, "Courier New", Courier, monospace; + text-decoration: none; + font-weight: bold; +} +div.content ul *.classname a:hover, +div.content ul *.filename a:hover { + text-decoration: underline; +} + +div.content div.props { + position: relative; + left: -10px; + margin-bottom: 2.5em; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + padding: 10px 15px 15px 15px; + overflow: hidden; + background: #fff; + background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2)); /* FF3.6 */ + background: -webkit-gradient(linear,left top,left bottom,color-stop(0, rgba(255, 255, 255, 0.7)),color-stop(1, rgba(255, 255, 255, 0.2))); + -moz-box-shadow: 0px 0px 10px #ccc; + -webkit-box-shadow: 0px 0px 5px #bbb; + box-shadow: 0px 0px 5px #bbb; +} + +div.content div.props div.sectionTitle { + padding-bottom: 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +div.content div.hr { + margin: 0 10px 0 0; + height: 4em; +} + + + +table.summaryTable { + position: relative; + left: -10px; + width: 100%; + border-collapse: collapse; + box-sizing: content-box; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + -ms-box-sizing: content-box; + -o-box-sizing: content-box; + -icab-box-sizing: content-box; + -khtml-box-sizing: content-box; +} + +table.summaryTable caption { + padding: 0 10px 10px 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +table.summaryTable td, +table.summaryTable th { + padding: 0px 10px 10px 10px; + vertical-align: top; +} +table.summaryTable tr:last-child td { + padding-bottom: 0; +} + +table.summaryTable th { + font-weight: bold; +} + +table.summaryTable td.attributes { + width: 35%; + font-family: Consolas, "Courier New", Courier, monospace; + color: #666; +} + +table.summaryTable td.nameDescription { + width: 65% +} + +table.summaryTable td.nameDescription div.fixedFont { + font-weight: bold; +} + +table.summaryTable div.description { + color: #333; +} + + + +dl.detailList { + margin-top: 0.5em; +} + +dl.detailList.nomargin + dl.detailList.nomargin { + margin-top: 0; +} + +dl.detailList dt { + display: inline; + margin-right: 5px; + font-weight: bold; +} + +dl.detailList dt:before { + display: block; + content: ""; +} + +dl.detailList dd { + display: inline; +} + +dl.detailList.params dt { + display: block; +} +dl.detailList.params dd { + display: block; + padding-left: 2em; + padding-bottom: 0.4em; +} + + + + +ul.fileList li { + margin-bottom: 1.5em; +} + + + +.fixedFont { + font-family: Consolas, "Courier New", Courier, monospace; +} + +.fixedFont.heading { + margin-bottom: 0.5em; + font-size: 1.25em; + line-height: 1.1em +} + +.fixedFont.heading + .description { + font-size: 1.2em; +} + +.fixedFont.heading .light, +.fixedFont.heading .lighter { + font-weight: bold; +} + +pre.code { + margin: 10px 0 10px 0; + padding: 10px; + border: 1px solid #ccc; + -moz-border-radius: 2px; + -webkit-border-radius: 2px; + border-radius: 2px; + overflow: auto; + font-family: Consolas, "Courier New", Courier, monospace; + background: #eee; +} + +.light { + color: #666; +} + +.lighter { + color: #999; +} + +.clear { + clear: both; + width: 100%; + min-height: 0; +} + +/* + * END JSDOC + */ \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/files.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/files.html new file mode 100644 index 000000000..976ae7c08 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/files.html @@ -0,0 +1,67 @@ + + + + + + JsDoc Reference - File Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:56 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

File Index

+ + +
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/index.html new file mode 100644 index 000000000..1d6fff7e2 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/index.html @@ -0,0 +1,71 @@ + + + + + JsDoc Reference - Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:55 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

Class Index

+ +
    + +
  • +

    _global_

    +

    +
  • + +
  • +

    ColVis

    +

    ColVis

    +
  • + +
  • +

    ColVis#dom

    +

    Common and useful DOM elements for the class instance

    +
  • + +
  • +

    ColVis#s

    +

    Settings object which contains customisable information for ColVis instance

    +
  • + +
+
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis#dom.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis#dom.html new file mode 100644 index 000000000..da0ec39f5 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis#dom.html @@ -0,0 +1,516 @@ + + + + + + + JsDoc Reference - ColVis#dom + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:55 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColVis#dom +

+ +

+ + + + + Common and useful DOM elements for the class instance + + +
Defined in: ColVis.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColVis#dom.background +
+
Background node used for shading the display and event capturing
+
<static>   +
+ ColVis#dom.button +
+
Activation button
+
<static>   +
+ ColVis#dom.buttons +
+
List of button elements
+
<static>   +
+ ColVis#dom.catcher +
+
Element to position over the activation button to catch mouse events when using mouseover
+
<static>   +
+ ColVis#dom.collection +
+
Collection list node
+
<static>   +
+ ColVis#dom.restore +
+
Restore button
+
<static>   +
+ ColVis#dom.wrapper +
+
Wrapper for the button - given back to DataTables as the node to insert
+
+
+ + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColVis#dom +
+ +
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {Node} + + ColVis#dom.background +
+ +
+ Background node used for shading the display and event capturing + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.button +
+ +
+ Activation button + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Array} + + ColVis#dom.buttons +
+ +
+ List of button elements + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.catcher +
+ +
+ Element to position over the activation button to catch mouse events when using mouseover + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.collection +
+ +
+ Collection list node + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.restore +
+ +
+ Restore button + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.wrapper +
+ +
+ Wrapper for the button - given back to DataTables as the node to insert + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + + + +
+
+ + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis#s.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis#s.html new file mode 100644 index 000000000..f52c3298e --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis#s.html @@ -0,0 +1,854 @@ + + + + + + + JsDoc Reference - ColVis#s + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:55 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColVis#s +

+ +

+ + + + + Settings object which contains customisable information for ColVis instance + + +
Defined in: ColVis.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  +
+ ColVis#s +
+
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColVis#s.abOriginal +
+
Store the original viisbility settings so they could be restored
+
<static>   +
+ ColVis#s.activate +
+
Mode of activation.
+
<static>   +
+ ColVis#s.aiExclude +
+
List of columns (integers) which should be excluded from the list
+
<static>   +
+ ColVis#s.bRestore +
+
Show restore button
+
<static>   +
+ ColVis#s.buttonText +
+
Text used for the button
+
<static>   +
+ ColVis#s.dt +
+
DataTables settings object
+
<static>   +
+ ColVis#s.fnLabel +
+
Label callback for column names.
+
<static>   +
+ ColVis#s.fnStateChange +
+
Callback function to tell the user when the state has changed
+
<static>   +
+ ColVis#s.hidden +
+
Flag to say if the collection is hidden
+
<static>   +
+ ColVis#s.iOverlayFade +
+
Overlay animation duration in mS
+
<static>   +
+ ColVis#s.oInit +
+
Customisation object
+
<static>   +
+ ColVis#s.sAlign +
+
Position of the collection menu when shown - align "left" or "right"
+
<static>   +
+ ColVis#s.sRestore +
+
Restore button text
+
<static>   +
+ ColVis#s.sSize +
+
Indicate if ColVis should automatically calculate the size of buttons or not.
+
+
+ + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColVis#s +
+ +
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {Array} + + ColVis#s.abOriginal +
+ +
+ Store the original viisbility settings so they could be restored + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.activate +
+ +
+ Mode of activation. Can be 'click' or 'mouseover' + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ click +
+ +
+ + +
+ + + +
+ + <static> + + + {Array} + + ColVis#s.aiExclude +
+ +
+ List of columns (integers) which should be excluded from the list + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {Array} + + ColVis#s.bRestore +
+ +
+ Show restore button + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.buttonText +
+ +
+ Text used for the button + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ Show / hide columns +
+ +
+ + +
+ + + +
+ + <static> + + + {Object} + + ColVis#s.dt +
+ +
+ DataTables settings object + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Function} + + ColVis#s.fnLabel +
+ +
+ Label callback for column names. Takes three parameters: 1. the column index, 2. the column +title detected by DataTables and 3. the TH node for the column + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {function} + + ColVis#s.fnStateChange +
+ +
+ Callback function to tell the user when the state has changed + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {boolean} + + ColVis#s.hidden +
+ +
+ Flag to say if the collection is hidden + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ true +
+ +
+ + +
+ + + +
+ + <static> + + + {Integer} + + ColVis#s.iOverlayFade +
+ +
+ Overlay animation duration in mS + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ 500 +
+ +
+ + +
+ + + +
+ + <static> + + + {Object} + + ColVis#s.oInit +
+ +
+ Customisation object + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ passed in +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.sAlign +
+ +
+ Position of the collection menu when shown - align "left" or "right" + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ right +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.sRestore +
+ +
+ Restore button text + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ Restore original +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.sSize +
+ +
+ Indicate if ColVis should automatically calculate the size of buttons or not. The default +is for it to do so. Set to "css" to disable the automatic sizing + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ auto +
+ +
+ + + + +
+
+ + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis.html new file mode 100644 index 000000000..8ba1ff62a --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/ColVis.html @@ -0,0 +1,500 @@ + + + + + + + JsDoc Reference - ColVis + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:55 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Class ColVis +

+ +

+ + + + + ColVis + + +
Defined in: ColVis.js. + +

+ + +
+ + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ ColVis(DataTables, oInit) +
+
ColVis provides column visiblity control for DataTables
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColVis.aInstances +
+
Collection of all ColVis instances
+
<constant>   +
+ CLASS +
+
Name of this class
+
<static> <constant>   +
+ ColVis.VERSION +
+
ColVis version
+
+
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<static>   +
ColVis.fnRebuild(object) +
+
Rebuild the collection for a given table, or all tables if no parameter given
+
  + +
Rebuild the list of buttons for this instance (i.e.
+
+
+ + + + + + + + + + +
+
+ + +
+ Class Detail +
+ +
+ ColVis(DataTables, oInit) +
+ +
+ ColVis provides column visiblity control for DataTables + +
+ + + + +
+
Parameters:
+ +
+ {object} DataTables + +
+
settings object
+ +
+ oInit + +
+
+ +
+ + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {Array} + + ColVis.aInstances +
+ +
+ Collection of all ColVis instances + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <constant> + + + {String} + + CLASS +
+ +
+ Name of this class + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ ColVis +
+ +
+ + +
+ + + +
+ + <static> <constant> + + + {String} + + ColVis.VERSION +
+ +
+ ColVis version + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ See code +
+ +
+ + + + +
+
+ + + + +
+
+
+ Method Detail +
+ + + + +
+ + <static> + + + + + ColVis.fnRebuild(object) +
+ +
+ Rebuild the collection for a given table, or all tables if no parameter given + + + + +
+ + + + +
+
Parameters:
+ +
+ object + +
+
oTable DataTable instance to consider - optional
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + + + + + + fnRebuild() +
+ +
+ Rebuild the list of buttons for this instance (i.e. if there is a column header update) + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + + + +
+
+ + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/_global_.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/_global_.html new file mode 100644 index 000000000..18b38060f --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/_global_.html @@ -0,0 +1,97 @@ + + + + + + + JsDoc Reference - _global_ + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:55 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Built-In Namespace _global_ +

+ +

+ + + + + + + +

+ + + + + + + + + + + + + + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/src/js_ColVis.js.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/src/js_ColVis.js.html new file mode 100644 index 000000000..8591b6437 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs/symbols/src/js_ColVis.js.html @@ -0,0 +1,879 @@ +
  1 /*
+  2  * File:        ColVis.js
+  3  * Version:     1.0.6
+  4  * CVS:         $Id$
+  5  * Description: Controls for column visiblity in DataTables
+  6  * Author:      Allan Jardine (www.sprymedia.co.uk)
+  7  * Created:     Wed Sep 15 18:23:29 BST 2010
+  8  * Modified:    $Date$ by $Author$
+  9  * Language:    Javascript
+ 10  * License:     GPL v2 or BSD 3 point style
+ 11  * Project:     Just a little bit of fun :-)
+ 12  * Contact:     www.sprymedia.co.uk/contact
+ 13  * 
+ 14  * Copyright 2010-2011 Allan Jardine, all rights reserved.
+ 15  *
+ 16  * This source file is free software, under either the GPL v2 license or a
+ 17  * BSD style license, available at:
+ 18  *   http://datatables.net/license_gpl2
+ 19  *   http://datatables.net/license_bsd
+ 20  */
+ 21 
+ 22 (function($) {
+ 23 
+ 24 /** 
+ 25  * ColVis provides column visiblity control for DataTables
+ 26  * @class ColVis
+ 27  * @constructor
+ 28  * @param {object} DataTables settings object
+ 29  */
+ 30 ColVis = function( oDTSettings, oInit )
+ 31 {
+ 32 	/* Santiy check that we are a new instance */
+ 33 	if ( !this.CLASS || this.CLASS != "ColVis" )
+ 34 	{
+ 35 		alert( "Warning: ColVis must be initialised with the keyword 'new'" );
+ 36 	}
+ 37 	
+ 38 	if ( typeof oInit == 'undefined' )
+ 39 	{
+ 40 		oInit = {};
+ 41 	}
+ 42 	
+ 43 	
+ 44 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ 45 	 * Public class variables
+ 46 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+ 47 	
+ 48 	/**
+ 49 	 * @namespace Settings object which contains customisable information for ColVis instance
+ 50 	 */
+ 51 	this.s = {
+ 52 		/**
+ 53 		 * DataTables settings object
+ 54 		 *  @property dt
+ 55 		 *  @type     Object
+ 56 		 *  @default  null
+ 57 		 */
+ 58 		dt: null,
+ 59 		
+ 60 		/**
+ 61 		 * Customisation object
+ 62 		 *  @property oInit
+ 63 		 *  @type     Object
+ 64 		 *  @default  passed in
+ 65 		 */
+ 66 		oInit: oInit,
+ 67 		
+ 68 		/**
+ 69 		 * Callback function to tell the user when the state has changed
+ 70 		 *  @property fnStateChange
+ 71 		 *  @type     function
+ 72 		 *  @default  null
+ 73 		 */
+ 74 		fnStateChange: null,
+ 75 		
+ 76 		/**
+ 77 		 * Mode of activation. Can be 'click' or 'mouseover'
+ 78 		 *  @property activate
+ 79 		 *  @type     String
+ 80 		 *  @default  click
+ 81 		 */
+ 82 		activate: "click",
+ 83 		
+ 84 		/**
+ 85 		 * Position of the collection menu when shown - align "left" or "right"
+ 86 		 *  @property sAlign
+ 87 		 *  @type     String
+ 88 		 *  @default  right
+ 89 		 */
+ 90 		sAlign: "left",
+ 91 		
+ 92 		/**
+ 93 		 * Text used for the button
+ 94 		 *  @property buttonText
+ 95 		 *  @type     String
+ 96 		 *  @default  Show / hide columns
+ 97 		 */
+ 98 		buttonText: "Show / hide columns",
+ 99 		
+100 		/**
+101 		 * Flag to say if the collection is hidden
+102 		 *  @property hidden
+103 		 *  @type     boolean
+104 		 *  @default  true
+105 		 */
+106 		hidden: true,
+107 		
+108 		/**
+109 		 * List of columns (integers) which should be excluded from the list
+110 		 *  @property aiExclude
+111 		 *  @type     Array
+112 		 *  @default  []
+113 		 */
+114 		aiExclude: [],
+115 		
+116 		/**
+117 		 * Store the original viisbility settings so they could be restored
+118 		 *  @property abOriginal
+119 		 *  @type     Array
+120 		 *  @default  []
+121 		 */
+122 		abOriginal: [],
+123 		
+124 		/**
+125 		 * Show restore button
+126 		 *  @property bRestore
+127 		 *  @type     Array
+128 		 *  @default  []
+129 		 */
+130 		bRestore: false,
+131 		
+132 		/**
+133 		 * Restore button text
+134 		 *  @property sRestore
+135 		 *  @type     String
+136 		 *  @default  Restore original
+137 		 */
+138 		sRestore: "Restore original",
+139 		
+140 		/**
+141 		 * Overlay animation duration in mS
+142 		 *  @property iOverlayFade
+143 		 *  @type     Integer
+144 		 *  @default  500
+145 		 */
+146 		iOverlayFade: 500,
+147 		
+148 		/**
+149 		 * Label callback for column names. Takes three parameters: 1. the column index, 2. the column
+150 		 * title detected by DataTables and 3. the TH node for the column
+151 		 *  @property fnLabel
+152 		 *  @type     Function
+153 		 *  @default  null
+154 		 */
+155 		fnLabel: null,
+156 		
+157 		/**
+158 		 * Indicate if ColVis should automatically calculate the size of buttons or not. The default
+159 		 * is for it to do so. Set to "css" to disable the automatic sizing
+160 		 *  @property sSize
+161 		 *  @type     String
+162 		 *  @default  auto
+163 		 */
+164 		sSize: "auto"
+165 	};
+166 	
+167 	
+168 	/**
+169 	 * @namespace Common and useful DOM elements for the class instance
+170 	 */
+171 	this.dom = {
+172 		/**
+173 		 * Wrapper for the button - given back to DataTables as the node to insert
+174 		 *  @property wrapper
+175 		 *  @type     Node
+176 		 *  @default  null
+177 		 */
+178 		wrapper: null,
+179 		
+180 		/**
+181 		 * Activation button
+182 		 *  @property button
+183 		 *  @type     Node
+184 		 *  @default  null
+185 		 */
+186 		button: null,
+187 		
+188 		/**
+189 		 * Collection list node
+190 		 *  @property collection
+191 		 *  @type     Node
+192 		 *  @default  null
+193 		 */
+194 		collection: null,
+195 		
+196 		/**
+197 		 * Background node used for shading the display and event capturing
+198 		 *  @property background
+199 		 *  @type     Node
+200 		 *  @default  null
+201 		 */
+202 		background: null,
+203 		
+204 		/**
+205 		 * Element to position over the activation button to catch mouse events when using mouseover
+206 		 *  @property catcher
+207 		 *  @type     Node
+208 		 *  @default  null
+209 		 */
+210 		catcher: null,
+211 		
+212 		/**
+213 		 * List of button elements
+214 		 *  @property buttons
+215 		 *  @type     Array
+216 		 *  @default  []
+217 		 */
+218 		buttons: [],
+219 		
+220 		/**
+221 		 * Restore button
+222 		 *  @property restore
+223 		 *  @type     Node
+224 		 *  @default  null
+225 		 */
+226 		restore: null
+227 	};
+228 	
+229 	/* Store global reference */
+230 	ColVis.aInstances.push( this );
+231 	
+232 	/* Constructor logic */
+233 	this.s.dt = oDTSettings;
+234 	this._fnConstruct();
+235 	return this;
+236 };
+237 
+238 
+239 
+240 ColVis.prototype = {
+241 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+242 	 * Public methods
+243 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+244 	
+245 	/**
+246 	 * Rebuild the list of buttons for this instance (i.e. if there is a column header update)
+247 	 *  @method  fnRebuild
+248 	 *  @returns void
+249 	 */
+250 	fnRebuild: function ()
+251 	{
+252 		/* Remove the old buttons */
+253 		for ( var i=this.dom.buttons.length-1 ; i>=0 ; i-- )
+254 		{
+255 			if ( this.dom.buttons[i] !== null )
+256 			{
+257 				this.dom.collection.removeChild( this.dom.buttons[i] );
+258 			}
+259 		}
+260 		this.dom.buttons.splice( 0, this.dom.buttons.length );
+261 		
+262 		if ( this.dom.restore )
+263 		{
+264 			this.dom.restore.parentNode( this.dom.restore );
+265 		}
+266 		
+267 		/* Re-add them (this is not the optimal way of doing this, it is fast and effective) */
+268 		this._fnAddButtons();
+269 		
+270 		/* Update the checkboxes */
+271 		this._fnDrawCallback();
+272 	},
+273 	
+274 	
+275 	
+276 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+277 	 * Private methods (they are of course public in JS, but recommended as private)
+278 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+279 	
+280 	/**
+281 	 * Constructor logic
+282 	 *  @method  _fnConstruct
+283 	 *  @returns void
+284 	 *  @private 
+285 	 */
+286 	_fnConstruct: function ()
+287 	{
+288 		this._fnApplyCustomisation();
+289 		
+290 		var that = this;
+291 		this.dom.wrapper = document.createElement('div');
+292 		this.dom.wrapper.className = "ColVis TableTools";
+293 		
+294 		this.dom.button = this._fnDomBaseButton( this.s.buttonText );
+295 		this.dom.button.className += " ColVis_MasterButton";
+296 		this.dom.wrapper.appendChild( this.dom.button );
+297 		
+298 		this.dom.catcher = this._fnDomCatcher();
+299 		this.dom.collection = this._fnDomCollection();
+300 		this.dom.background = this._fnDomBackground();
+301 		
+302 		this._fnAddButtons();
+303 		
+304 		/* Store the original visbility information */
+305 		for ( var i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+306 		{
+307 			this.s.abOriginal.push( this.s.dt.aoColumns[i].bVisible );
+308 		}
+309 		
+310 		/* Update on each draw */
+311 		this.s.dt.aoDrawCallback.push( {
+312 			fn: function () {
+313 				that._fnDrawCallback.call( that );
+314 			},
+315 			sName: "ColVis"
+316 		} );
+317 	},
+318 	
+319 	
+320 	/**
+321 	 * Apply any customisation to the settings from the DataTables initialisation
+322 	 *  @method  _fnApplyCustomisation
+323 	 *  @returns void
+324 	 *  @private 
+325 	 */
+326 	_fnApplyCustomisation: function ()
+327 	{
+328 		var oConfig = this.s.oInit;
+329 		
+330 		if ( typeof oConfig.activate != 'undefined' )
+331 		{
+332 			this.s.activate = oConfig.activate;
+333 		}
+334 		
+335 		if ( typeof oConfig.buttonText != 'undefined' )
+336 		{
+337 			this.s.buttonText = oConfig.buttonText;
+338 		}
+339 		
+340 		if ( typeof oConfig.aiExclude != 'undefined' )
+341 		{
+342 			this.s.aiExclude = oConfig.aiExclude;
+343 		}
+344 		
+345 		if ( typeof oConfig.bRestore != 'undefined' )
+346 		{
+347 			this.s.bRestore = oConfig.bRestore;
+348 		}
+349 		
+350 		if ( typeof oConfig.sRestore != 'undefined' )
+351 		{
+352 			this.s.sRestore = oConfig.sRestore;
+353 		}
+354 		
+355 		if ( typeof oConfig.sAlign != 'undefined' )
+356 		{
+357 			this.s.sAlign = oConfig.sAlign;
+358 		}
+359 		
+360 		if ( typeof oConfig.fnStateChange != 'undefined' )
+361 		{
+362 			this.s.fnStateChange = oConfig.fnStateChange;
+363 		}
+364 		
+365 		if ( typeof oConfig.iOverlayFade != 'undefined' )
+366 		{
+367 			this.s.iOverlayFade = oConfig.iOverlayFade;
+368 		}
+369 		
+370 		if ( typeof oConfig.fnLabel != 'undefined' )
+371 		{
+372 			this.s.fnLabel = oConfig.fnLabel;
+373 		}
+374 	},
+375 	
+376 	
+377 	/**
+378 	 * On each table draw, check the visiblity checkboxes as needed. This allows any process to
+379 	 * update the table's column visiblity and ColVis will still be accurate.
+380 	 *  @method  _fnDrawCallback
+381 	 *  @returns void
+382 	 *  @private 
+383 	 */
+384 	_fnDrawCallback: function ()
+385 	{
+386 		var aoColumns = this.s.dt.aoColumns;
+387 		
+388 		for ( var i=0, iLen=aoColumns.length ; i<iLen ; i++ )
+389 		{
+390 			if ( this.dom.buttons[i] !== null )
+391 			{
+392 				if ( aoColumns[i].bVisible )
+393 				{
+394 					$('input', this.dom.buttons[i]).attr('checked','checked');
+395 				}
+396 				else
+397 				{
+398 					$('input', this.dom.buttons[i]).removeAttr('checked');
+399 				}
+400 			}
+401 		}
+402 	},
+403 	
+404 	
+405 	/**
+406 	 * Loop through the columns in the table and as a new button for each one.
+407 	 *  @method  _fnAddButtons
+408 	 *  @returns void
+409 	 *  @private 
+410 	 */
+411 	_fnAddButtons: function ()
+412 	{
+413 		var
+414 			nButton,
+415 			sExclude = ","+this.s.aiExclude.join(',')+",";
+416 		
+417 		for ( var i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+418 		{
+419 			if ( sExclude.indexOf( ","+i+"," ) == -1 )
+420 			{
+421 				nButton = this._fnDomColumnButton( i );
+422 				this.dom.buttons.push( nButton );
+423 				this.dom.collection.appendChild( nButton );
+424 			}
+425 			else
+426 			{
+427 				this.dom.buttons.push( null );
+428 			}
+429 		}
+430 		
+431 		if ( this.s.bRestore )
+432 		{
+433 			nButton = this._fnDomRestoreButton();
+434 			nButton.className += " ColVis_Restore";
+435 			this.dom.buttons.push( nButton );
+436 			this.dom.collection.appendChild( nButton );
+437 		}
+438 	},
+439 	
+440 	
+441 	/**
+442 	 * Create a button which allows a "restore" action
+443 	 *  @method  _fnDomRestoreButton
+444 	 *  @returns {Node} Created button
+445 	 *  @private 
+446 	 */
+447 	_fnDomRestoreButton: function ()
+448 	{
+449 		var
+450 			that = this,
+451 		  nButton = document.createElement('button'),
+452 		  nSpan = document.createElement('span');
+453 		
+454 		nButton.className = !this.s.dt.bJUI ? "ColVis_Button TableTools_Button" :
+455 			"ColVis_Button TableTools_Button ui-button ui-state-default";
+456 		nButton.appendChild( nSpan );
+457 		$(nSpan).html( '<span class="ColVis_title">'+this.s.sRestore+'</span>' );
+458 		
+459 		$(nButton).click( function (e) {
+460 			for ( var i=0, iLen=that.s.abOriginal.length ; i<iLen ; i++ )
+461 			{
+462 				that.s.dt.oInstance.fnSetColumnVis( i, that.s.abOriginal[i], false );
+463 			}
+464 			that.s.dt.oInstance.fnDraw( false );
+465 		} );
+466 		
+467 		return nButton;
+468 	},
+469 	
+470 	
+471 	/**
+472 	 * Create the DOM for a show / hide button
+473 	 *  @method  _fnDomColumnButton
+474 	 *  @param {int} i Column in question
+475 	 *  @returns {Node} Created button
+476 	 *  @private 
+477 	 */
+478 	_fnDomColumnButton: function ( i )
+479 	{
+480 		var
+481 			that = this,
+482 			oColumn = this.s.dt.aoColumns[i],
+483 		  nButton = document.createElement('button'),
+484 		  nSpan = document.createElement('span');
+485 		
+486 		nButton.className = !this.s.dt.bJUI ? "ColVis_Button TableTools_Button" :
+487 			"ColVis_Button TableTools_Button ui-button ui-state-default";
+488 		nButton.appendChild( nSpan );
+489 		var sTitle = this.s.fnLabel===null ? oColumn.sTitle : this.s.fnLabel( i, oColumn.sTitle, oColumn.nTh );
+490 		$(nSpan).html(
+491 			'<span class="ColVis_radio"><input type="checkbox"></span>'+
+492 			'<span class="ColVis_title">'+sTitle+'</span>' );
+493 		
+494 		$(nButton).click( function (e) {
+495 			var showHide = !$('input', this).is(":checked");
+496 			if ( e.target.nodeName.toLowerCase() == "input" )
+497 			{
+498 				showHide = $('input', this).is(":checked");
+499 			}
+500 			
+501 			/* Need to consider the case where the initialiser created more than one table - change the
+502 			 * API index that DataTables is using
+503 			 */
+504 			var oldIndex = $.fn.dataTableExt.iApiIndex;
+505 			$.fn.dataTableExt.iApiIndex = that._fnDataTablesApiIndex.call(that);
+506 			that.s.dt.oInstance.fnSetColumnVis( i, showHide );
+507 			$.fn.dataTableExt.iApiIndex = oldIndex; /* Restore */
+508 			
+509 			if ( that.s.fnStateChange !== null )
+510 			{
+511 				that.s.fnStateChange.call( that, i, showHide );
+512 			}
+513 		} );
+514 		
+515 		return nButton;
+516 	},
+517 	
+518 	
+519 	/**
+520 	 * Get the position in the DataTables instance array of the table for this instance of ColVis
+521 	 *  @method  _fnDataTablesApiIndex
+522 	 *  @returns {int} Index
+523 	 *  @private 
+524 	 */
+525 	_fnDataTablesApiIndex: function ()
+526 	{
+527 		for ( var i=0, iLen=this.s.dt.oInstance.length ; i<iLen ; i++ )
+528 		{
+529 			if ( this.s.dt.oInstance[i] == this.s.dt.nTable )
+530 			{
+531 				return i;
+532 			}
+533 		}
+534 		return 0;
+535 	},
+536 	
+537 	
+538 	/**
+539 	 * Create the DOM needed for the button and apply some base properties. All buttons start here
+540 	 *  @method  _fnDomBaseButton
+541 	 *  @param   {String} text Button text
+542 	 *  @returns {Node} DIV element for the button
+543 	 *  @private 
+544 	 */
+545 	_fnDomBaseButton: function ( text )
+546 	{
+547 		var
+548 			that = this,
+549 		  nButton = document.createElement('button'),
+550 		  nSpan = document.createElement('span'),
+551 			sEvent = this.s.activate=="mouseover" ? "mouseover" : "click";
+552 		
+553 		nButton.className = !this.s.dt.bJUI ? "ColVis_Button TableTools_Button" :
+554 			"ColVis_Button TableTools_Button ui-button ui-state-default";
+555 		nButton.appendChild( nSpan );
+556 		nSpan.innerHTML = text;
+557 		
+558 		$(nButton).bind( sEvent, function (e) {
+559 			that._fnCollectionShow();
+560 			e.preventDefault();
+561 		} );
+562 		
+563 		return nButton;
+564 	},
+565 	
+566 	
+567 	/**
+568 	 * Create the element used to contain list the columns (it is shown and hidden as needed)
+569 	 *  @method  _fnDomCollection
+570 	 *  @returns {Node} div container for the collection
+571 	 *  @private 
+572 	 */
+573 	_fnDomCollection: function ()
+574 	{
+575 		var that = this;
+576 		var nHidden = document.createElement('div');
+577 		nHidden.style.display = "none";
+578 		nHidden.className = !this.s.dt.bJUI ? "ColVis_collection TableTools_collection" :
+579 			"ColVis_collection TableTools_collection ui-buttonset ui-buttonset-multi";
+580 		nHidden.style.position = "absolute";
+581 		$(nHidden).css('opacity', 0);
+582 		
+583 		return nHidden;
+584 	},
+585 	
+586 	
+587 	/**
+588 	 * An element to be placed on top of the activate button to catch events
+589 	 *  @method  _fnDomCatcher
+590 	 *  @returns {Node} div container for the collection
+591 	 *  @private 
+592 	 */
+593 	_fnDomCatcher: function ()
+594 	{
+595 		var 
+596 			that = this,
+597 			nCatcher = document.createElement('div');
+598 		nCatcher.className = "ColVis_catcher TableTools_catcher";
+599 		
+600 		$(nCatcher).click( function () {
+601 			that._fnCollectionHide.call( that, null, null );
+602 		} );
+603 		
+604 		return nCatcher;
+605 	},
+606 	
+607 	
+608 	/**
+609 	 * Create the element used to shade the background, and capture hide events (it is shown and 
+610 	 * hidden as needed)
+611 	 *  @method  _fnDomBackground
+612 	 *  @returns {Node} div container for the background
+613 	 *  @private 
+614 	 */
+615 	_fnDomBackground: function ()
+616 	{
+617 		var that = this;
+618 		
+619 		var nBackground = document.createElement('div');
+620 		nBackground.style.position = "absolute";
+621 		nBackground.style.left = "0px";
+622 		nBackground.style.top = "0px";
+623 		nBackground.className = "ColVis_collectionBackground TableTools_collectionBackground";
+624 		$(nBackground).css('opacity', 0);
+625 		
+626 		$(nBackground).click( function () {
+627 			that._fnCollectionHide.call( that, null, null );
+628 		} );
+629 		
+630 		/* When considering a mouse over action for the activation, we also consider a mouse out
+631 		 * which is the same as a mouse over the background - without all the messing around of
+632 		 * bubbling events. Use the catcher element to avoid messing around with bubbling
+633 		 */
+634 		if ( this.s.activate == "mouseover" )
+635 		{
+636 			$(nBackground).mouseover( function () {
+637 				that.s.overcollection = false;
+638 				that._fnCollectionHide.call( that, null, null );
+639 			} );
+640 		}
+641 		
+642 		return nBackground;
+643 	},
+644 	
+645 	
+646 	/**
+647 	 * Show the show / hide list and the background
+648 	 *  @method  _fnCollectionShow
+649 	 *  @returns void
+650 	 *  @private 
+651 	 */
+652 	_fnCollectionShow: function ()
+653 	{
+654 		var that = this, i, iLen;
+655 		var oPos = $(this.dom.button).offset();
+656 		var nHidden = this.dom.collection;
+657 		var nBackground = this.dom.background;
+658 		var iDivX = parseInt(oPos.left, 10);
+659 		var iDivY = parseInt(oPos.top + $(this.dom.button).outerHeight(), 10);
+660 		
+661 		nHidden.style.top = iDivY+"px";
+662 		nHidden.style.left = iDivX+"px";
+663 		nHidden.style.display = "block";
+664 		$(nHidden).css('opacity',0);
+665 		
+666 		var iWinHeight = $(window).height(), iDocHeight = $(document).height(),
+667 		 	iWinWidth = $(window).width(), iDocWidth = $(document).width();
+668 		
+669 		nBackground.style.height = ((iWinHeight>iDocHeight)? iWinHeight : iDocHeight) +"px";
+670 		nBackground.style.width = ((iWinWidth<iDocWidth)? iWinWidth : iDocWidth) +"px";
+671 		
+672 		var oStyle = this.dom.catcher.style;
+673 		oStyle.height = $(this.dom.button).outerHeight()+"px";
+674 		oStyle.width = $(this.dom.button).outerWidth()+"px";
+675 		oStyle.top = oPos.top+"px";
+676 		oStyle.left = iDivX+"px";
+677 		
+678 		document.body.appendChild( nBackground );
+679 		document.body.appendChild( nHidden );
+680 		document.body.appendChild( this.dom.catcher );
+681 		
+682 		/* Resize the buttons */
+683 		if ( this.s.sSize == "auto" )
+684 		{
+685 			var aiSizes = [];
+686 			this.dom.collection.style.width = "auto";
+687 			for ( i=0, iLen=this.dom.buttons.length ; i<iLen ; i++ )
+688 			{
+689 				if ( this.dom.buttons[i] !== null )
+690 				{
+691 					this.dom.buttons[i].style.width = "auto";
+692 					aiSizes.push( $(this.dom.buttons[i]).outerWidth() );
+693 				}
+694 			}
+695 			iMax = Math.max.apply(window, aiSizes);
+696 			for ( i=0, iLen=this.dom.buttons.length ; i<iLen ; i++ )
+697 			{
+698 				if ( this.dom.buttons[i] !== null )
+699 				{
+700 					this.dom.buttons[i].style.width = iMax+"px";
+701 				}
+702 			}
+703 			this.dom.collection.style.width = iMax+"px";
+704 		}
+705 		
+706 		/* Visual corrections to try and keep the collection visible */
+707 		nHidden.style.left = this.s.sAlign=="left" ?
+708 			iDivX+"px" : (iDivX-$(nHidden).outerWidth()+$(this.dom.button).outerWidth())+"px";
+709 		
+710 		var iDivWidth = $(nHidden).outerWidth();
+711 		var iDivHeight = $(nHidden).outerHeight();
+712 		
+713 		if ( iDivX + iDivWidth > iDocWidth )
+714 		{
+715 			nHidden.style.left = (iDocWidth-iDivWidth)+"px";
+716 		}
+717 		
+718 		
+719 		/* This results in a very small delay for the end user but it allows the animation to be
+720 		 * much smoother. If you don't want the animation, then the setTimeout can be removed
+721 		 */
+722 		setTimeout( function () {
+723 			$(nHidden).animate({opacity: 1}, that.s.iOverlayFade);
+724 			$(nBackground).animate({opacity: 0.1}, that.s.iOverlayFade, 'linear', function () {
+725 				/* In IE6 if you set the checked attribute of a hidden checkbox, then this is not visually
+726 				 * reflected. As such, we need to do it here, once it is visible. Unbelievable.
+727 				 */
+728 				if ( jQuery.browser.msie && jQuery.browser.version == "6.0" )
+729 				{
+730 					that._fnDrawCallback();
+731 				}
+732 			});
+733 		}, 10 );
+734 		
+735 		this.s.hidden = false;
+736 	},
+737 	
+738 	
+739 	/**
+740 	 * Hide the show / hide list and the background
+741 	 *  @method  _fnCollectionHide
+742 	 *  @returns void
+743 	 *  @private 
+744 	 */
+745 	_fnCollectionHide: function (  )
+746 	{
+747 		var that = this;
+748 		
+749 		if ( !this.s.hidden && this.dom.collection !== null )
+750 		{
+751 			this.s.hidden = true;
+752 			
+753 			$(this.dom.collection).animate({opacity: 0}, that.s.iOverlayFade, function (e) {
+754 				this.style.display = "none";
+755 			} );
+756 			
+757 			$(this.dom.background).animate({opacity: 0}, that.s.iOverlayFade, function (e) {
+758 				document.body.removeChild( that.dom.background );
+759 				document.body.removeChild( that.dom.catcher );
+760 			} );
+761 		}
+762 	}
+763 };
+764 
+765 
+766 
+767 
+768 
+769 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+770  * Static object methods
+771  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+772 
+773 /**
+774  * Rebuild the collection for a given table, or all tables if no parameter given
+775  *  @method  ColVis.fnRebuild
+776  *  @static
+777  *  @param   object oTable DataTable instance to consider - optional
+778  *  @returns void
+779  */
+780 ColVis.fnRebuild = function ( oTable )
+781 {
+782 	var nTable = null;
+783 	if ( typeof oTable != 'undefined' )
+784 	{
+785 		nTable = oTable.fnSettings().nTable;
+786 	}
+787 	
+788 	for ( var i=0, iLen=ColVis.aInstances.length ; i<iLen ; i++ )
+789 	{
+790 		if ( typeof oTable == 'undefined' || nTable == ColVis.aInstances[i].s.dt.nTable )
+791 		{
+792 			ColVis.aInstances[i].fnRebuild();
+793 		}
+794 	}
+795 };
+796 
+797 
+798 
+799 
+800 
+801 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+802  * Static object propterties
+803  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+804 
+805 /**
+806  * Collection of all ColVis instances
+807  *  @property ColVis.aInstances
+808  *  @static
+809  *  @type     Array
+810  *  @default  []
+811  */
+812 ColVis.aInstances = [];
+813 
+814 
+815 
+816 
+817 
+818 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+819  * Constants
+820  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+821 
+822 /**
+823  * Name of this class
+824  *  @constant CLASS
+825  *  @type     String
+826  *  @default  ColVis
+827  */
+828 ColVis.prototype.CLASS = "ColVis";
+829 
+830 
+831 /**
+832  * ColVis version
+833  *  @constant  VERSION
+834  *  @type      String
+835  *  @default   See code
+836  */
+837 ColVis.VERSION = "1.0.6";
+838 ColVis.prototype.VERSION = ColVis.VERSION;
+839 
+840 
+841 
+842 
+843 
+844 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+845  * Initialisation
+846  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+847 
+848 /*
+849  * Register a new feature with DataTables
+850  */
+851 if ( typeof $.fn.dataTable == "function" &&
+852      typeof $.fn.dataTableExt.fnVersionCheck == "function" &&
+853      $.fn.dataTableExt.fnVersionCheck('1.7.0') )
+854 {
+855 	$.fn.dataTableExt.aoFeatures.push( {
+856 		fnInit: function( oDTSettings ) {
+857 			var init = (typeof oDTSettings.oInit.oColVis == 'undefined') ?
+858 				{} : oDTSettings.oInit.oColVis;
+859 			var oColvis = new ColVis( oDTSettings, init );
+860 			return oColvis.dom.wrapper;
+861 		},
+862 		cFeature: "C",
+863 		sFeature: "ColVis"
+864 	} );
+865 }
+866 else
+867 {
+868 	alert( "Warning: ColVis requires DataTables 1.7 or greater - www.datatables.net/download");
+869 }
+870 
+871 })(jQuery);
+872 
\ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/css/default.css b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/css/default.css new file mode 100644 index 000000000..b9dde3b14 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/css/default.css @@ -0,0 +1,418 @@ +/* + * TABLE OF CONTENTS: + * - Browser reset + * - HTML elements + * - JsDoc styling + */ + + + + + + +/* + * BEGIN BROWSER RESET + */ + +body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,p,pre,form,fieldset,input,textarea,p,blockquote,th,td { + margin:0; + padding:0 +} +html { + height:100%; + overflow:-moz-scrollbars-vertical; + overflow-x:auto +} +table { + border:0; + border-collapse:collapse; + border-spacing:0 +} +fieldset,img { + border:0 +} +address,caption,cite,code,dfn,em,strong,th,var { + font-style:normal; + font-weight:normal +} +em,cite { + font-style:italic +} +strong { + font-weight:bold +} +ol,ul { + list-style:none +} +caption,th { + text-align:left +} +h1,h2,h3,h4,h5,h6 { + font-size:100%; + font-weight:normal; + margin:0; + padding:0 +} +q:before,q:after { + content:'' +} +abbr,acronym { + border:0 +} + +/* + * END BROWSER RESET + */ + + + + + + +/* + * HTML ELEMENTS + */ + +* { + line-height: 1.4em; +} + +html { + font-size: 100%; +} + +body { + font-size: 0.75em !important; + padding: 15px 0; + background: #eee; + background-image: -moz-linear-gradient(left, #dddddd, #f9f9f9); + background-image: -webkit-gradient(linear,left bottom,right bottom,color-stop(0, #dddddd),color-stop(1, #f9f9f9)); + } + +body, +input, +select, +textarea { + color: #000; + font-family: Arial, Geneva, sans-serif; +} + +a:link, +a:hover, +a:active, +a:visited { + color: #19199e; +} +a:hover, +a:focus { + color: #00f; + text-decoration: none; +} + +p { + margin: 0 0 1.5em 0; +} + +/* + * END HTML ELEMENTS + */ + + + +/* + * BEGIN HACK + */ + +div.containerMain:after, +div.safeBox:after { + content:""; + display:block; + height:0; + clear:both; +} + +/* + * END HACK + */ + + + +/* + * BEGIN JSDOC + */ + +div.index *.heading1 { + margin-bottom: 0.5em; + border-bottom: 1px solid #999999; + padding: 0.5em 0 0.1em 0; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.3em; + letter-spacing: 1px; +} + +div.index { + float: left; + width: 30%; + min-width: 100px; + max-width: 250px; +} +div.index div.menu { + margin: 0 15px 0 -15px; + -moz-border-radius: 15px; + -webkit-border-radius: 15px; + border-radius: 15px; + padding: 15px 15px 15px 30px; + background-color: #FFFFFF; + background-color: rgba(255, 255, 255, 0.5); + -moz-box-shadow: 0px 0px 10px #c4c4c4; + -webkit-box-shadow: 0px 0px 10px #c4c4c4; + box-shadow: 0px 0px 10px #c4c4c4; +} +*+html div.index div.menu { + background-color: #FFFFFF; +} +* html div.index div.menu { + background-color: #FFFFFF; +} + +div.index div.menu div { + text-align: left; +} + +div.index div.menu a { + text-decoration: none; +} +div.index div.menu a:hover { + text-decoration: underline; +} + +div.index ul.classList a { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.index div.fineprint { + padding: 15px 30px 15px 15px; + color: #777; + font-size: 0.9em; +} +div.index div.fineprint a { + color: #777; +} + + + +div.content { + float: left; + width: 70%; + min-width: 300px; + max-width: 600px; +} +div.innerContent { + padding: 0 0 0 2.5em; +} + +div.content ul, +div.content ol { + margin-bottom: 3em; +} + +div.content *.classTitle { + margin-bottom: 0.5em; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 2.5em; + letter-spacing: 2px; +} + +div.content *.classTitle span { + font-family: Consolas, "Courier New", Courier, monospace; +} + +div.content p.summary { + font-size: 1.2em; +} + +div.content ul *.classname a, +div.content ul *.filename a { + font-family: Consolas, "Courier New", Courier, monospace; + text-decoration: none; + font-weight: bold; +} +div.content ul *.classname a:hover, +div.content ul *.filename a:hover { + text-decoration: underline; +} + +div.content div.props { + position: relative; + left: -10px; + margin-bottom: 2.5em; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + padding: 10px 15px 15px 15px; + overflow: hidden; + background: #fff; + background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2)); /* FF3.6 */ + background: -webkit-gradient(linear,left top,left bottom,color-stop(0, rgba(255, 255, 255, 0.7)),color-stop(1, rgba(255, 255, 255, 0.2))); + -moz-box-shadow: 0px 0px 10px #ccc; + -webkit-box-shadow: 0px 0px 5px #bbb; + box-shadow: 0px 0px 5px #bbb; +} + +div.content div.props div.sectionTitle { + padding-bottom: 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +div.content div.hr { + margin: 0 10px 0 0; + height: 4em; +} + + + +table.summaryTable { + position: relative; + left: -10px; + width: 100%; + border-collapse: collapse; + box-sizing: content-box; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + -ms-box-sizing: content-box; + -o-box-sizing: content-box; + -icab-box-sizing: content-box; + -khtml-box-sizing: content-box; +} + +table.summaryTable caption { + padding: 0 10px 10px 10px; + font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; + font-size: 1.4em; + letter-spacing: 1px; +} + +table.summaryTable td, +table.summaryTable th { + padding: 0px 10px 10px 10px; + vertical-align: top; +} +table.summaryTable tr:last-child td { + padding-bottom: 0; +} + +table.summaryTable th { + font-weight: bold; +} + +table.summaryTable td.attributes { + width: 35%; + font-family: Consolas, "Courier New", Courier, monospace; + color: #666; +} + +table.summaryTable td.nameDescription { + width: 65% +} + +table.summaryTable td.nameDescription div.fixedFont { + font-weight: bold; +} + +table.summaryTable div.description { + color: #333; +} + + + +dl.detailList { + margin-top: 0.5em; +} + +dl.detailList.nomargin + dl.detailList.nomargin { + margin-top: 0; +} + +dl.detailList dt { + display: inline; + margin-right: 5px; + font-weight: bold; +} + +dl.detailList dt:before { + display: block; + content: ""; +} + +dl.detailList dd { + display: inline; +} + +dl.detailList.params dt { + display: block; +} +dl.detailList.params dd { + display: block; + padding-left: 2em; + padding-bottom: 0.4em; +} + + + + +ul.fileList li { + margin-bottom: 1.5em; +} + + + +.fixedFont { + font-family: Consolas, "Courier New", Courier, monospace; +} + +.fixedFont.heading { + margin-bottom: 0.5em; + font-size: 1.25em; + line-height: 1.1em +} + +.fixedFont.heading + .description { + font-size: 1.2em; +} + +.fixedFont.heading .light, +.fixedFont.heading .lighter { + font-weight: bold; +} + +pre.code { + margin: 10px 0 10px 0; + padding: 10px; + border: 1px solid #ccc; + -moz-border-radius: 2px; + -webkit-border-radius: 2px; + border-radius: 2px; + overflow: auto; + font-family: Consolas, "Courier New", Courier, monospace; + background: #eee; +} + +.light { + color: #666; +} + +.lighter { + color: #999; +} + +.clear { + clear: both; + width: 100%; + min-height: 0; +} + +/* + * END JSDOC + */ \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/files.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/files.html new file mode 100644 index 000000000..bd2b8506c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/files.html @@ -0,0 +1,67 @@ + + + + + + JsDoc Reference - File Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:50 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

File Index

+ + +
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/index.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/index.html new file mode 100644 index 000000000..b5844a844 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/index.html @@ -0,0 +1,71 @@ + + + + + JsDoc Reference - Index + + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:50 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

Class Index

+ +
    + +
  • +

    _global_

    +

    +
  • + +
  • +

    ColVis

    +

    ColVis

    +
  • + +
  • +

    ColVis#dom

    +

    Common and useful DOM elements for the class instance

    +
  • + +
  • +

    ColVis#s

    +

    Settings object which contains customisable information for ColVis instance

    +
  • + +
+
+
+ + \ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis#dom.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis#dom.html new file mode 100644 index 000000000..b4e9dee9c --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis#dom.html @@ -0,0 +1,516 @@ + + + + + + + JsDoc Reference - ColVis#dom + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:50 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColVis#dom +

+ +

+ + + + + Common and useful DOM elements for the class instance + + +
Defined in: ColVis.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColVis#dom.background +
+
Background node used for shading the display and event capturing
+
<static>   +
+ ColVis#dom.button +
+
Activation button
+
<static>   +
+ ColVis#dom.buttons +
+
List of button elements
+
<static>   +
+ ColVis#dom.catcher +
+
Element to position over the activation button to catch mouse events when using mouseover
+
<static>   +
+ ColVis#dom.collection +
+
Collection list node
+
<static>   +
+ ColVis#dom.restore +
+
Restore button
+
<static>   +
+ ColVis#dom.wrapper +
+
Wrapper for the button - given back to DataTables as the node to insert
+
+
+ + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColVis#dom +
+ +
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {Node} + + ColVis#dom.background +
+ +
+ Background node used for shading the display and event capturing + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.button +
+ +
+ Activation button + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Array} + + ColVis#dom.buttons +
+ +
+ List of button elements + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.catcher +
+ +
+ Element to position over the activation button to catch mouse events when using mouseover + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.collection +
+ +
+ Collection list node + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.restore +
+ +
+ Restore button + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Node} + + ColVis#dom.wrapper +
+ +
+ Wrapper for the button - given back to DataTables as the node to insert + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + + + +
+
+ + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis#s.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis#s.html new file mode 100644 index 000000000..733b96081 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis#s.html @@ -0,0 +1,854 @@ + + + + + + + JsDoc Reference - ColVis#s + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:50 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Namespace ColVis#s +

+ +

+ + + + + Settings object which contains customisable information for ColVis instance + + +
Defined in: ColVis.js. + +

+ + +
+ + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  +
+ ColVis#s +
+
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColVis#s.abOriginal +
+
Store the original viisbility settings so they could be restored
+
<static>   +
+ ColVis#s.activate +
+
Mode of activation.
+
<static>   +
+ ColVis#s.aiExclude +
+
List of columns (integers) which should be excluded from the list
+
<static>   +
+ ColVis#s.bRestore +
+
Show restore button
+
<static>   +
+ ColVis#s.buttonText +
+
Text used for the button
+
<static>   +
+ ColVis#s.dt +
+
DataTables settings object
+
<static>   +
+ ColVis#s.fnLabel +
+
Label callback for column names.
+
<static>   +
+ ColVis#s.fnStateChange +
+
Callback function to tell the user when the state has changed
+
<static>   +
+ ColVis#s.hidden +
+
Flag to say if the collection is hidden
+
<static>   +
+ ColVis#s.iOverlayFade +
+
Overlay animation duration in mS
+
<static>   +
+ ColVis#s.oInit +
+
Customisation object
+
<static>   +
+ ColVis#s.sAlign +
+
Position of the collection menu when shown - align "left" or "right"
+
<static>   +
+ ColVis#s.sRestore +
+
Restore button text
+
<static>   +
+ ColVis#s.sSize +
+
Indicate if ColVis should automatically calculate the size of buttons or not.
+
+
+ + + + + + + + + + + + + +
+
+ + +
+ Namespace Detail +
+ +
+ ColVis#s +
+ +
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {Array} + + ColVis#s.abOriginal +
+ +
+ Store the original viisbility settings so they could be restored + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.activate +
+ +
+ Mode of activation. Can be 'click' or 'mouseover' + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ click +
+ +
+ + +
+ + + +
+ + <static> + + + {Array} + + ColVis#s.aiExclude +
+ +
+ List of columns (integers) which should be excluded from the list + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {Array} + + ColVis#s.bRestore +
+ +
+ Show restore button + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.buttonText +
+ +
+ Text used for the button + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ Show / hide columns +
+ +
+ + +
+ + + +
+ + <static> + + + {Object} + + ColVis#s.dt +
+ +
+ DataTables settings object + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {Function} + + ColVis#s.fnLabel +
+ +
+ Label callback for column names. Takes three parameters: 1. the column index, 2. the column +title detected by DataTables and 3. the TH node for the column + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {function} + + ColVis#s.fnStateChange +
+ +
+ Callback function to tell the user when the state has changed + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ null +
+ +
+ + +
+ + + +
+ + <static> + + + {boolean} + + ColVis#s.hidden +
+ +
+ Flag to say if the collection is hidden + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ true +
+ +
+ + +
+ + + +
+ + <static> + + + {Integer} + + ColVis#s.iOverlayFade +
+ +
+ Overlay animation duration in mS + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ 500 +
+ +
+ + +
+ + + +
+ + <static> + + + {Object} + + ColVis#s.oInit +
+ +
+ Customisation object + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ passed in +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.sAlign +
+ +
+ Position of the collection menu when shown - align "left" or "right" + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ right +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.sRestore +
+ +
+ Restore button text + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ Restore original +
+ +
+ + +
+ + + +
+ + <static> + + + {String} + + ColVis#s.sSize +
+ +
+ Indicate if ColVis should automatically calculate the size of buttons or not. The default +is for it to do so. Set to "css" to disable the automatic sizing + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ auto +
+ +
+ + + + +
+
+ + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis.html new file mode 100644 index 000000000..81f4dcbad --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/ColVis.html @@ -0,0 +1,1279 @@ + + + + + + + JsDoc Reference - ColVis + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:49 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Class ColVis +

+ +

+ + + + + ColVis + + +
Defined in: ColVis.js. + +

+ + +
+ + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ ColVis(DataTables, oInit) +
+
ColVis provides column visiblity control for DataTables
+
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   +
+ ColVis.aInstances +
+
Collection of all ColVis instances
+
<constant>   +
+ CLASS +
+
Name of this class
+
<static> <constant>   +
+ ColVis.VERSION +
+
ColVis version
+
+
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<private>   + +
Loop through the columns in the table and as a new button for each one.
+
<private>   + +
Apply any customisation to the settings from the DataTables initialisation
+
<private>   + +
Hide the show / hide list and the background
+
<private>   + +
Show the show / hide list and the background
+
<private>   + +
Constructor logic
+
<private>   + +
Get the position in the DataTables instance array of the table for this instance of ColVis
+
<private>   + +
Create the element used to shade the background, and capture hide events (it is shown and +hidden as needed)
+
<private>   + +
Create the DOM needed for the button and apply some base properties.
+
<private>   + +
An element to be placed on top of the activate button to catch events
+
<private>   + +
Create the element used to contain list the columns (it is shown and hidden as needed)
+
<private>   + +
Create the DOM for a show / hide button
+
<private>   + +
Create a button which allows a "restore" action
+
<private>   + +
On each table draw, check the visiblity checkboxes as needed.
+
<static>   +
ColVis.fnRebuild(object) +
+
Rebuild the collection for a given table, or all tables if no parameter given
+
  + +
Rebuild the list of buttons for this instance (i.e.
+
+
+ + + + + + + + + + +
+
+ + +
+ Class Detail +
+ +
+ ColVis(DataTables, oInit) +
+ +
+ ColVis provides column visiblity control for DataTables + +
+ + + + +
+
Parameters:
+ +
+ {object} DataTables + +
+
settings object
+ +
+ oInit + +
+
+ +
+ + + +
+
+ + + + +
+
+ +
+ Field Detail +
+ + + + +
+ + <static> + + + {Array} + + ColVis.aInstances +
+ +
+ Collection of all ColVis instances + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ [] +
+ +
+ + +
+ + + +
+ + <constant> + + + {String} + + CLASS +
+ +
+ Name of this class + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ ColVis +
+ +
+ + +
+ + + +
+ + <static> <constant> + + + {String} + + ColVis.VERSION +
+ +
+ ColVis version + + + +
+ + + + +
+ + + + + +
Default Value:
+
+ See code +
+ +
+ + + + +
+
+ + + + +
+
+
+ Method Detail +
+ + + + +
+ + <private> + + + + + _fnAddButtons() +
+ +
+ Loop through the columns in the table and as a new button for each one. + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnApplyCustomisation() +
+ +
+ Apply any customisation to the settings from the DataTables initialisation + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnCollectionHide() +
+ +
+ Hide the show / hide list and the background + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnCollectionShow() +
+ +
+ Show the show / hide list and the background + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnConstruct() +
+ +
+ Constructor logic + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {int} + + _fnDataTablesApiIndex() +
+ +
+ Get the position in the DataTables instance array of the table for this instance of ColVis + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
{int} Index
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {Node} + + _fnDomBackground() +
+ +
+ Create the element used to shade the background, and capture hide events (it is shown and +hidden as needed) + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
{Node} div container for the background
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {Node} + + _fnDomBaseButton(text) +
+ +
+ Create the DOM needed for the button and apply some base properties. All buttons start here + + + + +
+ + + + +
+
Parameters:
+ +
+ {String} text + +
+
Button text
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
{Node} DIV element for the button
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {Node} + + _fnDomCatcher() +
+ +
+ An element to be placed on top of the activate button to catch events + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
{Node} div container for the collection
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {Node} + + _fnDomCollection() +
+ +
+ Create the element used to contain list the columns (it is shown and hidden as needed) + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
{Node} div container for the collection
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {Node} + + _fnDomColumnButton(i) +
+ +
+ Create the DOM for a show / hide button + + + + +
+ + + + +
+
Parameters:
+ +
+ {int} i + +
+
Column in question
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
{Node} Created button
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + {Node} + + _fnDomRestoreButton() +
+ +
+ Create a button which allows a "restore" action + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
{Node} Created button
+ + + + + + + +
+ + +
+ + + +
+ + <private> + + + + + _fnDrawCallback() +
+ +
+ On each table draw, check the visiblity checkboxes as needed. This allows any process to +update the table's column visiblity and ColVis will still be accurate. + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + <static> + + + + + ColVis.fnRebuild(object) +
+ +
+ Rebuild the collection for a given table, or all tables if no parameter given + + + + +
+ + + + +
+
Parameters:
+ +
+ object + +
+
oTable DataTable instance to consider - optional
+ +
+ + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + +
+ + + +
+ + + + + + + fnRebuild() +
+ +
+ Rebuild the list of buttons for this instance (i.e. if there is a column header update) + + + + +
+ + + + + + +
+ + + + + + + + +
Returns:
+ +
void
+ + + + + + + +
+ + + + +
+
+ + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/_global_.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/_global_.html new file mode 100644 index 000000000..be8555a73 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/_global_.html @@ -0,0 +1,97 @@ + + + + + + + JsDoc Reference - _global_ + + + + + + +
+ + +
+ + Generated by JsDoc Toolkit 2.4.0 on Sat Sep 10 2011 10:46:49 GMT+0100 (BST)
+ HTML template: Codeview +
+
+ +
+
+

+ + Built-In Namespace _global_ +

+ +

+ + + + + + + +

+ + + + + + + + + + + + + + + + + + + + + + +
+
+ + diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/src/js_ColVis.js.html b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/src/js_ColVis.js.html new file mode 100644 index 000000000..8591b6437 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/docs_private/symbols/src/js_ColVis.js.html @@ -0,0 +1,879 @@ +
  1 /*
+  2  * File:        ColVis.js
+  3  * Version:     1.0.6
+  4  * CVS:         $Id$
+  5  * Description: Controls for column visiblity in DataTables
+  6  * Author:      Allan Jardine (www.sprymedia.co.uk)
+  7  * Created:     Wed Sep 15 18:23:29 BST 2010
+  8  * Modified:    $Date$ by $Author$
+  9  * Language:    Javascript
+ 10  * License:     GPL v2 or BSD 3 point style
+ 11  * Project:     Just a little bit of fun :-)
+ 12  * Contact:     www.sprymedia.co.uk/contact
+ 13  * 
+ 14  * Copyright 2010-2011 Allan Jardine, all rights reserved.
+ 15  *
+ 16  * This source file is free software, under either the GPL v2 license or a
+ 17  * BSD style license, available at:
+ 18  *   http://datatables.net/license_gpl2
+ 19  *   http://datatables.net/license_bsd
+ 20  */
+ 21 
+ 22 (function($) {
+ 23 
+ 24 /** 
+ 25  * ColVis provides column visiblity control for DataTables
+ 26  * @class ColVis
+ 27  * @constructor
+ 28  * @param {object} DataTables settings object
+ 29  */
+ 30 ColVis = function( oDTSettings, oInit )
+ 31 {
+ 32 	/* Santiy check that we are a new instance */
+ 33 	if ( !this.CLASS || this.CLASS != "ColVis" )
+ 34 	{
+ 35 		alert( "Warning: ColVis must be initialised with the keyword 'new'" );
+ 36 	}
+ 37 	
+ 38 	if ( typeof oInit == 'undefined' )
+ 39 	{
+ 40 		oInit = {};
+ 41 	}
+ 42 	
+ 43 	
+ 44 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ 45 	 * Public class variables
+ 46 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+ 47 	
+ 48 	/**
+ 49 	 * @namespace Settings object which contains customisable information for ColVis instance
+ 50 	 */
+ 51 	this.s = {
+ 52 		/**
+ 53 		 * DataTables settings object
+ 54 		 *  @property dt
+ 55 		 *  @type     Object
+ 56 		 *  @default  null
+ 57 		 */
+ 58 		dt: null,
+ 59 		
+ 60 		/**
+ 61 		 * Customisation object
+ 62 		 *  @property oInit
+ 63 		 *  @type     Object
+ 64 		 *  @default  passed in
+ 65 		 */
+ 66 		oInit: oInit,
+ 67 		
+ 68 		/**
+ 69 		 * Callback function to tell the user when the state has changed
+ 70 		 *  @property fnStateChange
+ 71 		 *  @type     function
+ 72 		 *  @default  null
+ 73 		 */
+ 74 		fnStateChange: null,
+ 75 		
+ 76 		/**
+ 77 		 * Mode of activation. Can be 'click' or 'mouseover'
+ 78 		 *  @property activate
+ 79 		 *  @type     String
+ 80 		 *  @default  click
+ 81 		 */
+ 82 		activate: "click",
+ 83 		
+ 84 		/**
+ 85 		 * Position of the collection menu when shown - align "left" or "right"
+ 86 		 *  @property sAlign
+ 87 		 *  @type     String
+ 88 		 *  @default  right
+ 89 		 */
+ 90 		sAlign: "left",
+ 91 		
+ 92 		/**
+ 93 		 * Text used for the button
+ 94 		 *  @property buttonText
+ 95 		 *  @type     String
+ 96 		 *  @default  Show / hide columns
+ 97 		 */
+ 98 		buttonText: "Show / hide columns",
+ 99 		
+100 		/**
+101 		 * Flag to say if the collection is hidden
+102 		 *  @property hidden
+103 		 *  @type     boolean
+104 		 *  @default  true
+105 		 */
+106 		hidden: true,
+107 		
+108 		/**
+109 		 * List of columns (integers) which should be excluded from the list
+110 		 *  @property aiExclude
+111 		 *  @type     Array
+112 		 *  @default  []
+113 		 */
+114 		aiExclude: [],
+115 		
+116 		/**
+117 		 * Store the original viisbility settings so they could be restored
+118 		 *  @property abOriginal
+119 		 *  @type     Array
+120 		 *  @default  []
+121 		 */
+122 		abOriginal: [],
+123 		
+124 		/**
+125 		 * Show restore button
+126 		 *  @property bRestore
+127 		 *  @type     Array
+128 		 *  @default  []
+129 		 */
+130 		bRestore: false,
+131 		
+132 		/**
+133 		 * Restore button text
+134 		 *  @property sRestore
+135 		 *  @type     String
+136 		 *  @default  Restore original
+137 		 */
+138 		sRestore: "Restore original",
+139 		
+140 		/**
+141 		 * Overlay animation duration in mS
+142 		 *  @property iOverlayFade
+143 		 *  @type     Integer
+144 		 *  @default  500
+145 		 */
+146 		iOverlayFade: 500,
+147 		
+148 		/**
+149 		 * Label callback for column names. Takes three parameters: 1. the column index, 2. the column
+150 		 * title detected by DataTables and 3. the TH node for the column
+151 		 *  @property fnLabel
+152 		 *  @type     Function
+153 		 *  @default  null
+154 		 */
+155 		fnLabel: null,
+156 		
+157 		/**
+158 		 * Indicate if ColVis should automatically calculate the size of buttons or not. The default
+159 		 * is for it to do so. Set to "css" to disable the automatic sizing
+160 		 *  @property sSize
+161 		 *  @type     String
+162 		 *  @default  auto
+163 		 */
+164 		sSize: "auto"
+165 	};
+166 	
+167 	
+168 	/**
+169 	 * @namespace Common and useful DOM elements for the class instance
+170 	 */
+171 	this.dom = {
+172 		/**
+173 		 * Wrapper for the button - given back to DataTables as the node to insert
+174 		 *  @property wrapper
+175 		 *  @type     Node
+176 		 *  @default  null
+177 		 */
+178 		wrapper: null,
+179 		
+180 		/**
+181 		 * Activation button
+182 		 *  @property button
+183 		 *  @type     Node
+184 		 *  @default  null
+185 		 */
+186 		button: null,
+187 		
+188 		/**
+189 		 * Collection list node
+190 		 *  @property collection
+191 		 *  @type     Node
+192 		 *  @default  null
+193 		 */
+194 		collection: null,
+195 		
+196 		/**
+197 		 * Background node used for shading the display and event capturing
+198 		 *  @property background
+199 		 *  @type     Node
+200 		 *  @default  null
+201 		 */
+202 		background: null,
+203 		
+204 		/**
+205 		 * Element to position over the activation button to catch mouse events when using mouseover
+206 		 *  @property catcher
+207 		 *  @type     Node
+208 		 *  @default  null
+209 		 */
+210 		catcher: null,
+211 		
+212 		/**
+213 		 * List of button elements
+214 		 *  @property buttons
+215 		 *  @type     Array
+216 		 *  @default  []
+217 		 */
+218 		buttons: [],
+219 		
+220 		/**
+221 		 * Restore button
+222 		 *  @property restore
+223 		 *  @type     Node
+224 		 *  @default  null
+225 		 */
+226 		restore: null
+227 	};
+228 	
+229 	/* Store global reference */
+230 	ColVis.aInstances.push( this );
+231 	
+232 	/* Constructor logic */
+233 	this.s.dt = oDTSettings;
+234 	this._fnConstruct();
+235 	return this;
+236 };
+237 
+238 
+239 
+240 ColVis.prototype = {
+241 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+242 	 * Public methods
+243 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+244 	
+245 	/**
+246 	 * Rebuild the list of buttons for this instance (i.e. if there is a column header update)
+247 	 *  @method  fnRebuild
+248 	 *  @returns void
+249 	 */
+250 	fnRebuild: function ()
+251 	{
+252 		/* Remove the old buttons */
+253 		for ( var i=this.dom.buttons.length-1 ; i>=0 ; i-- )
+254 		{
+255 			if ( this.dom.buttons[i] !== null )
+256 			{
+257 				this.dom.collection.removeChild( this.dom.buttons[i] );
+258 			}
+259 		}
+260 		this.dom.buttons.splice( 0, this.dom.buttons.length );
+261 		
+262 		if ( this.dom.restore )
+263 		{
+264 			this.dom.restore.parentNode( this.dom.restore );
+265 		}
+266 		
+267 		/* Re-add them (this is not the optimal way of doing this, it is fast and effective) */
+268 		this._fnAddButtons();
+269 		
+270 		/* Update the checkboxes */
+271 		this._fnDrawCallback();
+272 	},
+273 	
+274 	
+275 	
+276 	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+277 	 * Private methods (they are of course public in JS, but recommended as private)
+278 	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+279 	
+280 	/**
+281 	 * Constructor logic
+282 	 *  @method  _fnConstruct
+283 	 *  @returns void
+284 	 *  @private 
+285 	 */
+286 	_fnConstruct: function ()
+287 	{
+288 		this._fnApplyCustomisation();
+289 		
+290 		var that = this;
+291 		this.dom.wrapper = document.createElement('div');
+292 		this.dom.wrapper.className = "ColVis TableTools";
+293 		
+294 		this.dom.button = this._fnDomBaseButton( this.s.buttonText );
+295 		this.dom.button.className += " ColVis_MasterButton";
+296 		this.dom.wrapper.appendChild( this.dom.button );
+297 		
+298 		this.dom.catcher = this._fnDomCatcher();
+299 		this.dom.collection = this._fnDomCollection();
+300 		this.dom.background = this._fnDomBackground();
+301 		
+302 		this._fnAddButtons();
+303 		
+304 		/* Store the original visbility information */
+305 		for ( var i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+306 		{
+307 			this.s.abOriginal.push( this.s.dt.aoColumns[i].bVisible );
+308 		}
+309 		
+310 		/* Update on each draw */
+311 		this.s.dt.aoDrawCallback.push( {
+312 			fn: function () {
+313 				that._fnDrawCallback.call( that );
+314 			},
+315 			sName: "ColVis"
+316 		} );
+317 	},
+318 	
+319 	
+320 	/**
+321 	 * Apply any customisation to the settings from the DataTables initialisation
+322 	 *  @method  _fnApplyCustomisation
+323 	 *  @returns void
+324 	 *  @private 
+325 	 */
+326 	_fnApplyCustomisation: function ()
+327 	{
+328 		var oConfig = this.s.oInit;
+329 		
+330 		if ( typeof oConfig.activate != 'undefined' )
+331 		{
+332 			this.s.activate = oConfig.activate;
+333 		}
+334 		
+335 		if ( typeof oConfig.buttonText != 'undefined' )
+336 		{
+337 			this.s.buttonText = oConfig.buttonText;
+338 		}
+339 		
+340 		if ( typeof oConfig.aiExclude != 'undefined' )
+341 		{
+342 			this.s.aiExclude = oConfig.aiExclude;
+343 		}
+344 		
+345 		if ( typeof oConfig.bRestore != 'undefined' )
+346 		{
+347 			this.s.bRestore = oConfig.bRestore;
+348 		}
+349 		
+350 		if ( typeof oConfig.sRestore != 'undefined' )
+351 		{
+352 			this.s.sRestore = oConfig.sRestore;
+353 		}
+354 		
+355 		if ( typeof oConfig.sAlign != 'undefined' )
+356 		{
+357 			this.s.sAlign = oConfig.sAlign;
+358 		}
+359 		
+360 		if ( typeof oConfig.fnStateChange != 'undefined' )
+361 		{
+362 			this.s.fnStateChange = oConfig.fnStateChange;
+363 		}
+364 		
+365 		if ( typeof oConfig.iOverlayFade != 'undefined' )
+366 		{
+367 			this.s.iOverlayFade = oConfig.iOverlayFade;
+368 		}
+369 		
+370 		if ( typeof oConfig.fnLabel != 'undefined' )
+371 		{
+372 			this.s.fnLabel = oConfig.fnLabel;
+373 		}
+374 	},
+375 	
+376 	
+377 	/**
+378 	 * On each table draw, check the visiblity checkboxes as needed. This allows any process to
+379 	 * update the table's column visiblity and ColVis will still be accurate.
+380 	 *  @method  _fnDrawCallback
+381 	 *  @returns void
+382 	 *  @private 
+383 	 */
+384 	_fnDrawCallback: function ()
+385 	{
+386 		var aoColumns = this.s.dt.aoColumns;
+387 		
+388 		for ( var i=0, iLen=aoColumns.length ; i<iLen ; i++ )
+389 		{
+390 			if ( this.dom.buttons[i] !== null )
+391 			{
+392 				if ( aoColumns[i].bVisible )
+393 				{
+394 					$('input', this.dom.buttons[i]).attr('checked','checked');
+395 				}
+396 				else
+397 				{
+398 					$('input', this.dom.buttons[i]).removeAttr('checked');
+399 				}
+400 			}
+401 		}
+402 	},
+403 	
+404 	
+405 	/**
+406 	 * Loop through the columns in the table and as a new button for each one.
+407 	 *  @method  _fnAddButtons
+408 	 *  @returns void
+409 	 *  @private 
+410 	 */
+411 	_fnAddButtons: function ()
+412 	{
+413 		var
+414 			nButton,
+415 			sExclude = ","+this.s.aiExclude.join(',')+",";
+416 		
+417 		for ( var i=0, iLen=this.s.dt.aoColumns.length ; i<iLen ; i++ )
+418 		{
+419 			if ( sExclude.indexOf( ","+i+"," ) == -1 )
+420 			{
+421 				nButton = this._fnDomColumnButton( i );
+422 				this.dom.buttons.push( nButton );
+423 				this.dom.collection.appendChild( nButton );
+424 			}
+425 			else
+426 			{
+427 				this.dom.buttons.push( null );
+428 			}
+429 		}
+430 		
+431 		if ( this.s.bRestore )
+432 		{
+433 			nButton = this._fnDomRestoreButton();
+434 			nButton.className += " ColVis_Restore";
+435 			this.dom.buttons.push( nButton );
+436 			this.dom.collection.appendChild( nButton );
+437 		}
+438 	},
+439 	
+440 	
+441 	/**
+442 	 * Create a button which allows a "restore" action
+443 	 *  @method  _fnDomRestoreButton
+444 	 *  @returns {Node} Created button
+445 	 *  @private 
+446 	 */
+447 	_fnDomRestoreButton: function ()
+448 	{
+449 		var
+450 			that = this,
+451 		  nButton = document.createElement('button'),
+452 		  nSpan = document.createElement('span');
+453 		
+454 		nButton.className = !this.s.dt.bJUI ? "ColVis_Button TableTools_Button" :
+455 			"ColVis_Button TableTools_Button ui-button ui-state-default";
+456 		nButton.appendChild( nSpan );
+457 		$(nSpan).html( '<span class="ColVis_title">'+this.s.sRestore+'</span>' );
+458 		
+459 		$(nButton).click( function (e) {
+460 			for ( var i=0, iLen=that.s.abOriginal.length ; i<iLen ; i++ )
+461 			{
+462 				that.s.dt.oInstance.fnSetColumnVis( i, that.s.abOriginal[i], false );
+463 			}
+464 			that.s.dt.oInstance.fnDraw( false );
+465 		} );
+466 		
+467 		return nButton;
+468 	},
+469 	
+470 	
+471 	/**
+472 	 * Create the DOM for a show / hide button
+473 	 *  @method  _fnDomColumnButton
+474 	 *  @param {int} i Column in question
+475 	 *  @returns {Node} Created button
+476 	 *  @private 
+477 	 */
+478 	_fnDomColumnButton: function ( i )
+479 	{
+480 		var
+481 			that = this,
+482 			oColumn = this.s.dt.aoColumns[i],
+483 		  nButton = document.createElement('button'),
+484 		  nSpan = document.createElement('span');
+485 		
+486 		nButton.className = !this.s.dt.bJUI ? "ColVis_Button TableTools_Button" :
+487 			"ColVis_Button TableTools_Button ui-button ui-state-default";
+488 		nButton.appendChild( nSpan );
+489 		var sTitle = this.s.fnLabel===null ? oColumn.sTitle : this.s.fnLabel( i, oColumn.sTitle, oColumn.nTh );
+490 		$(nSpan).html(
+491 			'<span class="ColVis_radio"><input type="checkbox"></span>'+
+492 			'<span class="ColVis_title">'+sTitle+'</span>' );
+493 		
+494 		$(nButton).click( function (e) {
+495 			var showHide = !$('input', this).is(":checked");
+496 			if ( e.target.nodeName.toLowerCase() == "input" )
+497 			{
+498 				showHide = $('input', this).is(":checked");
+499 			}
+500 			
+501 			/* Need to consider the case where the initialiser created more than one table - change the
+502 			 * API index that DataTables is using
+503 			 */
+504 			var oldIndex = $.fn.dataTableExt.iApiIndex;
+505 			$.fn.dataTableExt.iApiIndex = that._fnDataTablesApiIndex.call(that);
+506 			that.s.dt.oInstance.fnSetColumnVis( i, showHide );
+507 			$.fn.dataTableExt.iApiIndex = oldIndex; /* Restore */
+508 			
+509 			if ( that.s.fnStateChange !== null )
+510 			{
+511 				that.s.fnStateChange.call( that, i, showHide );
+512 			}
+513 		} );
+514 		
+515 		return nButton;
+516 	},
+517 	
+518 	
+519 	/**
+520 	 * Get the position in the DataTables instance array of the table for this instance of ColVis
+521 	 *  @method  _fnDataTablesApiIndex
+522 	 *  @returns {int} Index
+523 	 *  @private 
+524 	 */
+525 	_fnDataTablesApiIndex: function ()
+526 	{
+527 		for ( var i=0, iLen=this.s.dt.oInstance.length ; i<iLen ; i++ )
+528 		{
+529 			if ( this.s.dt.oInstance[i] == this.s.dt.nTable )
+530 			{
+531 				return i;
+532 			}
+533 		}
+534 		return 0;
+535 	},
+536 	
+537 	
+538 	/**
+539 	 * Create the DOM needed for the button and apply some base properties. All buttons start here
+540 	 *  @method  _fnDomBaseButton
+541 	 *  @param   {String} text Button text
+542 	 *  @returns {Node} DIV element for the button
+543 	 *  @private 
+544 	 */
+545 	_fnDomBaseButton: function ( text )
+546 	{
+547 		var
+548 			that = this,
+549 		  nButton = document.createElement('button'),
+550 		  nSpan = document.createElement('span'),
+551 			sEvent = this.s.activate=="mouseover" ? "mouseover" : "click";
+552 		
+553 		nButton.className = !this.s.dt.bJUI ? "ColVis_Button TableTools_Button" :
+554 			"ColVis_Button TableTools_Button ui-button ui-state-default";
+555 		nButton.appendChild( nSpan );
+556 		nSpan.innerHTML = text;
+557 		
+558 		$(nButton).bind( sEvent, function (e) {
+559 			that._fnCollectionShow();
+560 			e.preventDefault();
+561 		} );
+562 		
+563 		return nButton;
+564 	},
+565 	
+566 	
+567 	/**
+568 	 * Create the element used to contain list the columns (it is shown and hidden as needed)
+569 	 *  @method  _fnDomCollection
+570 	 *  @returns {Node} div container for the collection
+571 	 *  @private 
+572 	 */
+573 	_fnDomCollection: function ()
+574 	{
+575 		var that = this;
+576 		var nHidden = document.createElement('div');
+577 		nHidden.style.display = "none";
+578 		nHidden.className = !this.s.dt.bJUI ? "ColVis_collection TableTools_collection" :
+579 			"ColVis_collection TableTools_collection ui-buttonset ui-buttonset-multi";
+580 		nHidden.style.position = "absolute";
+581 		$(nHidden).css('opacity', 0);
+582 		
+583 		return nHidden;
+584 	},
+585 	
+586 	
+587 	/**
+588 	 * An element to be placed on top of the activate button to catch events
+589 	 *  @method  _fnDomCatcher
+590 	 *  @returns {Node} div container for the collection
+591 	 *  @private 
+592 	 */
+593 	_fnDomCatcher: function ()
+594 	{
+595 		var 
+596 			that = this,
+597 			nCatcher = document.createElement('div');
+598 		nCatcher.className = "ColVis_catcher TableTools_catcher";
+599 		
+600 		$(nCatcher).click( function () {
+601 			that._fnCollectionHide.call( that, null, null );
+602 		} );
+603 		
+604 		return nCatcher;
+605 	},
+606 	
+607 	
+608 	/**
+609 	 * Create the element used to shade the background, and capture hide events (it is shown and 
+610 	 * hidden as needed)
+611 	 *  @method  _fnDomBackground
+612 	 *  @returns {Node} div container for the background
+613 	 *  @private 
+614 	 */
+615 	_fnDomBackground: function ()
+616 	{
+617 		var that = this;
+618 		
+619 		var nBackground = document.createElement('div');
+620 		nBackground.style.position = "absolute";
+621 		nBackground.style.left = "0px";
+622 		nBackground.style.top = "0px";
+623 		nBackground.className = "ColVis_collectionBackground TableTools_collectionBackground";
+624 		$(nBackground).css('opacity', 0);
+625 		
+626 		$(nBackground).click( function () {
+627 			that._fnCollectionHide.call( that, null, null );
+628 		} );
+629 		
+630 		/* When considering a mouse over action for the activation, we also consider a mouse out
+631 		 * which is the same as a mouse over the background - without all the messing around of
+632 		 * bubbling events. Use the catcher element to avoid messing around with bubbling
+633 		 */
+634 		if ( this.s.activate == "mouseover" )
+635 		{
+636 			$(nBackground).mouseover( function () {
+637 				that.s.overcollection = false;
+638 				that._fnCollectionHide.call( that, null, null );
+639 			} );
+640 		}
+641 		
+642 		return nBackground;
+643 	},
+644 	
+645 	
+646 	/**
+647 	 * Show the show / hide list and the background
+648 	 *  @method  _fnCollectionShow
+649 	 *  @returns void
+650 	 *  @private 
+651 	 */
+652 	_fnCollectionShow: function ()
+653 	{
+654 		var that = this, i, iLen;
+655 		var oPos = $(this.dom.button).offset();
+656 		var nHidden = this.dom.collection;
+657 		var nBackground = this.dom.background;
+658 		var iDivX = parseInt(oPos.left, 10);
+659 		var iDivY = parseInt(oPos.top + $(this.dom.button).outerHeight(), 10);
+660 		
+661 		nHidden.style.top = iDivY+"px";
+662 		nHidden.style.left = iDivX+"px";
+663 		nHidden.style.display = "block";
+664 		$(nHidden).css('opacity',0);
+665 		
+666 		var iWinHeight = $(window).height(), iDocHeight = $(document).height(),
+667 		 	iWinWidth = $(window).width(), iDocWidth = $(document).width();
+668 		
+669 		nBackground.style.height = ((iWinHeight>iDocHeight)? iWinHeight : iDocHeight) +"px";
+670 		nBackground.style.width = ((iWinWidth<iDocWidth)? iWinWidth : iDocWidth) +"px";
+671 		
+672 		var oStyle = this.dom.catcher.style;
+673 		oStyle.height = $(this.dom.button).outerHeight()+"px";
+674 		oStyle.width = $(this.dom.button).outerWidth()+"px";
+675 		oStyle.top = oPos.top+"px";
+676 		oStyle.left = iDivX+"px";
+677 		
+678 		document.body.appendChild( nBackground );
+679 		document.body.appendChild( nHidden );
+680 		document.body.appendChild( this.dom.catcher );
+681 		
+682 		/* Resize the buttons */
+683 		if ( this.s.sSize == "auto" )
+684 		{
+685 			var aiSizes = [];
+686 			this.dom.collection.style.width = "auto";
+687 			for ( i=0, iLen=this.dom.buttons.length ; i<iLen ; i++ )
+688 			{
+689 				if ( this.dom.buttons[i] !== null )
+690 				{
+691 					this.dom.buttons[i].style.width = "auto";
+692 					aiSizes.push( $(this.dom.buttons[i]).outerWidth() );
+693 				}
+694 			}
+695 			iMax = Math.max.apply(window, aiSizes);
+696 			for ( i=0, iLen=this.dom.buttons.length ; i<iLen ; i++ )
+697 			{
+698 				if ( this.dom.buttons[i] !== null )
+699 				{
+700 					this.dom.buttons[i].style.width = iMax+"px";
+701 				}
+702 			}
+703 			this.dom.collection.style.width = iMax+"px";
+704 		}
+705 		
+706 		/* Visual corrections to try and keep the collection visible */
+707 		nHidden.style.left = this.s.sAlign=="left" ?
+708 			iDivX+"px" : (iDivX-$(nHidden).outerWidth()+$(this.dom.button).outerWidth())+"px";
+709 		
+710 		var iDivWidth = $(nHidden).outerWidth();
+711 		var iDivHeight = $(nHidden).outerHeight();
+712 		
+713 		if ( iDivX + iDivWidth > iDocWidth )
+714 		{
+715 			nHidden.style.left = (iDocWidth-iDivWidth)+"px";
+716 		}
+717 		
+718 		
+719 		/* This results in a very small delay for the end user but it allows the animation to be
+720 		 * much smoother. If you don't want the animation, then the setTimeout can be removed
+721 		 */
+722 		setTimeout( function () {
+723 			$(nHidden).animate({opacity: 1}, that.s.iOverlayFade);
+724 			$(nBackground).animate({opacity: 0.1}, that.s.iOverlayFade, 'linear', function () {
+725 				/* In IE6 if you set the checked attribute of a hidden checkbox, then this is not visually
+726 				 * reflected. As such, we need to do it here, once it is visible. Unbelievable.
+727 				 */
+728 				if ( jQuery.browser.msie && jQuery.browser.version == "6.0" )
+729 				{
+730 					that._fnDrawCallback();
+731 				}
+732 			});
+733 		}, 10 );
+734 		
+735 		this.s.hidden = false;
+736 	},
+737 	
+738 	
+739 	/**
+740 	 * Hide the show / hide list and the background
+741 	 *  @method  _fnCollectionHide
+742 	 *  @returns void
+743 	 *  @private 
+744 	 */
+745 	_fnCollectionHide: function (  )
+746 	{
+747 		var that = this;
+748 		
+749 		if ( !this.s.hidden && this.dom.collection !== null )
+750 		{
+751 			this.s.hidden = true;
+752 			
+753 			$(this.dom.collection).animate({opacity: 0}, that.s.iOverlayFade, function (e) {
+754 				this.style.display = "none";
+755 			} );
+756 			
+757 			$(this.dom.background).animate({opacity: 0}, that.s.iOverlayFade, function (e) {
+758 				document.body.removeChild( that.dom.background );
+759 				document.body.removeChild( that.dom.catcher );
+760 			} );
+761 		}
+762 	}
+763 };
+764 
+765 
+766 
+767 
+768 
+769 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+770  * Static object methods
+771  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+772 
+773 /**
+774  * Rebuild the collection for a given table, or all tables if no parameter given
+775  *  @method  ColVis.fnRebuild
+776  *  @static
+777  *  @param   object oTable DataTable instance to consider - optional
+778  *  @returns void
+779  */
+780 ColVis.fnRebuild = function ( oTable )
+781 {
+782 	var nTable = null;
+783 	if ( typeof oTable != 'undefined' )
+784 	{
+785 		nTable = oTable.fnSettings().nTable;
+786 	}
+787 	
+788 	for ( var i=0, iLen=ColVis.aInstances.length ; i<iLen ; i++ )
+789 	{
+790 		if ( typeof oTable == 'undefined' || nTable == ColVis.aInstances[i].s.dt.nTable )
+791 		{
+792 			ColVis.aInstances[i].fnRebuild();
+793 		}
+794 	}
+795 };
+796 
+797 
+798 
+799 
+800 
+801 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+802  * Static object propterties
+803  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+804 
+805 /**
+806  * Collection of all ColVis instances
+807  *  @property ColVis.aInstances
+808  *  @static
+809  *  @type     Array
+810  *  @default  []
+811  */
+812 ColVis.aInstances = [];
+813 
+814 
+815 
+816 
+817 
+818 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+819  * Constants
+820  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+821 
+822 /**
+823  * Name of this class
+824  *  @constant CLASS
+825  *  @type     String
+826  *  @default  ColVis
+827  */
+828 ColVis.prototype.CLASS = "ColVis";
+829 
+830 
+831 /**
+832  * ColVis version
+833  *  @constant  VERSION
+834  *  @type      String
+835  *  @default   See code
+836  */
+837 ColVis.VERSION = "1.0.6";
+838 ColVis.prototype.VERSION = ColVis.VERSION;
+839 
+840 
+841 
+842 
+843 
+844 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+845  * Initialisation
+846  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+847 
+848 /*
+849  * Register a new feature with DataTables
+850  */
+851 if ( typeof $.fn.dataTable == "function" &&
+852      typeof $.fn.dataTableExt.fnVersionCheck == "function" &&
+853      $.fn.dataTableExt.fnVersionCheck('1.7.0') )
+854 {
+855 	$.fn.dataTableExt.aoFeatures.push( {
+856 		fnInit: function( oDTSettings ) {
+857 			var init = (typeof oDTSettings.oInit.oColVis == 'undefined') ?
+858 				{} : oDTSettings.oInit.oColVis;
+859 			var oColvis = new ColVis( oDTSettings, init );
+860 			return oColvis.dom.wrapper;
+861 		},
+862 		cFeature: "C",
+863 		sFeature: "ColVis"
+864 	} );
+865 }
+866 else
+867 {
+868 	alert( "Warning: ColVis requires DataTables 1.7 or greater - www.datatables.net/download");
+869 }
+870 
+871 })(jQuery);
+872 
\ No newline at end of file diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/images/button.png b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/images/button.png new file mode 100644 index 000000000..38f032004 Binary files /dev/null and b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/images/button.png differ diff --git a/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/js/ColVis.js b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/js/ColVis.js new file mode 100644 index 000000000..7f2ea8d88 --- /dev/null +++ b/mifosng-individual-lending-app/src/main/webapp/WEB-INF/static/stretchyreporting/DataTables-1.8.2/extras/ColVis/ColVis/media/js/ColVis.js @@ -0,0 +1,871 @@ +/* + * File: ColVis.js + * Version: 1.0.6 + * CVS: $Id$ + * Description: Controls for column visiblity in DataTables + * Author: Allan Jardine (www.sprymedia.co.uk) + * Created: Wed Sep 15 18:23:29 BST 2010 + * Modified: $Date$ by $Author$ + * Language: Javascript + * License: GPL v2 or BSD 3 point style + * Project: Just a little bit of fun :-) + * Contact: www.sprymedia.co.uk/contact + * + * Copyright 2010-2011 Allan Jardine, all rights reserved. + * + * This source file is free software, under either the GPL v2 license or a + * BSD style license, available at: + * http://datatables.net/license_gpl2 + * http://datatables.net/license_bsd + */ + +(function($) { + +/** + * ColVis provides column visiblity control for DataTables + * @class ColVis + * @constructor + * @param {object} DataTables settings object + */ +ColVis = function( oDTSettings, oInit ) +{ + /* Santiy check that we are a new instance */ + if ( !this.CLASS || this.CLASS != "ColVis" ) + { + alert( "Warning: ColVis must be initialised with the keyword 'new'" ); + } + + if ( typeof oInit == 'undefined' ) + { + oInit = {}; + } + + + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Public class variables + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + + /** + * @namespace Settings object which contains customisable information for ColVis instance + */ + this.s = { + /** + * DataTables settings object + * @property dt + * @type Object + * @default null + */ + "dt": null, + + /** + * Customisation object + * @property oInit + * @type Object + * @default passed in + */ + "oInit": oInit, + + /** + * Callback function to tell the user when the state has changed + * @property fnStateChange + * @type function + * @default null + */ + "fnStateChange": null, + + /** + * Mode of activation. Can be 'click' or 'mouseover' + * @property activate + * @type String + * @default click + */ + "activate": "click", + + /** + * Position of the collection menu when shown - align "left" or "right" + * @property sAlign + * @type String + * @default right + */ + "sAlign": "left", + + /** + * Text used for the button + * @property buttonText + * @type String + * @default Show / hide columns + */ + "buttonText": "Show / hide columns", + + /** + * Flag to say if the collection is hidden + * @property hidden + * @type boolean + * @default true + */ + "hidden": true, + + /** + * List of columns (integers) which should be excluded from the list + * @property aiExclude + * @type Array + * @default [] + */ + "aiExclude": [], + + /** + * Store the original viisbility settings so they could be restored + * @property abOriginal + * @type Array + * @default [] + */ + "abOriginal": [], + + /** + * Show restore button + * @property bRestore + * @type Array + * @default [] + */ + "bRestore": false, + + /** + * Restore button text + * @property sRestore + * @type String + * @default Restore original + */ + "sRestore": "Restore original", + + /** + * Overlay animation duration in mS + * @property iOverlayFade + * @type Integer + * @default 500 + */ + "iOverlayFade": 500, + + /** + * Label callback for column names. Takes three parameters: 1. the column index, 2. the column + * title detected by DataTables and 3. the TH node for the column + * @property fnLabel + * @type Function + * @default null + */ + "fnLabel": null, + + /** + * Indicate if ColVis should automatically calculate the size of buttons or not. The default + * is for it to do so. Set to "css" to disable the automatic sizing + * @property sSize + * @type String + * @default auto + */ + "sSize": "auto" + }; + + + /** + * @namespace Common and useful DOM elements for the class instance + */ + this.dom = { + /** + * Wrapper for the button - given back to DataTables as the node to insert + * @property wrapper + * @type Node + * @default null + */ + "wrapper": null, + + /** + * Activation button + * @property button + * @type Node + * @default null + */ + "button": null, + + /** + * Collection list node + * @property collection + * @type Node + * @default null + */ + "collection": null, + + /** + * Background node used for shading the display and event capturing + * @property background + * @type Node + * @default null + */ + "background": null, + + /** + * Element to position over the activation button to catch mouse events when using mouseover + * @property catcher + * @type Node + * @default null + */ + "catcher": null, + + /** + * List of button elements + * @property buttons + * @type Array + * @default [] + */ + "buttons": [], + + /** + * Restore button + * @property restore + * @type Node + * @default null + */ + "restore": null + }; + + /* Store global reference */ + ColVis.aInstances.push( this ); + + /* Constructor logic */ + this.s.dt = oDTSettings; + this._fnConstruct(); + return this; +}; + + + +ColVis.prototype = { + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Public methods + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + + /** + * Rebuild the list of buttons for this instance (i.e. if there is a column header update) + * @method fnRebuild + * @returns void + */ + "fnRebuild": function () + { + /* Remove the old buttons */ + for ( var i=this.dom.buttons.length-1 ; i>=0 ; i-- ) + { + if ( this.dom.buttons[i] !== null ) + { + this.dom.collection.removeChild( this.dom.buttons[i] ); + } + } + this.dom.buttons.splice( 0, this.dom.buttons.length ); + + if ( this.dom.restore ) + { + this.dom.restore.parentNode( this.dom.restore ); + } + + /* Re-add them (this is not the optimal way of doing this, it is fast and effective) */ + this._fnAddButtons(); + + /* Update the checkboxes */ + this._fnDrawCallback(); + }, + + + + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Private methods (they are of course public in JS, but recommended as private) + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + + /** + * Constructor logic + * @method _fnConstruct + * @returns void + * @private + */ + "_fnConstruct": function () + { + this._fnApplyCustomisation(); + + var that = this; + this.dom.wrapper = document.createElement('div'); + this.dom.wrapper.className = "ColVis TableTools"; + + this.dom.button = this._fnDomBaseButton( this.s.buttonText ); + this.dom.button.className += " ColVis_MasterButton"; + this.dom.wrapper.appendChild( this.dom.button ); + + this.dom.catcher = this._fnDomCatcher(); + this.dom.collection = this._fnDomCollection(); + this.dom.background = this._fnDomBackground(); + + this._fnAddButtons(); + + /* Store the original visbility information */ + for ( var i=0, iLen=this.s.dt.aoColumns.length ; i'+this.s.sRestore+'' ); + + $(nButton).click( function (e) { + for ( var i=0, iLen=that.s.abOriginal.length ; i'+ + ''+sTitle+'' ); + + $(nButton).click( function (e) { + var showHide = !$('input', this).is(":checked"); + if ( e.target.nodeName.toLowerCase() == "input" ) + { + showHide = $('input', this).is(":checked"); + } + + /* Need to consider the case where the initialiser created more than one table - change the + * API index that DataTables is using + */ + var oldIndex = $.fn.dataTableExt.iApiIndex; + $.fn.dataTableExt.iApiIndex = that._fnDataTablesApiIndex.call(that); + that.s.dt.oInstance.fnSetColumnVis( i, showHide ); + $.fn.dataTableExt.iApiIndex = oldIndex; /* Restore */ + + if ( that.s.fnStateChange !== null ) + { + that.s.fnStateChange.call( that, i, showHide ); + } + } ); + + return nButton; + }, + + + /** + * Get the position in the DataTables instance array of the table for this instance of ColVis + * @method _fnDataTablesApiIndex + * @returns {int} Index + * @private + */ + "_fnDataTablesApiIndex": function () + { + for ( var i=0, iLen=this.s.dt.oInstance.length ; i