Skip to content

Instantly share code, notes, and snippets.

@tecchan1107
Created February 12, 2022 11:58
Show Gist options
  • Save tecchan1107/6266293b30562af5a96bc712e4c5ce0f to your computer and use it in GitHub Desktop.
Save tecchan1107/6266293b30562af5a96bc712e4c5ce0f to your computer and use it in GitHub Desktop.
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"style": {
"flex-direction": "column",
"width": "50px",
"margin": "5px",
"display": "=if(@currentField,'flex','none')"
},
"children": [
{
"elmType": "div",
"txtContent": "=getYear(@currentField)",
"style": {
"margin": "2px"
},
"attributes": {
"class": "ms-fontColor-themePrimary ms-fontWeight-bold "
}
},
{
"elmType": "div",
"style": {
"margin-bottom": "2px",
"white-space": "nowrap"
},
"attributes": {
"class": "ms-fontColor-themePrimary ms-fontWeight-bold "
},
"children": [
{
"elmType": "div",
"txtContent": "Sunday",
"style": {
"display": "=if((getMonth(@currentField) + 1) > 2 , if( floor((getYear(@currentField) + ( getYear(@currentField) / 4 ) - ( getYear(@currentField) / 100 ) + ( getYear(@currentField) / 400 ) + (((13 * (getMonth(@currentField) + 1) ) + 8) / 5) + getDate(@currentField)) % 7) == 0 , '' , 'none' ) , if(floor(((getYear(@currentField) - 1) + ( (getYear(@currentField) - 1) / 4 ) - ( (getYear(@currentField) - 1) / 100 ) + ( (getYear(@currentField) -1 ) / 400 ) + (((13 * (getMonth(@currentField) + 13) ) + 8) / 5) + getDate(@currentField)) % 7) == 0 , '' ,'none'))"
}
},
{
"elmType": "div",
"txtContent": "Monday",
"style": {
"display": "=if((getMonth(@currentField) + 1) > 2 , if( floor((getYear(@currentField) + ( getYear(@currentField) / 4 ) - ( getYear(@currentField) / 100 ) + ( getYear(@currentField) / 400 ) + (((13 * (getMonth(@currentField) + 1) ) + 8) / 5) + getDate(@currentField)) % 7) == 1 , '' , 'none' ) , if(floor(((getYear(@currentField) - 1) + ( (getYear(@currentField) - 1) / 4 ) - ( (getYear(@currentField) - 1) / 100 ) + ( (getYear(@currentField) -1 ) / 400 ) + (((13 * (getMonth(@currentField) + 13) ) + 8) / 5) + getDate(@currentField)) % 7) == 1 , '' ,'none'))"
}
},
{
"elmType": "div",
"txtContent": "Tuesday",
"style": {
"display": "=if((getMonth(@currentField) + 1) > 2 , if( floor((getYear(@currentField) + ( getYear(@currentField) / 4 ) - ( getYear(@currentField) / 100 ) + ( getYear(@currentField) / 400 ) + (((13 * (getMonth(@currentField) + 1) ) + 8) / 5) + getDate(@currentField)) % 7) == 2 , '' , 'none' ) , if(floor(((getYear(@currentField) - 1) + ( (getYear(@currentField) - 1) / 4 ) - ( (getYear(@currentField) - 1) / 100 ) + ( (getYear(@currentField) -1 ) / 400 ) + (((13 * (getMonth(@currentField) + 13) ) + 8) / 5) + getDate(@currentField)) % 7) == 2 , '' ,'none'))"
}
},
{
"elmType": "div",
"txtContent": "Wednesday",
"style": {
"display": "=if((getMonth(@currentField) + 1) > 2 , if( floor((getYear(@currentField) + ( getYear(@currentField) / 4 ) - ( getYear(@currentField) / 100 ) + ( getYear(@currentField) / 400 ) + (((13 * (getMonth(@currentField) + 1) ) + 8) / 5) + getDate(@currentField)) % 7) == 3 , '' , 'none' ) , if(floor(((getYear(@currentField) - 1) + ( (getYear(@currentField) - 1) / 4 ) - ( (getYear(@currentField) - 1) / 100 ) + ( (getYear(@currentField) -1 ) / 400 ) + (((13 * (getMonth(@currentField) + 13) ) + 8) / 5) + getDate(@currentField)) % 7) == 3 , '' ,'none'))"
}
},
{
"elmType": "div",
"txtContent": "Thursday",
"style": {
"display": "=if((getMonth(@currentField) + 1) > 2 , if( floor((getYear(@currentField) + ( getYear(@currentField) / 4 ) - ( getYear(@currentField) / 100 ) + ( getYear(@currentField) / 400 ) + (((13 * (getMonth(@currentField) + 1) ) + 8) / 5) + getDate(@currentField)) % 7) == 4 , '' , 'none' ) , if(floor(((getYear(@currentField) - 1) + ( (getYear(@currentField) - 1) / 4 ) - ( (getYear(@currentField) - 1) / 100 ) + ( (getYear(@currentField) -1 ) / 400 ) + (((13 * (getMonth(@currentField) + 13) ) + 8) / 5) + getDate(@currentField)) % 7) == 4 , '' ,'none'))"
}
},
{
"elmType": "div",
"txtContent": "Friday",
"style": {
"display": "=if((getMonth(@currentField) + 1) > 2 , if( floor((getYear(@currentField) + ( getYear(@currentField) / 4 ) - ( getYear(@currentField) / 100 ) + ( getYear(@currentField) / 400 ) + (((13 * (getMonth(@currentField) + 1) ) + 8) / 5) + getDate(@currentField)) % 7) == 5 , '' , 'none' ) , if(floor(((getYear(@currentField) - 1) + ( (getYear(@currentField) - 1) / 4 ) - ( (getYear(@currentField) - 1) / 100 ) + ( (getYear(@currentField) -1 ) / 400 ) + (((13 * (getMonth(@currentField) + 13) ) + 8) / 5) + getDate(@currentField)) % 7) == 5 , '' ,'none'))"
}
},
{
"elmType": "div",
"txtContent": "Saturday",
"style": {
"display": "=if((getMonth(@currentField) + 1) > 2 , if( floor((getYear(@currentField) + ( getYear(@currentField) / 4 ) - ( getYear(@currentField) / 100 ) + ( getYear(@currentField) / 400 ) + (((13 * (getMonth(@currentField) + 1) ) + 8) / 5) + getDate(@currentField)) % 7) == 6 , '' , 'none' ) , if(floor(((getYear(@currentField) - 1) + ( (getYear(@currentField) - 1) / 4 ) - ( (getYear(@currentField) - 1) / 100 ) + ( (getYear(@currentField) -1 ) / 400 ) + (((13 * (getMonth(@currentField) + 13) ) + 8) / 5) + getDate(@currentField)) % 7) == 6 , '' ,'none'))"
}
}
]
},
{
"elmType": "div",
"txtContent": "=if(getMonth(@currentField)==0, 'Jan', if(getMonth(@currentField)==1, 'Feb', if(getMonth(@currentField)==2, 'Mar', if(getMonth(@currentField)==3, 'Apr', if(getMonth(@currentField)==4, 'May', if(getMonth(@currentField)==5, 'Jun', if(getMonth(@currentField)==6 , 'Jul', if(getMonth(@currentField)==7, 'Aug', if(getMonth(@currentField)==8 , 'Sep', if(getMonth(@currentField)==9, 'Oct', if(getMonth(@currentField)==10, 'Nov', if(getMonth(@currentField)==11, 'Dec', ''))))))))))))",
"style": {
"display": "flex",
"justify-content": "center",
"align-items": "center",
"width": "100%",
"height": "20px",
"border": "1px solid",
"margin-bottom": "-1px"
},
"attributes": {
"class": "ms-bgColor-themePrimary ms-fontColor-white ms-borderColor-themePrimary ms-fontWeight-bold"
}
},
{
"elmType": "div",
"style": {
"display": "flex",
"justify-content": "center",
"align-items": "center",
"width": "48px",
"border": "1px solid",
"height": "38px",
"position": "relative"
},
"attributes": {
"class": "ms-fontColor-themePrimary"
},
"children": [
{
"elmType": "div",
"style": {
"position": "absolute",
"font-size": "34px"
},
"attributes": {
"iconName": "HeartFill"
}
},
{
"elmType": "div",
"txtContent": "=getDate(@currentField)",
"style": {
"position": "absolute",
"font-weight": "bold",
"margin-bottom": "5px",
"font-size": "15px"
},
"attributes": {
"class": "ms-fontColor-white"
}
}
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment