Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
taskonsite-архив-перенесен
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Packages
Packages
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Dmitry Korolev
taskonsite-архив-перенесен
Commits
240dfcd2
Commit
240dfcd2
authored
May 28, 2016
by
Олег Гиммельшпах
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
b1373f2c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
266 additions
and
1 deletion
+266
-1
frontend/views/layouts/foot.php
frontend/views/layouts/foot.php
+1
-1
frontend/web/js/jquery.maskedinput-merged.js
frontend/web/js/jquery.maskedinput-merged.js
+265
-0
No files found.
frontend/views/layouts/foot.php
View file @
240dfcd2
...
...
@@ -22,7 +22,7 @@
<?
php
// $this->registerJsFile('/js/jquery.inputmask.js', ['position' => yii\web\View::POS_END ]);?>
<?
php
// $this->registerJsFile('/js/inputmask.phone.extensions.js', ['position' => yii\web\View::POS_END ]);?>
<?
php
$this
->
registerJsFile
(
'/js/jquery.maskedinput
.min
.js'
,
[
'position'
=>
yii\web\View
::
POS_END
]);
?>
<?
php
$this
->
registerJsFile
(
'/js/jquery.maskedinput
-merged
.js'
,
[
'position'
=>
yii\web\View
::
POS_END
]);
?>
<?php
$this
->
registerJsFile
(
'/js/common.js'
,
[
'position'
=>
yii\web\View
::
POS_END
]);
?>
<?php
$this
->
registerJsFile
(
'/js/jquery.form.js'
,
[
'position'
=>
yii\web\View
::
POS_END
]);
?>
...
...
frontend/web/js/jquery.maskedinput-merged.js
0 → 100644
View file @
240dfcd2
/*
Masked Input plugin for jQuery
Copyright (c) 2007-@Year Josh Bush (digitalbush.com)
Licensed under the MIT license (http://digitalbush.com/projects/masked-input-plugin/#license)
Version: @version
*/
(
function
(
$
)
{
var
pasteEventName
=
(
$
.
browser
.
msie
?
'
paste
'
:
'
input
'
)
+
"
.mask
"
;
var
iPhone
=
(
window
.
orientation
!=
undefined
);
var
isAndroid
=
navigator
.
userAgent
.
toLowerCase
().
indexOf
(
"
android
"
)
>
-
1
;
$
.
mask
=
{
//Predefined character definitions
definitions
:
{
'
9
'
:
"
[0-9]
"
,
'
a
'
:
"
[A-Za-z]
"
,
'
*
'
:
"
[A-Za-z0-9]
"
},
dataName
:
"
rawMaskFn
"
};
$
.
fn
.
extend
({
//Helper Function for Caret positioning
caret
:
function
(
begin
,
end
)
{
if
(
this
.
length
==
0
)
return
;
if
(
typeof
begin
==
'
number
'
)
{
end
=
(
typeof
end
==
'
number
'
)
?
end
:
begin
;
return
this
.
each
(
function
()
{
if
(
this
.
setSelectionRange
)
{
if
(
isAndroid
)
{
var
that
=
this
;
setTimeout
(
function
()
{
that
.
setSelectionRange
(
begin
,
end
);
},
0
);
}
else
{
this
.
setSelectionRange
(
begin
,
end
);
}
}
else
if
(
this
.
createTextRange
)
{
var
range
=
this
.
createTextRange
();
range
.
collapse
(
true
);
range
.
moveEnd
(
'
character
'
,
end
);
range
.
moveStart
(
'
character
'
,
begin
);
range
.
select
();
}
});
}
else
{
if
(
this
[
0
].
setSelectionRange
)
{
begin
=
this
[
0
].
selectionStart
;
end
=
this
[
0
].
selectionEnd
;
}
else
if
(
document
.
selection
&&
document
.
selection
.
createRange
)
{
var
range
=
document
.
selection
.
createRange
();
begin
=
0
-
range
.
duplicate
().
moveStart
(
'
character
'
,
-
100000
);
end
=
begin
+
range
.
text
.
length
;
}
return
{
begin
:
begin
,
end
:
end
};
}
},
unmask
:
function
()
{
return
this
.
trigger
(
"
unmask
"
);
},
mask
:
function
(
mask
,
settings
)
{
if
(
!
mask
&&
this
.
length
>
0
)
{
var
input
=
$
(
this
[
0
]);
return
input
.
data
(
$
.
mask
.
dataName
)();
}
settings
=
$
.
extend
({
placeholder
:
"
_
"
,
completed
:
null
},
settings
);
var
defs
=
$
.
mask
.
definitions
;
var
tests
=
[];
var
partialPosition
=
mask
.
length
;
var
firstNonMaskPos
=
null
;
var
len
=
mask
.
length
;
$
.
each
(
mask
.
split
(
""
),
function
(
i
,
c
)
{
if
(
c
==
'
?
'
)
{
len
--
;
partialPosition
=
i
;
}
else
if
(
defs
[
c
])
{
tests
.
push
(
new
RegExp
(
defs
[
c
]));
if
(
firstNonMaskPos
==
null
)
firstNonMaskPos
=
tests
.
length
-
1
;
}
else
{
tests
.
push
(
null
);
}
});
return
this
.
trigger
(
"
unmask
"
).
each
(
function
()
{
var
input
=
$
(
this
);
var
buffer
=
$
.
map
(
mask
.
split
(
""
),
function
(
c
,
i
)
{
if
(
c
!=
'
?
'
)
return
defs
[
c
]
?
settings
.
placeholder
:
c
});
var
focusText
=
input
.
val
();
function
seekNext
(
pos
)
{
while
(
++
pos
<=
len
&&
!
tests
[
pos
]);
return
pos
;
};
function
seekPrev
(
pos
)
{
while
(
--
pos
>=
0
&&
!
tests
[
pos
]);
return
pos
;
};
function
shiftL
(
begin
,
end
)
{
if
(
begin
<
0
)
return
;
for
(
var
i
=
begin
,
j
=
seekNext
(
end
);
i
<
len
;
i
++
)
{
if
(
tests
[
i
])
{
if
(
j
<
len
&&
tests
[
i
].
test
(
buffer
[
j
]))
{
buffer
[
i
]
=
buffer
[
j
];
buffer
[
j
]
=
settings
.
placeholder
;
}
else
break
;
j
=
seekNext
(
j
);
}
}
writeBuffer
();
input
.
caret
(
Math
.
max
(
firstNonMaskPos
,
begin
));
};
function
shiftR
(
pos
)
{
for
(
var
i
=
pos
,
c
=
settings
.
placeholder
;
i
<
len
;
i
++
)
{
if
(
tests
[
i
])
{
var
j
=
seekNext
(
i
);
var
t
=
buffer
[
i
];
buffer
[
i
]
=
c
;
if
(
j
<
len
&&
tests
[
j
].
test
(
t
))
c
=
t
;
else
break
;
}
}
};
function
keydownEvent
(
e
)
{
var
k
=
e
.
which
;
//backspace, delete, and escape get special treatment
if
(
k
==
8
||
k
==
46
||
(
iPhone
&&
k
==
127
))
{
var
pos
=
input
.
caret
(),
begin
=
pos
.
begin
,
end
=
pos
.
end
;
if
(
end
-
begin
==
0
)
{
begin
=
k
!=
46
?
seekPrev
(
begin
)
:
(
end
=
seekNext
(
begin
-
1
));
end
=
k
==
46
?
seekNext
(
end
)
:
end
;
}
clearBuffer
(
begin
,
end
);
shiftL
(
begin
,
end
-
1
);
return
false
;
}
else
if
(
k
==
27
)
{
//escape
input
.
val
(
focusText
);
input
.
caret
(
0
,
checkVal
());
return
false
;
}
};
function
keypressEvent
(
e
)
{
var
k
=
e
.
which
,
pos
=
input
.
caret
();
if
(
e
.
ctrlKey
||
e
.
altKey
||
e
.
metaKey
||
k
<
32
)
{
//Ignore
return
true
;
}
else
if
(
k
)
{
if
(
pos
.
end
-
pos
.
begin
!=
0
)
{
clearBuffer
(
pos
.
begin
,
pos
.
end
);
shiftL
(
pos
.
begin
,
pos
.
end
-
1
);
}
var
p
=
seekNext
(
pos
.
begin
-
1
);
if
(
p
<
len
)
{
var
c
=
String
.
fromCharCode
(
k
);
if
(
tests
[
p
].
test
(
c
))
{
shiftR
(
p
);
buffer
[
p
]
=
c
;
writeBuffer
();
var
next
=
seekNext
(
p
);
input
.
caret
(
next
);
if
(
settings
.
completed
&&
next
>=
len
)
settings
.
completed
.
call
(
input
);
}
}
return
false
;
}
};
function
clearBuffer
(
start
,
end
)
{
for
(
var
i
=
start
;
i
<
end
&&
i
<
len
;
i
++
)
{
if
(
tests
[
i
])
buffer
[
i
]
=
settings
.
placeholder
;
}
};
function
writeBuffer
()
{
return
input
.
val
(
buffer
.
join
(
''
)).
val
();
};
function
checkVal
(
allow
)
{
//try to place characters where they belong
var
test
=
input
.
val
();
var
lastMatch
=
-
1
;
for
(
var
i
=
0
,
pos
=
0
;
i
<
len
;
i
++
)
{
if
(
tests
[
i
])
{
buffer
[
i
]
=
settings
.
placeholder
;
while
(
pos
++
<
test
.
length
)
{
var
c
=
test
.
charAt
(
pos
-
1
);
if
(
tests
[
i
].
test
(
c
))
{
buffer
[
i
]
=
c
;
lastMatch
=
i
;
break
;
}
}
if
(
pos
>
test
.
length
)
break
;
}
else
if
(
buffer
[
i
]
==
test
.
charAt
(
pos
)
&&
i
!=
partialPosition
)
{
pos
++
;
lastMatch
=
i
;
}
}
if
(
!
allow
&&
lastMatch
+
1
<
partialPosition
)
{
input
.
val
(
""
);
clearBuffer
(
0
,
len
);
}
else
if
(
allow
||
lastMatch
+
1
>=
partialPosition
)
{
writeBuffer
();
if
(
!
allow
)
input
.
val
(
input
.
val
().
substring
(
0
,
lastMatch
+
1
));
}
return
(
partialPosition
?
i
:
firstNonMaskPos
);
};
input
.
data
(
$
.
mask
.
dataName
,
function
()
{
return
$
.
map
(
buffer
,
function
(
c
,
i
)
{
return
tests
[
i
]
&&
c
!=
settings
.
placeholder
?
c
:
null
;
}).
join
(
''
);
})
if
(
!
input
.
attr
(
"
readonly
"
))
input
.
one
(
"
unmask
"
,
function
()
{
input
.
unbind
(
"
.mask
"
)
.
removeData
(
$
.
mask
.
dataName
);
})
.
bind
(
"
focus.mask
"
,
function
()
{
focusText
=
input
.
val
();
var
pos
=
checkVal
();
writeBuffer
();
var
moveCaret
=
function
()
{
if
(
pos
==
mask
.
length
)
input
.
caret
(
0
,
pos
);
else
input
.
caret
(
pos
);
};
(
$
.
browser
.
msie
?
moveCaret
:
function
()
{
setTimeout
(
moveCaret
,
0
)
})();
})
.
bind
(
"
blur.mask
"
,
function
()
{
checkVal
();
if
(
input
.
val
()
!=
focusText
)
input
.
change
();
})
.
bind
(
"
keydown.mask
"
,
keydownEvent
)
.
bind
(
"
keypress.mask
"
,
keypressEvent
)
.
bind
(
pasteEventName
,
function
()
{
setTimeout
(
function
()
{
input
.
caret
(
checkVal
(
true
));
},
0
);
});
checkVal
();
//Perform initial check for existing values
});
}
});
})(
jQuery
);
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment